diff options
Diffstat (limited to 'reproduce')
-rw-r--r-- | reproduce/software/config/installation/checksums.mk | 1 | ||||
-rw-r--r-- | reproduce/software/config/installation/versions.mk | 1 | ||||
-rw-r--r-- | reproduce/software/make/basic.mk | 54 | ||||
-rw-r--r-- | reproduce/software/make/python.mk | 1 |
4 files changed, 52 insertions, 5 deletions
diff --git a/reproduce/software/config/installation/checksums.mk b/reproduce/software/config/installation/checksums.mk index 6ea6da4..d06559a 100644 --- a/reproduce/software/config/installation/checksums.mk +++ b/reproduce/software/config/installation/checksums.mk @@ -50,6 +50,7 @@ mpfr-checksum = d583555d08863bf36c89b289ae26bae353d9a31f08ee3894520992d2c26e5683 ncurses-checksum = e308af43f8b7e01e98a55f4f6c4ee4d1c39ce09d95399fa555b3f0cdf5fd0db0f4c4d820b4af78a63f6cf6d8627587114a40af48cfc066134b600520808a77ee openssl-checksum = 1523985ba90f38aa91aa6c2d57652f4e243cb2a095ce6336bf34b39b5a9b5b876804299a6825c758b65990e57948da532cca761aa12b10958c97478d04dd6d34 patchelf-checksum = 39745662651cf0a9915685b2767a611ceab4286f8fa57eace342b3f44248431616e8563d4ac6709c97d8534229c73c05470239e462b7e74b36bf629a876dfbad +perl-checksum = b0db58699dfbe1bab10a7b0472cc377ed215668c89d13c7ca693e6b75ab6a6593a9cf137adbd6096063ee8200d83b389e745bb96b7c6bf4cf4588ac587a446ae pkgconfig-checksum = 4861ec6428fead416f5cbbbb0bbad10b9152967e481d4b0ff2eb396a9f297f552984c9bb72f6864a37dcd8fca1d9ccceda3ef18d8f121938dbe4fdf2b870fe75 readline-checksum = 41759d27bc3a258fefd7f4ff3277fa6ab9c21abb7b160e1a75aa8eba547bd90b288514e76264bd94fb0172da8a4faa54aab2c07b68a0356918ecf7f1969e866f sed-checksum = e0be5db4cdf8226b34aaa9071bc5ae0eafde1c52227cee3512eea7fe2520d6c5cebf15266aa5c4adffbb51bf125c140a15644e28d57759893c12823ea9bbf4fb diff --git a/reproduce/software/config/installation/versions.mk b/reproduce/software/config/installation/versions.mk index bf503ff..3e0fd57 100644 --- a/reproduce/software/config/installation/versions.mk +++ b/reproduce/software/config/installation/versions.mk @@ -48,6 +48,7 @@ mpfr-version = 4.0.2 ncurses-version = 6.1 openssl-version = 1.1.1a patchelf-version = 0.10 +perl-version = 5.30.0 pkgconfig-version = 0.29.2 readline-version = 8.0 sed-version = 4.7 diff --git a/reproduce/software/make/basic.mk b/reproduce/software/make/basic.mk index 64c10c0..c5b4ca5 100644 --- a/reproduce/software/make/basic.mk +++ b/reproduce/software/make/basic.mk @@ -131,6 +131,7 @@ tarballs = $(foreach t, bash-$(bash-version).tar.lz \ ncurses-$(ncurses-version).tar.gz \ openssl-$(openssl-version).tar.gz \ patchelf-$(patchelf-version).tar.gz \ + perl-$(perl-version).tar.gz \ pkg-config-$(pkgconfig-version).tar.gz \ readline-$(readline-version).tar.gz \ sed-$(sed-version).tar.xz \ @@ -181,6 +182,10 @@ $(tarballs): $(tdir)/%: | $(lockdir) elif [ $$n = ncurses ]; then c=$(ncurses-checksum); w=http://ftp.gnu.org/gnu/ncurses; \ elif [ $$n = openssl ]; then c=$(openssl-checksum); w=http://www.openssl.org/source; \ elif [ $$n = patchelf ]; then c=$(patchelf-checksum); w=http://nixos.org/releases/patchelf/patchelf-$(patchelf-version); \ + elif [ $$n = perl ]; then \ + c=$(perl-checksum); \ + v=$$(echo $(perl-version) | sed -e's/\./ /g' | awk '{printf("%d.0", $$1)}'); \ + w=https://www.cpan.org/src/$$v; \ elif [ $$n = pkg ]; then c=$(pkgconfig-checksum); w=http://pkg-config.freedesktop.org/releases; \ elif [ $$n = readline ]; then c=$(readline-checksum); w=http://ftp.gnu.org/gnu/readline; \ elif [ $$n = sed ]; then c=$(sed-checksum); w=http://ftp.gnu.org/gnu/sed; \ @@ -292,9 +297,6 @@ $(ibidir)/low-level-links: | $(ibdir) $(ildir) # GNU Gettext (translate messages) $(call makelink,msgfmt) - # Needed by TeXLive specifically. - $(call makelink,perl) - # Necessary libraries: # Libdl (for dynamic loading libraries at runtime) # POSIX Threads library for multi-threaded programs. @@ -1016,6 +1018,50 @@ $(ibidir)/mpfr: $(ibidir)/gmp \ $(call gbuild, mpfr-$(mpfr-version), static, , , make check) \ && echo "GNU Multiple Precision Floating-Point Reliably $(mpfr-version)" > $@ +$(ibidir)/perl: | $(ibidir)/coreutils \ + $(tdir)/perl-$(perl-version).tar.gz + major_version=$$(echo $(perl-version) \ + | sed -e's/\./ /g' \ + | awk '{printf("%d", $$1)}'); \ + base_version=$$(echo $(perl-version) \ + | sed -e's/\./ /g' \ + | awk '{printf("%d.%d", $$1, $$2)}'); \ + cd $(ddir) \ + && rm -rf perl-$(perl-version) \ + && if ! tar xf $(word 1,$(filter $(tdir)/%,$|)); then \ + echo; echo "Tar error"; exit 1; \ + fi \ + && cd perl-$(perl-version) \ + && sed -e's|\#\! /bin/sh|\#\! $(ibdir)/bash|' \ + -e's|\#\!/bin/sh|\#\! $(ibdir)/bash|' \ + Configure > Configure-tmp \ + && mv -f Configure-tmp Configure \ + && chmod +x Configure \ + && ./Configure -des \ + -Dusethreads \ + -Duseshrplib \ + -Dprefix=$(idir) \ + -Dvendorprefix=$(idir) \ + -Dprivlib=$(idir)/share/perl$$major_version/core_perl \ + -Darchlib=$(idir)/lib/perl$$major_version/$$base_version/core_perl \ + -Dsitelib=$(idir)/share/perl$$major_version/site_perl \ + -Dsitearch=$(idir)/lib/perl$$major_version/$$basever/site_perl \ + -Dvendorlib=$(idir)/share/perl$$major_version/vendor_perl \ + -Dvendorarch=$(idir)/lib/perl$$major_version/$$base_version/vendor_perl \ + -Dscriptdir=$(idir)/bin/core_perl \ + -Dsitescript=$(idir)/bin/site_perl \ + -Dvendorscript=$(idir)/bin/vendor_perl \ + -Dinc_version_list=none \ + -Dman1ext=1perl \ + -Dman3ext=3perl \ + -Dcccdlflags='-fPIC' \ + -Dlddlflags="-shared $$LDFLAGS" \ + -Dldflags="$$LDFLAGS" \ + && make SHELL=$(ibdir)/bash -j$(numthreads) \ + && make SHELL=$(ibdir)/bash install \ + && echo "Perl $(perl-version)" > $@ + + $(ibidir)/pkg-config: | $(ibidir)/coreutils \ $(tdir)/pkg-config-$(pkgconfig-version).tar.gz # An existing `libiconv' can cause a conflict with `pkg-config', @@ -1043,7 +1089,7 @@ $(ibidir)/sed: | $(ibidir)/coreutils \ $(call gbuild, sed-$(sed-version), static) \ && echo "GNU Sed $(sed-version)" > $@ -$(ibidir)/texinfo: | $(ibidir)/bash \ +$(ibidir)/texinfo: | $(ibidir)/perl \ $(tdir)/texinfo-$(texinfo-version).tar.xz $(call gbuild, texinfo-$(texinfo-version), static) \ && if [ "x$(needpatchelf)" != x ]; then \ diff --git a/reproduce/software/make/python.mk b/reproduce/software/make/python.mk index ce0c974..1543048 100644 --- a/reproduce/software/make/python.mk +++ b/reproduce/software/make/python.mk @@ -301,7 +301,6 @@ $(ibidir)/python: $(ibidir)/libffi \ | $(tdir)/python-$(python-version).tar.gz # On Mac systems, the build complains about `clang' specific # features, so we can't use our own GCC build here. - echo "HEREKJRE"; \ if [ x$(on_mac_os) = xyes ]; then \ export CC=clang; \ export CXX=clang++; \ |