]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - makefile.inc
Fix userdir detection on Unix systems.
[xonotic/darkplaces.git] / makefile.inc
index 80ab84b7735c114a653d155b0fdc34305e2b5a27..c7e98d22ab8a1d60112496e8cf9c31067972c9a3 100644 (file)
@@ -26,6 +26,7 @@ CPUOPTIMIZATIONS?=-fno-math-errno -ffinite-math-only -fno-rounding-math -fno-sig
 # NOTE: *never* *ever* use the -ffast-math or -funsafe-math-optimizations flag
 
 SDL_CONFIG?=sdl-config
+SDL2_CONFIG?=sdl2-config
 SDLCONFIG_UNIXCFLAGS?=`$(SDL_CONFIG) --cflags`
 SDLCONFIG_UNIXCFLAGS_X11?=
 SDLCONFIG_UNIXLIBS?=`$(SDL_CONFIG) --libs`
@@ -300,36 +301,41 @@ VPATH := ../../../
 help:
        @echo
        @echo "===== Choose one ====="
-       @echo "* $(MAKE) clean               : delete all files produced by the build except"
-       @echo "                             profiling information"
-       @echo "* $(MAKE) clean-profile       : delete all files produced by the build, including"
-       @echo "                             profiling informaiton"
-       @echo "* $(MAKE) help                : this help"
-       @echo "* $(MAKE) debug               : make client and server binaries (debug versions)"
-       @echo "* $(MAKE) profile             : make client and server binaries (profile versions)"
-       @echo "* $(MAKE) release             : make client and server binaries (release versions)"
-       @echo "* $(MAKE) release-profile     : make client and server binaries (release versions)"
-       @echo "                             with profileing optomizations) The profiled"
-       @echo "                             version of the program must have been"
-       @echo "                             previously compiled"
-       @echo "* $(MAKE) nexuiz              : make client and server binaries with nexuiz icon"
-       @echo "                             (release versions)"
-       @echo "* $(MAKE) cl-debug            : make client (debug version)"
-       @echo "* $(MAKE) cl-profile          : make client (profile version)"
-       @echo "* $(MAKE) cl-release          : make client (release version)"
-       @echo "* $(MAKE) cl-release-profile  : make client (release version)"
-       @echo "* $(MAKE) cl-nexuiz           : make client with nexuiz icon (release version)"
-       @echo "* $(MAKE) sv-debug            : make dedicated server (debug version)"
-       @echo "* $(MAKE) sv-profile          : make dedicated server (profile version)"
-       @echo "* $(MAKE) sv-release          : make dedicated server (release version)"
-       @echo "* $(MAKE) sv-release-profile  : make dedicated server (release version)"
-       @echo "* $(MAKE) sv-nexuiz           : make dedicated server with nexuiz icon"
-       @echo "                             (release version)"
-       @echo "* $(MAKE) sdl-debug           : make SDL client (debug version)"
-       @echo "* $(MAKE) sdl-profile         : make SDL client (profile version)"
-       @echo "* $(MAKE) sdl-profile-profile : make SDL client (profile version)"
-       @echo "* $(MAKE) sdl-release         : make SDL client (release version)"
-       @echo "* $(MAKE) sdl-nexuiz          : make SDL client with nexuiz icon (release version)"
+       @echo "* $(MAKE) clean                : delete all files produced by the build except"
+       @echo "                              profiling information"
+       @echo "* $(MAKE) clean-profile        : delete all files produced by the build, including"
+       @echo "                              profiling informaiton"
+       @echo "* $(MAKE) help                 : this help"
+       @echo "* $(MAKE) debug                : make client and server binaries (debug versions)"
+       @echo "* $(MAKE) profile              : make client and server binaries (profile versions)"
+       @echo "* $(MAKE) release              : make client and server binaries (release versions)"
+       @echo "* $(MAKE) release-profile      : make client and server binaries (release versions)"
+       @echo "                              (with profiling optimizations) The profiled"
+       @echo "                              version of the program must have been"
+       @echo "                              previously compiled"
+       @echo "* $(MAKE) nexuiz               : make client and server binaries with nexuiz icon"
+       @echo "                              (release versions)"
+       @echo "* $(MAKE) cl-debug             : make client (debug version)"
+       @echo "* $(MAKE) cl-profile           : make client (profile version)"
+       @echo "* $(MAKE) cl-release-profile   : make client (release profile version)"
+       @echo "* $(MAKE) cl-release           : make client (release version)"
+       @echo "* $(MAKE) cl-nexuiz            : make client with nexuiz icon (release version)"
+       @echo "* $(MAKE) sv-debug             : make dedicated server (debug version)"
+       @echo "* $(MAKE) sv-profile           : make dedicated server (profile version)"
+       @echo "* $(MAKE) sv-release-profile   : make dedicated server (release profile version)"
+       @echo "* $(MAKE) sv-release           : make dedicated server (release version)"
+       @echo "* $(MAKE) sv-nexuiz            : make dedicated server with nexuiz icon"
+       @echo "                              (release version)"
+       @echo "* $(MAKE) sdl-debug            : make SDL client (debug version)"
+       @echo "* $(MAKE) sdl-profile          : make SDL client (profile version)"
+       @echo "* $(MAKE) sdl-release-profile  : make SDL client (release version)"
+       @echo "* $(MAKE) sdl-release          : make SDL client (release version)"
+       @echo "* $(MAKE) sdl-nexuiz           : make SDL client with nexuiz icon (release version)"
+       @echo "* $(MAKE) sdl2-debug           : make SDL2 client (debug version)"
+       @echo "* $(MAKE) sdl2-profile         : make SDL2 client (profile version)"
+       @echo "* $(MAKE) sdl2-release-profile : make SDL2 client (release profile version)"
+       @echo "* $(MAKE) sdl2-release         : make SDL2 client (release version)"
+       @echo "* $(MAKE) sdl2-nexuiz          : make SDL2 client with nexuiz icon (release version)"
        @echo
 
 debug :
@@ -422,12 +428,27 @@ sdl-nexuiz :
                DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
                EXE='$(EXE_SDLNEXUIZ)' CFLAGS_FEATURES='$(CFLAGS_CLIENT)' LDFLAGS_COMMON='$(LDFLAGS_SDL)' LEVEL=1
 
+sdl2-debug :
+       $(MAKE) SDL_CONFIG=$(SDL2_CONFIG) sdl-debug
+
+sdl2-profile :
+       $(MAKE) SDL_CONFIG=$(SDL2_CONFIG) sdl-profile
+
+sdl2-release :
+       $(MAKE) SDL_CONFIG=$(SDL2_CONFIG) sdl-release
+
+sdl2-release-profile :
+       $(MAKE) SDL_CONFIG=$(SDL2_CONFIG) sdl-release-profile
+
+sdl2-nexuiz :
+       $(MAKE) SDL_CONFIG=$(SDL2_CONFIG) sdl-nexuiz
+
 bin-debug :
        $(CHECKLEVEL1)
        @echo
        @echo '========== $(EXE) (debug) =========='
-       $(MAKE) prepare BUILD_DIR=obj/debug/$(EXE)
-       $(MAKE) -C obj/debug/$(EXE) -f ../../../$(MAKEFILE) $(EXE) \
+       $(MAKE) prepare BUILD_DIR=build-obj/debug/$(EXE)
+       $(MAKE) -C build-obj/debug/$(EXE) $(EXE) \
                DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
                CFLAGS='$(CFLAGS_COMMON) $(CFLAGS_FEATURES) $(CFLAGS_EXTRA) $(CFLAGS_DEBUG) $(OPTIM_DEBUG)'\
                LDFLAGS='$(LDFLAGS_DEBUG) $(LDFLAGS_COMMON)' LEVEL=2
@@ -436,8 +457,8 @@ bin-profile :
        $(CHECKLEVEL1)
        @echo
        @echo '========== $(EXE) (profile) =========='
-       $(MAKE) prepare BUILD_DIR=obj/profile/$(EXE)
-       $(MAKE) -C obj/profile/$(EXE) -f ../../../$(MAKEFILE) $(EXE) \
+       $(MAKE) prepare BUILD_DIR=build-obj/profile/$(EXE)
+       $(MAKE) -C build-obj/profile/$(EXE) $(EXE) \
                DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
                CFLAGS='$(CFLAGS_COMMON) $(CFLAGS_FEATURES) $(CFLAGS_EXTRA) $(CFLAGS_PROFILE) $(OPTIM_RELEASE)'\
                LDFLAGS='$(LDFLAGS_PROFILE) $(LDFLAGS_COMMON)' LEVEL=2
@@ -446,8 +467,8 @@ bin-release :
        $(CHECKLEVEL1)
        @echo
        @echo '========== $(EXE) (release) =========='
-       $(MAKE) prepare BUILD_DIR=obj/release/$(EXE)
-       $(MAKE) -C obj/release/$(EXE) -f ../../../$(MAKEFILE) $(EXE) \
+       $(MAKE) prepare BUILD_DIR=build-obj/release/$(EXE)
+       $(MAKE) -C build-obj/release/$(EXE) $(EXE) \
                DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
                CFLAGS='$(CFLAGS_COMMON) $(CFLAGS_FEATURES) $(CFLAGS_EXTRA) $(CFLAGS_RELEASE) $(OPTIM_RELEASE)'\
                LDFLAGS='$(LDFLAGS_RELEASE) $(LDFLAGS_COMMON)' LEVEL=2
@@ -457,8 +478,8 @@ bin-release-profile :
        $(CHECKLEVEL1)
        @echo
        @echo '========== $(EXE) (release) =========='
-       $(MAKE) prepare BUILD_DIR=obj/release-profile/$(EXE)
-       $(MAKE) -C obj/release-profile/$(EXE) -f ../../../$(MAKEFILE) $(EXE) \
+       $(MAKE) prepare BUILD_DIR=build-obj/release-profile/$(EXE)
+       $(MAKE) -C build-obj/release-profile/$(EXE) $(EXE) \
                DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
                CFLAGS='$(CFLAGS_COMMON) $(CFLAGS_FEATURES) $(CFLAGS_EXTRA) $(CFLAGS_RELEASE_PROFILE) $(OPTIM_RELEASE)'\
                LDFLAGS='$(LDFLAGS_RELEASE) $(LDFLAGS_COMMON)' LEVEL=2
@@ -467,6 +488,7 @@ bin-release-profile :
 prepare :
        $(CMD_MKDIR) $(BUILD_DIR)
        $(CMD_CP) makefile.inc $(BUILD_DIR)/
+       $(CMD_CP) $(MAKEFILE) $(BUILD_DIR)/
 
 #this checks USEODE when compiling so it needs the ODE flags as well
 prvm_cmds.o: prvm_cmds.c
@@ -566,7 +588,7 @@ clean:
        -$(CMD_RM) $(EXE_SDLNEXUIZ)
        -$(CMD_RM) *.o
        -$(CMD_RM) *.d
-       -$(CMD_RM) obj/
+       -$(CMD_RM) build-obj/
 
 clean-profile: clean
        -$(CMD_RM) *.gcda