1# 2# Makefile for gmake (It should run with Microsoft's nmake... I believe.) 3# $Id: Makefile.nt,v 1.31 2003/07/29 17:06:04 nan Exp $ 4# 5############################################################################ 6.SUFFIXES: .exe .so .dll .a .lib .o .obj .cpp .cc .c .asm .s .y .pch .h .l 7 8.c.obj: 9 $(CC) $(CFLAGS) $(IFLAGS) $(Cpost) $< 10.cpp.obj: 11 $(CXX) $(CXXFLAGS) $(IFLAGS) $(CXXpost) $< 12.cc.obj: 13 $(CXX) $(CXXFLAGS) $(IFLAGS) $(CXXpost) $< 14 15############################################################################ 16CC = cl -nologo -W3 17CXX = $(CC) 18 19Cpost = -c -Tc 20CXXpost = -c -Tp 21 22#CFLAGS = -MD -Ox -Ob2 -Ow -G6 -vms $(DFLAGS) $(INCDIRS) 23CFLAGS = -MD -Od -Zi -G6 -vms $(DFLAGS) $(INCDIRS) -DWIN32CONSOLE 24 25CXXFLAGS=$(CFLAGS) -GX 26 27IFLAGS = -Yuttinc.h 28 29O = obj 30A = lib 31SO = dll 32EXE = .exe 33AOUT = -Fe 34 35############################################################################ 36BASEDIR = .$(BDIR) 37VPATH = $(BASEDIR) 38 39#DFLAGS = -DHAVE_LIBZ -DHAVE_LIBSDL_MIXER -DHAVE_LIBVORBIS -DUSE_GETTEXT_DLL 40#DFLAGS = -DHAVE_LIBZ -DHAVE_LIBSDL_MIXER -DHAVE_LIBVORBIS -DUSE_GETTEXT_DLL -DENABLE_IPV6 41#DFLAGS = -DHAVE_LIBZ -DHAVE_LIBSDL_MIXER -DHAVE_LIBVORBIS -DUSE_GETTEXT_DLL -DCHIYO 42DFLAGS = -DHAVE_LIBZ -DHAVE_LIBSDL_MIXER -DHAVE_LIBVORBIS 43 44INCDIRS = -I$(BASEDIR) -I$(BASEDIR)/include/ \ 45 -I$(BASEDIR)/include/glib-2.0/ -I$(BASEDIR)/include/gtk-2.0/ \ 46 -I$(BASEDIR)/include/pango-1.0/ -I$(BASEDIR)/include/atk-1.0/ \ 47 -I$(BASEDIR)/lib/glib-2.0/include/ -I$(BASEDIR)/lib/gtk-2.0/include/ 48 49LIBS = $(BASEDIR)/win32/GetArgs.obj $(BASEDIR)/win32/getopt.obj \ 50 $(BASEDIR)/win32/new_exception.obj $(BASEDIR)/win32/wsaerror.obj \ 51 $(BASEDIR)/win32/wsainit.obj $(BASEDIR)/win32/csmash.res \ 52 SDL.lib SDL_mixer.lib SDL_image.lib \ 53 gtk-win32-2.0.lib glib-2.0.lib gobject-2.0.lib iconv-1.3.lib zlib.lib \ 54 opengl32.lib glu32.lib winmm.lib ws2_32.lib intl.lib \ 55 user32.lib gdi32.lib \ 56 -link /LIBPATH:$(BASEDIR)/lib 57 58SRCS = \ 59 Ball.cpp BallView.cpp BaseView.cpp Event.cpp HitMark.cpp \ 60 Howto.cpp HowtoView.cpp LoadImage.cpp PenAttack.cpp \ 61 PenDrive.cpp Player.cpp PlayerSelect.cpp PlayerSelectView.cpp \ 62 ShakeCut.cpp Sound.cpp Title.cpp TitleView.cpp PlayerView.cpp \ 63 View.cpp comPenAttack.cpp comPenDrive.cpp comPlayer.cpp \ 64 comShakeCut.cpp ComTrainingPenAttack.cpp TrainingPenAttack.cpp \ 65 MultiPlay.cpp TrainingPenDrive.cpp ComTrainingPenDrive.cpp \ 66 TrainingSelect.cpp TrainingSelectView.cpp TrainingView.cpp \ 67 PracticePlay.cpp PracticeSelect.cpp PracticeSelectView.cpp \ 68 FieldView.cpp SoloPlay.cpp PlayGame.cpp Control.cpp Training.cpp \ 69 Opening.cpp OpeningView.cpp MenuItem.cpp MenuItemView.cpp \ 70 z.cpp parts.cpp xerror.cpp Launcher.cpp LauncherView.cpp \ 71 LobbyClient.cpp LobbyClientView.cpp \ 72 Logging.cpp BaseView2D.cpp FieldView2D.cpp PlayerView2D.cpp \ 73 BallView2D.cpp PlayerSelectView2D.cpp TitleView2D.cpp \ 74 MenuItemView2D.cpp RCFile.cpp PlayGameView.cpp Network.cpp \ 75 NetPenAttack.cpp NetShakeCut.cpp NetPenDrive.cpp \ 76 MultiPlayerSelect.cpp \ 77 loadparts.cpp 78 79OBJS = $(SRCS:.cpp=.obj) 80 81TARGET = csmash$(EXE) 82 83########################################################################### 84all: $(TARGET) 85 86clean: 87 rm -f $(TARGET) *.$(O) *.pch *.pdb 88 cd $(BASEDIR)/win32 && $(MAKE) -f Makefile.nt CFLAGS="$(CFLAGS)" clean 89 90distclean: 91 rm -f $(TARGET) *.$(O) *.pch *.pdb *~ *.bak .depend.nt 92 cd $(BASEDIR)/win32 && $(MAKE) -f Makefile.nt CFLAGS="$(CFLAGS)" distclean 93 94# remove absolute paths from dependency file 95depend: 96 touch .depend.nt 97 makedepend -i -f.depend.nt -DMKDEP_IGN_SYSINC -D_WIN32 $(DFLAGS) \ 98 -I$(BASEDIR) $(BASEDIR)/*.cpp 99 cat .depend.nt | sed -e "s/.:\/.*\/[iI]nclude\/[^ ]*//g" \ 100 | grep -v ".*:[ ]*$$" > .depend.new 101 mv .depend.new .depend.nt 102 103$(TARGET): $(OBJS) main.$(O) $(BASEDIR)/win32/all 104 $(CC) $(CFLAGS) $(AOUT)$(BASEDIR)/$@ main.$(O) $(OBJS) $(LIBS) 105 106$(OBJS) : ttinc.pch 107 108ttinc.pch: ttinc.h ttinc.cpp 109 $(CXX) $(CXXFLAGS) $(IFLAGS) -Ycttinc.h $(CXXpost) $(BASEDIR)/ttinc.cpp 110 111$(BASEDIR)/win32/all: 112 cd $(BASEDIR)/win32 && \ 113 $(MAKE) -f Makefile.nt CFLAGS="$(CFLAGS)" all 114 115# include directive is not available in nmake.exe 116# If you are using gnu-make, uncomment next line. 117#-include .depend.nt 118############################################################################ 119# END 120############################################################################ 121