# See http://www.geany.org/Support/BuildingOnWin32 # Running make creates config.h then calls the sub makefiles. # # Other targets are: # clean: clean all generated files # install: install to DESTDIR # # localwin32.mk is an optional file to override make variables. # Use localwin32.mk instead of editing variables as it is included in sub # makefiles. # For MSYS set MSYS=1. # By default this should work in a Windows command prompt (cmd.exe). WINDRES = windres.exe CC = gcc CXX = g++ CP = copy /y RM = del MKDIR = mkdir # $/ is used as a portable directory separator # strip is used to prevent line wrap / := $(strip \) DESTDIR = C:/Program Files/Geany -include localwin32.mk ifdef MSYS CP = cp RM = rm -f / = / endif all: config.h $(MAKE) -C tagmanager/ctags -f makefile.win32 $(MAKE) -C tagmanager/mio -f makefile.win32 $(MAKE) -C tagmanager/src -f makefile.win32 $(MAKE) -C scintilla/gtk -f makefile.win32 $(MAKE) -C plugins -f makefile.win32 $(MAKE) -C src -f makefile.win32 config.h: win32-config.h $(CP) $< $@ # used by src/makefile.win32 to avoid del ../file which is an error clean-local: -$(RM) geany_private.res geany.exe clean: $(MAKE) -C tagmanager/ctags -f makefile.win32 clean $(MAKE) -C tagmanager/mio -f makefile.win32 clean $(MAKE) -C tagmanager/src -f makefile.win32 clean $(MAKE) -C scintilla/gtk -f makefile.win32 clean $(MAKE) -C plugins -f makefile.win32 clean $(MAKE) -C src -f makefile.win32 clean .PHONY: all clean clean-local install # likely requires admin privileges # mkdir output is ignored in case dir exists # 'copy' seems to only accept / in the destination install: -$(MKDIR) "$(DESTDIR)" -$(MKDIR) "$(DESTDIR)/bin" $(CP) geany.exe "$(DESTDIR)/bin" -$(MKDIR) "$(DESTDIR)/lib" $(CP) plugins$/*.dll "$(DESTDIR)/lib" -$(MKDIR) "$(DESTDIR)/data" ifdef MSYS cp -r data "$(DESTDIR)" else xcopy /s /y data "$(DESTDIR)/data" endif