summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README4
-rw-r--r--TODOS7
-rwxr-xr-xbuild_stage3.sh52
-rw-r--r--i486-stage3/archlinux32-keyring/DESCR2
-rw-r--r--i486-stage3/ca-certificates/DESCR5
-rw-r--r--i486-stage3/curl/DESCR2
-rw-r--r--i486-stage3/dbus/DESCR9
-rw-r--r--i486-stage3/pacman/DESCR11
8 files changed, 60 insertions, 32 deletions
diff --git a/README b/README
index 7bf4f72..c4b23e6 100644
--- a/README
+++ b/README
@@ -209,8 +209,10 @@ su cross ./prepare_stage2_repo.sh
# - libgcrypt without libsecret
# - ldns unbound dnssec-anchors are all in a cyrcle
-# some packages are simply to hard to build:
+# some packages are simply to hard or important to build:
# - libsecret: needs glib2 which is not buildable in stage3
+# - licenses: needs links, we don't care for stage3 as they will not
+# go public in the end
su cross ./prepare_stage3_repo.sh
diff --git a/TODOS b/TODOS
index c044c11..8010df5 100644
--- a/TODOS
+++ b/TODOS
@@ -33,6 +33,9 @@ general bugs:
error: no usable package repositories configured.
installing and listing packages by hand works without problems.
debug: unregistering database 'local'
+ => this goes away in stage3 after rebuilding pacman in stage3. This must
+ be investigated as this is a subtle pacman issue somewhere when being
+ cross-compiled!
- some packages get build more than once in stage1 (linux-api-headers, pacman-mirrorlist)
- make a wrapper for sed in DESCR, which is actually able to detect whether
the patch was successful or not. Avoid hard to detect errors, when the
@@ -86,3 +89,7 @@ stage2 issues:
stage 3 issues:
- some packages don't install (also in stage 1): iana-etc, filesystem
- can we build layers in parallel?
+- linux-atm, we should actually build the kernel first
+- pacman-key --refresh:
+ gpg: connecting dirmngr at '/etc/pacman.d/gnupg/S.dirmngr' failed: IPC connect call failed
+ gpg: keyserver refresh failed: No dirmngr
diff --git a/build_stage3.sh b/build_stage3.sh
index d071eba..7512065 100755
--- a/build_stage3.sh
+++ b/build_stage3.sh
@@ -57,16 +57,12 @@ xfsprogs
psmisc
gpgme
sudo
+autoconf-archive
+linux-atm iproute2
+ca-certificates curl pacman-mirrorlist archlinux-keyring archlinux32-keyring
+pacman
"
-#~ <net-tools> <libmnl> <libnfnetlink> iptables iproute2
-
-# python executes and fails in testing. Why can't i switch off
-# testing?
-# 0:01:27 load avg: 1.07 [ 24/406] test_asynchat, test hangs forever!
-
-#~ util-linux: systemd, python
-
# TODO: redo make with guile
# guile, guile2_0: libtool fails to find gc (threading problem?),
# --disable-threads in toolchain causes POSIX threads to be absent, we
@@ -83,17 +79,17 @@ sudo
#libtool: install: error: relink `libgfortran.la' with the above command before installing it
#make: Leaving directory '/build/gcc/src/gcc-build/i486-pc-linux-gnu/libgfortran'
+# the ptyhon knot
+# python executes and fails in testing. Why can't i switch off
+# testing?
+# 0:01:27 load avg: 1.07 [ 24/406] test_asynchat, test hangs forever!
+
+#~ util-linux: systemd, python
-#~ stage2:
-#
-# git problem, not base of base-devel, but needed to checkout out via
-# https+git protocoll. For now using the stage2 one
-#
# libxml2: python2 and python as makedepends
#~ libxslt: libxml2 libgcrypt python2
#~ xmlto: libxslt docbook-xsl
#~ asciidoc: python
-#~ git: python2 emacs libgnome-keyring xmlto asciidoc
#~ util-linux:
#~ pkg-config: glib2
@@ -101,26 +97,23 @@ sudo
#~ libxslt: libxml2
# ca-certificates: asciidoc, xsltproc,...
-#~ curl: ca-certificates
#~ python:
#~ linux build full with mkinitcpio and modules
-
-
-#~ pacman-mirrorlist archlinux-keyring archlinux32-keyring pacman
-#~ <kbd> procps-ng <bison> <shadow>
-#~ <inetutils> <bc> <kmod> linux
-#~ <net-tools> <libmnl> <libnfnetlink> iptables iproute2
+
+#~ linux
#~ <libedit> openssh
#~ make <mpfr> <gawk> <libmpc> <binutils> <gcc> glibc
#~ <libunwind> <strace> gdb
#~ "
#~ #TODO after nasm: syslinux
+#~ iptables: libpcap
+# libpcap: dbus libusbx
+
# stage3 (from compute_dependencies.sh)
-#~ ca-certificates-cacert: ca-certificates-utils
-#~ cryptsetup: device-mapper libgcrypt popt libutil-linux json-c argon2
+#~ cryptsetup: device-mapper libgcrypt popt libutil-linux
# ldns/unbound-cyrcle
#~ ldns: openssl dnssec-anchors
@@ -135,28 +128,27 @@ sudo
# the systemd knot
#~ libusb: glibc libsystemd
#~ usbutils: libusb hwids
-#~ netctl: coreutils iproute2 openresolv systemd
+#~ netctl: openresolv systemd
#~ openresolv: systemd
#~ pcmciautils: systemd
#~ procps-ng: libsystemd
-#~ iptables: libpcap
-#~ libpcap: libnl libusbx dbus
+#~ libpcap: libusbx dbus
# systemd: libgcrypt libmicrohttpd libxslt python-lxml quota-tools gnu-efi-libs meson
#~ dbus: libsystemd expat
#~ dhcpcd: glibc sh udev libsystemd
+# systemd: gperf intltool libxslt python-lxml quota-tools gnu-efi-libs meson
+#~ util-linux: systemd, python
#~ mkinitcpio: awk mkinitcpio-busybox kmod util-linux libarchive coreutils bash findutils grep filesystem gzip systemd
-#~ pacman: libarchive curl pacman-mirrorlist archlinux-keyring
-
-# lvm2, devicemapper: systemd, thin-povisioning-tools
+# lvm2, device-mapper: systemd, thin-povisioning-tools
#~ thin-provisioning-tools: expat gcc-libs libaio boost
# boost: we can build a non-python version
+# cryptsetup: device-mapper
#~ base cryptsetup
#~ base device-mapper
#~ base dhcpcd
-#~ base licenses
#~ base lvm2
#~ base netctl
#~ base pcmciautils
diff --git a/i486-stage3/archlinux32-keyring/DESCR b/i486-stage3/archlinux32-keyring/DESCR
new file mode 100644
index 0000000..7fbf211
--- /dev/null
+++ b/i486-stage3/archlinux32-keyring/DESCR
@@ -0,0 +1,2 @@
+# this package exists only in Archlinux32, copy the whole bunch
+FETCH_METHOD="packages32"
diff --git a/i486-stage3/ca-certificates/DESCR b/i486-stage3/ca-certificates/DESCR
index 9e1d57f..dbedf4f 100644
--- a/i486-stage3/ca-certificates/DESCR
+++ b/i486-stage3/ca-certificates/DESCR
@@ -1,2 +1,5 @@
# no documentation
-sed -i "/makedepends=/s/'asciidoc'//" PKGBUILD
+sed -i "/makedepends=/s/asciidoc//" PKGBUILD
+sed -i "s/\(asciidoc.py\)/#\1/g" PKGBUILD
+sed -i "s/\(xsltproc\)/true; #\1/g" PKGBUILD
+sed -i "s@\(install -Dm644 update-ca-trust.8\)@#\1@" PKGBUILD
diff --git a/i486-stage3/curl/DESCR b/i486-stage3/curl/DESCR
new file mode 100644
index 0000000..f7f70f7
--- /dev/null
+++ b/i486-stage3/curl/DESCR
@@ -0,0 +1,2 @@
+# no documentation
+sed -i "/makedepends=/s/asciidoc//" PKGBUILD
diff --git a/i486-stage3/dbus/DESCR b/i486-stage3/dbus/DESCR
new file mode 100644
index 0000000..e68fa79
--- /dev/null
+++ b/i486-stage3/dbus/DESCR
@@ -0,0 +1,9 @@
+# no documentation
+sed -i "/makedepends=/s/xmlto//" PKGBUILD
+sed -i "/makedepends=/s/docbook-xsl//" PKGBUILD
+sed -i "/makedepends=/s/yelp-tools//" PKGBUILD
+sed -i "/makedepends=/s/doxygen//" PKGBUILD
+sed -i "/makedepends=/s/graphviz//" PKGBUILD
+
+# no python
+sed -i "/makedepends=/s/python//" PKGBUILD
diff --git a/i486-stage3/pacman/DESCR b/i486-stage3/pacman/DESCR
new file mode 100644
index 0000000..f60157c
--- /dev/null
+++ b/i486-stage3/pacman/DESCR
@@ -0,0 +1,11 @@
+# no documentation
+sed -i "/makedepends=/s/'asciidoc'//" PKGBUILD
+
+# craft a temporary i486 pacman.conf
+cp pacman.conf.i686 pacman.conf.i486
+
+# use the 486 config and not 686 one
+sed -i 's@pacman.conf.i686@pacman.conf.i486@' PKGBUILD
+
+# some more architecture patching
+sed -i 's@i686@i486@g' PKGBUILD