build-support: allow CC and CXX to be overridden.
parent
3ec5c7074d
commit
56a3a3cd62
13
GNUmakefile
13
GNUmakefile
|
@ -1,7 +1,4 @@
|
||||||
ifdef CONFIG
|
ifdef CONFIG
|
||||||
CC = gcc
|
|
||||||
CPP = g++
|
|
||||||
|
|
||||||
VERSION = 0.97
|
VERSION = 0.97
|
||||||
|
|
||||||
BUNDLE = Factor.app
|
BUNDLE = Factor.app
|
||||||
|
@ -210,11 +207,11 @@ $(ENGINE): $(DLL_OBJS)
|
||||||
factor-lib: $(ENGINE)
|
factor-lib: $(ENGINE)
|
||||||
|
|
||||||
factor: $(EXE_OBJS) $(DLL_OBJS)
|
factor: $(EXE_OBJS) $(DLL_OBJS)
|
||||||
$(TOOLCHAIN_PREFIX)$(CPP) $(LIBPATH) -L. $(DLL_OBJS) \
|
$(TOOLCHAIN_PREFIX)$(CXX) $(LIBPATH) -L. $(DLL_OBJS) \
|
||||||
$(CFLAGS) -o $(EXECUTABLE) $(LIBS) $(EXE_OBJS)
|
$(CFLAGS) -o $(EXECUTABLE) $(LIBS) $(EXE_OBJS)
|
||||||
|
|
||||||
factor-console: $(EXE_OBJS) $(DLL_OBJS)
|
factor-console: $(EXE_OBJS) $(DLL_OBJS)
|
||||||
$(TOOLCHAIN_PREFIX)$(CPP) $(LIBPATH) -L. $(DLL_OBJS) \
|
$(TOOLCHAIN_PREFIX)$(CXX) $(LIBPATH) -L. $(DLL_OBJS) \
|
||||||
$(CFLAGS) $(CFLAGS_CONSOLE) -o $(CONSOLE_EXECUTABLE) $(LIBS) $(EXE_OBJS)
|
$(CFLAGS) $(CFLAGS_CONSOLE) -o $(CONSOLE_EXECUTABLE) $(LIBS) $(EXE_OBJS)
|
||||||
|
|
||||||
factor-ffi-test: $(FFI_TEST_LIBRARY)
|
factor-ffi-test: $(FFI_TEST_LIBRARY)
|
||||||
|
@ -229,16 +226,16 @@ vm/ffi_test.o: vm/ffi_test.c
|
||||||
$(TOOLCHAIN_PREFIX)$(CC) -c $(CFLAGS) $(FFI_TEST_CFLAGS) -o $@ $<
|
$(TOOLCHAIN_PREFIX)$(CC) -c $(CFLAGS) $(FFI_TEST_CFLAGS) -o $@ $<
|
||||||
|
|
||||||
vm/master.hpp.gch: vm/master.hpp $(MASTER_HEADERS)
|
vm/master.hpp.gch: vm/master.hpp $(MASTER_HEADERS)
|
||||||
$(TOOLCHAIN_PREFIX)$(CPP) -c -x c++-header $(CFLAGS) -o $@ $<
|
$(TOOLCHAIN_PREFIX)$(CXX) -c -x c++-header $(CFLAGS) -o $@ $<
|
||||||
|
|
||||||
%.o: %.cpp vm/master.hpp.gch
|
%.o: %.cpp vm/master.hpp.gch
|
||||||
$(TOOLCHAIN_PREFIX)$(CPP) -c $(CFLAGS) -o $@ $<
|
$(TOOLCHAIN_PREFIX)$(CXX) -c $(CFLAGS) -o $@ $<
|
||||||
|
|
||||||
%.o: %.S
|
%.o: %.S
|
||||||
$(TOOLCHAIN_PREFIX)$(CC) -c $(CFLAGS) -o $@ $<
|
$(TOOLCHAIN_PREFIX)$(CC) -c $(CFLAGS) -o $@ $<
|
||||||
|
|
||||||
%.o: %.mm vm/master.hpp.gch
|
%.o: %.mm vm/master.hpp.gch
|
||||||
$(TOOLCHAIN_PREFIX)$(CPP) -c $(CFLAGS) -o $@ $<
|
$(TOOLCHAIN_PREFIX)$(CXX) -c $(CFLAGS) -o $@ $<
|
||||||
|
|
||||||
.SUFFIXES: .mm
|
.SUFFIXES: .mm
|
||||||
|
|
||||||
|
|
|
@ -92,16 +92,16 @@ set_gcc() {
|
||||||
macosx)
|
macosx)
|
||||||
xcode_major=`xcodebuild -version | sed -E -ne 's/^Xcode ([0-9]+).*$/\1/p'`
|
xcode_major=`xcodebuild -version | sed -E -ne 's/^Xcode ([0-9]+).*$/\1/p'`
|
||||||
if [[ $xcode_major -ge 4 ]]; then
|
if [[ $xcode_major -ge 4 ]]; then
|
||||||
CC=clang
|
[ -z "$CC" ] && CC=clang
|
||||||
CPP=clang++
|
[ -z "$CXX" ] && CXX=clang++
|
||||||
else
|
else
|
||||||
CC=gcc
|
[ -z "$CC" ] && CC=gcc
|
||||||
CPP=g++
|
[ -z "$CXX" ] && CXX=g++
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
CC=gcc
|
[ -z "$CC" ] && CC=gcc
|
||||||
CPP=g++
|
[ -z "$CXX" ] && CXX=g++
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
@ -232,7 +232,7 @@ c_find_word_size() {
|
||||||
$ECHO "Finding WORD..."
|
$ECHO "Finding WORD..."
|
||||||
C_WORD=factor-word-size
|
C_WORD=factor-word-size
|
||||||
write_test_program
|
write_test_program
|
||||||
gcc -o $C_WORD $C_WORD.c
|
$CC -o $C_WORD $C_WORD.c
|
||||||
WORD=$(./$C_WORD)
|
WORD=$(./$C_WORD)
|
||||||
check_ret $C_WORD
|
check_ret $C_WORD
|
||||||
$DELETE -f $C_WORD*
|
$DELETE -f $C_WORD*
|
||||||
|
@ -294,6 +294,7 @@ echo_build_info() {
|
||||||
$ECHO GIT_URL=$GIT_URL
|
$ECHO GIT_URL=$GIT_URL
|
||||||
$ECHO DOWNLOADER=$DOWNLOADER
|
$ECHO DOWNLOADER=$DOWNLOADER
|
||||||
$ECHO CC=$CC
|
$ECHO CC=$CC
|
||||||
|
$ECHO CXX=$CXX
|
||||||
$ECHO MAKE=$MAKE
|
$ECHO MAKE=$MAKE
|
||||||
$ECHO COPY=$COPY
|
$ECHO COPY=$COPY
|
||||||
$ECHO DELETE=$DELETE
|
$ECHO DELETE=$DELETE
|
||||||
|
@ -345,7 +346,7 @@ parse_build_info() {
|
||||||
if [[ $OS == linux && $ARCH == ppc ]] ; then WORD=32; fi
|
if [[ $OS == linux && $ARCH == ppc ]] ; then WORD=32; fi
|
||||||
if [[ $OS == linux && $ARCH == arm ]] ; then WORD=32; fi
|
if [[ $OS == linux && $ARCH == arm ]] ; then WORD=32; fi
|
||||||
if [[ $OS == macosx && $ARCH == ppc ]] ; then WORD=32; fi
|
if [[ $OS == macosx && $ARCH == ppc ]] ; then WORD=32; fi
|
||||||
|
|
||||||
$ECHO "OS=$OS"
|
$ECHO "OS=$OS"
|
||||||
$ECHO "ARCH=$ARCH"
|
$ECHO "ARCH=$ARCH"
|
||||||
$ECHO "WORD=$WORD"
|
$ECHO "WORD=$WORD"
|
||||||
|
@ -354,13 +355,13 @@ parse_build_info() {
|
||||||
find_build_info() {
|
find_build_info() {
|
||||||
find_os
|
find_os
|
||||||
find_architecture
|
find_architecture
|
||||||
|
set_gcc
|
||||||
find_word_size
|
find_word_size
|
||||||
set_factor_binary
|
set_factor_binary
|
||||||
set_factor_library
|
set_factor_library
|
||||||
set_factor_image
|
set_factor_image
|
||||||
set_build_info
|
set_build_info
|
||||||
set_downloader
|
set_downloader
|
||||||
set_gcc
|
|
||||||
set_make
|
set_make
|
||||||
echo_build_info
|
echo_build_info
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue