More Windows crap...
[neverball] / Makefile.mingw
1 export EXT= .exe
2
3 #-----------------------------------------------------------------------------
4
5 include Makefile
6
7 #-----------------------------------------------------------------------------
8
9 WINE= wine
10
11 OGL_LIBS= -lm -lopengl32
12 BASE_LIBS= -lSDL -lSDL_image -lintl
13
14 LIBS= \
15         $(SDL_LIBS) -lSDL_image -lSDL_mixer -lSDL_ttf \
16         $(OGL_LIBS) $(PNG_LIBS) -lintl
17
18 #-----------------------------------------------------------------------------
19
20 INSTALLER= ../neverball-$(VERSION)-setup.exe
21
22 MAKENSIS= makensis
23 MAKENSIS_FLAGS= -DVERSION=$(VERSION) -DOUTFILE=$(INSTALLER)
24
25 TODOS= todos
26 FROMDOS= fromdos
27 CP= cp
28
29 TEXT_DOCS= \
30         doc/AUTHORS \
31         doc/MANUAL  \
32         CHANGES     \
33         COPYING     \
34         README
35
36 TXT_DOCS= $(TEXT_DOCS:%=%.txt)
37
38 #-----------------------------------------------------------------------------
39
40 .PHONY: setup
41 setup: $(INSTALLER)
42
43 $(INSTALLER): install-dlls convert-text-files all tools
44         $(MAKENSIS) $(MAKENSIS_FLAGS) -nocd scripts/neverball.nsi
45
46 # This fails on MSYS due to a bug in the shipped version of make (3.79.1).
47 # $(INSTALLER): LDFLAGS += -s
48 $(INSTALLER): LDFLAGS := $(LDFLAGS) -s
49
50 .PHONY: clean-setup
51 clean-setup: clean
52         # $(RM) $(INSTALLER)
53         $(RM) install-dlls.sh *.dll $(TXT_DOCS)
54         find data -name "*.txt" -exec $(FROMDOS) {} \;
55         cd tools && $(MAKE) clean
56
57 #-----------------------------------------------------------------------------
58
59 .PHONY: install-dlls
60 install-dlls: install-dlls.sh
61         sh $<
62
63 install-dlls.sh:
64         if ! sh scripts/gen-install-dlls.sh > $@; then \
65             $(RM) $@; \
66             exit 1; \
67         fi
68         @echo --------------------------------------------------------
69         @echo You can probably ignore any file-not-found errors above.
70         @echo Now edit $@ to your needs before restarting make.
71         @echo --------------------------------------------------------
72         @exit 1
73
74 #-----------------------------------------------------------------------------
75
76 .PHONY: convert-text-files
77 convert-text-files: $(TXT_DOCS)
78         find data -name "*.txt" -exec $(TODOS) {} \;
79
80 %.txt: %
81         $(CP) $< $@
82         $(TODOS) $@
83
84 #-----------------------------------------------------------------------------
85
86 tools:
87         cd tools && $(MAKE)
88
89 #-----------------------------------------------------------------------------