From e99798696c2244a7ed682ebf1e128ba9bbbda037 Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Thu, 25 Apr 2019 21:49:48 +0100 Subject: Added --enable-single option in FFTW installation Until this commit, FFTW was installed by default, without the single precission option. However, when installing `sextractor' in a new system we found an error in the installation complaining about not having single precission files of FFTW. More explicity the error was: "FFTW single precision library files not found in [...]". With this commit, we fix this problem by passing the option `--enable-single' in the installation of FFTW. --- reproduce/software/make/high-level.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'reproduce/software/make') diff --git a/reproduce/software/make/high-level.mk b/reproduce/software/make/high-level.mk index 969cf8a..43d1bbb 100644 --- a/reproduce/software/make/high-level.mk +++ b/reproduce/software/make/high-level.mk @@ -279,7 +279,7 @@ $(ibidir)/gsl: $(tdir)/gsl-$(gsl-version).tar.gz $(ibidir)/fftw: $(tdir)/fftw-$(fftw-version).tar.gz $(call gbuild, $<, fftw-$(fftw-version), static, \ - --enable-shared) \ + --enable-shared --enable-single) \ && cp $(dtexdir)/fftw.tex $(ictdir)/ \ && echo "FFTW $(fftw-version) \citep{fftw}" > $@ -- cgit v1.2.1 From fee22fe7b91fd7df35dcb846df2040b10d88fb16 Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Sat, 27 Apr 2019 13:18:17 +0100 Subject: Lack of semicolons in Binutils installation rule for Mac OS fixed Until this commit, in Mac OS we were installing `binutils' as symbolic links of various programs (`as', `ar', `ld', `nm',` ps' and `ranlib'). However, there was a missing semicolon at the end of each line. As a consecuence, the installation of `binutils' on Mac OS systems failed. With this commit, we fix this problem by typing a semicolon at the end of each makelink line. --- reproduce/software/make/basic.mk | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'reproduce/software/make') diff --git a/reproduce/software/make/basic.mk b/reproduce/software/make/basic.mk index c800411..e657f4a 100644 --- a/reproduce/software/make/basic.mk +++ b/reproduce/software/make/basic.mk @@ -937,13 +937,13 @@ binutils-prerequisites = $(tdir)/binutils-$(binutils-version).tar.lz \ endif $(ibidir)/binutils: $(binutils-prerequisites) if [ x$(on_mac_os) = xyes ]; then \ - $(call makelink,as) \ - $(call makelink,ar) \ - $(call makelink,ld) \ - $(call makelink,nm) \ - $(call makelink,ps) \ - $(call makelink,ranlib) \ - echo "" > $@; \ + $(call makelink,as); \ + $(call makelink,ar); \ + $(call makelink,ld); \ + $(call makelink,nm); \ + $(call makelink,ps); \ + $(call makelink,ranlib); \ + echo "" > $@; \ else \ $(call gbuild, $<, binutils-$(binutils-version), static) \ && echo "GNU Binutils $(binutils-version)" > $@; \ -- cgit v1.2.1 From fc375571f51b044ca7255a1b6ff67d433ff0813e Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Sat, 27 Apr 2019 13:51:38 +0100 Subject: Modified netpbm installation answers for Mac OS systems Until now, we installed `netpbm' by setting the default paths to libraries and headers. That worked fine for GNU/Linux systems, however, in Mac OS systems we have to explicity say to `netpbm' questions what are the paths to the libraries and headers. We found this problem because we tried to run `solve-field' to obtain the astrometry of some images, and then it goes to use `pnmfile', a program that failed because it was not properly linked with `libnetpmb'. With this commit, we fix this problem by answering properly the questions in the configure step of `netpbm' and setting explicity where we want to place the libraries and headers. With this commit, we also update `netpbm' version. To do that, we have to download the last version, for which it doesn't exist a tarball. So, we built this tarball and put it in the Mohammad's webpage. --- reproduce/software/make/high-level.mk | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'reproduce/software/make') diff --git a/reproduce/software/make/high-level.mk b/reproduce/software/make/high-level.mk index 43d1bbb..56adf8e 100644 --- a/reproduce/software/make/high-level.mk +++ b/reproduce/software/make/high-level.mk @@ -123,7 +123,7 @@ tarballs = $(foreach t, astrometry.net-$(astrometrynet-version).tar.gz \ libpng-$(libpng-version).tar.xz \ libgit2-$(libgit2-version).tar.gz \ libxml2-$(libxml2-version).tar.gz \ - netpbm-$(netpbm-version).tgz \ + netpbm-$(netpbm-version).tar.gz \ openmpi-$(openmpi-version).tar.gz \ openblas-$(openblas-version).tar.gz \ pixman-$(pixman-version).tar.gz \ @@ -183,9 +183,7 @@ $(tarballs): $(tdir)/%: | $(lockdir) mergenames=0 w=https://github.com/libgit2/libgit2/archive/v$(libgit2-version).tar.gz elif [ $$n = libxml ]; then w=ftp://xmlsoft.org/libxml2 - elif [ $$n = netpbm ]; then - mergenames=0 - w=https://sourceforge.net/projects/netpbm/files/super_stable/$(netpbm-version)/netpbm-$(netpbm-version).tgz/download + elif [ $$n = netpbm ]; then w=http://akhlaghi.org/src elif [ $$n = openblas ]; then mergenames=0 w=https://github.com/xianyi/OpenBLAS/archive/v$(openblas-version).tar.gz @@ -587,14 +585,14 @@ endif # ask to the user. We give all answers with a pipe to the scripts (configure # and install). The questions are different depending on the system (tested # on GNU/Linux and Mac OS). -$(ibidir)/netpbm: $(tdir)/netpbm-$(netpbm-version).tgz \ +$(ibidir)/netpbm: $(tdir)/netpbm-$(netpbm-version).tar.gz\ $(ibidir)/libjpeg \ $(ibidir)/libpng \ $(ibidir)/libtiff \ $(ibidir)/libxml2 \ $(ibidir)/unzip if [ x$(on_mac_os) = xyes ]; then \ - answers='\n\n\n\n\n\n\n\n\n\n\n\nnone\n\n\n'; \ + answers='\n\n$(ildir)\n\n\n\n\n\n$(ildir)/include\n\n$(ildir)/include\n\n$(ildir)/include\nnone\n\n'; \ else \ answers='\n\n\n\ny\n\n\n\n\n\n\n\n\n\n\n\n\n'; \ fi; \ -- cgit v1.2.1 From 53c7b2a17d9f12f62b19166446e1558299a80e39 Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Sat, 27 Apr 2019 15:46:04 +0100 Subject: Astrometry-net installation modified to avoid two reporting steps Until this commit, we had a problem in the installation of Astrometry-net in Mac OS systems. During the runing of the Makefile, it stopped at the reporting stage because it tried to do a couple of steps that in Mac OS are not possible: $ cat /proc/cpuinfo $ free The reason is that `/proc/cpuinfo' and `free' doesn't exist in Mac OS. With this commit, we override these two steps. Since they are only for reporting, they are not mandatory. So, we avoid doing them by using `sed' before running the Makefile. --- reproduce/software/make/high-level.mk | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'reproduce/software/make') diff --git a/reproduce/software/make/high-level.mk b/reproduce/software/make/high-level.mk index 56adf8e..decb88d 100644 --- a/reproduce/software/make/high-level.mk +++ b/reproduce/software/make/high-level.mk @@ -498,9 +498,17 @@ $(ibidir)/astrometrynet: $(tdir)/astrometry.net-$(astrometrynet-version).tar.gz $(ibidir)/python \ $(ibidir)/swig \ $(ibidir)/wcslib + # We are modifying the Makefile in two steps because on Mac OS system we + # do not have `/proc/cpuinfo' nor `free'. Since this is only for the + # `report.txt', this changes do not causes problems in running + # `astrometrynet' cd $(ddir) \ + && rm -rf astrometry.net-$(astrometrynet-version) \ && if ! tar xf $<; then echo; echo "Tar error"; exit 1; fi \ && cd astrometry.net-$(astrometrynet-version) \ + && sed -e 's|cat /proc/cpuinfo|echo "Ignoring CPU info"|' \ + -e 's|-free|echo "Ignoring RAM info"|' Makefile > Makefile.tmp \ + && mv Makefile.tmp Makefile \ && make \ && make py \ && make extra \ -- cgit v1.2.1 From 69f94f1022ad5dd3142b2f93d76612e13e0b5820 Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Mon, 29 Apr 2019 09:08:50 +0100 Subject: Modified sip_tpv Python package prerequisites Until this commit, the prerequisites of `sip_tpv' were `mpmath' and `sympy'. However, the real prerequisites of `sip_tpv' are `astropy', `numpy' and `sympy'. With this commit, we fix this issue, and now `mpmath' is only a prerequisite of `sympy'. --- reproduce/software/make/python.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'reproduce/software/make') diff --git a/reproduce/software/make/python.mk b/reproduce/software/make/python.mk index ba811ba..00e497b 100644 --- a/reproduce/software/make/python.mk +++ b/reproduce/software/make/python.mk @@ -497,7 +497,8 @@ $(ipydir)/setuptools_scm: $(tdir)/setuptools_scm-$(setuptools_scm-version).tar.g Setuptools-scm $(setuptools_scm-version)) $(ipydir)/sip_tpv: $(tdir)/sip_tpv-$(sip_tpv-version).tar.gz \ - $(ipydir)/mpmath \ + $(ipydir)/astropy \ + $(ipydir)/numpy \ $(ipydir)/sympy $(call pybuild, tar xf, $<, sip_tpv-$(sip_tpv-version), ,) \ && cp $(dtexdir)/sip_tpv.tex $(ictdir)/ \ -- cgit v1.2.1 From 389d6e2862a0ecf0a6d849a915b02a17b304e45a Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Mon, 29 Apr 2019 10:56:26 +0100 Subject: Modified copyright information of some files With this commit, the copyright information of some files have been modify in order to include the work of Raul Infante-Sainz. --- reproduce/software/make/basic.mk | 1 + reproduce/software/make/high-level.mk | 1 + 2 files changed, 2 insertions(+) (limited to 'reproduce/software/make') diff --git a/reproduce/software/make/basic.mk b/reproduce/software/make/basic.mk index e657f4a..97fc506 100644 --- a/reproduce/software/make/basic.mk +++ b/reproduce/software/make/basic.mk @@ -16,6 +16,7 @@ # ------------------------------------------------------------------------ # # Copyright (C) 2018-2019 Mohammad Akhlaghi +# Copyright (C) 2019 Raul Infante-Sainz # # This Makefile is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the diff --git a/reproduce/software/make/high-level.mk b/reproduce/software/make/high-level.mk index decb88d..12fca21 100644 --- a/reproduce/software/make/high-level.mk +++ b/reproduce/software/make/high-level.mk @@ -9,6 +9,7 @@ # ------------------------------------------------------------------------ # # Copyright (C) 2018-2019 Mohammad Akhlaghi +# Copyright (C) 2019 Raul Infante-Sainz # # This Makefile is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the -- cgit v1.2.1 From 1ab991de9ee1f911bd156c1b45084763a4936a27 Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Mon, 29 Apr 2019 11:39:44 +0100 Subject: Added numpy and six as prerequisites of h5py Until now, we were missing `numpy' and `six' as prerequisites of `h5py'. Because we did the configure step with all cores, `numpy' and `six' allways were built before `h5py' with any crash. However, in a single thread configure run we noticed that we were missing these two dependencies. With this commit, we fix this issue by setting `numpy' and `six' as prerequisites of `h5py'. --- reproduce/software/make/python.mk | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'reproduce/software/make') diff --git a/reproduce/software/make/python.mk b/reproduce/software/make/python.mk index 00e497b..558de56 100644 --- a/reproduce/software/make/python.mk +++ b/reproduce/software/make/python.mk @@ -347,10 +347,12 @@ $(ipydir)/entrypoints: $(tdir)/entrypoints-$(entrypoints-version).tar.gz \ EntryPoints $(entrypoints-version)) $(ipydir)/h5py: $(tdir)/h5py-$(h5py-version).tar.gz \ - $(ibidir)/hdf5 \ $(ipydir)/cython \ + $(ibidir)/hdf5 \ + $(ipydir)/numpy \ $(ipydir)/pypkgconfig \ - $(ipydir)/setuptools + $(ipydir)/setuptools \ + $(ipydir)/six #$(ipydir)/mpi4py # AFTER its problem is fixed. #export HDF5_MPI=ON; # AFTER its problem is fixed. export HDF5_DIR=$(ildir); \ -- cgit v1.2.1 From 94f258b973a111178c3399bef372dc1b195dd025 Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Mon, 29 Apr 2019 13:30:13 +0100 Subject: Corrected spaces/TAB in some rules In some rules there were some spaces when we should use TAB, and also the other way around. We were using TAB instead using spaces. With this commit, we fix that spaces/TAB in the necessary rules. --- reproduce/software/make/high-level.mk | 122 +++++++++++++++++----------------- 1 file changed, 61 insertions(+), 61 deletions(-) (limited to 'reproduce/software/make') diff --git a/reproduce/software/make/high-level.mk b/reproduce/software/make/high-level.mk index 12fca21..b77bf47 100644 --- a/reproduce/software/make/high-level.mk +++ b/reproduce/software/make/high-level.mk @@ -206,13 +206,13 @@ $(tarballs): $(tdir)/%: | $(lockdir) exit 1 fi - # Download the requested tarball. Note that some packages may not - # follow our naming convention (where the package name is merged - # with its version number). In such cases, `w' will be the full - # address, not just the top directory address. But since we are - # storing all the tarballs in one directory, we want it to have - # the same naming convention, so we'll download it to a temporary - # name, then rename that. + # Download the requested tarball. Note that some packages may not + # follow our naming convention (where the package name is merged + # with its version number). In such cases, `w' will be the full + # address, not just the top directory address. But since we are + # storing all the tarballs in one directory, we want it to have + # the same naming convention, so we'll download it to a temporary + # name, then rename that. if [ $$mergenames = 1 ]; then tarballurl=$$w/"$*" else tarballurl=$$w fi @@ -313,7 +313,7 @@ $(ibidir)/libxml2: $(tdir)/libxml2-$(libxml2-version).tar.gz # If you really need the Python bindings, try the # --with-python-install-dir=DIR option $(call gbuild, $<, libxml2-$(libxml2-version), static, \ - --without-python) \ + --without-python) \ && echo "Libxml2 $(libxml2-version)" > $@ $(ibidir)/pixman: $(tdir)/pixman-$(pixman-version).tar.gz @@ -499,25 +499,25 @@ $(ibidir)/astrometrynet: $(tdir)/astrometry.net-$(astrometrynet-version).tar.gz $(ibidir)/python \ $(ibidir)/swig \ $(ibidir)/wcslib - # We are modifying the Makefile in two steps because on Mac OS system we - # do not have `/proc/cpuinfo' nor `free'. Since this is only for the - # `report.txt', this changes do not causes problems in running - # `astrometrynet' + # We are modifying the Makefile in two steps because on Mac OS system we + # do not have `/proc/cpuinfo' nor `free'. Since this is only for the + # `report.txt', this changes do not causes problems in running + # `astrometrynet' cd $(ddir) \ - && rm -rf astrometry.net-$(astrometrynet-version) \ - && if ! tar xf $<; then echo; echo "Tar error"; exit 1; fi \ - && cd astrometry.net-$(astrometrynet-version) \ - && sed -e 's|cat /proc/cpuinfo|echo "Ignoring CPU info"|' \ - -e 's|-free|echo "Ignoring RAM info"|' Makefile > Makefile.tmp \ - && mv Makefile.tmp Makefile \ - && make \ - && make py \ - && make extra \ - && make install INSTALL_DIR=$(idir) PYTHON_SCRIPT="$(ibdir)/python" \ - && cd .. \ - && rm -rf astrometry.net-$(astrometrynet-version) \ - && cp $(dtexdir)/astrometrynet.tex $(ictdir)/ \ - && echo "Astrometry.net $(astrometrynet-version) \citep{astrometrynet}" > $@ + && rm -rf astrometry.net-$(astrometrynet-version) \ + && if ! tar xf $<; then echo; echo "Tar error"; exit 1; fi \ + && cd astrometry.net-$(astrometrynet-version) \ + && sed -e 's|cat /proc/cpuinfo|echo "Ignoring CPU info"|' \ + -e 's|-free|echo "Ignoring RAM info"|' Makefile > Makefile.tmp \ + && mv Makefile.tmp Makefile \ + && make \ + && make py \ + && make extra \ + && make install INSTALL_DIR=$(idir) PYTHON_SCRIPT="$(ibdir)/python" \ + && cd .. \ + && rm -rf astrometry.net-$(astrometrynet-version) \ + && cp $(dtexdir)/astrometrynet.tex $(ictdir)/ \ + && echo "Astrometry.net $(astrometrynet-version) \citep{astrometrynet}" > $@ # cdsclient is a set of software written in c to interact with astronomical # database servers. It is a dependency of `scamp' to be able to download @@ -601,24 +601,24 @@ $(ibidir)/netpbm: $(tdir)/netpbm-$(netpbm-version).tar.gz\ $(ibidir)/libxml2 \ $(ibidir)/unzip if [ x$(on_mac_os) = xyes ]; then \ - answers='\n\n$(ildir)\n\n\n\n\n\n$(ildir)/include\n\n$(ildir)/include\n\n$(ildir)/include\nnone\n\n'; \ - else \ - answers='\n\n\n\ny\n\n\n\n\n\n\n\n\n\n\n\n\n'; \ - fi; \ - cd $(ddir) \ - && unpackdir=netpbm-$(netpbm-version) \ - && rm -rf $$unpackdir \ - && if ! tar xf $<; then echo; echo "Tar error"; exit 1; fi \ - && cd $$unpackdir \ - && printf "$$answers" | ./configure \ - && make \ - && rm -rf $(ddir)/$$unpackdir/install \ - && make package pkgdir=$(ddir)/$$unpackdir/install \ - && printf "$(ddir)/$$unpackdir/install\n$(idir)\n\n\nN\n\n\n\n\nN\n\n" \ - | ./installnetpbm \ - && cd .. \ - && rm -rf $$unpackdir \ - && echo "Netpbm $(netpbm-version)" > $@ + answers='\n\n$(ildir)\n\n\n\n\n\n$(ildir)/include\n\n$(ildir)/include\n\n$(ildir)/include\nnone\n\n'; \ + else \ + answers='\n\n\n\ny\n\n\n\n\n\n\n\n\n\n\n\n\n'; \ + fi; \ + cd $(ddir) \ + && unpackdir=netpbm-$(netpbm-version) \ + && rm -rf $$unpackdir \ + && if ! tar xf $<; then echo; echo "Tar error"; exit 1; fi \ + && cd $$unpackdir \ + && printf "$$answers" | ./configure \ + && make \ + && rm -rf $(ddir)/$$unpackdir/install \ + && make package pkgdir=$(ddir)/$$unpackdir/install \ + && printf "$(ddir)/$$unpackdir/install\n$(idir)\n\n\nN\n\n\n\n\nN\n\n" \ + | ./installnetpbm \ + && cd .. \ + && rm -rf $$unpackdir \ + && echo "Netpbm $(netpbm-version)" > $@ # SCAMP documentation says ATLAS is a mandatory prerequisite for using # SCAMP. We have ATLAS into the project but there are some problems with the @@ -630,11 +630,11 @@ $(ibidir)/scamp: $(tdir)/scamp-$(scamp-version).tar.lz \ $(ibidir)/openblas \ $(ibidir)/cdsclient $(call gbuild, $<, scamp-$(scamp-version), static, \ - --enable-threads --enable-openblas \ - --with-fftw-libdir=$(idir) \ - --with-fftw-incdir=$(idir)/include \ - --with-openblas-libdir=$(ildir) \ - --with-openblas-incdir=$(idir)/include) \ + --enable-threads --enable-openblas \ + --with-fftw-libdir=$(idir) \ + --with-fftw-incdir=$(idir)/include \ + --with-openblas-libdir=$(ildir) \ + --with-openblas-incdir=$(idir)/include) \ && cp $(dtexdir)/scamp.tex $(ictdir)/ \ && echo "SCAMP $(scamp-version) \citep{scamp}" > $@ @@ -646,24 +646,24 @@ $(ibidir)/sextractor: $(tdir)/sextractor-$(sextractor-version).tar.lz \ $(ibidir)/openblas \ $(ibidir)/fftw $(call gbuild, $<, sextractor-$(sextractor-version), static, \ - --enable-threads --enable-openblas \ - --with-openblas-libdir=$(ildir) \ - --with-openblas-incdir=$(idir)/include) \ - && ln -fs $(ibdir)/sex $(ibdir)/sextractor \ - && cp $(dtexdir)/sextractor.tex $(ictdir)/ \ - && echo "Sextractor $(sextractor-version) \citep{sextractor}" > $@ + --enable-threads --enable-openblas \ + --with-openblas-libdir=$(ildir) \ + --with-openblas-incdir=$(idir)/include) \ + && ln -fs $(ibdir)/sex $(ibdir)/sextractor \ + && cp $(dtexdir)/sextractor.tex $(ictdir)/ \ + && echo "Sextractor $(sextractor-version) \citep{sextractor}" > $@ $(ibidir)/swarp: $(tdir)/swarp-$(swarp-version).tar.gz \ $(ibidir)/fftw $(call gbuild, $<, swarp-$(swarp-version), static, \ - --enable-threads) \ - && cp $(dtexdir)/swarp.tex $(ictdir)/ \ - && echo "SWarp $(swarp-version) \citep{swarp}" > $@ + --enable-threads) \ + && cp $(dtexdir)/swarp.tex $(ictdir)/ \ + && echo "SWarp $(swarp-version) \citep{swarp}" > $@ $(ibidir)/swig: $(tdir)/swig-$(swig-version).tar.gz - # Option --without-pcre was a suggestion once the configure step was - # tried and it failed. It was not recommended but it works! - # pcr is a dependency of swig + # Option --without-pcre was a suggestion once the configure step was + # tried and it failed. It was not recommended but it works! + # pcr is a dependency of swig $(call gbuild, $<, swig-$(swig-version), static, --without-pcre) \ && echo "Swig $(swig-version)" > $@ -- cgit v1.2.1 From 811279df0101c76a8e892179e2c8ec1e0ac7414e Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Mon, 29 Apr 2019 15:54:17 +0100 Subject: Added M4 as prerequisite of GMP Until this commit, `m4' was not a prerequisite of `gmp'. However, during a test in Ubuntu 14.04 using one single core in the configure step, it crashed complaining about not having `m4' installed. With this commit, we set `m4' as a prerequisite of `gmp'. --- reproduce/software/make/basic.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'reproduce/software/make') diff --git a/reproduce/software/make/basic.mk b/reproduce/software/make/basic.mk index 97fc506..6704993 100644 --- a/reproduce/software/make/basic.mk +++ b/reproduce/software/make/basic.mk @@ -786,7 +786,8 @@ $(ibidir)/git: $(tdir)/git-$(git-version).tar.xz \ && echo "Git $(git-version)" > $@ $(ibidir)/gmp: $(tdir)/gmp-$(gmp-version).tar.lz \ - $(ibidir)/bash + $(ibidir)/bash \ + $(ibidir)/m4 $(call gbuild, $<, gmp-$(gmp-version), static, , , make check) \ && echo "GNU Multiple Precision Arithmetic Library $(gmp-version)" > $@ -- cgit v1.2.1 From 743637f54b99310defc2cc5bdbc1bbd8d3e09e0f Mon Sep 17 00:00:00 2001 From: Raul Infante-Sainz Date: Tue, 30 Apr 2019 17:56:46 +0100 Subject: Better configure checks to see if GCC can be built Until now, to test if GCC can use `sys/cdefs.h', we were building a small test program using it. But after testing on an Ubuntu 14.04, we noticed that the GCC test during the configure script passes, but GCC still can't be built. After some investigation we noticed its available in other directories, but during the build of GCC, those directories aren't used, and it only assumes it to be under `/usr/include'. So with this commit, we are only checking this particular location for this header, not a test run of GCC. After fixing this, we noticed that GCC's build crashed again because it couldn't link with `libc.a' (or `libc.so'). So we also added a for this library and added a new warning to inform the user what they might be able to do. Finally, we noticed that in one of the last steps of building GCC, we weren't using `&&', but `;', so the GCC name file would be built, even when the GCC build failed. --- reproduce/software/make/basic.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'reproduce/software/make') diff --git a/reproduce/software/make/basic.mk b/reproduce/software/make/basic.mk index 6704993..abcd5a9 100644 --- a/reproduce/software/make/basic.mk +++ b/reproduce/software/make/basic.mk @@ -1057,7 +1057,7 @@ $(ibidir)/gcc: $(gcc-prerequisites) \ patchelf --set-rpath $(ildir) $$f; \ fi; \ done; \ - fi; \ - ln -sf $(ibdir)/gcc $(ibdir)/cc \ + fi \ + && ln -sf $(ibdir)/gcc $(ibdir)/cc \ && echo "GNU Compiler Collection (GCC) $(gcc-version)" > $@; \ fi -- cgit v1.2.1