10 LIBS
+= SDLmain.m
-framework SDL
-framework Cocoa
-framework SDL_image
-framework SDL_mixer
11 CFLAGS
+= -I
/Library
/Frameworks
/SDL.framework
/Headers
-I
/Library
/Frameworks
/SDL_image.framework
/Headers
-I
/Library
/Frameworks
/SDL_mixer.framework
/Headers
-DMACOSX
13 LIBS
+= $$(sdl-config
--libs
) -lSDL_mixer
-lSDL_image
14 CFLAGS
+= $$(sdl-config
--cflags)
17 SRC
= tennix.c game.c graphics.c input.c sound.c
18 OBJ
= tennix.o game.o graphics.o input.o sound.o
23 DATAFILES
= data
/*.bmp data
/*.png data
/*.wav
24 ifeq ($(TARGET
),cocoa
)
25 DATAFILES
+= data
/Tennix.icns
29 $(CC
) $(CFLAGS
) -o tennix
$(OBJ
) $(LIBS
)
30 test -f tennix.exe
&& upx tennix.exe || true
32 tennix.o
: tennix.c tennix.h game.h graphics.h input.h sound.h
33 graphics.o
: graphics.c graphics.h tennix.h input.h
34 game.o
: game.c game.h graphics.h tennix.h sound.h
35 sound.o
: sound.c sound.h tennix.h
38 mkdir
-p
$(OSXAPP
)/Contents
/{MacOS
,/Resources
}
39 cp
-rpv tennix
$(OSXAPP
)/Contents
/MacOS
/Tennix
40 cp
-rpv
$(DATAFILES
) $(OSXAPP
)/Contents
/Resources
/
41 cp
-rpv osxapp.plist
$(OSXAPP
)/Contents
/Info.plist
42 echo
'APPL????' >$(OSXAPP
)/Contents
/PkgInfo
43 zip
-r tennix-
$(RELEASE
).zip
$(OSXAPP
)
46 zip tennix-
$(RELEASE
).zip tennix.exe
$(WIN32LIBS
) $(DATAFILES
)
49 tar czvf tennix-
$(RELEASE
)-bin.
tar.gz tennix
$(DATAFILES
)
52 rm -f
*.o tennix
{,.exe
}
56 rm -f tennix-
$(RELEASE
).zip tennix-
$(RELEASE
)-bin.
tar.gz
58 .PHONY
: distclean clean release-bin release-win32 release-osx