2006-03-20 16:43:15 +00:00
|
|
|
TOPDIR = .
|
|
|
|
|
|
|
|
include $(TOPDIR)/makefile.config
|
|
|
|
|
|
|
|
SUBDIRS = arch maths 2d 3d texmap misc mem iff cfile main
|
|
|
|
|
|
|
|
#defines controlling the output filename
|
|
|
|
|
|
|
|
ifdef MAKE_EDITOR
|
|
|
|
SUBDIRS += editor ui
|
|
|
|
D1XPREFIX = m
|
|
|
|
else
|
|
|
|
D1XPREFIX = d
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifdef ENV_MINGW32
|
|
|
|
EXT=mw.exe
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifdef SHAREWARE
|
|
|
|
SHRWR = sh
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifdef DEBUG
|
|
|
|
DBG = db
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifdef OGL
|
|
|
|
OPT = ogl
|
|
|
|
endif
|
|
|
|
|
|
|
|
OUTPUT = $(DESTDIR)/$(D1XPREFIX)1x$(D1XMAJOR)$(D1XMINOR)$(SHRWR)$(DBG)$(SND)$(OPT)$(EXT)
|
|
|
|
|
|
|
|
#libraries to link with
|
|
|
|
|
|
|
|
LIBS = \
|
2006-04-03 17:07:02 +00:00
|
|
|
$(LIBDIR)/main.$(LIB) \
|
|
|
|
$(LIBDIR)/3d.$(LIB) \
|
|
|
|
$(LIBDIR)/2d.$(LIB) \
|
|
|
|
$(LIBDIR)/iff.$(LIB) \
|
|
|
|
$(LIBDIR)/maths.$(LIB) \
|
|
|
|
$(LIBDIR)/cfile.$(LIB) \
|
|
|
|
$(LIBDIR)/mem.$(LIB) \
|
|
|
|
$(LIBDIR)/misc.$(LIB) \
|
|
|
|
$(LIBDIR)/texmap.$(LIB) \
|
|
|
|
$(LIBDIR)/io.$(LIB)
|
2006-03-20 16:43:15 +00:00
|
|
|
|
|
|
|
ifdef OGL
|
2006-04-03 17:07:02 +00:00
|
|
|
LIBS += $(LIBDIR)/ogl.$(LIB)
|
2006-03-20 16:43:15 +00:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifdef MAKE_EDITOR
|
|
|
|
NO_RL2 = 1
|
2006-04-03 17:07:02 +00:00
|
|
|
LIBS += $(LIBDIR)/editor.$(LIB) $(LIBDIR)/ui.$(LIB)
|
2006-03-20 16:43:15 +00:00
|
|
|
E_CFLAGS += -DEDITOR -I.
|
|
|
|
ifdef ENV_LINUX
|
|
|
|
LINKLIBS += -lm
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifdef ENV_MINGW32
|
|
|
|
ifdef WGL_IO
|
|
|
|
ifndef OGL_RUNTIME
|
|
|
|
LIBS += -lopengl32
|
|
|
|
endif
|
|
|
|
LIBS += -lglu32 -lgdi32
|
|
|
|
endif
|
|
|
|
LIBS += -ldinput -lddraw -ldsound -ldxguid -lwsock32 -lwinmm -luser32 -lkernel32
|
2006-04-03 20:00:46 +00:00
|
|
|
#LIBS += $(LIBDIR)/d1x_res.$(OBJ)
|
2006-03-20 16:43:15 +00:00
|
|
|
endif
|
|
|
|
|
|
|
|
ifdef ENV_LINUX
|
2006-04-03 17:07:02 +00:00
|
|
|
ifdef SDLGL_IO
|
|
|
|
LINKLIBS += -lGL -lGLU
|
|
|
|
endif
|
2006-03-20 16:43:15 +00:00
|
|
|
ifdef SDL
|
2006-04-03 17:07:02 +00:00
|
|
|
LIBS += $(LIBDIR)/sdl.$(LIB)
|
2006-03-20 16:43:15 +00:00
|
|
|
LINKLIBS += -ldl -lSDL
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
ifdef SCRIPT
|
2006-04-03 17:07:02 +00:00
|
|
|
LIBS += $(LIBDIR)/script.$(LIB)
|
2006-03-20 16:43:15 +00:00
|
|
|
E_CFLAGS += -DSCRIPT
|
|
|
|
ifdef GLIBC
|
|
|
|
LINKLIBS += -lpthread
|
|
|
|
endif
|
|
|
|
NASM = nasm -f elf -d__LINUX__
|
|
|
|
endif
|
|
|
|
|
|
|
|
default: $(OUTPUT)
|
|
|
|
|
|
|
|
$(DESTDIR):
|
2006-04-03 17:07:02 +00:00
|
|
|
ifeq ($(ENV_MINGW32),1)
|
2006-04-03 19:47:41 +00:00
|
|
|
ifneq ($(HAVE_MSYS),1)
|
2006-04-03 17:07:02 +00:00
|
|
|
mkdir $(subst /,\,$(DESTDIR))
|
|
|
|
else
|
2006-03-20 16:43:15 +00:00
|
|
|
mkdir $(DESTDIR)
|
2006-04-03 17:07:02 +00:00
|
|
|
endif
|
2006-04-03 19:47:41 +00:00
|
|
|
else
|
|
|
|
mkdir $(DESTDIR)
|
|
|
|
endif
|
2006-03-20 16:43:15 +00:00
|
|
|
|
|
|
|
include $(TOPDIR)/makefile.rules
|
|
|
|
|
|
|
|
#rule for building the descent binary
|
|
|
|
|
|
|
|
$(OUTPUT): $(DESTDIR) $(SUBDIRS)
|
2006-04-03 17:07:02 +00:00
|
|
|
ifdef SUPPORTS_NET_IP
|
|
|
|
$(CXX) $(LFLAGS) -o $@ $(LIBS) $(LINKLIBS)
|
2006-03-20 16:43:15 +00:00
|
|
|
else
|
|
|
|
$(CC) $(LFLAGS) -o $@ $(LIBS) $(LINKLIBS)
|
2006-04-03 17:07:02 +00:00
|
|
|
endif
|
2006-03-20 16:43:15 +00:00
|
|
|
ifdef RELEASE
|
|
|
|
ifndef DEBUGABLE
|
|
|
|
strip --strip-all $(OUTPUT)
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
#rule for building the ip daemon
|
|
|
|
|
|
|
|
ifdef SUPPORTS_NET_IP
|
|
|
|
IP_DAEMON_OUTPUT=$(DESTDIR)/$(D1XPREFIX)1x$(D1XMAJOR)$(D1XMINOR)$(DBG)$(EXT)_ip_daemon
|
|
|
|
IP_DAEMON_LIBS=$(TOPDIR)/main/$(OBJDIR)ipserver.$(OBJ) $(TOPDIR)/arch/linux/$(OBJDIR)arch_ip.$(OBJ) $(TOPDIR)/main/$(OBJDIR)ip_base.$(OBJ) $(TOPDIR)/arch/linux/$(OBJDIR)timer.$(OBJ) $(TOPDIR)/arch/linux/$(OBJDIR)mono.$(OBJ) $(TOPDIR)/main/$(OBJDIR)args.$(OBJ) $(TOPDIR)/mem/$(OBJDIR)mem.$(OBJ) $(TOPDIR)/misc/$(OBJDIR)strio.$(OBJ) $(TOPDIR)/misc/$(OBJDIR)strutil.$(OBJ) $(TOPDIR)/misc/$(OBJDIR)error.$(OBJ) $(TOPDIR)/lib/maths.a
|
|
|
|
|
|
|
|
ip_daemon: $(IP_DAEMON_OUTPUT)
|
|
|
|
|
|
|
|
$(IP_DAEMON_OUTPUT): $(SUBDIRS)
|
|
|
|
$(CXX) $(LFLAGS) -o $(IP_DAEMON_OUTPUT) $(IP_DAEMON_LIBS)
|
|
|
|
endif
|
|
|
|
|
|
|
|
clean:
|
2006-04-03 17:07:02 +00:00
|
|
|
$(CLEANSUBS)
|
2006-03-20 16:43:15 +00:00
|
|
|
-rm $(OUTPUT)
|
|
|
|
-rm $(IP_DAEMON_OUTPUT)
|
2006-04-03 17:32:39 +00:00
|
|
|
-rm -r $(LIBDIR)/
|
2006-03-20 16:43:15 +00:00
|
|
|
|
|
|
|
depend:
|
|
|
|
$(DEPSUBS)
|