1 ##### DP_MAKE_TARGET autodetection and arch specific variables #####
11 DP_ARCH:=$(shell uname)
12 ifneq ($(filter %BSD,$(DP_ARCH)),)
15 ifeq ($(DP_ARCH), Darwin)
18 ifeq ($(DP_ARCH), SunOS)
23 endif # ifeq ($(DP_ARCH), SunOS)
24 endif # ifeq ($(DP_ARCH), Darwin)
25 endif # ifneq ($(filter %BSD,$(DP_ARCH)),)
27 endif # ifndef DP_MAKE_TARGET
31 # If we're not on compiling for Win32, we need additional information
32 ifneq ($(DP_MAKE_TARGET), mingw)
33 DP_ARCH:=$(shell uname)
34 DP_MACHINE:=$(shell uname -m)
38 # Command used to delete files
45 # 64bits AMD CPUs use another lib directory
46 ifeq ($(DP_MACHINE),x86_64)
47 UNIX_X11LIBPATH:=/usr/X11R6/lib64
49 UNIX_X11LIBPATH:=/usr/X11R6/lib
54 ifeq ($(DP_MAKE_TARGET), linux)
62 LDFLAGS_CL=$(LDFLAGS_LINUXCL)
63 LDFLAGS_SV=$(LDFLAGS_LINUXSV)
64 LDFLAGS_SDL=$(LDFLAGS_LINUXSDL)
68 EXE_SDL=$(EXE_UNIXSDL)
69 EXE_CLNEXUIZ=$(EXE_UNIXCLNEXUIZ)
70 EXE_SVNEXUIZ=$(EXE_UNIXSVNEXUIZ)
71 EXE_SDLNEXUIZ=$(EXE_UNIXSDLNEXUIZ)
74 # Mac OS X configuration
75 ifeq ($(DP_MAKE_TARGET), macosx)
76 DEFAULT_SNDAPI=COREAUDIO
77 OBJ_CD=$(OBJ_MACOSXCD)
83 LDFLAGS_CL=$(LDFLAGS_MACOSXCL)
84 LDFLAGS_SV=$(LDFLAGS_MACOSXSV)
85 LDFLAGS_SDL=$(LDFLAGS_MACOSXSDL)
87 EXE_CL=$(EXE_MACOSXCL)
89 EXE_SDL=$(EXE_UNIXSDL)
90 EXE_CLNEXUIZ=$(EXE_MACOSXCLNEXUIZ)
91 EXE_SVNEXUIZ=$(EXE_UNIXSVNEXUIZ)
92 EXE_SDLNEXUIZ=$(EXE_UNIXSDLNEXUIZ)
94 ifeq ($(word 2, $(filter -arch, $(CC))), -arch)
99 # SunOS configuration (Solaris)
100 ifeq ($(DP_MAKE_TARGET), sunos)
102 OBJ_CD=$(OBJ_SUNOSCD)
108 CFLAGS_EXTRA=$(CFLAGS_SUNOS)
110 LDFLAGS_CL=$(LDFLAGS_SUNOSCL)
111 LDFLAGS_SV=$(LDFLAGS_SUNOSSV)
112 LDFLAGS_SDL=$(LDFLAGS_SUNOSSDL)
116 EXE_SDL=$(EXE_UNIXSDL)
117 EXE_CLNEXUIZ=$(EXE_UNIXCLNEXUIZ)
118 EXE_SVNEXUIZ=$(EXE_UNIXSVNEXUIZ)
119 EXE_SDLNEXUIZ=$(EXE_UNIXSDLNEXUIZ)
123 ifeq ($(DP_MAKE_TARGET), bsd)
124 ifeq ($(DP_ARCH),FreeBSD)
135 LDFLAGS_CL=$(LDFLAGS_BSDCL)
136 LDFLAGS_SV=$(LDFLAGS_BSDSV)
137 LDFLAGS_SDL=$(LDFLAGS_BSDSDL)
141 EXE_SDL=$(EXE_UNIXSDL)
142 EXE_CLNEXUIZ=$(EXE_UNIXCLNEXUIZ)
143 EXE_SVNEXUIZ=$(EXE_UNIXSVNEXUIZ)
144 EXE_SDLNEXUIZ=$(EXE_UNIXSDLNEXUIZ)
147 # Win32 configuration
148 ifeq ($(DP_MAKE_TARGET), mingw)
153 OBJ_ICON=darkplaces.o
154 OBJ_ICON_NEXUIZ=nexuiz.o
156 LDFLAGS_CL=$(LDFLAGS_WINCL)
157 LDFLAGS_SV=$(LDFLAGS_WINSV)
158 LDFLAGS_SDL=$(LDFLAGS_WINSDL)
162 EXE_SDL=$(EXE_WINSDL)
163 EXE_CLNEXUIZ=$(EXE_WINCLNEXUIZ)
164 EXE_SVNEXUIZ=$(EXE_WINSVNEXUIZ)
165 EXE_SDLNEXUIZ=$(EXE_WINSDLNEXUIZ)
169 ##### Sound configuration #####
172 DP_SOUND_API=$(DEFAULT_SNDAPI)
176 ifeq ($(DP_SOUND_API), NULL)
177 OBJ_SOUND=$(OBJ_SND_NULL)
178 LIB_SOUND=$(LIB_SND_NULL)
181 # OSS: Open Sound System
182 ifeq ($(DP_SOUND_API), OSS)
183 OBJ_SOUND=$(OBJ_SND_OSS)
184 LIB_SOUND=$(LIB_SND_OSS)
187 # ALSA: Advanced Linux Sound Architecture
188 ifeq ($(DP_SOUND_API), ALSA)
189 OBJ_SOUND=$(OBJ_SND_ALSA)
190 LIB_SOUND=$(LIB_SND_ALSA)
193 # COREAUDIO: Core Audio
194 ifeq ($(DP_SOUND_API), COREAUDIO)
195 OBJ_SOUND=$(OBJ_SND_COREAUDIO)
196 LIB_SOUND=$(LIB_SND_COREAUDIO)
199 # BSD: BSD / Sun audio API
200 ifeq ($(DP_SOUND_API), BSD)
201 OBJ_SOUND=$(OBJ_SND_BSD)
202 LIB_SOUND=$(LIB_SND_BSD)
205 # WIN: DirectX and Win32 WAVE output
206 ifeq ($(DP_SOUND_API), WIN)
207 OBJ_SOUND=$(OBJ_SND_WIN)
208 LIB_SOUND=$(LIB_SND_WIN)
212 ##### GNU Make specific definitions #####
214 DO_LD=$(CC) -o $@ $^ $(LDFLAGS)
217 ##### Definitions shared by all makefiles #####
221 ##### Dependency files #####