build: process variable exports from toplevel.mk only once
authorFelix Fietkau <nbd@nbd.name>
Tue, 6 Oct 2020 10:37:51 +0000 (12:37 +0200)
committerFelix Fietkau <nbd@nbd.name>
Fri, 16 Oct 2020 19:39:09 +0000 (21:39 +0200)
These run a lot of expensive shell calls, so redundant calls should be
avoided

Signed-off-by: Felix Fietkau <nbd@nbd.name>
include/toplevel.mk

index c233a4c214c9ba01734ef129b93943784cb528d9..77a5b155cea315184e1e5cb268b0049b722c7bd9 100644 (file)
@@ -11,62 +11,14 @@ PREP_MK= OPENWRT_BUILD= QUIET=0
 export IS_TTY=$(shell tty -s && echo 1 || echo 0)
 
 include $(TOPDIR)/include/verbose.mk
-
-ifeq ($(SDK),1)
-  include $(TOPDIR)/include/version.mk
-else
-  REVISION:=$(shell $(TOPDIR)/scripts/getver.sh)
-  SOURCE_DATE_EPOCH:=$(shell $(TOPDIR)/scripts/get_source_date_epoch.sh)
-endif
-
-HOSTCC ?= $(CC)
-export REVISION
-export SOURCE_DATE_EPOCH
-export GIT_CONFIG_PARAMETERS='core.autocrlf=false'
-export GIT_ASKPASS:=/bin/true
-export MAKE_JOBSERVER=$(filter --jobserver%,$(MAKEFLAGS))
-export GNU_HOST_NAME:=$(shell $(TOPDIR)/scripts/config.guess)
-export HOST_OS:=$(shell uname)
-export HOST_ARCH:=$(shell uname -m)
-
-# prevent perforce from messing with the patch utility
-unexport P4PORT P4USER P4CONFIG P4CLIENT
-
-# prevent user defaults for quilt from interfering
-unexport QUILT_PATCHES QUILT_PATCH_OPTS
-
-unexport C_INCLUDE_PATH CROSS_COMPILE ARCH
-
-# prevent distro default LPATH from interfering
-unexport LPATH
-
-# make sure that a predefined CFLAGS variable does not disturb packages
-export CFLAGS=
-export LDFLAGS=
-
-empty:=
-space:= $(empty) $(empty)
-path:=$(subst :,$(space),$(PATH))
-path:=$(filter-out .%,$(path))
-path:=$(subst $(space),:,$(path))
-export PATH:=$(path)
-
-unexport TAR_OPTIONS
-
-ifneq ($(shell $(HOSTCC) 2>&1 | grep clang),)
-  export HOSTCC_REAL?=$(HOSTCC)
-  export HOSTCC_WRAPPER:=$(TOPDIR)/scripts/clang-gcc-wrapper
-else
-  export HOSTCC_WRAPPER:=$(HOSTCC)
+ifeq ($(OPENWRT_VARS),)
+  include $(TOPDIR)/include/toplevel-vars.mk
 endif
 
 ifeq ($(FORCE),)
   .config scripts/config/conf scripts/config/mconf: staging_dir/host/.prereq-build
 endif
 
-SCAN_COOKIE?=$(shell echo $$$$)
-export SCAN_COOKIE
-
 SUBMAKE:=umask 022; $(SUBMAKE)
 
 ULIMIT_FIX=_limit=`ulimit -n`; [ "$$_limit" = "unlimited" -o "$$_limit" -ge 1024 ] || ulimit -n 1024;