From 6384e3a5507a71412577ed0c985eb6e48aec4a2d Mon Sep 17 00:00:00 2001 From: Mohammad Akhlaghi Date: Mon, 3 Dec 2018 16:35:17 +0000 Subject: Gnuastro's dependencies fully sorted by build time In the previous commit, I forgot to actually add some changes to the staging area before committing an pushing. So some of the changes discussed in the previous commit and now commited. --- reproduce/src/make/dependencies.mk | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'reproduce') diff --git a/reproduce/src/make/dependencies.mk b/reproduce/src/make/dependencies.mk index 80c2a35..e309473 100644 --- a/reproduce/src/make/dependencies.mk +++ b/reproduce/src/make/dependencies.mk @@ -43,7 +43,7 @@ ildir = $(BDIR)/dependencies/installed/lib ilidir = $(BDIR)/dependencies/installed/lib/built # Define the top-level programs to build (installed in `.local/bin'). -top-level-programs = gs git flock astnoisechisel +top-level-programs = astnoisechisel git flock all: $(ddir)/texlive-versions.tex \ $(foreach p, $(top-level-programs), $(ibdir)/$(p)) @@ -275,14 +275,19 @@ $(ibdir)/git: $(tdir)/git-$(git-version).tar.xz $(call gbuild, $<, git-$(git-version), static, \ --without-tcltk --with-shell=$(ibdir)/bash) +# The order of dependencies is based on how long they take to build (how +# large they are): Libgit2 depends on CMake which takes a VERY long time to +# build. Also, Ghostscript and GSL are relatively large packages. So when +# building in parallel, its better to have these packages start building +# early. $(ibdir)/astnoisechisel: $(tdir)/gnuastro-$(gnuastro-version).tar.lz \ $(ilidir)/libgit2 \ + $(ibdir)/gs \ + $(ilidir)/gsl \ $(ibdir)/glibtool \ $(ilidir)/libjpeg \ $(ilidir)/libtiff \ - $(ilidir)/wcslib \ - $(ilidir)/gsl \ - $(ibdir)/gs + $(ilidir)/wcslib ifeq ($(static_build),yes) $(call gbuild, $<, gnuastro-$(gnuastro-version), static, \ --enable-static=yes --enable-shared=no, -j8, \ -- cgit v1.2.1