From bcf45125dfb8c7940bfff9a95ca7ba87bb961b7b Mon Sep 17 00:00:00 2001 From: Mohammad Akhlaghi Date: Tue, 20 Nov 2018 12:10:33 +0000 Subject: Not including system's libraries in high-level dependencies The system's libraries are no longer used in building the higher-level dependencies. Also, thanks to Raul Infante Sainz, we found out that Bash's build script was still removing the extra directory information (not good!). --- configure | 3 ++- reproduce/src/make/dependencies-basic.mk | 2 +- reproduce/src/make/dependencies.mk | 11 +++++++---- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/configure b/configure index 34323a5..908affc 100755 --- a/configure +++ b/configure @@ -495,8 +495,9 @@ make -f reproduce/src/make/dependencies-basic.mk \ # Makefile. To make the job easier, we'll do it in a Makefile, not a # script. Bash and Make were the tools we need to run Makefiles, so we had # to build them in this script. But after this, we can rely on Makefiles. +numthreads=$(./$instdir/bin/nproc) ./.local/bin/make -f reproduce/src/make/dependencies.mk \ - static_build=$static_build #-j8 + static_build=$static_build #-j$numthreads diff --git a/reproduce/src/make/dependencies-basic.mk b/reproduce/src/make/dependencies-basic.mk index 2cc4327..2102338 100644 --- a/reproduce/src/make/dependencies-basic.mk +++ b/reproduce/src/make/dependencies-basic.mk @@ -217,7 +217,7 @@ $(ibdir)/bash: $(tdir)/bash-$(bash-version).tar.gz \ ifeq ($(static_build),yes) $(call gbuild, $<, bash-$(bash-version), , --enable-static-link) else - $(call gbuild,$(subst $(tdir)/,,$<), bash-$(bash-version)) + $(call gbuild, $<, bash-$(bash-version)) endif diff --git a/reproduce/src/make/dependencies.mk b/reproduce/src/make/dependencies.mk index e1b601f..768bafb 100644 --- a/reproduce/src/make/dependencies.mk +++ b/reproduce/src/make/dependencies.mk @@ -46,14 +46,17 @@ ilidir = $(BDIR)/dependencies/installed/lib/built top-level-programs = gawk gs grep sed git astnoisechisel texlive-ready all: $(foreach p, $(top-level-programs), $(ibdir)/$(p)) -# Other basic environment settings. +# Other basic environment settings: We are only including the host +# operating system's PATH environment variable (after our own!) for the +# compiler and linker. For the library binaries and headers, we are only +# using our internally built libraries. .ONESHELL: .SHELLFLAGS := -ec SHELL := $(ibdir)/bash PATH := $(ibdir):$(PATH) -LDFLAGS := -L$(ildir) $(LDFLAGS) -CPPFLAGS := -I$(idir)/include $(CPPFLAGS) -LD_LIBRARY_PATH := $(ildir):$(LD_LIBRARY_PATH) +LDFLAGS := -L$(ildir) +CPPFLAGS := -I$(idir)/include +LD_LIBRARY_PATH := $(ildir) -- cgit v1.2.1