Browse Source

inno win32 setup targets added

peter 20 years ago
parent
commit
e6d80636f6
2 changed files with 86 additions and 36 deletions
  1. 38 18
      Makefile
  2. 48 18
      Makefile.fpc

+ 38 - 18
Makefile

@@ -1,5 +1,5 @@
 #
 #
-# Don't edit, this file is generated by FPCMake Version 1.9.8 [2005/01/31]
+# Don't edit, this file is generated by FPCMake Version 1.9.8 [2005/02/07]
 #
 #
 default: help
 default: help
 MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-sunos i386-qnx i386-netware i386-openbsd i386-wdosx i386-emx i386-watcom i386-netwlibc m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos powerpc-linux powerpc-netbsd powerpc-macos powerpc-darwin powerpc-morphos sparc-linux sparc-netbsd sparc-sunos x86_64-linux x86_64-freebsd arm-linux
 MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-sunos i386-qnx i386-netware i386-openbsd i386-wdosx i386-emx i386-watcom i386-netwlibc m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos powerpc-linux powerpc-netbsd powerpc-macos powerpc-darwin powerpc-morphos sparc-linux sparc-netbsd sparc-sunos x86_64-linux x86_64-freebsd arm-linux
@@ -2397,33 +2397,21 @@ installbase:
 ifndef SNAPSHOT
 ifndef SNAPSHOT
 ifndef CROSSINSTALL
 ifndef CROSSINSTALL
 	$(MKDIR) $(INSTALL_DOCDIR)
 	$(MKDIR) $(INSTALL_DOCDIR)
-	-$(COPY) $(CVSINSTALL)/doc/*.txt $(CVSINSTALL)/doc/copying* $(CVSINSTALL)/doc/faq.* $(INSTALL_DOCDIR)
+	-$(COPY) $(addprefix $(CVSINSTALL)/doc/,*.txt copying* faq.*) $(INSTALL_DOCDIR)
 ifeq ($(OS_TARGET),go32v2)
 ifeq ($(OS_TARGET),go32v2)
 	$(COPY) $(CVSINSTALL)/bingo32/*.dxe $(INSTALL_BINDIR)
 	$(COPY) $(CVSINSTALL)/bingo32/*.dxe $(INSTALL_BINDIR)
 	$(COPY) $(CVSINSTALL)/bingo32/*.exe $(INSTALL_BINDIR)
 	$(COPY) $(CVSINSTALL)/bingo32/*.exe $(INSTALL_BINDIR)
 endif
 endif
 ifeq ($(OS_TARGET),win32)
 ifeq ($(OS_TARGET),win32)
-	$(COPY) $(CVSINSTALL)/binw32/*.ico $(INSTALL_BINDIR)
-	$(COPY) $(CVSINSTALL)/binw32/*.dll $(INSTALL_BINDIR)
+	$(COPY) $(addprefix $(CVSINSTALL)/binw32/,*.ico *.exe *.dll *.h) $(INSTALL_BINDIR)
 endif
 endif
 ifeq ($(OS_TARGET),os2)
 ifeq ($(OS_TARGET),os2)
-	$(COPY) $(CVSINSTALL)/binos2/*.ico $(INSTALL_BINDIR)
-	$(COPY) $(CVSINSTALL)/binos2/*.dll $(INSTALL_BINDIR)
+	$(COPY) $(addprefix $(CVSINSTALL)/binos2/,*.ico *.exe *.dll *.h) $(INSTALL_BINDIR)
 endif
 endif
 ifeq ($(OS_TARGET),emx)
 ifeq ($(OS_TARGET),emx)
-	$(COPY) $(CVSINSTALL)/binos2/*.ico $(INSTALL_BINDIR)
-	$(COPY) $(CVSINSTALL)/binos2/*.dll $(INSTALL_BINDIR)
+	$(COPY) $(addprefix $(CVSINSTALL)/binos2/,*.ico *.exe *.dll *.h) $(INSTALL_BINDIR)
 endif
 endif
-ifeq ($(OS_TARGET),linux)
-	$(MAKE) -C $(CVSINSTALL)/man installman
-endif
-ifeq ($(OS_TARGET),freebsd)
-	$(MAKE) -C $(CVSINSTALL)/man installman
-endif
-ifeq ($(OS_TARGET),sunos)
-	$(MAKE) -C $(CVSINSTALL)/man installman
-endif
-ifeq ($(OS_TARGET),qnx)
+ifneq ($(findstring $(OS_TARGET),linux freebsd sunos qnx),)
 	$(MAKE) -C $(CVSINSTALL)/man installman
 	$(MAKE) -C $(CVSINSTALL)/man installman
 endif
 endif
 endif
 endif
@@ -2658,3 +2646,35 @@ rpm: checkfpcdir rpmcopy rpmbuild rpmclean
 endif   # spec found
 endif   # spec found
 endif   # rpm available
 endif   # rpm available
 endif   # inUnix
 endif   # inUnix
+ISCCPROG=$(subst $(PATHSEP),/,$(ProgramFiles))/inno setup 5/iscc.exe
+ifndef inUnix
+USEINNOWRAPPER=1
+endif
+INNODIR=$(BUILDDIR)/inno
+INNOWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpcinno$(SRCBATCHEXT))
+INNOCMD_CDINNO:=cd $(subst /,$(ZIPPATHSEP),$(INNODIR))
+INNOCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
+INNOCMD_ISCC:=$(ISCCPROG) $(INNODIR)/fpc.iss
+FPCISSSUBST=-d BUILDDIR=$(subst /,$(PATHSEP),$(INNODIR))
+ifdef NODOCS
+FPCISSSUBST+=-d DisableDocs=;
+endif
+innobuild: build
+ifndef NODOCS
+ifeq ($(wildcard docs-pdf.zip),)
+	@$(ECHO) "No documentation available. Please copy the file docs-pdf.zip to this directory."
+	@exit 1
+endif
+endif
+	$(DELTREE) $(INNODIR)
+	$(MKDIR) $(INNODIR)
+ifndef NODOCS
+	unzip -d $(INNODIR) docs-pdf.zip
+endif
+	$(MAKE) install INSTALL_PREFIX=$(INNODIR)
+	compiler/utils/fpcsubst -i install/fpc.ist -o $(INNODIR)/fpc.iss $(FPCISSSUBST)
+	$(INNOCMD_ISCC)
+	$(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_TARGET).exe
+innoclean:
+	$(DELTREE) $(INNODIR)
+inno: checkfpcdir innobuild innoclean

+ 48 - 18
Makefile.fpc

@@ -288,38 +288,26 @@ ifndef SNAPSHOT
 ifndef CROSSINSTALL
 ifndef CROSSINSTALL
 # readme & whatsnew and docs
 # readme & whatsnew and docs
         $(MKDIR) $(INSTALL_DOCDIR)
         $(MKDIR) $(INSTALL_DOCDIR)
-        -$(COPY) $(CVSINSTALL)/doc/*.txt $(CVSINSTALL)/doc/copying* $(CVSINSTALL)/doc/faq.* $(INSTALL_DOCDIR)
+        -$(COPY) $(addprefix $(CVSINSTALL)/doc/,*.txt copying* faq.*) $(INSTALL_DOCDIR)
 # bingo32 (cwsdpmi,wmemu387.dxe)
 # bingo32 (cwsdpmi,wmemu387.dxe)
 ifeq ($(OS_TARGET),go32v2)
 ifeq ($(OS_TARGET),go32v2)
         $(COPY) $(CVSINSTALL)/bingo32/*.dxe $(INSTALL_BINDIR)
         $(COPY) $(CVSINSTALL)/bingo32/*.dxe $(INSTALL_BINDIR)
         $(COPY) $(CVSINSTALL)/bingo32/*.exe $(INSTALL_BINDIR)
         $(COPY) $(CVSINSTALL)/bingo32/*.exe $(INSTALL_BINDIR)
 endif
 endif
-# binw32 (cygwin1.dll,*.ico)
+# binw32 (*.dll,*.exe,*.ico)
 ifeq ($(OS_TARGET),win32)
 ifeq ($(OS_TARGET),win32)
-        $(COPY) $(CVSINSTALL)/binw32/*.ico $(INSTALL_BINDIR)
-        $(COPY) $(CVSINSTALL)/binw32/*.dll $(INSTALL_BINDIR)
+        $(COPY) $(addprefix $(CVSINSTALL)/binw32/,*.ico *.exe *.dll *.h) $(INSTALL_BINDIR)
 endif
 endif
 # binos2 (emx.dll,emxwrap.dll,unzip32.dll,fp2.ico)
 # binos2 (emx.dll,emxwrap.dll,unzip32.dll,fp2.ico)
 ifeq ($(OS_TARGET),os2)
 ifeq ($(OS_TARGET),os2)
-        $(COPY) $(CVSINSTALL)/binos2/*.ico $(INSTALL_BINDIR)
-        $(COPY) $(CVSINSTALL)/binos2/*.dll $(INSTALL_BINDIR)
+        $(COPY) $(addprefix $(CVSINSTALL)/binos2/,*.ico *.exe *.dll *.h) $(INSTALL_BINDIR)
 endif
 endif
 # binos2 (emx.dll,emxwrap.dll,unzip32.dll,fp2.ico)
 # binos2 (emx.dll,emxwrap.dll,unzip32.dll,fp2.ico)
 ifeq ($(OS_TARGET),emx)
 ifeq ($(OS_TARGET),emx)
-        $(COPY) $(CVSINSTALL)/binos2/*.ico $(INSTALL_BINDIR)
-        $(COPY) $(CVSINSTALL)/binos2/*.dll $(INSTALL_BINDIR)
+        $(COPY) $(addprefix $(CVSINSTALL)/binos2/,*.ico *.exe *.dll *.h) $(INSTALL_BINDIR)
 endif
 endif
 # manpages for UNIX systems
 # manpages for UNIX systems
-ifeq ($(OS_TARGET),linux)
-        $(MAKE) -C $(CVSINSTALL)/man installman
-endif
-ifeq ($(OS_TARGET),freebsd)
-        $(MAKE) -C $(CVSINSTALL)/man installman
-endif
-ifeq ($(OS_TARGET),sunos)
-        $(MAKE) -C $(CVSINSTALL)/man installman
-endif
-ifeq ($(OS_TARGET),qnx)
+ifneq ($(findstring $(OS_TARGET),linux freebsd sunos qnx),)
         $(MAKE) -C $(CVSINSTALL)/man installman
         $(MAKE) -C $(CVSINSTALL)/man installman
 endif
 endif
 endif
 endif
@@ -670,3 +658,45 @@ endif   # spec found
 endif   # rpm available
 endif   # rpm available
 
 
 endif   # inUnix
 endif   # inUnix
+
+##########################################################################
+# Inno setup
+##########################################################################
+
+ISCCPROG=$(subst $(PATHSEP),/,$(ProgramFiles))/inno setup 5/iscc.exe
+
+ifndef inUnix
+USEINNOWRAPPER=1
+endif
+INNODIR=$(BUILDDIR)/inno
+INNOWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpcinno$(SRCBATCHEXT))
+INNOCMD_CDINNO:=cd $(subst /,$(ZIPPATHSEP),$(INNODIR))
+INNOCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
+INNOCMD_ISCC:=$(ISCCPROG) $(INNODIR)/fpc.iss
+FPCISSSUBST=-d BUILDDIR=$(subst /,$(PATHSEP),$(INNODIR))
+ifdef NODOCS
+FPCISSSUBST+=-d DisableDocs=;
+endif
+
+innobuild: build
+ifndef NODOCS
+# Check for docs-pdf.zip
+ifeq ($(wildcard docs-pdf.zip),)
+	@$(ECHO) "No documentation available. Please copy the file docs-pdf.zip to this directory."
+	@exit 1
+endif
+endif
+        $(DELTREE) $(INNODIR)
+        $(MKDIR) $(INNODIR)
+ifndef NODOCS
+        unzip -d $(INNODIR) docs-pdf.zip
+endif
+        $(MAKE) install INSTALL_PREFIX=$(INNODIR)
+	compiler/utils/fpcsubst -i install/fpc.ist -o $(INNODIR)/fpc.iss $(FPCISSSUBST)
+	$(INNOCMD_ISCC)
+      	$(MOVE) $(INNODIR)/Output/setup.exe fpc-$(PACKAGE_VERSION).$(FULL_TARGET).exe
+
+innoclean:
+        $(DELTREE) $(INNODIR)
+
+inno: checkfpcdir innobuild innoclean