From: <Mee...@us...> - 2012-01-15 20:01:27
|
Revision: 3747 http://sc2.svn.sourceforge.net/sc2/?rev=3747&view=rev Author: Meep-Eep Date: 2012-01-15 20:01:20 +0000 (Sun, 15 Jan 2012) Log Message: ----------- Add C++ support to the build system, from Scott A. Colcord. Modified Paths: -------------- trunk/sc2/Makefile.build trunk/sc2/Makeproject trunk/sc2/build/unix/build.config trunk/sc2/build/unix/build.sh trunk/sc2/build/unix/build_functions trunk/sc2/build/unix/config_proginfo_build trunk/sc2/build/unix/make/buildtools-armv5 trunk/sc2/build/unix/make/buildtools-generic trunk/sc2/build/unix/make/buildtools-winscw trunk/sc2/build.vars.in Modified: trunk/sc2/Makefile.build =================================================================== --- trunk/sc2/Makefile.build 2012-01-14 20:10:11 UTC (rev 3746) +++ trunk/sc2/Makefile.build 2012-01-15 20:01:20 UTC (rev 3747) @@ -42,6 +42,13 @@ fi $(call act,act_mkdep_c,MKDEP ,$@) +$(OBJDIR)%.cpp.d: $(BUILD_ROOT)%.cpp + @DIR=$(dir $@); \ + if [ ! -d $$DIR ]; then \ + mkdir -p "$$DIR"; \ + fi + $(call act,act_mkdep_cxx,MKDEP ,$@) + $(OBJDIR)%.m.d: $(BUILD_ROOT)%.m @DIR=$(dir $@); \ if [ ! -d $$DIR ]; then \ @@ -63,6 +70,13 @@ fi $(call act,act_cc,CC ,$@) +%.cpp.o: + @DIR=$(dir $@); \ + if [ ! -d $$DIR ]; then \ + mkdir -p "$$DIR"; \ + fi + $(call act,act_cxx,CXX ,$@) + %.m.o: @DIR=$(dir $@); \ if [ ! -d $$DIR ]; then \ Modified: trunk/sc2/Makeproject =================================================================== --- trunk/sc2/Makeproject 2012-01-14 20:10:11 UTC (rev 3746) +++ trunk/sc2/Makeproject 2012-01-15 20:01:20 UTC (rev 3747) @@ -17,8 +17,10 @@ ;; esac uqm_CFLAGS="$uqm_CFLAGS -Isrc" +uqm_CXXFLAGS="$uqm_CXXFLAGS -Isrc" if [ "$uqm_HAVE_REGEX" = 0 ]; then uqm_CFLAGS="$uqm_CFLAGS -Isrc/regex" + uqm_CXXFLAGS="$uqm_CXXFLAGS -Isrc/regex" fi # Stuff to install under the directory for libraries, as specified during Modified: trunk/sc2/build/unix/build.config =================================================================== --- trunk/sc2/build/unix/build.config 2012-01-14 20:10:11 UTC (rev 3746) +++ trunk/sc2/build/unix/build.config 2012-01-15 20:01:20 UTC (rev 3747) @@ -10,6 +10,7 @@ { # Some requirements: have_build_tools_language C || exit 1 + have_build_tools_language CXX || exit 1 have_build_tool LINK || exit 1 case "$HOST_SYSTEM" in MINGW32*|cegcc) @@ -108,16 +109,16 @@ nodebug_action() { case "$HOST_SYSTEM" in WINSCW) - CFLAGS="$CFLAGS -O2 -d NDEBUG" + CCOMMONFLAGS="$CCOMMONFLAGS -O2 -d NDEBUG" ;; ARMV5) - CFLAGS="$CFLAGS -O3 -Otime -DNDEBUG" + CCOMMONFLAGS="$CCOMMONFLAGS -O3 -Otime -DNDEBUG" ;; GCCE) - CFLAGS="$CFLAGS -O3 -DNDEBUG" + CCOMMONFLAGS="$CCOMMONFLAGS -O3 -DNDEBUG" ;; *) - CFLAGS="$CFLAGS -O3 -DNDEBUG" + CCOMMONFLAGS="$CCOMMONFLAGS -O3 -DNDEBUG" ;; esac DEBUG=0 @@ -127,13 +128,13 @@ debug_action() { case "$HOST_SYSTEM" in WINSCW) - CFLAGS="$CFLAGS -g -O0 -W all -d DEBUG -d _DEBUG" + CCOMMONFLAGS="$CCOMMONFLAGS -g -O0 -W all -d DEBUG -d _DEBUG" ;; ARMV5|GCCE) - CFLAGS="$CFLAGS -g -O0 -DDEBUG -D_DEBUG" + CCOMMONFLAGS="$CCOMMONFLAGS -g -O0 -DDEBUG -D_DEBUG" ;; *) - CFLAGS="$CFLAGS -g -O0 -W -Wall -DDEBUG" + CCOMMONFLAGS="$CCOMMONFLAGS -g -O0 -W -Wall -DDEBUG" LDFLAGS="$LDFLAGS -O0" ;; esac @@ -144,43 +145,46 @@ strictdebug_action() { case "$HOST_SYSTEM" in WINSCW) - CFLAGS="$CFLAGS -g -O0 -W all -d DEBUG -d _DEBUG" + CCOMMONFLAGS="$CCOMMONFLAGS -g -O0 -W all -d DEBUG -d _DEBUG" ;; ARMV5|GCCE) - CFLAGS="$CFLAGS -g -O0 -DDEBUG -D_DEBUG" + CCOMMONFLAGS="$CCOMMONFLAGS -g -O0 -DDEBUG -D_DEBUG" ;; *) - CFLAGS="$CFLAGS -g -O0 -DDEBUG -W -Wall" -# CFLAGS="$CFLAGS -O1" + CCOMMONFLAGS="$CCOMMONFLAGS -g -O0 -DDEBUG -W -Wall" +# CCOMMONFLAGS="$CCOMMONFLAGS -O1" # This is needed for -Wunitialized with gcc 3.4 - CFLAGS="$CFLAGS -Wbad-function-cast -Wcast-qual -Wmissing-prototypes \ - -Wstrict-prototypes -Wmissing-declarations \ + CCOMMONFLAGS="$CCOMMONFLAGS -Wcast-qual -Wmissing-declarations \ -Wwrite-strings -Wimplicit -Wreturn-type -Wformat \ -Wswitch -Wcomment -Wchar-subscripts \ - -Wparentheses -Wcast-align \ - -Wuninitialized" + -Wparentheses -Wcast-align -Wuninitialized" + CFLAGS="$CFLAGS -Wbad-function-cast -Wmissing-prototypes \ + -Wstrict-prototypes" + # CFLAGS is for flags not valid in C++. CFLAGS="$CFLAGS -Wdeclaration-after-statement" # Until we abandon MSVC 6 -# CFLAGS="$CFLAGS -Waggregate-return" +# CCOMMONFLAGS="$CCOMMONFLAGS -Waggregate-return" # It's not unreasonable to return structs at times. -# CFLAGS="$CFLAGS "-Wpointer-arith" +# CCOMMONFLAGS="$CCOMMONFLAGS "-Wpointer-arith" # Some standard header won't even compile with this on -# CFLAGS="$CFLAGS -Wshadow" +# CCOMMONFLAGS="$CCOMMONFLAGS -Wshadow" # This gives absurd conflicts with standard files, # like from 'y0 and y1' -# CFLAGS="$CFLAGS -Werror" +# CCOMMONFLAGS="$CCOMMONFLAGS -Werror" # We shouldn't do this until we actually nail them # all in the original code. Then we can enforce them # on ourselves. -# CFLAGS="$CFLAGS -pedantic-errors -ansi -trigraphs" # ANSI -# CFLAGS="$CFLAGS -Wnested-externs" +# CCOMMONFLAGS="$CCOMMONFLAGS -pedantic-errors -ansi -trigraphs" # ANSI +# CCOMMONFLAGS="$CCOMMONFLAGS -Wnested-externs" # We know they're in the code, and though we'd like to # get rid of them, they're not bugs. -# CFLAGS="$CFLAGS -Winline" +# CCOMMONFLAGS="$CCOMMONFLAGS -Winline" # This gives too many warnings which we can do nothing # about, obscuring legitimate warnings. CFLAGS=`echo $CFLAGS` - # Remove all the unnecessary spaces from $CFLAGS, + CXXFLAGS=`echo $CXXFLAGS` + CCOMMONFLAGS=`echo $CCOMMONFLAGS` + # Remove all the unnecessary spaces from the flags vars # for more readable messages. LDFLAGS="$LDFLAGS -O0" ;; @@ -202,7 +206,7 @@ CHOICE_graphics_OPTION_pure_TITLE="Don't include OpenGL graphics support" CHOICE_graphics_OPTION_pure_ACTION='graphics_pure_action' graphics_pure_action() { - CFLAGS="$CFLAGS -DGFXMODULE_SDL" + CCOMMONFLAGS="$CCOMMONFLAGS -DGFXMODULE_SDL" GFXMODULE=sdl HAVE_OPENGL=0 } @@ -210,7 +214,7 @@ CHOICE_graphics_OPTION_opengl_ACTION='graphics_opengl_action' CHOICE_graphics_OPTION_opengl_PRECOND="have_library opengl" graphics_opengl_action() { - CFLAGS="$CFLAGS -DGFXMODULE_SDL -DHAVE_OPENGL" + CCOMMONFLAGS="$CCOMMONFLAGS -DGFXMODULE_SDL -DHAVE_OPENGL" GFXMODULE=sdl HAVE_OPENGL=1 use_library opengl @@ -228,7 +232,7 @@ CHOICE_sound_OPTION_openal_PRECOND="have_library openal" CHOICE_sound_OPTION_openal_ACTION=sound_openal_action sound_openal_action() { - CFLAGS="$CFLAGS -DHAVE_OPENAL" + CCOMMONFLAGS="$CCOMMONFLAGS -DHAVE_OPENAL" SOUNDMODULE=openal use_library openal } @@ -249,14 +253,14 @@ CHOICE_ovcodec_OPTION_tremor_PRECOND="have_library tremor" CHOICE_ovcodec_OPTION_tremor_ACTION=ovcodec_tremor_action ovcodec_tremor_action() { - CFLAGS="$CFLAGS -DOVCODEC_TREMOR" + CCOMMONFLAGS="$CCOMMONFLAGS -DOVCODEC_TREMOR" OGGVORBIS=tremor use_library tremor } CHOICE_ovcodec_OPTION_none_TITLE="No Ogg Vorbis support" CHOICE_ovcodec_OPTION_none_ACTION=ovcodec_none_action ovcodec_none_action() { - CFLAGS="$CFLAGS -DOVCODEC_NONE" + CCOMMONFLAGS="$CCOMMONFLAGS -DOVCODEC_NONE" OGGVORBIS=none } CHOICE_ovcodec_DEFAULT=standard @@ -266,7 +270,7 @@ CHOICE_mikmod_OPTION_internal_TITLE="Included libmikmod" CHOICE_mikmod_OPTION_internal_ACTION=mikmod_internal_action mikmod_internal_action() { - CFLAGS="$CFLAGS -DUSE_INTERNAL_MIKMOD" + CCOMMONFLAGS="$CCOMMONFLAGS -DUSE_INTERNAL_MIKMOD" USE_INTERNAL_MIKMOD=1 } CHOICE_mikmod_OPTION_external_TITLE="System libmikmod" @@ -285,7 +289,7 @@ # TODO: Check whether SDL has joystick support. CHOICE_joystick_OPTION_enabled_ACTION=joystick_enabled_action joystick_enabled_action() { - CFLAGS="$CFLAGS -DHAVE_JOYSTICK" + CCOMMONFLAGS="$CCOMMONFLAGS -DHAVE_JOYSTICK" } CHOICE_joystick_OPTION_disabled_TITLE="disabled" case "$HOST_SYSTEM" in @@ -309,7 +313,7 @@ CHOICE_netplay_OPTION_full_PRECOND="have_library netlibs" CHOICE_netplay_OPTION_full_ACTION=netplay_full_action netplay_full_action() { - CFLAGS="$CFLAGS -DNETPLAY=NETPLAY_FULL" + CCOMMONFLAGS="$CCOMMONFLAGS -DNETPLAY=NETPLAY_FULL" if [ -n "$MACRO_WIN32" ]; then LDFLAGS="$LDFLAGS -lws2_32" fi @@ -320,7 +324,7 @@ CHOICE_netplay_OPTION_ipv4_PRECOND="have_library netlibs" CHOICE_netplay_OPTION_ipv4_ACTION=netplay_ipv4_action netplay_ipv4_action() { - CFLAGS="$CFLAGS -DNETPLAY=NETPLAY_IPV4" + CCOMMONFLAGS="$CCOMMONFLAGS -DNETPLAY=NETPLAY_IPV4" NETPLAY="IPV4" use_library netlibs } @@ -333,7 +337,7 @@ CHOICE_ioformat_OPTION_stdio_zip_PRECOND="have_library zlib" CHOICE_ioformat_OPTION_stdio_zip_ACTION="ioformat_stdio_zip_action" ioformat_stdio_zip_action() { - CFLAGS="$CFLAGS -DHAVE_ZIP=1" + CCOMMONFLAGS="$CCOMMONFLAGS -DHAVE_ZIP=1" USE_ZIP_IO=1 use_library zlib } @@ -344,7 +348,7 @@ CHOICE_accel_OPTION_asm_TITLE="Platform acceleration (asm, etc.)" CHOICE_accel_OPTION_asm_ACTION="accel_asm_action" accel_asm_action() { - CFLAGS="$CFLAGS -DUSE_PLATFORM_ACCEL" + CCOMMONFLAGS="$CCOMMONFLAGS -DUSE_PLATFORM_ACCEL" USE_PLATFORM_ACCEL=1 } CHOICE_accel_OPTION_plainc_TITLE="Only plain C code" @@ -359,14 +363,14 @@ CHOICE_threadlib_OPTION_sdl_TITLE="SDL-controlled thread library" CHOICE_threadlib_OPTION_sdl_ACTION="threadlib_sdl_action" threadlib_sdl_action() { - CFLAGS="$CFLAGS -DTHREADLIB_SDL" + CCOMMONFLAGS="$CCOMMONFLAGS -DTHREADLIB_SDL" THREADLIB="SDL" } CHOICE_threadlib_OPTION_pthread_TITLE="Pthread thread library" CHOICE_threadlib_OPTION_pthread_PRECOND="have_library pthread" CHOICE_threadlib_OPTION_pthread_ACTION="threadlib_pthread_action" threadlib_pthread_action() { - CFLAGS="$CFLAGS -DTHREADLIB_PTHREAD" + CCOMMONFLAGS="$CCOMMONFLAGS -DTHREADLIB_PTHREAD" THREADLIB="PTHREAD" use_library pthread } @@ -419,8 +423,17 @@ # Set the content dir CONTENTDIR="${INSTALL_SHAREDIR}uqm/content" - CFLAGS="$CFLAGS -I\"$BUILD_WORK\"" + CCOMMONFLAGS="$CCOMMONFLAGS -I\"$BUILD_WORK\"" + # Set C++ only flags + # These allow use of C++ without the standard library + CXXFLAGS="$CXXFLAGS -fno-rtti -fno-exceptions -nostdinc++" + + # At this point, all the compiler flags must be set. + CFLAGS="$CFLAGS $CCOMMONFLAGS" + CXXFLAGS="$CXXFLAGS $CCOMMONFLAGS" + CCOMMONFLAGS="" + # Export the HAVE_ symbols to config_unix.h, using config_unix.h.in # as template (or config_win.h/config_win.h.in). SUBSTITUTE_VARS="$HAVE_SYMBOLS CONTENTDIR" @@ -435,8 +448,9 @@ substitute_vars SUBSTITUTE_VARS SUBSTITUTE_FILES src "$BUILD_WORK" # Make build.vars from build.vars.in, substituting variables. - SUBSTITUTE_VARS="BUILD_SYSTEM HOST_SYSTEM CFLAGS LDFLAGS LINK \ + SUBSTITUTE_VARS="BUILD_SYSTEM HOST_SYSTEM CFLAGS CXXFLAGS LDFLAGS LINK \ PREPROC_C MKDEP_C COMPILE_C \ + PREPROC_CXX MKDEP_CXX COMPILE_CXX \ PREPROC_OBJC MKDEP_OBJC COMPILE_OBJC \ MAKE ECHON SED DEBUG JOYSTICK NETPLAY \ OGGVORBIS SOUNDMODULE USE_INTERNAL_MIKMOD \ Modified: trunk/sc2/build/unix/build.sh =================================================================== --- trunk/sc2/build/unix/build.sh 2012-01-14 20:10:11 UTC (rev 3746) +++ trunk/sc2/build/unix/build.sh 2012-01-15 20:01:20 UTC (rev 3747) @@ -83,8 +83,8 @@ fi BUILD_PROJECT="$TARGET" export TARGET BUILD_PROJECT ECHON -export PREPROC_C MKDEP_C COMPILE_C PREPROC_OBJC MKDEP_OBJC COMPILE_OBJC LINK -export "${BUILD_PROJECT}_CFLAGS" "${BUILD_PROJECT}_LDFLAGS" +export PREPROC_C MKDEP_C COMPILE_C PREPROC_CXX MKDEP_CXX COMPILE_CXX PREPROC_OBJC MKDEP_OBJC COMPILE_OBJC LINK +export "${BUILD_PROJECT}_CFLAGS" "${BUILD_PROJECT}_CXXFLAGS" "${BUILD_PROJECT}_LDFLAGS" # Add trailing / from objs dir eval ${BUILD_PROJECT}_OBJS=\${${BUILD_PROJECT}_OBJS%/}/ Modified: trunk/sc2/build/unix/build_functions =================================================================== --- trunk/sc2/build/unix/build_functions 2012-01-14 20:10:11 UTC (rev 3746) +++ trunk/sc2/build/unix/build_functions 2012-01-15 20:01:20 UTC (rev 3747) @@ -104,9 +104,10 @@ # Compile the lot. # With the depend info set up, we can leave everything to make. build_compile() { - local CFLAGS LDFLAGS TARGET_FILE DEPEND_FILE OBJDIR + local CFLAGS CXXFLAGS LDFLAGS TARGET_FILE DEPEND_FILE OBJDIR eval CFLAGS="\${${BUILD_PROJECT}_CFLAGS}" + eval CXXFLAGS="\${${BUILD_PROJECT}_CXXFLAGS}" eval LDFLAGS="\${${BUILD_PROJECT}_LDFLAGS}" eval OBJDIR=\""\$BUILD_WORK/\${${BUILD_PROJECT}_OBJS}"\" eval TARGET_FILE=\""\$BUILD_WORK/\${${BUILD_PROJECT}_NAME}"\" @@ -114,7 +115,7 @@ eval "${TARGET}_pre_build" - CFLAGS=$CFLAGS LDFLAGS=$LDFLAGS \ + CFLAGS=$CFLAGS CXXFLAGS=$CXXFLAGS LDFLAGS=$LDFLAGS \ OBJDIR=$OBJDIR \ BUILD_ROOT= \ TARGET_FILE=$TARGET_FILE DEPEND_FILE=$DEPEND_FILE \ Modified: trunk/sc2/build/unix/config_proginfo_build =================================================================== --- trunk/sc2/build/unix/config_proginfo_build 2012-01-14 20:10:11 UTC (rev 3746) +++ trunk/sc2/build/unix/config_proginfo_build 2012-01-15 20:01:20 UTC (rev 3747) @@ -26,6 +26,9 @@ # CFLAGS SYSTEM_BUILD_CFLAGS="" +# CXXFLAGS +SYSTEM_BUILD_CXXFLAGS="" + # LDFLAGS SYSTEM_BUILD_LDFLAGS="" @@ -33,6 +36,9 @@ BUILDTOOL_PREPROC_C_NAME="C preprocessor" BUILDTOOL_MKDEP_C_NAME="C dependency generator" BUILDTOOL_COMPILE_C_NAME="C compiler" +BUILDTOOL_PREPROC_CXX_NAME="C++ preprocessor" +BUILDTOOL_MKDEP_CXX_NAME="C++ dependency generator" +BUILDTOOL_COMPILE_CXX_NAME="C++ compiler" BUILDTOOL_PREPROC_OBJC_NAME="Objective-C preprocessor" BUILDTOOL_MKDEP_OBJC_NAME="Objective-C dependency generator" BUILDTOOL_COMPILE_OBJC_NAME="Objective-C compiler" @@ -48,6 +54,15 @@ BUILDTOOL_COMPILE_C_COMMAND="\$PROG_gcc_FILE -c $EXTRA_PLATFORM_GCC_FLAGS_COMPILE_C" BUILDTOOL_COMPILE_C_DEPEND='gcc' + BUILDTOOL_PREPROC_CXX_COMMAND="\$PROG_gcc_FILE -E $EXTRA_PLATFORM_GCC_FLAGS_PREPROC_CXX" + BUILDTOOL_PREPROC_CXX_DEPEND='gcc' + + BUILDTOOL_MKDEP_CXX_COMMAND="\$PROG_gcc_FILE -MM $EXTRA_PLATFORM_GCC_FLAGS_MKDEP_CXX" + BUILDTOOL_MKDEP_CXX_DEPEND='gcc' + + BUILDTOOL_COMPILE_CXX_COMMAND="\$PROG_gcc_FILE -c $EXTRA_PLATFORM_GCC_FLAGS_COMPILE_CXX" + BUILDTOOL_COMPILE_CXX_DEPEND='gcc' + BUILDTOOL_PREPROC_OBJC_COMMAND="\$PROG_gcc_FILE -E $EXTRA_PLATFORM_GCC_FLAGS_PREPROC_OBJC" BUILDTOOL_PREPROC_OBJC_DEPEND='gcc' @@ -63,6 +78,7 @@ case "$HOST_SYSTEM" in Darwin) EXTRA_PLATFORM_GCC_FLAGS_COMPILE_C='-mmacosx-version-min=10.4 -arch i386' + EXTRA_PLATFORM_GCC_FLAGS_COMPILE_CXX='-mmacosx-version-min=10.4 -arch i386' EXTRA_PLATFORM_GCC_FLAGS_COMPILE_OBJC='-mmacosx-version-min=10.4 -arch i386' EXTRA_PLATFORM_GCC_FLAGS_LINK='-mmacosx-version-min=10.4 -arch i386' useGccBuildTools @@ -80,6 +96,15 @@ BUILDTOOL_COMPILE_C_COMMAND="\$PROG_mwccsym2_FILE -c $EXTRA_WINSCW_FLAGS_COMPILE" BUILDTOOL_COMPILE_C_DEPEND='mwccsym2' + BUILDTOOL_PREPROC_CXX_COMMAND="\$PROG_mwccsym2_FILE -E $EXTRA_WINSCW_FLAGS_COMPILE" + BUILDTOOL_PREPROC_CXX_DEPEND='mwccsym2' + + BUILDTOOL_MKDEP_CXX_COMMAND="\$PROG_mwccsym2_FILE -MM -ext .o -gccdep $EXTRA_WINSCW_FLAGS_COMPILE" + BUILDTOOL_MKDEP_CXX_DEPEND='mwccsym2' + + BUILDTOOL_COMPILE_CXX_COMMAND="\$PROG_mwccsym2_FILE -c $EXTRA_WINSCW_FLAGS_COMPILE" + BUILDTOOL_COMPILE_CXX_DEPEND='mwccsym2' + BUILDTOOL_PREPROC_OBJC_COMMAND="\$PROG_mwccsym2_FILE -E" BUILDTOOL_PREPROC_OBJC_DEPEND='mwccsym2' @@ -99,12 +124,21 @@ BUILDTOOL_PREPROC_C_COMMAND="\$PROG_armcc_FILE -E $EXTRA_ARMV5_FLAGS_COMPILE" BUILDTOOL_PREPROC_C_DEPEND='armcc' - BUILDTOOL_MKDEP_C_COMMAND="\$PROG_armcc_FILE -MM --unix_depend_format $EXTRA_ARMV5_FLAGS_COMPILE" + BUILDTOOL_MKDEP_C_COMMAND="\$PROG_armcc_FILE -MM $EXTRA_ARMV5_FLAGS_COMPILE" BUILDTOOL_MKDEP_C_DEPEND='armcc' BUILDTOOL_COMPILE_C_COMMAND="\$PROG_armcc_FILE -c $EXTRA_ARMV5_FLAGS_COMPILE" BUILDTOOL_COMPILE_C_DEPEND='armcc' + BUILDTOOL_PREPROC_CXX_COMMAND="\$PROG_armcc_FILE -E $EXTRA_ARMV5_FLAGS_COMPILE" + BUILDTOOL_PREPROC_CXX_DEPEND='armcc' + + BUILDTOOL_MKDEP_CXX_COMMAND="\$PROG_armcc_FILE -MM $EXTRA_ARMV5_FLAGS_COMPILE" + BUILDTOOL_MKDEP_CXX_DEPEND='armcc' + + BUILDTOOL_COMPILE_CXX_COMMAND="\$PROG_armcc_FILE -c $EXTRA_ARMV5_FLAGS_COMPILE" + BUILDTOOL_COMPILE_CXX_DEPEND='armcc' + BUILDTOOL_PREPROC_OBJC_COMMAND="\$PROG_armcc_FILE -E" BUILDTOOL_PREPROC_OBJC_DEPEND='armcc' @@ -130,6 +164,15 @@ BUILDTOOL_COMPILE_C_COMMAND="\$PROG_gcce_FILE -c $EXTRA_GCCE_FLAGS_COMPILE" BUILDTOOL_COMPILE_C_DEPEND='gcce' + BUILDTOOL_PREPROC_CXX_COMMAND="\$PROG_gcce_FILE -E $EXTRA_GCCE_FLAGS_COMPILE" + BUILDTOOL_PREPROC_CXX_DEPEND='gcce' + + BUILDTOOL_MKDEP_CXX_COMMAND="\$PROG_gcce_FILE -MM $EXTRA_GCCE_FLAGS_COMPILE" + BUILDTOOL_MKDEP_CXX_DEPEND='gcce' + + BUILDTOOL_COMPILE_CXX_COMMAND="\$PROG_gcce_FILE -c $EXTRA_GCCE_FLAGS_COMPILE" + BUILDTOOL_COMPILE_CXX_DEPEND='gcce' + BUILDTOOL_PREPROC_OBJC_COMMAND="\$PROG_gcce_FILE -E" BUILDTOOL_PREPROC_OBJC_DEPEND='gcce' @@ -155,6 +198,15 @@ BUILDTOOL_COMPILE_C_COMMAND="\$PROG_mingw_gcc_FILE -c $EXTRA_CYGWIN_FLAGS_COMPILE" BUILDTOOL_COMPILE_C_DEPEND='mingw_gcc' + BUILDTOOL_PREPROC_CXX_COMMAND="\$PROG_mingw_gcc_FILE -E $EXTRA_CYGWIN_FLAGS_COMPILE" + BUILDTOOL_PREPROC_CXX_DEPEND='mingw_gcc' + + BUILDTOOL_MKDEP_CXX_COMMAND="\$PROG_mingw_gcc_FILE -MM $EXTRA_CYGWIN_FLAGS_COMPILE" + BUILDTOOL_MKDEP_CXX_DEPEND='mingw_gcc' + + BUILDTOOL_COMPILE_CXX_COMMAND="\$PROG_mingw_gcc_FILE -c $EXTRA_CYGWIN_FLAGS_COMPILE" + BUILDTOOL_COMPILE_CXX_DEPEND='mingw_gcc' + BUILDTOOL_PREPROC_OBJC_COMMAND="\$PROG_mingw_gcc_FILE -E" BUILDTOOL_PREPROC_OBJC_DEPEND='mingw_gcc' Modified: trunk/sc2/build/unix/make/buildtools-armv5 =================================================================== --- trunk/sc2/build/unix/make/buildtools-armv5 2012-01-14 20:10:11 UTC (rev 3746) +++ trunk/sc2/build/unix/make/buildtools-armv5 2012-01-15 20:01:20 UTC (rev 3747) @@ -7,6 +7,10 @@ $(MKDEP_C) $(CFLAGS) -o "$(@D)/$(<F).o" "$<" --depend "$@" endef +define act_mkdep_cxx + $(MKDEP_CXX) $(CXXFLAGS) -o "$(@D)/$(<F).o" "$<" --depend "$@" +endef + define act_link $(LINK) --create "$@" $^ $(LDFLAGS) endef Modified: trunk/sc2/build/unix/make/buildtools-generic =================================================================== --- trunk/sc2/build/unix/make/buildtools-generic 2012-01-14 20:10:11 UTC (rev 3746) +++ trunk/sc2/build/unix/make/buildtools-generic 2012-01-15 20:01:20 UTC (rev 3747) @@ -6,6 +6,10 @@ $(MKDEP_C) $(CFLAGS) "$<" -MT "$(@D)/$(<F).o" -MF "$@" endef +define act_mkdep_cxx + $(MKDEP_CXX) $(CXXFLAGS) "$<" -MT "$(@D)/$(<F).o" -MF "$@" +endef + define act_mkdep_m $(MKDEP_OBJC) $(CFLAGS) "$<" -MT "$(@D)/$(<F).o" -MF "$@" endef @@ -18,6 +22,10 @@ $(COMPILE_C) -o "$@" $(CFLAGS) "$<" endef +define act_cxx + $(COMPILE_CXX) -o "$@" $(CXXFLAGS) "$<" +endef + define act_objcc $(COMPILE_OBJC) -o "$@" $(CFLAGS) "$<" endef Modified: trunk/sc2/build/unix/make/buildtools-winscw =================================================================== --- trunk/sc2/build/unix/make/buildtools-winscw 2012-01-14 20:10:11 UTC (rev 3746) +++ trunk/sc2/build/unix/make/buildtools-winscw 2012-01-15 20:01:20 UTC (rev 3747) @@ -10,3 +10,10 @@ @rm -f "$@.tmp" endef +define act_mkdep_cxx + $(MKDEP_C) $(CXXFLAGS) "$<" -o "$@.tmp" + @echo -n "$(@D)/" > $@ + @cat "$@.tmp" >> $@ + @rm -f "$@.tmp" +endef + Modified: trunk/sc2/build.vars.in =================================================================== --- trunk/sc2/build.vars.in 2012-01-14 20:10:11 UTC (rev 3746) +++ trunk/sc2/build.vars.in 2012-01-15 20:01:20 UTC (rev 3747) @@ -20,6 +20,9 @@ PREPROC_C='@PREPROC_C@' MKDEP_C='@MKDEP_C@' COMPILE_C='@COMPILE_C@' +PREPROC_CXX='@PREPROC_CXX@' +MKDEP_CXX='@MKDEP_CXX@' +COMPILE_CXX='@COMPILE_CXX@' PREPROC_OBJC='@PREPROC_OBJC@' MKDEP_OBJC='@MKDEP_OBJC@' COMPILE_OBJC='@COMPILE_OBJC@' @@ -30,6 +33,7 @@ REZ='@REZ@' WINDRES='@WINDRES@' uqm_CFLAGS='@CFLAGS@' +uqm_CXXFLAGS='@CXXFLAGS@' uqm_LDFLAGS='@LDFLAGS@' uqm_INSTALL_BINDIR='@INSTALL_BINDIR@' uqm_INSTALL_LIBDIR='@INSTALL_LIBDIR@' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |