cnq3/makefiles/gmake/cnq3-server.make
myT 02589839cd renamed /build to /makefiles
outputting to /.build (temp) and /.bin (final) instead of ../.bin
removed the premake option "quake3dir"
on Linux, not copying files if $QUAKE3DIR is undefined/empty
on Linux, compiling all C++ code with -std=c++98
added a meta-Makefile at the root for convenience
added build documentation (build.md)
2017-08-01 22:30:04 +02:00

343 lines
No EOL
12 KiB
Makefile

# GNU Make project makefile autogenerated by Premake
ifndef config
config=debug_x32
endif
ifndef verbose
SILENT = @
endif
.PHONY: clean prebuild prelink
ifeq ($(config),debug_x32)
RESCOMP = windres
TARGETDIR = ../../.bin/debug_x32
TARGET = $(TARGETDIR)/cnq3-server-x86
OBJDIR = ../../.build/debug_x32/cnq3-server
DEFINES += -DDEDICATED -DDEBUG -D_DEBUG
INCLUDES +=
FORCE_INCLUDE +=
ALL_CPPFLAGS += $(CPPFLAGS) -MMD -MP $(DEFINES) $(INCLUDES)
ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -m32 -g -Wno-unused-parameter -Wno-write-strings -x c++ -std=c++98
ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CFLAGS) -fno-exceptions -fno-rtti
ALL_RESFLAGS += $(RESFLAGS) $(DEFINES) $(INCLUDES)
LIBS += ../../.build/debug_x32/libbotlib.a -ldl -lm -lbacktrace
LDDEPS += ../../.build/debug_x32/libbotlib.a
ALL_LDFLAGS += $(LDFLAGS) -L/usr/lib32 -L../../.build/debug_x32 -m32
LINKCMD = $(CXX) -o "$@" $(OBJECTS) $(RESOURCES) $(ALL_LDFLAGS) $(LIBS)
define PREBUILDCMDS
@echo Running prebuild commands
"../create_git_header.sh" "../../code/qcommon/git.h"
endef
define PRELINKCMDS
endef
define POSTBUILDCMDS
@echo Running postbuild commands
if [ -n "$$QUAKE3DIR" ]; then cp -u "../../.bin/debug_x32/cnq3-server-x86" "$(QUAKE3DIR)"; fi
endef
all: $(TARGETDIR) $(OBJDIR) prebuild prelink $(TARGET)
@:
endif
ifeq ($(config),debug_x64)
RESCOMP = windres
TARGETDIR = ../../.bin/debug_x64
TARGET = $(TARGETDIR)/cnq3-server-x64
OBJDIR = ../../.build/debug_x64/cnq3-server
DEFINES += -DDEDICATED -DDEBUG -D_DEBUG
INCLUDES +=
FORCE_INCLUDE +=
ALL_CPPFLAGS += $(CPPFLAGS) -MMD -MP $(DEFINES) $(INCLUDES)
ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -m64 -g -Wno-unused-parameter -Wno-write-strings -x c++ -std=c++98
ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CFLAGS) -fno-exceptions -fno-rtti
ALL_RESFLAGS += $(RESFLAGS) $(DEFINES) $(INCLUDES)
LIBS += ../../.build/debug_x64/libbotlib.a -ldl -lm -lbacktrace
LDDEPS += ../../.build/debug_x64/libbotlib.a
ALL_LDFLAGS += $(LDFLAGS) -L/usr/lib64 -L../../.build/debug_x64 -m64
LINKCMD = $(CXX) -o "$@" $(OBJECTS) $(RESOURCES) $(ALL_LDFLAGS) $(LIBS)
define PREBUILDCMDS
@echo Running prebuild commands
"../create_git_header.sh" "../../code/qcommon/git.h"
endef
define PRELINKCMDS
endef
define POSTBUILDCMDS
@echo Running postbuild commands
if [ -n "$$QUAKE3DIR" ]; then cp -u "../../.bin/debug_x64/cnq3-server-x64" "$(QUAKE3DIR)"; fi
endef
all: $(TARGETDIR) $(OBJDIR) prebuild prelink $(TARGET)
@:
endif
ifeq ($(config),release_x32)
RESCOMP = windres
TARGETDIR = ../../.bin/release_x32
TARGET = $(TARGETDIR)/cnq3-server-x86
OBJDIR = ../../.build/release_x32/cnq3-server
DEFINES += -DDEDICATED -DNDEBUG
INCLUDES +=
FORCE_INCLUDE +=
ALL_CPPFLAGS += $(CPPFLAGS) -MMD -MP $(DEFINES) $(INCLUDES)
ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -m32 -fomit-frame-pointer -ffast-math -Os -g -msse2 -Wno-unused-parameter -Wno-write-strings -g1 -x c++ -std=c++98
ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CFLAGS) -fno-exceptions -fno-rtti
ALL_RESFLAGS += $(RESFLAGS) $(DEFINES) $(INCLUDES)
LIBS += ../../.build/release_x32/libbotlib.a -ldl -lm -lbacktrace
LDDEPS += ../../.build/release_x32/libbotlib.a
ALL_LDFLAGS += $(LDFLAGS) -L/usr/lib32 -L../../.build/release_x32 -m32
LINKCMD = $(CXX) -o "$@" $(OBJECTS) $(RESOURCES) $(ALL_LDFLAGS) $(LIBS)
define PREBUILDCMDS
@echo Running prebuild commands
"../create_git_header.sh" "../../code/qcommon/git.h"
endef
define PRELINKCMDS
endef
define POSTBUILDCMDS
@echo Running postbuild commands
if [ -n "$$QUAKE3DIR" ]; then cp -u "../../.bin/release_x32/cnq3-server-x86" "$(QUAKE3DIR)"; fi
endef
all: $(TARGETDIR) $(OBJDIR) prebuild prelink $(TARGET)
@:
endif
ifeq ($(config),release_x64)
RESCOMP = windres
TARGETDIR = ../../.bin/release_x64
TARGET = $(TARGETDIR)/cnq3-server-x64
OBJDIR = ../../.build/release_x64/cnq3-server
DEFINES += -DDEDICATED -DNDEBUG
INCLUDES +=
FORCE_INCLUDE +=
ALL_CPPFLAGS += $(CPPFLAGS) -MMD -MP $(DEFINES) $(INCLUDES)
ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -m64 -fomit-frame-pointer -ffast-math -Os -g -msse2 -Wno-unused-parameter -Wno-write-strings -g1 -x c++ -std=c++98
ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CFLAGS) -fno-exceptions -fno-rtti
ALL_RESFLAGS += $(RESFLAGS) $(DEFINES) $(INCLUDES)
LIBS += ../../.build/release_x64/libbotlib.a -ldl -lm -lbacktrace
LDDEPS += ../../.build/release_x64/libbotlib.a
ALL_LDFLAGS += $(LDFLAGS) -L/usr/lib64 -L../../.build/release_x64 -m64
LINKCMD = $(CXX) -o "$@" $(OBJECTS) $(RESOURCES) $(ALL_LDFLAGS) $(LIBS)
define PREBUILDCMDS
@echo Running prebuild commands
"../create_git_header.sh" "../../code/qcommon/git.h"
endef
define PRELINKCMDS
endef
define POSTBUILDCMDS
@echo Running postbuild commands
if [ -n "$$QUAKE3DIR" ]; then cp -u "../../.bin/release_x64/cnq3-server-x64" "$(QUAKE3DIR)"; fi
endef
all: $(TARGETDIR) $(OBJDIR) prebuild prelink $(TARGET)
@:
endif
OBJECTS := \
$(OBJDIR)/cm_load.o \
$(OBJDIR)/cm_patch.o \
$(OBJDIR)/cm_polylib.o \
$(OBJDIR)/cm_test.o \
$(OBJDIR)/cm_trace.o \
$(OBJDIR)/cmd.o \
$(OBJDIR)/common.o \
$(OBJDIR)/crash.o \
$(OBJDIR)/cvar.o \
$(OBJDIR)/files.o \
$(OBJDIR)/huffman.o \
$(OBJDIR)/huffman_static.o \
$(OBJDIR)/json.o \
$(OBJDIR)/md4.o \
$(OBJDIR)/md5.o \
$(OBJDIR)/msg.o \
$(OBJDIR)/net_chan.o \
$(OBJDIR)/net_ip.o \
$(OBJDIR)/q_math.o \
$(OBJDIR)/q_shared.o \
$(OBJDIR)/unzip.o \
$(OBJDIR)/vm.o \
$(OBJDIR)/vm_interpreted.o \
$(OBJDIR)/vm_x86.o \
$(OBJDIR)/sv_bot.o \
$(OBJDIR)/sv_ccmds.o \
$(OBJDIR)/sv_client.o \
$(OBJDIR)/sv_game.o \
$(OBJDIR)/sv_init.o \
$(OBJDIR)/sv_main.o \
$(OBJDIR)/sv_net_chan.o \
$(OBJDIR)/sv_snapshot.o \
$(OBJDIR)/sv_world.o \
$(OBJDIR)/linux_signals.o \
$(OBJDIR)/unix_main.o \
$(OBJDIR)/unix_shared.o \
RESOURCES := \
CUSTOMFILES := \
SHELLTYPE := msdos
ifeq (,$(ComSpec)$(COMSPEC))
SHELLTYPE := posix
endif
ifeq (/bin,$(findstring /bin,$(SHELL)))
SHELLTYPE := posix
endif
$(TARGET): $(GCH) ${CUSTOMFILES} $(OBJECTS) $(LDDEPS) $(RESOURCES)
@echo Linking cnq3-server
$(SILENT) $(LINKCMD)
$(POSTBUILDCMDS)
$(TARGETDIR):
@echo Creating $(TARGETDIR)
ifeq (posix,$(SHELLTYPE))
$(SILENT) mkdir -p $(TARGETDIR)
else
$(SILENT) mkdir $(subst /,\\,$(TARGETDIR))
endif
$(OBJDIR):
@echo Creating $(OBJDIR)
ifeq (posix,$(SHELLTYPE))
$(SILENT) mkdir -p $(OBJDIR)
else
$(SILENT) mkdir $(subst /,\\,$(OBJDIR))
endif
clean:
@echo Cleaning cnq3-server
ifeq (posix,$(SHELLTYPE))
$(SILENT) rm -f $(TARGET)
$(SILENT) rm -rf $(OBJDIR)
else
$(SILENT) if exist $(subst /,\\,$(TARGET)) del $(subst /,\\,$(TARGET))
$(SILENT) if exist $(subst /,\\,$(OBJDIR)) rmdir /s /q $(subst /,\\,$(OBJDIR))
endif
prebuild:
$(PREBUILDCMDS)
prelink:
$(PRELINKCMDS)
ifneq (,$(PCH))
$(OBJECTS): $(GCH) $(PCH)
$(GCH): $(PCH)
@echo $(notdir $<)
$(SILENT) $(CXX) -x c++-header $(ALL_CXXFLAGS) -o "$@" -MF "$(@:%.gch=%.d)" -c "$<"
endif
$(OBJDIR)/cm_load.o: ../../code/qcommon/cm_load.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/cm_patch.o: ../../code/qcommon/cm_patch.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/cm_polylib.o: ../../code/qcommon/cm_polylib.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/cm_test.o: ../../code/qcommon/cm_test.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/cm_trace.o: ../../code/qcommon/cm_trace.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/cmd.o: ../../code/qcommon/cmd.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/common.o: ../../code/qcommon/common.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/crash.o: ../../code/qcommon/crash.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/cvar.o: ../../code/qcommon/cvar.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/files.o: ../../code/qcommon/files.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/huffman.o: ../../code/qcommon/huffman.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/huffman_static.o: ../../code/qcommon/huffman_static.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/json.o: ../../code/qcommon/json.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/md4.o: ../../code/qcommon/md4.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/md5.o: ../../code/qcommon/md5.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/msg.o: ../../code/qcommon/msg.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/net_chan.o: ../../code/qcommon/net_chan.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/net_ip.o: ../../code/qcommon/net_ip.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/q_math.o: ../../code/qcommon/q_math.c
@echo $(notdir $<)
$(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/q_shared.o: ../../code/qcommon/q_shared.c
@echo $(notdir $<)
$(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/unzip.o: ../../code/qcommon/unzip.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/vm.o: ../../code/qcommon/vm.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/vm_interpreted.o: ../../code/qcommon/vm_interpreted.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/vm_x86.o: ../../code/qcommon/vm_x86.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/sv_bot.o: ../../code/server/sv_bot.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/sv_ccmds.o: ../../code/server/sv_ccmds.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/sv_client.o: ../../code/server/sv_client.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/sv_game.o: ../../code/server/sv_game.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/sv_init.o: ../../code/server/sv_init.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/sv_main.o: ../../code/server/sv_main.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/sv_net_chan.o: ../../code/server/sv_net_chan.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/sv_snapshot.o: ../../code/server/sv_snapshot.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/sv_world.o: ../../code/server/sv_world.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/linux_signals.o: ../../code/unix/linux_signals.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/unix_main.o: ../../code/unix/unix_main.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
$(OBJDIR)/unix_shared.o: ../../code/unix/unix_shared.cpp
@echo $(notdir $<)
$(SILENT) $(CXX) $(ALL_CXXFLAGS) $(FORCE_INCLUDE) -o "$@" -MF "$(@:%.o=%.d)" -c "$<"
-include $(OBJECTS:%.o=%.d)
ifneq (,$(PCH))
-include $(OBJDIR)/$(notdir $(PCH)).d
endif