1 # See http://www.geany.org/Support/BuildingOnWin32
2 # Running make creates config.h then calls the sub makefiles.
5 # deps: delete the dependencies so they are regenerated on next make
6 # clean: clean all generated files
7 # install: install to DESTDIR
9 # localwin32.mk is an optional file to override make variables.
10 # Use localwin32.mk instead of editing variables as it is included in sub
12 # For MSYS set MSYS=1.
13 # By default this should work in a Windows command prompt (cmd.exe).
21 # $/ is used as a portable directory separator
22 # strip is used to prevent line wrap
24 DESTDIR = C:/Program Files/Geany
25 -include localwin32.mk
34 $(MAKE) -C tagmanager/ctags -f makefile.win32
35 $(MAKE) -C tagmanager/mio -f makefile.win32
36 $(MAKE) -C tagmanager/src -f makefile.win32
37 $(MAKE) -C scintilla -f makefile.win32
38 $(MAKE) -C plugins -f makefile.win32
39 $(MAKE) -C src -f makefile.win32
41 config.h: win32-config.h
45 -$(RM) tagmanager/ctags/deps.mak tagmanager/mio/deps.mak tagmanager/src/deps.mak scintilla/deps.mak plugins/deps.mak src/deps.mak
47 # used by src/makefile.win32 to avoid del ../file which is an error
49 -$(RM) geany_private.res geany.exe
52 $(MAKE) -C tagmanager/ctags -f makefile.win32 clean
53 $(MAKE) -C tagmanager/mio -f makefile.win32 clean
54 $(MAKE) -C tagmanager/src -f makefile.win32 clean
55 $(MAKE) -C scintilla -f makefile.win32 clean
56 $(MAKE) -C plugins -f makefile.win32 clean
57 $(MAKE) -C src -f makefile.win32 clean
59 .PHONY: all clean clean-local deps install
61 # likely requires admin privileges
62 # mkdir output is ignored in case dir exists
63 # 'copy' seems to only accept / in the destination
65 -$(MKDIR) "$(DESTDIR)"
66 -$(MKDIR) "$(DESTDIR)/bin"
67 $(CP) geany.exe "$(DESTDIR)/bin"
68 -$(MKDIR) "$(DESTDIR)/lib"
69 $(CP) plugins$/*.dll "$(DESTDIR)/lib"
70 -$(MKDIR) "$(DESTDIR)/data"
72 cp -r data "$(DESTDIR)"
74 xcopy /s /y data "$(DESTDIR)/data"