Applied my "bidirectional dt scaling" patch. Accordingly, the game can
[neverball] / Makefile.mingw
index 744d7e2..90147a2 100644 (file)
@@ -1,15 +1,87 @@
+export EXT= .exe
+
+#-----------------------------------------------------------------------------
+
 include Makefile
 
-MAPC_TARG= mapc.exe
-BALL_TARG= neverball.exe
-PUTT_TARG= neverputt.exe
+#-----------------------------------------------------------------------------
+
+WINE= wine
 
-OGL_LIBS := -lm -lopengl32
-PNG_LIBS := $(shell libpng-config --libs)
-BASE_LIBS := -lSDL -lSDL_image -lintl
+OGL_LIBS= -lm -lopengl32
+BASE_LIBS= -lSDL -lSDL_image -lintl
 
-LIBS := $(SDL_LIBS) -lSDL_image -lSDL_mixer -lSDL_ttf \
+LIBS= \
+       $(SDL_LIBS) -lSDL_image -lSDL_mixer -lSDL_ttf \
        $(OGL_LIBS) $(PNG_LIBS) -lintl
 
-cross:
-       $(MAKE) -f Makefile.mingw MAPC_EXEC="wine mapc.exe"
+#-----------------------------------------------------------------------------
+
+INSTALLER= ../neverball-$(VERSION)-setup.exe
+
+MAKENSIS= makensis
+MAKENSIS_FLAGS= -DVERSION=$(VERSION) -DOUTFILE=$(INSTALLER)
+
+TODOS= todos
+FROMDOS= fromdos
+CP= cp
+
+TEXT_DOCS= \
+       doc/AUTHORS \
+       doc/MANUAL  \
+       CHANGES     \
+       COPYING     \
+       README
+
+TXT_DOCS= $(TEXT_DOCS:%=%.txt)
+
+#-----------------------------------------------------------------------------
+
+.PHONY: setup
+setup: $(INSTALLER)
+
+$(INSTALLER): install-dlls convert-text-files all tools
+       $(MAKENSIS) $(MAKENSIS_FLAGS) -nocd scripts/neverball.nsi
+
+$(INSTALLER): LDFLAGS := -s $(LDFLAGS)
+
+.PHONY: clean-setup
+clean-setup: clean
+       $(RM) install-dlls.sh *.dll $(TXT_DOCS)
+       find data -name "*.txt" -exec $(FROMDOS) {} \;
+       cd tools && $(MAKE) clean
+
+#-----------------------------------------------------------------------------
+
+.PHONY: install-dlls
+install-dlls: install-dlls.sh
+       sh $<
+
+install-dlls.sh:
+       if ! sh scripts/gen-install-dlls.sh > $@; then \
+           $(RM) $@; \
+           exit 1; \
+       fi
+       @echo --------------------------------------------------------
+       @echo You can probably ignore any file-not-found errors above.
+       @echo Now edit $@ to your needs before restarting make.
+       @echo --------------------------------------------------------
+       @exit 1
+
+#-----------------------------------------------------------------------------
+
+.PHONY: convert-text-files
+convert-text-files: $(TXT_DOCS)
+       find data -name "*.txt" -exec $(TODOS) {} \;
+
+%.txt: %
+       $(CP) $< $@
+       $(TODOS) $@
+
+#-----------------------------------------------------------------------------
+
+.PHONY: tools
+tools:
+       cd tools && $(MAKE)
+
+#-----------------------------------------------------------------------------