From 7f572b6b12a406fc0dd5b1805e310439a7e65397 Mon Sep 17 00:00:00 2001 From: midipix Date: Wed, 28 Oct 2015 02:20:09 -0400 Subject: build system: fix support of CC, CPP, and CXX directly passed to configure. --- Makefile.in | 7 +++++++ configure | 8 ++++++++ sysinfo/toolchain/clang.mk | 20 +++++++++++++++++--- sysinfo/toolchain/cparser.mk | 20 +++++++++++++++++--- sysinfo/toolchain/gcc.mk | 20 +++++++++++++++++--- 5 files changed, 66 insertions(+), 9 deletions(-) diff --git a/Makefile.in b/Makefile.in index 4632564..206b995 100644 --- a/Makefile.in +++ b/Makefile.in @@ -46,6 +46,9 @@ NATIVE_OS = @native_os@ NATIVE_OS_BITS = @native_os_bits@ NATIVE_OS_UNDERSCORE = @native_os_underscore@ +USER_CC = @user_cc@ +USER_CPP = @user_cpp@ +USER_CXX = @user_cxx@ all: @@ -270,6 +273,10 @@ clean: @echo NATIVE_OS_BITS:' '$(NATIVE_OS_BITS) @echo NATIVE_OS_USCORE:' '$(NATIVE_OS_UNDERSCORE) @echo + @echo USER_CC:' '$(USER_CC) + @echo USER_CPP:' '$(USER_CPP) + @echo USER_CXX:' '$(USER_CXX) + @echo .PHONY: all install shared static app .display \ diff --git a/configure b/configure index 59a7640..7139ece 100755 --- a/configure +++ b/configure @@ -73,6 +73,10 @@ init_vars() mb_native_os=$NATIVE_OS mb_native_os_bits=$NATIVE_OS_BITS mb_native_os_underscore=$NATIVE_OS_UNDERSCORE + + mb_user_cc=$CC + mb_user_cpp=$CPP + mb_user_cxx=$CXX } @@ -300,6 +304,10 @@ config_copy() -e 's^@native_os@^'"$mb_native_os"'^g' \ -e 's^@native_os_bits@^'"$mb_native_os_bits"'^g' \ -e 's^@native_os_underscore@^'"$mb_native_os_underscore"'^g' \ + \ + -e 's^@user_cc@^'"$mb_user_cc"'^g' \ + -e 's^@user_cpp@^'"$mb_user_cpp"'^g' \ + -e 's^@user_cxx@^'"$mb_user_cxx"'^g' \ $mb_project_dir/Makefile.in > $mb_pwd/Makefile } diff --git a/sysinfo/toolchain/clang.mk b/sysinfo/toolchain/clang.mk index ae8b40c..3e4a795 100644 --- a/sysinfo/toolchain/clang.mk +++ b/sysinfo/toolchain/clang.mk @@ -7,9 +7,23 @@ else endif -CC = $(NATIVE_CC) $(CROSS_HOST_SPEC) -CPP = $(NATIVE_CC) $(CROSS_HOST_SPEC) -E -CXX = $(NATIVE_CC)++ $(CROSS_HOST_SPEC) +ifeq ($(USER_CC)x,x) + CC = $(NATIVE_CC) $(CROSS_HOST_SPEC) +else + CC = $(USER_CC) $(CROSS_HOST_SPEC) +endif + +ifeq ($(USER_CPP)x,x) + CPP = $(NATIVE_CC) $(CROSS_HOST_SPEC) -E +else + CPP = $(USER_CPP) $(CROSS_HOST_SPEC) -E +endif + +ifeq ($(USER_CXX)x,x) + CXX = $(NATIVE_CC)++ $(CROSS_HOST_SPEC) +else + CXX = $(USER_CXX) $(CROSS_HOST_SPEC) +endif AS = $(CROSS_COMPILE)as diff --git a/sysinfo/toolchain/cparser.mk b/sysinfo/toolchain/cparser.mk index c55dbe0..762a6e6 100644 --- a/sysinfo/toolchain/cparser.mk +++ b/sysinfo/toolchain/cparser.mk @@ -7,9 +7,23 @@ else endif -CC = $(NATIVE_CC) $(CROSS_HOST_SPEC) -Wno-experimental -integrated-cpp -CPP = $(NATIVE_CC) $(CROSS_HOST_SPEC) -Wno-experimental -integrated-cpp -E -CXX = $(NATIVE_CC) $(CROSS_HOST_SPEC) -Wno-experimental -integrated-cpp -std=c++ +ifeq ($(USER_CC)x,x) + CC = $(NATIVE_CC) $(CROSS_HOST_SPEC) -Wno-experimental -integrated-cpp +else + CC = $(USER_CC) $(CROSS_HOST_SPEC) -Wno-experimental -integrated-cpp +endif + +ifeq ($(USER_CPP)x,x) + CPP = $(NATIVE_CC) $(CROSS_HOST_SPEC) -Wno-experimental -integrated-cpp -E +else + CPP = $(USER_CPP) $(CROSS_HOST_SPEC) -Wno-experimental -integrated-cpp -E +endif + +ifeq ($(USER_CXX)x,x) + CXX = $(NATIVE_CC) $(CROSS_HOST_SPEC) -Wno-experimental -integrated-cpp -std=c++ +else + CXX = $(USER_CXX) $(CROSS_HOST_SPEC) -Wno-experimental -integrated-cpp -std=c++ +endif AS = $(CROSS_COMPILE)as diff --git a/sysinfo/toolchain/gcc.mk b/sysinfo/toolchain/gcc.mk index 933fb48..e0ad0d2 100644 --- a/sysinfo/toolchain/gcc.mk +++ b/sysinfo/toolchain/gcc.mk @@ -1,6 +1,20 @@ -CC = $(CROSS_COMPILE)$(NATIVE_CC) -CPP = $(CROSS_COMPILE)cpp -CXX = $(CROSS_COMPILE)c++ +ifeq ($(USER_CC)x,x) + CC = $(CROSS_COMPILE)$(NATIVE_CC) +else + CC = $(USER_CC) +endif + +ifeq ($(USER_CPP)x,x) + CPP = $(CROSS_COMPILE)cpp +else + CPP = $(USER_CPP) +endif + +ifeq ($(USER_CXX)x,x) + CXX = $(CROSS_COMPILE)c++ +else + CXX = $(USER_CXX) +endif AS = $(CROSS_COMPILE)as -- cgit v1.2.3