From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:37774) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iFlzo-0000rK-BV for guix-patches@gnu.org; Wed, 02 Oct 2019 17:17:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iFlzi-0001dB-Fr for guix-patches@gnu.org; Wed, 02 Oct 2019 17:17:16 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:57873) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iFlze-0001bt-E1 for guix-patches@gnu.org; Wed, 02 Oct 2019 17:17:06 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iFlze-000144-41 for guix-patches@gnu.org; Wed, 02 Oct 2019 17:17:06 -0400 Subject: [bug#37466] [WIP v4 2/7] gnu: Add heads. Resent-Message-ID: From: Danny Milosavljevic Date: Wed, 2 Oct 2019 23:15:57 +0200 Message-Id: <20191002211602.16635-3-dannym@scratchpost.org> In-Reply-To: <20191002211602.16635-1-dannym@scratchpost.org> References: <20190929110750.21214-1-dannym@scratchpost.org> <20191002211602.16635-1-dannym@scratchpost.org> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 37466@debbugs.gnu.org Cc: Danny Milosavljevic * gnu/packages/heads.scm (heads): New variable. * gnu/packages/patches/heads-make-environment.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/heads.scm | 388 +++++++++++++++ .../patches/heads-make-environment.patch | 446 ++++++++++++++++++ 3 files changed, 835 insertions(+) create mode 100644 gnu/packages/patches/heads-make-environment.patch diff --git a/gnu/local.mk b/gnu/local.mk index 01c726d8cf..fb3c913f2c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -948,6 +948,7 @@ dist_patch_DATA =3D \ %D%/packages/patches/hdf-eos5-remove-gctp.patch \ %D%/packages/patches/hdf-eos5-fix-szip.patch \ %D%/packages/patches/hdf-eos5-fortrantests.patch \ + %D%/packages/patches/heads-make-environment.patch \ %D%/packages/patches/higan-remove-march-native-flag.patch \ %D%/packages/patches/hubbub-sort-entities.patch \ %D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \ diff --git a/gnu/packages/heads.scm b/gnu/packages/heads.scm index b547a374e0..311eeeb1a1 100644 --- a/gnu/packages/heads.scm +++ b/gnu/packages/heads.scm @@ -4,8 +4,12 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) + #:use-module (guix utils) #:use-module (gnu packages) + #:use-module (gnu packages admin) #:use-module (gnu packages algebra) + #:use-module (gnu packages assembly) + #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages compression) #:use-module (gnu packages flex) @@ -13,8 +17,11 @@ #:use-module (gnu packages elf) #:use-module (gnu packages m4) #:use-module (gnu packages curl) + #:use-module (gnu packages linux) #:use-module (gnu packages multiprecision) + #:use-module (gnu packages python) #:use-module (gnu packages cpio) + #:use-module (gnu packages file) #:use-module (gnu packages perl) #:use-module (gnu packages version-control) #:use-module (gnu packages virtualization)) @@ -122,3 +129,384 @@ done (synopsis "Musl-cross gcc 5 toolchain") (description "Musl-cross toolchain: binutils, gcc 5 and musl.") (license license:isc)))) + +(define heads + (let ((revision "1") + (commit "b7f2249b665705939dc4eca67d11553c72164f4b")) + (package + (name "heads") + (version (git-version "0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/osresearch/heads.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0sgyqm4ss88hfp8miz40mw40kj7qp2khr7jcvscwv87bd5g9nwnx")) + (patches (search-patches "heads-make-environment.patch")))) + (build-system gnu-build-system) + (native-inputs + `(("bash" ,bash) + ("git" ,git) + ("perl" ,perl) + ("cpio" ,cpio) + ("m4" ,m4) + ("bison" ,bison) + ("flex" ,flex) + ("curl" ,curl) ; unused + ("zlibx" ,zlib) + ("musl-cross" ,musl-cross) + ("elfutils" ,elfutils) + ("bc" ,bc) + ("findutils" ,findutils) + ("flashtools" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/osresearch/flashtools.git") + (commit "9acce09aeb635c5bef01843e495b95e75e8da135"))) + (file-name "flashtools-checkout") + (sha256 + (base32 "0r4gj3nzr67ycd39k1vjzxfzkp90yacrdgxhc1z5jfvxfq4x91c1"= )))) + ("tpmtotp" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/osresearch/tpmtotp.git") + (commit "18b860fdcf5a55537c8395b891f2b2a5c24fc00a"))) + (file-name "tpmtotp-checkout") + (sha256 + (base32 "112p5afkrbipr0d8x9r9mrxrr3xyf97s2y3f32p41vs951sksqnv"= )))) + ("msrtools" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/osresearch/msr-tools.git") + (commit "572ef8a2b873eda15a322daa48861140a078b92c"))) + (file-name "msr-tools-checkout") + (sha256 + (base32 "0an1ypj5pin9l413vn4gxzi3x6ir1rba9jv6n5gk6s9dq803lb6p"= )))) + ("coreboot-blobs" + ,(origin + (method url-fetch) + (uri "https://www.coreboot.org/releases/coreboot-blobs-4.8.1.ta= r.xz") + (sha256 + (base32 "15g222xj1zdn8i8qz0pw2jf28h66dljb1q5isw2ml05gwfd51ahq"= )))) + ("coreboot" + ,(origin + (method url-fetch) + (uri "https://www.coreboot.org/releases/coreboot-4.8.1.tar.xz") + (sha256 + (base32 "08xdd5drk8yd37a3z5hc81qmgsybv6201i28hcggxh980vdz9pgh"= )))) + ("linux" + ,(origin + (method url-fetch) + (uri "https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.14.6= 2.tar.xz") + (sha256 + (base32 "1ar29ikway5im17iw9ag1fxivr7sbj8nhxxw347xqmp1irz4vjji"= )))) + ("musl" ; useless + ,(origin + (method url-fetch) + (uri "https://www.musl-libc.org/releases/musl-1.1.15.tar.gz") + (sha256 + (base32 "1ymhxkskivzph0q34zadwfglc5gyahqajm7chqqn2zraxv3lgr4p"= )))) + ("busybox" + ,(origin + (method url-fetch) + (uri "https://busybox.net/downloads/busybox-1.28.0.tar.bz2") + (sha256 + (base32 "1701carjf02y7r3djm1yvyd5kzrcxm4szinp7agfv7fmvfvm6ib0"= )))) + ("zlib" + ,(origin + (method url-fetch) + (uri "https://www.zlib.net/zlib-1.2.11.tar.gz") + (sha256 + (base32 "18dighcs333gsvajvvgqp8l4cx7h1x7yx9gd5xacnk80spyykrf3"= )))) + ("mbedtls" + ,(origin + (method url-fetch) + (uri "https://tls.mbed.org/download/mbedtls-2.4.2-gpl.tgz") + (sha256 + (base32 "17r9qs585gqghcf5yavb1cnvsigl0f8r0k8rklr5a855hrajs7yh"= )))) + ("kexec-tools" + ,(origin + (method url-fetch) + (uri "https://kernel.org/pub/linux/utils/kernel/kexec/kexec-too= ls-2.0.16.tar.gz") + (sha256 + (base32 "0fkg5y3wxvkqrjii90iz1i59qd6hhq7ar27f0sgv7jbppyczq5yg"= )))) + ("qrencode" + ,(origin + (method url-fetch) + (uri "https://fukuchi.org/works/qrencode/qrencode-3.4.4.tar.gz") + (sha256 + (base32 "0wiagx7i8p9zal53smf5abrnh9lr31mv0p36wg017401jrmf5577"= )))) + ("pciutils" + ,(origin + (method url-fetch) + (uri "https://www.kernel.org/pub/software/utils/pciutils/pciuti= ls-3.5.4.tar.xz") + (sha256 + (base32 "0rpy7kkb2y89wmbcbfjjjxsk2x89v5xxhxib4vpl131ip5m3qab4"= )))) + ("util-linux" + ,(origin + (method url-fetch) + (uri "https://www.kernel.org/pub/linux/utils/util-linux/v2.29/u= til-linux-2.29.2.tar.xz") + (sha256 + (base32 "1qz81w8vzrmy8xn9yx7ls4amkbgwx6vr62pl6kv9g7r0g3ba9kmc"= )))) + ("flashrom" + ,(origin + (method url-fetch) + (uri "https://download.flashrom.org/releases/flashrom-1.0.tar.b= z2") + (sha256 + (base32 "0r7fkpfc8w51n8ffbhclj4wa3kwrk0ijv1acwpw5myx5bchzl0ip"= )))) + ("popt" + ,(origin + (method url-fetch) + (uri "https://launchpad.net/popt/head/1.16/+download/popt-1.16.= tar.gz") + (sha256 + (base32 "1j2c61nn2n351nhj4d25mnf3vpiddcykq005w2h6kw79dwlysa77"= )))) + ("lvm2" + ,(origin + (method url-fetch) + (uri "https://mirrors.kernel.org/sourceware/lvm2/LVM2.2.02.168.= tgz") + (sha256 + (base32 "03b62hcsj9z37ckd8c21wwpm07s9zblq7grfh58yzcs1vp6x38r3"= )))) + ("cryptsetup" + ,(origin + (method url-fetch) + (uri "https://www.kernel.org/pub/linux/utils/cryptsetup/v1.7/cr= yptsetup-1.7.3.tar.xz") + (sha256 + (base32 "00nwd96m9yq4k3cayc04i5y7iakkzana35zxky6hpx2w8zl08axg"= )))) + ("libgpg-error" + ,(origin + (method url-fetch) + (uri "https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.= 32.tar.bz2") + (sha256 + (base32 "1jj08ns4sh1hmafqp1giskvdicdz18la516va26jycy27kkwaif3"= )))) + ("libgcrypt" + ,(origin + (method url-fetch) + (uri "https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.8.3.ta= r.bz2") + (sha256 + (base32 "0z5gs1khzyknyfjr19k8gk4q148s6q987ya85cpn0iv70fz91v36"= )))) + ("libksba" + ,(origin + (method url-fetch) + (uri "https://gnupg.org/ftp/gcrypt/libksba/libksba-1.3.5.tar.bz= 2") + (sha256 + (base32 "0h53q4sns1jz1pkmhcz5wp9qrfn9f5g9i3vjv6dafwzzlvblyi21"= )))) + ("libassuan" + ,(origin + (method url-fetch) + (uri "https://gnupg.org/ftp/gcrypt/libassuan/libassuan-2.5.1.ta= r.bz2") + (sha256 + (base32 "0jb4nb4nrjr949gd3lw8lh4v5d6qigxaq6xwy24w5apjnhvnrya7"= )))) + ("npth" + ,(origin + (method url-fetch) + (uri "https://gnupg.org/ftp/gcrypt/npth/npth-1.6.tar.bz2") + (sha256 + (base32 "1lg2lkdd3z1s3rpyf88786l243adrzyk9p4q8z9n41ygmpcsp4qk"= )))) + ("libusb" + ,(origin + (method url-fetch) + (uri "https://downloads.sourceforge.net/project/libusb/libusb-1= .0/libusb-1.0.21/libusb-1.0.21.tar.bz2") + (sha256 + (base32 "0jw2n5kdnrqvp7zh792fd6mypzzfap6jp4gfcmq4n6c1kb79rkkx"= )))) + ("libusb-compat" + ,(origin + (method url-fetch) + (uri "https://downloads.sourceforge.net/project/libusb/libusb-c= ompat-0.1/libusb-compat-0.1.5/libusb-compat-0.1.5.tar.bz2") + (sha256 + (base32 "0nn5icrfm9lkhzw1xjvaks9bq3w6mjg86ggv3fn7kgi4nfvg8kj0"= )))) + ("dropbear" + ,(origin + (method url-fetch) + (uri "https://matt.ucc.asn.au/dropbear/releases/dropbear-2016.7= 4.tar.bz2") + (sha256 + (base32 "14c8f4gzixf0j9fkx68jgl85q7b05852kk0vf09gi6h0xmafl817"= )))) + ("pinentry" + ,(origin + (method url-fetch) + (uri "https://www.gnupg.org/ftp/gcrypt/pinentry/pinentry-1.1.0.= tar.bz2") + (sha256 + (base32 "0w35ypl960pczg5kp6km3dyr000m1hf0vpwwlh72jjkjza36c1v8"= )))) + ("gnupg" + ,(origin + (method url-fetch) + (uri "https://www.gnupg.org/ftp/gcrypt/gnupg/gnupg-2.2.10.tar.b= z2") + (sha256 + (base32 "05f9804g72pffdxgvxjmjzkfcpjg1x221g9rwcr8fi51hrxd77br"= )))) + ("slang" + ,(origin + (method url-fetch) + (uri "https://www.jedsoft.org/releases/slang/slang-2.3.1a.tar.b= z2") + (sha256 + (base32 "0dlcy0hn0j6cj9qj5x6hpb0axifnvzzmv5jqq0wq14fygw0c7w2l"= )))) + ("newt" + ,(origin + (method url-fetch) + (uri "https://releases.pagure.org/newt/newt-0.52.20.tar.gz") + (sha256 + (base32 "1g3dpfnvaw7vljbr7nzq1rl88d6r8cmrvvng9inphgzwxxmvlrld"= )))) + + ;;; coreboot cross. + + ("gmp" + ,(origin + (method url-fetch) + (uri "https://ftpmirror.gnu.org/gmp/gmp-6.1.2.tar.xz") + (sha256 + (base32 "04hrwahdxyqdik559604r7wrj9ffklwvipgfxgj4ys4skbl6bdc7"= )))) + ("mpfr" + ,(origin + (method url-fetch) + (uri "https://ftpmirror.gnu.org/mpfr/mpfr-3.1.5.tar.xz") + (sha256 + (base32 "1g32l2fg8f62lcyzzh88y3fsh6rk539qc6ahhdgvx7wpnf1dwpq1"= )))) + ("mpc" + ,(origin + (method url-fetch) + (uri "https://ftpmirror.gnu.org/mpc/mpc-1.0.3.tar.gz") + (sha256 + (base32 "1hzci2zrrd7v3g1jk35qindq05hbl0bhjcyyisq9z209xb3fqzb1"= )))) + ("binutils-2.30" + ,(origin + (method url-fetch) + (uri "https://ftpmirror.gnu.org/binutils/binutils-2.30.tar.xz") + (sha256 + (base32 "1rhshw4m5m2pjz8g15hpiwhp52kn0pj0b5dxy0v7lwigmspbhikf"= )))) + ("gcc-8" + ,(origin + (method url-fetch) + (uri "https://ftpmirror.gnu.org/gcc/gcc-8.1.0/gcc-8.1.0.tar.xz") + (sha256 + (base32 "0lxil8x0jjx7zbf90cy1rli650akaa6hpk8wk8s62vk2jbwnc60x"= )))) + ;; Note: Non-coreboot heads really doesn't need that. + ("acpica-coreboot" + ,(origin + (method url-fetch) + (uri "https://acpica.org/sites/acpica/files/acpica-unix2-201805= 31.tar.gz") + (sha256 + (base32 "0q7vg1nr51f3rg16vjh4glz361a64r6gpm46fqkl2jf4fq7g43g5"= )))))) + (arguments + `(#:tests? #f ; Toplevel makefile has no tests. + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs #:allow-other-keys) + ;; For edk2 and kexec-tools. + ;; FIXME: musl *musl-cross*/x86_64-linux-musl/bin/x86_64-linu= x-musl-gcc || ./x86_64-linux-musl/x86_64-linux-musl/bin/musl-gcc. + (setenv "BUILD_CC" (string-append (assoc-ref inputs "musl-cro= ss") "/crossgcc/x86_64-linux-musl/bin/x86_64-linux-musl-gcc")) + ;; Disable wget. + (setenv "WGET" "true") + ;; Work around mcheck.h problem (in glibc!?) + (substitute* "modules/popt" + (("[.]/configure") "CFLAGS=3D\"-D__END_DECLS -D__BEGIN_DECLS= -D__THROW\" ./configure")) + #t)) + (add-after 'unpack 'unpack-heads-packages + (lambda* (#:key inputs #:allow-other-keys) + (define (install-file* source-key destination-directory desti= nation-suffix) + (let* ((source-file (assoc-ref inputs source-key)) + (source-basename (basename source-file)) + (source-parts (string-split source-basename #\-)) + (drop (@ (srfi srfi-1) drop)) + (destination-file + (string-join (drop source-parts 1) "-"))) + (copy-file source-file + (string-append destination-directory "/" + destination-file destination-suffix)) + ;(invoke "tar" "-xf" source-file "-C" "build") +)) + (mkdir-p "packages") + (setenv "V" "1") ; verbose + (setenv "GUIX_C_INCLUDE_PATH" (getenv "C_INCLUDE_PATH")) + (setenv "GUIX_CPLUS_INCLUDE_PATH" (getenv "CPLUS_INCLUDE_PATH= ")) + (setenv "GUIX_LIBRARY_PATH" (getenv "LIBRARY_PATH")) + (setenv "GUIX_CPATH" (getenv "CPATH")) + (for-each (lambda (name) + (install-file* name "packages" ".tmp")) + '("linux" "coreboot-blobs" "coreboot" "busybox" "zl= ib" "mbedtls" "kexec-tools" "qrencode" "pciutils" "util-linux" "flashrom" "= popt" "lvm2" "cryptsetup" "libgpg-error" "libgcrypt" "libksba" "libassuan" = "npth" "libusb" "libusb-compat" "dropbear" "pinentry" "gnupg" "slang" "newt= " "musl")) + (mkdir-p "build") + (mkdir-p "build/musl-cross-git/tarballs") + (mkdir-p "build/coreboot-4.8.1/util/crossgcc/tarballs") + (for-each (lambda (name) + (install-file* name "build/coreboot-4.8.1/util/cr= ossgcc/tarballs" "")) + '("gmp" "mpfr" "mpc" "binutils-2.30" "gcc-8" "acpic= a-coreboot")) + (copy-recursively (assoc-ref inputs "musl-cross") "build/musl= -cross-git") + (copy-recursively (assoc-ref inputs "tpmtotp") "build/tpmtotp= -git") + (copy-recursively (assoc-ref inputs "flashtools") "build/flas= htools-0.0.1") + (copy-recursively (assoc-ref inputs "msrtools") "build/msrtoo= ls-git") + + (setenv "MUSL_DIR" (assoc-ref inputs "musl-cross")) + (setenv "CROSS" (string-append (getenv "MUSL_DIR") "/crossgcc= /x86_64-linux-musl/bin/x86_64-musl-linux-")) ; Note: Useless + (substitute* "Makefile" + ;; Disable our non-cross toolchain environment. + (("CROSS_TOOLS_NOCC :=3D ") + ; CPP=3D" (getenv "CROSS") "cpp CXXCPP=3D" (getenv "CROSS")= "cpp " + (string-append "CROSS_TOOLS_NOCC :=3D C_INCLUDE_PATH=3D CPL= US_INCLUDE_PATH=3D LIBRARY_PATH=3D CPATH=3D ")) + ;; Disable git. + (("git submodule update --init") + "true submodule update --init") + ;; Re-enable our non-cross toolchain environment selectively. + (("^WGET.*") + (string-append "HOSTCC =3D" ; for busybox + " C_INCLUDE_PATH=3D" (or (getenv "GUIX_C_INC= LUDE_PATH") "") + " CPLUS_INCLUDE_PATH=3D" (or (getenv "GUIX_C= PLUS_INCLUDE_PATH") "") + " CPATH=3D" (or (getenv "GUIX_CPATH") "") + " LIBRARY_PATH=3D" (or (getenv "GUIX_LIBRARY= _PATH") "") + " gcc\n" + "CC_FOR_BUILD =3D $(HOSTCC)\n" ; for libgpg-= error + "BUILD_CC =3D $(HOSTCC)\n")) ; for kexec-too= ls + ;; Disable git, patch shebangs, and selectively re-enable ho= st compiler. + ;; (Note: $HOSTCC is too complicated for bash, for example + ;; HOSTCC=3D"a=3Db c=3Dd gcc", then invoking $HOSTCC won't w= ork). + (("(git clone.*)." _ tar) + (format #f "(~a) && (cd $(build)/$($1_base_dir) && for s in= Makefile Makefile.in configure lib/configure config.sub config.guess tools= /install.sh tools/scripts/Makefile.include tools/power/cpupower/Makefile Ma= kefile.rules scripts/* applets/usage_compressed applets/busybox.mkll applet= s/busybox.mksuid po/Makefile.in.in po/Makefile.in po/Makefile make.tmpl.in = *-config.in src/*-config.in src/Makefile.in applets/install.sh applets/busy= box.mkll tests/pkits/* tests/openpgp/* tests/fake-pinentries/fake-pinentry.= sh tests/*/Makefile tests/inittests tests/runtests tests/Makefile.in tests/= runtest modules/test/runtests.sh src/test/runtests.sh mkfiles/build.sh auto= conf/* demo/Makefile.in slsh/Makefile.in util/xcompile/xcompile util/genbui= ld_h/genbuild_h.sh ; do if [ -f \"$$$$s\" ] ; then sed -i -e 's;/bin/sh\\>;= ~a/bin/sh;' -e 's;/bin/pwd\\>;pwd;' -e 's;/bin/ln\\>;ln;' -e 's;/usr/bin/fi= le\\>;file;' -e 's;/bin/false\\>;false;' -e 's;/bin/bash\\>;~a/bin/bash;' -= e 's;/usr/bin/env bash;~a/bin/bash;' -e 's;git clone;true clone;' -e 's;^TE= RMCAP=3D-ltermcap;TERMCAP=3D;' -e 's;^HOSTCC.*$$$$;HOSTCC=3DC_INCLUDE_PATH= =3D\"$(GUIX_C_INCLUDE_PATH)\" CPLUS_INCLUDE_PATH=3D\"$(GUIX_CPLUS_INCLUDE_P= ATH)\" CPATH=3D\"$(GUIX_CPATH)\" LIBRARY_PATH=3D\"$(GUIX_LIBRARY_PATH)\" gc= c;' -e 's;^\\(\\$$$$HOSTCC[^|]*\\);(echo \\1 | bash);' \"$$$$s\" ; fi ; don= e) +" "true" (assoc-ref inputs "bash") (assoc-ref inputs "bash") (assoc-ref in= puts "bash"))) + (("(tar -xf.*)." _ tar) + (format #f "(~a) && (cd $(build)/$($1_base_dir) && for s in= Makefile Makefile.in configure lib/configure config.sub config.guess tools= /install.sh tools/scripts/Makefile.include tools/power/cpupower/Makefile Ma= kefile.rules scripts/* applets/usage_compressed applets/busybox.mkll applet= s/busybox.mksuid po/Makefile.in.in po/Makefile.in po/Makefile make.tmpl.in= *-config.in src/*-config.in src/Makefile.in applets/install.sh applets/bus= ybox.mkll tests/pkits/* tests/openpgp/* tests/fake-pinentries/fake-pinentry= .sh tests/*/Makefile tests/inittests tests/runtests tests/Makefile.in tests= /runtest modules/test/runtests.sh src/test/runtests.sh mkfiles/build.sh aut= oconf/* demo/Makefile.in slsh/Makefile.in util/xcompile/xcompile util/genbu= ild_h/genbuild_h.sh ; do if [ -f \"$$$$s\" ] ; then sed -i -e 's;/bin/sh\\>= ;~a/bin/sh;' -e 's;^TERMCAP=3D-ltermcap;TERMCAP=3D;' -e 's;/bin/pwd\\>;pwd;= ' -e 's;/bin/ln\\>;ln;' -e 's;/usr/bin/file\\>;file;' -e 's;/bin/false\\>;f= alse;' -e 's;/bin/bash\\>;~a/bin/bash;' -e 's;/usr/bin/env bash;~a/bin/bash= ;' -e 's;git clone;true clone;' -e 's;^HOSTCC.*$$$$;HOSTCC=3DC_INCLUDE_PATH= =3D\"$(GUIX_C_INCLUDE_PATH)\" CPLUS_INCLUDE_PATH=3D\"$(GUIX_CPLUS_INCLUDE_P= ATH)\" CPATH=3D\"$(GUIX_CPATH)\" LIBRARY_PATH=3D\"$(GUIX_LIBRARY_PATH)\" gc= c;' -e 's;^\\(\\$$$$HOSTCC[^|]*\\);(echo \\1 | bash);' \"$$$$s\" ; fi ; don= e) +" tar (assoc-ref inputs "bash") (assoc-ref inputs "bash") (assoc-ref input= s "bash")))) + ;(substitute* "modules/musl-cross" + ; (("/bin/echo") "echo")) + (call-with-output-file "patches/coreboot-4.8.1/9999-shell.pat= ch" + (lambda (port) + (format port "--- coreboot-4.8.1/util/crossgcc/buildgcc.o= rig 2019-09-13 14:45:12.463998974 +0200 ++++ coreboot-4.8.1/util/crossgcc/buildgcc 2019-09-13 14:46:49.808268216 +0= 200 +@@ -462,6 +462,13 @@ + } + done + touch \"${dir}/.unpack_success\" ++ for s in \"${dir}/Makefile\" \"${dir}/configure\" \"${dir}/config.sub\"= \"${dir}/config.guess\" \"${dir}/mpn/cpp-ccas\" \"${dir}/mpn/m4-ccas\" \"$= {dir}/missing\" \"${dir}/\"*\"/configure\" \"${dir}/move-if-change\" \"${di= r}/libgcc/mkheader.sh\" \"${dir}/gcc/genmultilib\" ++ do ++ if [ -f \"${s}\" ] ++ then ++ sed -i -e 's;/bin/sh\\>;~a/bin/sh;' \"${s}\" ++ fi ++ done + ) + } +=20 +" (assoc-ref inputs "bash")))) + #t)) + (add-after 'install 'install-images + (lambda* (#:key outputs make-flags #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (make-flags-assoc (map (lambda (x) + (string-split x #\=3D)) + make-flags)) + (BOARD (car (assoc-ref make-flags-assoc "BOARD"))) + (out-images (string-append out "/libexec/heads/" BOARD= "/images"))) + (mkdir-p out-images) + (copy-recursively (string-append "build/" BOARD) out-images) + ;; Contains timestamp. + (delete-file (string-append out-images "/hashes.txt")) + #t)))))) + (home-page "https://github.com/osresearch/heads") + (synopsis "Heads: coreboot/LinuxBoot payload") + (description "A minimal Linux that runs as a coreboot or LinuxBoot ROM +payload to provide a secure, flexible boot environment for laptops and +servers.") + (license license:gpl2+)))) diff --git a/gnu/packages/patches/heads-make-environment.patch b/gnu/packag= es/patches/heads-make-environment.patch new file mode 100644 index 0000000000..f38d08ee51 --- /dev/null +++ b/gnu/packages/patches/heads-make-environment.patch @@ -0,0 +1,446 @@ +diff --git a/Makefile b/Makefile +index cc5cac6..ae8d7e7 100644 +--- a/Makefile ++++ b/Makefile +@@ -124,10 +124,14 @@ CROSS_TOOLS_NOCC :=3D \ +=20 + CROSS_TOOLS :=3D \ + CC=3D"$(heads_cc)" \ ++ CPP=3D"$(CROSS)cpp" \ ++ CXXCPP=3D"$(CROSS)cpp" \ ++ CC_FOR_BUILD=3D"$(CC_FOR_BUILD)" \ ++ BUILD_CC=3D"$(BUILD_CC)" \ ++ HOSTCC=3D"$(HOSTCC)" \ + $(CROSS_TOOLS_NOCC) \ +=20 +=20 +- + ifeq "$(CONFIG_COREBOOT)" "y" + all: $(build)/$(BOARD)/coreboot.rom + else ifeq "$(CONFIG_LINUXBOOT)" "y" +@@ -348,7 +352,7 @@ define define_module =3D + echo "$(MAKE) \ + -C \"$(build)/$($1_dir)\" \ + $($1_target)" ; \ +- $(MAKE) \ ++ $($1_make_environment) $(MAKE) \ + -C "$(build)/$($1_dir)" \ + $($1_target) \ + ) \ +@@ -453,7 +457,7 @@ $(COREBOOT_UTIL_DIR)/inteltool/inteltool \ + : $(build)/$(coreboot_base_dir)/.canary \ + $(build)/$(musl_dir)/.build + +$(call do,MAKE,$(notdir $@),\ +- $(MAKE) -C "$(dir $@)" $(CROSS_TOOLS) \ ++ CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH=3D LIBRARY_PATH=3D $(MAKE= ) -C "$(dir $@)" $(CROSS_TOOLS) \ + ) +=20 + # superio depends on zlib and pciutils +diff --git a/modules/busybox b/modules/busybox +index f8f8a83..4836780 100644 +--- a/modules/busybox ++++ b/modules/busybox +@@ -11,6 +11,7 @@ busybox_hash :=3D 604553b7dbd59ded9e3ad7c6af49ed2cff599a= df3e54d9463e5e0027b362019c + busybox_configure :=3D $(MAKE) CC=3D"$(heads_cc)" oldconfig + busybox_config :=3D config/busybox.config + busybox_output :=3D busybox ++busybox_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PA= TH=3D LIBRARY_PATH=3D + busybox_target :=3D \ + $(CROSS_TOOLS) \ + $(MAKE_JOBS) \ +diff --git a/modules/cairo b/modules/cairo +index 647ed2c..00f6cac 100644 +--- a/modules/cairo ++++ b/modules/cairo +@@ -23,6 +23,7 @@ cairo_configure :=3D \ + && mv libtool-2 libtool \ + && chmod 755 libtool +=20 ++cairo_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + cairo_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/cryptsetup b/modules/cryptsetup +index 4cea7f3..d68da0c 100644 +--- a/modules/cryptsetup ++++ b/modules/cryptsetup +@@ -20,6 +20,7 @@ cryptsetup_configure :=3D ./configure \ +=20 + # but after building, replace prefix so that they will be installed + # in the correct directory. ++cryptsetup_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE= _PATH=3D LIBRARY_PATH=3D + cryptsetup_target :=3D \ + $(MAKE_JOBS) \ + && $(MAKE) \ +diff --git a/modules/dropbear b/modules/dropbear +index 998087c..834a3ef 100644 +--- a/modules/dropbear ++++ b/modules/dropbear +@@ -19,6 +19,7 @@ dropbear_configure :=3D ./configure \ + --disable-wtmpx \ +=20=09 + dropbear_output :=3D ssh scp dropbear ++dropbear_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_P= ATH=3D LIBRARY_PATH=3D + dropbear_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/fbwhiptail b/modules/fbwhiptail +index f54a62d..1359677 100644 +--- a/modules/fbwhiptail ++++ b/modules/fbwhiptail +@@ -6,6 +6,7 @@ fbwhiptail_version :=3D git + fbwhiptail_dir :=3D fbwhiptail + fbwhiptail_repo :=3D https://source.puri.sm/coreboot/fbwhiptail.git +=20 ++fbwhiptail_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE= _PATH=3D LIBRARY_PATH=3D + fbwhiptail_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/flashrom b/modules/flashrom +index 0a29b18..d695818 100644 +--- a/modules/flashrom ++++ b/modules/flashrom +@@ -11,6 +11,7 @@ flashrom_tar :=3D flashrom-$(flashrom_version).tar.bz2 + flashrom_url :=3D https://download.flashrom.org/releases/$(flashrom_tar) + flashrom_hash :=3D 3702fa215ba5fb5af8e54c852d239899cfa1389194c1e51cb2a170= c4dc9dee64 +=20 ++flashrom_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_P= ATH=3D LIBRARY_PATH=3D + flashrom_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/flashtools b/modules/flashtools +index d95c215..090362c 100644 +--- a/modules/flashtools ++++ b/modules/flashtools +@@ -11,6 +11,7 @@ flashtools_tar :=3D flashtools-$(flashtools_version).tar= .gz + flashtools_url :=3D https://github.com/osresearch/flashtools/archive/v$(f= lashtools_version).tar.gz + flashtools_hash :=3D e8205aa3d19e536080f5974ed06ab9a88c4c3f37870c2f6a3a08= a2f39302c22c +=20 ++flashtools_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE= _PATH=3D LIBRARY_PATH=3D + flashtools_target :=3D \ + $(CROSS_TOOLS) \ + CFLAGS=3D"-I$(INSTALL)/include" \ +diff --git a/modules/frotz b/modules/frotz +index 611e04a..e2c2e22 100644 +--- a/modules/frotz ++++ b/modules/frotz +@@ -8,6 +8,7 @@ frotz_hash :=3D dbb5eb3bc95275dcb984c4bdbaea58bc1f1b085b20= 092ce6e86d9f0bf3ba858f +=20 + frotz_configure :=3D touch .config +=20 ++frotz_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + frotz_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/gpg b/modules/gpg +index 4d4440a..6a48664 100644 +--- a/modules/gpg ++++ b/modules/gpg +@@ -39,6 +39,7 @@ gpg_configure :=3D ./configure \ + # Run one build to generate the executables with the pre-defined + # exec_prefix and datarootdir, then a second make to install the binaries + # into our actual target location ++gpg_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + gpg_target :=3D $(MAKE_JOBS) \ + && $(MAKE) -C $(build)/$(gpg_dir) \ + DESTDIR=3D"$(INSTALL)" \ +diff --git a/modules/gpg2 b/modules/gpg2 +index 318a4cd..522e518 100644 +--- a/modules/gpg2 ++++ b/modules/gpg2 +@@ -50,6 +50,7 @@ gpg2_configure :=3D ./configure \ + # Run one build to generate the executables with the pre-defined + # exec_prefix and datarootdir, then a second make to install the binaries + # into our actual target location ++gpg2_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + gpg2_target :=3D $(MAKE_JOBS) \ + && $(MAKE) -C $(build)/$(gpg2_dir) \ + DESTDIR=3D"$(INSTALL)" \ +diff --git a/modules/kexec b/modules/kexec +index d2311c2..b507d81 100644 +--- a/modules/kexec ++++ b/modules/kexec +@@ -14,6 +14,7 @@ kexec_configure :=3D ./configure \ + --without-lzma \ + && $(MAKE) clean +=20 ++kexec_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + kexec_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/libassuan b/modules/libassuan +index 3c4e319..6138ec2 100644 +--- a/modules/libassuan ++++ b/modules/libassuan +@@ -14,6 +14,7 @@ libassuan_configure :=3D ./configure \ + --with-libgpg-error-prefix=3D"$(INSTALL)" \ + --disable-asm \ +=20 ++libassuan_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_= PATH=3D LIBRARY_PATH=3D + libassuan_target :=3D $(MAKE_JOBS) \ + DESTDIR=3D"$(INSTALL)" \ + $(CROSS_TOOLS) \ +diff --git a/modules/libgcrypt b/modules/libgcrypt +index aa7e1ef..384f672 100644 +--- a/modules/libgcrypt ++++ b/modules/libgcrypt +@@ -14,6 +14,7 @@ libgcrypt_configure :=3D ./configure \ + --disable-asm \ + --disable-nls \ +=20=09 ++libgcrypt_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_= PATH=3D LIBRARY_PATH=3D + libgcrypt_target :=3D $(MAKE_JOBS) \ + DESTDIR=3D"$(INSTALL)" \ + $(CROSS_TOOLS) \ +diff --git a/modules/libgpg-error b/modules/libgpg-error +index 752e11a..3d4d217 100644 +--- a/modules/libgpg-error ++++ b/modules/libgpg-error +@@ -16,6 +16,7 @@ libgpg-error_configure :=3D ./configure \ + --disable-tests \ + --disable-asm \ +=20 ++libgpg-error_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLU= DE_PATH=3D LIBRARY_PATH=3D CC_FOR_BUILD=3D"$(CC_FOR_BUILD)" + libgpg-error_target :=3D $(MAKE_JOBS) \ + DESTDIR=3D"$(INSTALL)" \ + $(CROSS_TOOLS) \ +diff --git a/modules/libksba b/modules/libksba +index d352913..bd1835b 100644 +--- a/modules/libksba ++++ b/modules/libksba +@@ -14,6 +14,7 @@ libksba_configure :=3D ./configure \ + --with-libgpg-error-prefix=3D"$(INSTALL)" \ + --disable-asm \ +=20 ++libksba_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PA= TH=3D LIBRARY_PATH=3D + libksba_target :=3D $(MAKE_JOBS) \ + DESTDIR=3D"$(INSTALL)" \ + $(CROSS_TOOLS) \ +diff --git a/modules/libpng b/modules/libpng +index d6d9e65..33306e2 100644 +--- a/modules/libpng ++++ b/modules/libpng +@@ -12,6 +12,7 @@ libpng_configure :=3D \ + --host i386-elf-linux \ + --prefix=3D"/" \ +=20 ++libpng_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PAT= H=3D LIBRARY_PATH=3D + libpng_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/libremkey-hotp-verification b/modules/libremkey-hotp-= verification +index c9b9d45..e7fab7d 100644 +--- a/modules/libremkey-hotp-verification ++++ b/modules/libremkey-hotp-verification +@@ -6,6 +6,7 @@ libremkey-hotp-verification_version :=3D git + libremkey-hotp-verification_dir :=3D libremkey-hotp-verification + libremkey-hotp-verification_repo :=3D --recursive https://github.com/Nitr= okey/nitrokey-hotp-verification +=20 ++libremkey-hotp-verification_make_environment :=3D CPATH=3D C_INCLUDE_PATH= =3D CPLUS_INCLUDE_PATH=3D LIBRARY_PATH=3D + libremkey-hotp-verification_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/libusb b/modules/libusb +index b7fe959..fe274e9 100644 +--- a/modules/libusb ++++ b/modules/libusb +@@ -19,6 +19,7 @@ libusb_configure :=3D ./configure\ + # exec_prefix and datarootdir, then a second make to install the binaries + # into our actual target location +=20 ++libusb_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PAT= H=3D LIBRARY_PATH=3D + libusb_target :=3D $(MAKE_JOBS) \ + DESTDIR=3D"$(INSTALL)" \ + $(CROSS_TOOLS) \ +diff --git a/modules/libusb-compat b/modules/libusb-compat +index f95854e..78033ef 100644 +--- a/modules/libusb-compat ++++ b/modules/libusb-compat +@@ -22,6 +22,7 @@ libusb-compat_configure :=3D ./configure \ + # Run one build to generate the executables with the pre-defined + # exec_prefix and datarootdir, then a second make to install the binaries + # into our actual target location ++libusb-compat_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCL= UDE_PATH=3D LIBRARY_PATH=3D + libusb-compat_target :=3D $(MAKE_JOBS) \ + DESTDIR=3D"$(INSTALL)" \ + $(CROSS_TOOLS) \ +diff --git a/modules/lvm2 b/modules/lvm2 +index 91f0f53..def7544 100644 +--- a/modules/lvm2 ++++ b/modules/lvm2 +@@ -34,6 +34,7 @@ lvm2_configure :=3D \ + --with-cluster=3Dnone \ +=20 + # not sure why LIB_SUFFIX is not defined in the cross build ++lvm2_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + lvm2_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/mbedtls b/modules/mbedtls +index d844b16..2611866 100644 +--- a/modules/mbedtls ++++ b/modules/mbedtls +@@ -10,6 +10,7 @@ mbedtls_libraries :=3D library/libmbedcrypto.so.0 +=20 + mbedtls_configure :=3D +=20 ++mbedtls_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PA= TH=3D LIBRARY_PATH=3D + mbedtls_target :=3D \ + SHARED=3D1 \ + DESTDIR=3D$(INSTALL) \ +diff --git a/modules/msrtools b/modules/msrtools +index 9adfab0..85b5954 100644 +--- a/modules/msrtools ++++ b/modules/msrtools +@@ -11,6 +11,7 @@ msrtools_tar :=3D msr-tools-$(msrtools_version).tar.gz + msrtools_url :=3D https://github.com/intel/msr-tools/archive/msr-tools-$(= msrtools_version).tar.gz + msrtools_hash :=3D e8205aa3d19e536080f5974ed06ab9a88c4c3f37870c2f6a3a08a2= f39302c22c +=20 ++msrtools_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_P= ATH=3D LIBRARY_PATH=3D + msrtools_target :=3D \ + $(CROSS_TOOLS) \ + CFLAGS=3D"-I$(INSTALL)/include" \ +diff --git a/modules/musl b/modules/musl +index eec76de..89b9a0f 100644 +--- a/modules/musl ++++ b/modules/musl +@@ -24,6 +24,7 @@ musl_configure :=3D ./configure \ + --enable-gcc-wrapper \ + --enable-shared \ +=20 ++musl_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + musl_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS_NOCC) \ +diff --git a/modules/newt b/modules/newt +index cc6341d..bad67c7 100644 +--- a/modules/newt ++++ b/modules/newt +@@ -8,6 +8,7 @@ newt_tar :=3D newt-$(newt_version).tar.gz + newt_url :=3D https://releases.pagure.org/newt/$(newt_tar) + newt_hash :=3D 8d66ba6beffc3f786d4ccfee9d2b43d93484680ef8db9397a4fb70b5ad= bb6dbc +=20 ++newt_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + newt_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/npth b/modules/npth +index e0f30c6..a43d626 100644 +--- a/modules/npth ++++ b/modules/npth +@@ -14,6 +14,7 @@ npth_configure :=3D ./configure \ + --with-libgpg-error-prefix=3D"$(INSTALL)" \ + --disable-asm \ +=20 ++npth_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + npth_target :=3D $(MAKE_JOBS) \ + DESTDIR=3D"$(INSTALL)" \ + $(CROSS_TOOLS) \ +diff --git a/modules/pciutils b/modules/pciutils +index 2ea5b9b..dfee3a0 100644 +--- a/modules/pciutils ++++ b/modules/pciutils +@@ -16,6 +16,7 @@ pciutils_hash :=3D 64293c6ab9318c40ef262b76d87bd90975317= 59752bac556e50979b1e63cfe6 + # reproducible. Otherwise the build path will be embedded + # in the library and executables. +=20 ++pciutils_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_P= ATH=3D LIBRARY_PATH=3D + pciutils_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/pinentry b/modules/pinentry +index c0e93d7..a541ce0 100644 +--- a/modules/pinentry ++++ b/modules/pinentry +@@ -33,6 +33,7 @@ pinentry_configure :=3D ./configure \ + # Run one build to generate the executables with the pre-defined + # exec_prefix and datarootdir, then a second make to install the binaries + # into our actual target location ++pinentry_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_P= ATH=3D LIBRARY_PATH=3D + pinentry_target :=3D $(MAKE_JOBS) \ + && $(MAKE) -C $(build)/$(pinentry_dir) \ + DESTDIR=3D"$(INSTALL)" \ +diff --git a/modules/pixman b/modules/pixman +index 65a2e20..198f8ac 100644 +--- a/modules/pixman ++++ b/modules/pixman +@@ -13,6 +13,7 @@ pixman_configure :=3D \ + --prefix=3D"/" \ + --disable-gtk +=20 ++pixman_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PAT= H=3D LIBRARY_PATH=3D + pixman_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/popt b/modules/popt +index b3b0b04..242ae03 100644 +--- a/modules/popt ++++ b/modules/popt +@@ -11,6 +11,7 @@ popt_configure :=3D ./configure \ + --prefix "/" \ + --host i386-elf-linux \ +=20 ++popt_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + popt_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/qrencode b/modules/qrencode +index fb73c7b..afded70 100644 +--- a/modules/qrencode ++++ b/modules/qrencode +@@ -14,6 +14,7 @@ qrencode_configure :=3D ./configure \ + --without-tools \ + --host i386-elf-linux \ +=20 ++qrencode_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_P= ATH=3D LIBRARY_PATH=3D + qrencode_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/slang b/modules/slang +index a4ac84b..a338639 100644 +--- a/modules/slang ++++ b/modules/slang +@@ -18,6 +18,7 @@ slang_configure :=3D ./configure \ + && mkdir -p src/elfobjs +=20 + # Disable parallel make for the install target ++slang_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + slang_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/tpmtotp b/modules/tpmtotp +index 792dd51..02c6c10 100644 +--- a/modules/tpmtotp ++++ b/modules/tpmtotp +@@ -11,6 +11,7 @@ tpmtotp_tar :=3D tpmtotp-$(tpmtotp_version).tar.gz + tpmtotp_url :=3D https://github.com/osresearch/tpmtotp/archive/v$(tpmtotp= _version).tar.gz + tpmtotp_hash :=3D e8205aa3d19e536080f5974ed06ab9a88c4c3f37870c2f6a3a08a2f= 39302c22c +=20 ++tpmtotp_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PA= TH=3D LIBRARY_PATH=3D + tpmtotp_target :=3D \ + $(CROSS_TOOLS) \ + CFLAGS=3D"-I$(INSTALL)/include" \ +diff --git a/modules/util-linux b/modules/util-linux +index e3377f6..a50bf40 100644 +--- a/modules/util-linux ++++ b/modules/util-linux +@@ -22,6 +22,7 @@ util-linux_configure :=3D ./configure \ + --enable-libblkid \ +=20 +=20 ++util-linux_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE= _PATH=3D LIBRARY_PATH=3D + util-linux_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \ +diff --git a/modules/zlib b/modules/zlib +index dbdb44e..a6290b2 100644 +--- a/modules/zlib ++++ b/modules/zlib +@@ -12,6 +12,7 @@ zlib_configure :=3D \ + ./configure \ + --prefix=3D"/" \ +=20 ++zlib_make_environment :=3D CPATH=3D C_INCLUDE_PATH=3D CPLUS_INCLUDE_PATH= =3D LIBRARY_PATH=3D + zlib_target :=3D \ + $(MAKE_JOBS) \ + $(CROSS_TOOLS) \