File: Makefile

package info (click to toggle)
jumpnbump 1.70-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,156 kB
  • sloc: ansic: 6,066; python: 187; makefile: 185; sh: 84; xml: 45
file content (98 lines) | stat: -rw-r--r-- 3,224 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# Define to 1 for a system install (on Linux/*BSD) instead of running in place.
SYSINSTALL ?= 0
DESTDIR ?=
PREFIX ?= /usr/local
BINDIR ?= $(PREFIX)/bin
DATADIR ?= $(PREFIX)/share
# Can be overridden to use e.g. /usr/share/games
GAMEDATADIR ?= $(DATADIR)
EXE ?=

CFLAGS ?= -Wall -O2 -ffast-math -funroll-loops -fno-common
SDL_CFLAGS = `sdl2-config --cflags`
DEFINES = -Dstricmp=strcasecmp -Dstrnicmp=strncasecmp -DNDEBUG -DUSE_SDL -DUSE_NET -DZLIB_SUPPORT -DBZLIB_SUPPORT
ifeq ($(SYSINSTALL), 1)
DEFINES += -DGAMEDATADIR="\"$(GAMEDATADIR)\""
endif
INCLUDES = -I.
CFLAGS += $(DEFINES) $(SDL_CFLAGS) $(INCLUDES)
export SDL_CFLAGS
export DEFINES
export INCLUDES

LDFLAGS ?=
SDL_LIBS = `sdl2-config --libs`
LIBS = $(SDL_LIBS) -lSDL2_mixer -lSDL2_net -lbz2 -lz -lm

TARGET = jumpnbump$(EXE)
SDL_TARGET = sdl.a
MODIFY_TARGET = gobpack$(EXE) jnbpack$(EXE) jnbunpack$(EXE)
OBJS = main.o menu.o filter.o network.o
BINARIES = $(TARGET) $(MODIFY_TARGET)

.PHONY: data modify

all: $(BINARIES)

$(SDL_TARGET):
	$(MAKE) -C sdl

$(MODIFY_TARGET): modify

modify:
	$(MAKE) -C modify

$(TARGET): $(OBJS) $(SDL_TARGET) data
	$(CC) $(CFLAGS) -o $(TARGET) $(OBJS) $(LDFLAGS) $(SDL_TARGET) $(LIBS)

$(OBJS):

data: $(MODIFY_TARGET)
	$(MAKE) -C data

jnbmenu:
	$(MAKE) -C menu

clean:
	for dir in data modify sdl; do $(MAKE) clean -C $$dir; done
	$(RM) $(TARGET) *.exe *.o

	$(MAKE) -C menu clean

install:
	mkdir -p $(DESTDIR)$(BINDIR)
	mkdir -p $(DESTDIR)$(GAMEDATADIR)/jumpnbump/
	mkdir -p $(DESTDIR)$(DATADIR)/metainfo/
	mkdir -p $(DESTDIR)$(DATADIR)/applications/
	mkdir -p $(DESTDIR)$(DATADIR)/icons/hicolor/32x32/apps/
	mkdir -p $(DESTDIR)$(DATADIR)/icons/hicolor/64x64/apps/
	mkdir -p $(DESTDIR)$(DATADIR)/icons/hicolor/96x96/apps/
	mkdir -p $(DESTDIR)$(DATADIR)/icons/hicolor/128x128/apps/
	mkdir -p $(DESTDIR)$(DATADIR)/man/man6/
	install -m 755 $(BINARIES) $(DESTDIR)$(BINDIR)/
	install -m 644 data/jumpbump.dat \
		$(DESTDIR)$(GAMEDATADIR)/jumpnbump/jumpbump.dat
	install -m 644 dist/io.gitlab.LibreGames.jumpnbump.metainfo.xml \
		$(DESTDIR)$(DATADIR)/metainfo/io.gitlab.LibreGames.jumpnbump.metainfo.xml
	install -m 644 dist/io.gitlab.LibreGames.jumpnbump.desktop \
		$(DESTDIR)$(DATADIR)/applications/io.gitlab.LibreGames.jumpnbump.desktop
	install -m 644 dist/jumpnbump32.png \
		$(DESTDIR)$(DATADIR)/icons/hicolor/32x32/apps/io.gitlab.LibreGames.jumpnbump.png
	install -m 644 dist/jumpnbump64.png \
		$(DESTDIR)$(DATADIR)/icons/hicolor/64x64/apps/io.gitlab.LibreGames.jumpnbump.png
	install -m 644 dist/jumpnbump96.png \
		$(DESTDIR)$(DATADIR)/icons/hicolor/96x96/apps/io.gitlab.LibreGames.jumpnbump.png
	install -m 644 dist/jumpnbump128.png \
		$(DESTDIR)$(DATADIR)/icons/hicolor/128x128/apps/io.gitlab.LibreGames.jumpnbump.png
	install -m 644 dist/jumpnbump.6 $(DESTDIR)$(DATADIR)/man/man6/

uninstall:
	for bin in $(BINARIES); do $(RM) $(DESTDIR)$(BINDIR)/$$bin; done
	$(RM) -r $(DESTDIR)$(GAMEDATADIR)/jumpnbump
	$(RM) $(DESTDIR)$(DATADIR)/metainfo/io.gitlab.LibreGames.jumpnbump.metainfo.xml
	$(RM) $(DESTDIR)$(DATADIR)/applications/io.gitlab.LibreGames.jumpnbump.desktop
	$(RM) $(DESTDIR)$(DATADIR)/icons/jumpnbump.png
	$(RM) $(DESTDIR)$(DATADIR)/man/man6/jumpnbump.6

doc:
	man2html dist/jumpnbump.6 > docs/jumpnbump.html