archlinux-s390x/scripts
Mathieu Benoit 4d8856b82d [FIX] stage 2: x86_64 compiler flags, and a .pc naming nothing
Two failures three packages apart, both from the same place: our pacman
package ships Arch's configuration verbatim, and Arch's is for x86_64.

  libxml2/meson.build:1:0: ERROR: Unable to detect linker for compiler
  `cc ... -march=x86-64 -mtune=generic ...`

configure_chroot fixed CARCH, CHOST, MAKEFLAGS and OPTIONS and left CFLAGS
alone. They are emptied rather than translated, because that is what stage 1
used -- the host's makepkg.conf has no CFLAGS line at all -- and 179 working
packages are the evidence. s390x tuning is a deliberate later choice.

Emptied by APPENDING, not commenting. The first attempt put a # in front of
each assignment, and CFLAGS spans several lines: commenting the first left the
continuations active and the quote unbalanced, so makepkg would not start.

Then readline. Its .pc says `Requires.private: termcap` and this repository
ships tinfo.pc; nothing provides termcap.pc. Nothing failed at build time --
a .pc is data, and pkg-config only follows Requires.private when a consumer
asks. The first consumer to ask was libxml2, in the chroot, one stage and
three packages from the cause.

--- FR ---

Deux échecs à trois paquets d'écart, de la même origine : notre paquet pacman
livre la configuration d'Arch telle quelle, et celle d'Arch vise x86_64.

  libxml2/meson.build:1:0: ERROR: Unable to detect linker for compiler
  `cc ... -march=x86-64 -mtune=generic ...`

configure_chroot corrigeait CARCH, CHOST, MAKEFLAGS et OPTIONS, et laissait
CFLAGS. Ils sont vidés plutôt que traduits, car c'est ce qu'a utilisé l'étage
1 — le makepkg.conf de l'hôte n'a aucune ligne CFLAGS — et 179 paquets
fonctionnels en sont la preuve. Le réglage pour s390x est un choix ultérieur
délibéré.

Vidés par AJOUT, non par commentaire. La première tentative mettait un # devant
chaque affectation, et CFLAGS s'étend sur plusieurs lignes : commenter la
première laissait les continuations actives et le guillemet déséquilibré, si
bien que makepkg ne démarrait plus.

Puis readline. Son .pc dit « Requires.private: termcap » alors que ce dépôt
livre tinfo.pc ; personne ne fournit termcap.pc. Rien n'échouait à la
compilation — un .pc est une donnée, et pkg-config ne suit Requires.private
que si un consommateur le demande. Le premier à demander fut libxml2, dans le
chroot, à une étape et trois paquets de la cause.

Assisted-by: Claude Opus 5
2026-08-19 20:19:37 -04:00
..
devtools [FIX] libdir: the Debian host hid the libraries from Arch 2026-08-17 01:33:41 -04:00
bootstrap-pacman.sh [FIX] python packages: /usr/local, once, for all of them 2026-08-19 20:19:37 -04:00
build-arch-kernel.sh making the house a home 2026-01-27 23:26:31 +01:00
build-busybox-zvm.sh making the house a home 2026-01-27 23:26:31 +01:00
build-container.sh making the house a home 2026-01-27 23:26:31 +01:00
build-initramfs-final.sh making the house a home 2026-01-27 23:26:31 +01:00
build-stage1.sh [FIX] driver: kill a build that has stopped producing output 2026-08-19 19:53:46 -04:00
build-stage2.sh [FIX] stage 2: x86_64 compiler flags, and a .pc naming nothing 2026-08-19 20:19:37 -04:00
build-systemd-zvm.sh making the house a home 2026-01-27 23:26:31 +01:00
common.sh cleaned up scripts to be more DRY 2025-06-05 20:48:16 +02:00
create-rootfs.sh making the house a home 2026-01-27 23:26:31 +01:00
deploy-and-build-systemd-zvm.sh cleaned up scripts to be more DRY 2025-06-05 20:48:16 +02:00
prepare-boot.sh making the house a home 2026-01-27 23:26:31 +01:00
test-chroot.sh [FIX] test-chroot: an audit that classifies, and one that was wrong 2026-08-19 06:40:50 -04:00
test-qemu.sh cleaned up scripts to be more DRY 2025-06-05 20:48:16 +02:00
zvm-utils.sh cleaned up scripts to be more DRY 2025-06-05 20:48:16 +02:00