r14817 - gnucash/trunk/packaging/win32 - Further improve setup file creation script

Christian Stimming cstim at cvs.gnucash.org
Thu Sep 7 11:52:48 EDT 2006


Author: cstim
Date: 2006-09-07 11:52:47 -0400 (Thu, 07 Sep 2006)
New Revision: 14817
Trac: http://svn.gnucash.org/trac/changeset/14817

Modified:
   gnucash/trunk/packaging/win32/gnucash.iss.in
Log:
Further improve setup file creation script

Modified: gnucash/trunk/packaging/win32/gnucash.iss.in
===================================================================
--- gnucash/trunk/packaging/win32/gnucash.iss.in	2006-09-07 15:49:51 UTC (rev 14816)
+++ gnucash/trunk/packaging/win32/gnucash.iss.in	2006-09-07 15:52:47 UTC (rev 14817)
@@ -14,7 +14,8 @@
 AppSupportURL=http://www.gnucash.org
 AppUpdatesURL=http://www.gnucash.org
 DefaultDirName={pf}\@PACKAGE@
-LicenseFile=COPYING
+DefaultGroupName=GnuCash
+LicenseFile=..\..\COPYING
 Compression=lzma
 OutputDir=.
 OutputBaseFilename=@PACKAGE at -@VERSION at -setup
@@ -30,6 +31,18 @@
 Name: "translations"; Description: "{cm:TranslFiles}"; Types: full
 Name: "templates"; Description: "{cm:TemplFiles}"; Types: full
 
+[Tasks]
+Name: desktopicon; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"
+Name: menuicon; Description: "{cm:CreateMenuLink}"; GroupDescription: "{cm:AdditionalIcons}"
+
+[Icons]
+Name: "{group}\GnuCash"; Filename: "{app}\bin\gnucash.bat"; WorkingDir: "{app}\bin"; Comment: "GnuCash Free Finance Manager"; IconFilename: "{app}\share\pixmaps\gnucash-icon.png"; Tasks: menuicon
+Name: "{group}\Uninstall GnuCash"; Filename: "{uninstallexe}"; Tasks: menuicon
+Name: "{userdesktop}\GnuCash"; Filename: "{app}\bin\gnucash.bat"; WorkingDir: "{app}\bin"; Comment: "GnuCash Free Finance Manager"; IconFilename: "{app}\share\pixmaps\gnucash-icon.png"; Tasks: desktopicon
+
+[Run]
+Filename: "{app}\bin\gnucash.bat"; Description: "{cm:RunPrg}"; WorkingDir: "{app}\bin"; Flags: postinstall skipifsilent
+
 ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ; Here we configure the included files and the place of their
 ; installation
@@ -37,18 +50,25 @@
 [Files]
 ; The main executables and DLLs
 Source: "@prefix@\bin\*"; DestDir: "{app}\bin"; Flags: recursesubdirs; Components: main
+Source: "@prefix@\etc\*"; DestDir: "{app}\etc"; Flags: recursesubdirs; Components: main
+Source: "@prefix@\lib\*"; DestDir: "{app}\lib"; Flags: recursesubdirs; Components: main
+Source: "@prefix@\libexec\*"; DestDir: "{app}\libexec"; Flags: recursesubdirs; Components: main
+Source: "@prefix@\share\*"; DestDir: "{app}\share"; Flags: recursesubdirs; Components: main
 
-; and so on...
+; The translations (no idea why mingw installs them in prefix/lib/locale)
+Source: "@prefix@\lib\locale\*"; DestDir: "{app}\lib\locale"; Flags: recursesubdirs; Components: translations
 
+; The account templates
+Source: "@prefix@\share\gnucash\accounts\*"; DestDir: "{app}\share\gnucash\accounts"; Flags: recursesubdirs; Components: templates
+
 ; The loading shell script. It is post-processed by the Pascal script below.
-Source: "src\bin\gnucash.in"; DestDir: "{app}\bin"; Components: main; AfterInstall: MyAfterInstallConfig(ExpandConstant('{app}\bin\gnucash'))
+Source: "..\..\src\bin\gnucash.in"; DestDir: "{app}\bin"; Components: main; AfterInstall: MyAfterInstallConfig(ExpandConstant('{app}\bin\gnucash'))
 
 ; And all the documentation
-Source: "README"; DestDir: "{app}\doc\@PACKAGE@"; Components: doc
-Source: "COPYING"; DestDir: "{app}\doc\@PACKAGE@"; Flags: ignoreversion; Components: doc
-Source: "README.W32"; DestDir: "{app}\doc\@PACKAGE@"; Components: doc
-Source: "AUTHORS"; DestDir: "{app}\doc\@PACKAGE@"; Components: doc
-Source: "ChangeLog"; DestDir: "{app}\doc\@PACKAGE@"; Components: doc
+Source: "..\..\README"; DestDir: "{app}\doc\@PACKAGE@"; Components: main
+Source: "..\..\COPYING"; DestDir: "{app}\doc\@PACKAGE@"; Flags: ignoreversion; Components: main
+Source: "..\..\AUTHORS"; DestDir: "{app}\doc\@PACKAGE@"; Components: main
+Source: "..\..\ChangeLog"; DestDir: "{app}\doc\@PACKAGE@"; Components: main
 
 
 ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -88,7 +108,7 @@
 
 procedure MyAfterInstallConfig(FileName: String);
 var
-  FileString, appdir, includedir, libdir: String;
+  FileString, appdir, libdir, pkglibdir, pkgdatadir: String;
   Res: Boolean;
 begin
 
@@ -102,15 +122,19 @@
 
   { Get the installation-specific paths }
   appdir := MingwBacksl(ExpandConstant('{app}'));
-  includedir := appdir + '/include';
   libdir := appdir + '/lib';
+  pkglibdir := libdir + '/gnucash';
+  pkgdatadir := appdir + '/share/gnucash';
 
   { Now make all the replacements }
   { Explanation: StringChange(S,FromStr,ToStr): Change all occurances in S of FromStr to ToStr. }
-  StringChange(FileString, '@'+'prefix@', appdir);
-  StringChange(FileString, '@'+'libdir@', libdir);
-  { ... and so on, for example: ... }
-  StringChange(FileString, '@'+'GNC_GLADE_DIR@', '@GNC_GLADE_DIR@');
+  StringChange(FileString, '@'+'-PATH_SEPARATOR-@', ';');
+  StringChange(FileString, '@'+'-BIN_DIR-@', appdir + '/bin');
+  StringChange(FileString, '@'+'-GNC_PKGLIB_INSTALLDIR-@', pkglibdir);
+  StringChange(FileString, '@'+'-GNC_MODULE_DIR-@', pkglibdir);
+  StringChange(FileString, '@'+'-GNC_LIB_INSTALLDIR-@', libdir);
+  StringChange(FileString, '@'+'-GNC_GUILE_MODULE_DIR-@', pkgdatadir + '/guile-modules');
+  StringChange(FileString, '@'+'-GNC_SCM_INSTALL_DIR-@', pkgdatadir + '/scm');
 
   { Save the final file }
   Res := SaveStringToFile(FileName, FileString, False);
@@ -134,6 +158,10 @@
 ; *** "Select Components" wizard page
 FullInstall=Full installation
 CustomInstall=Custom installation
+CreateDesktopIcon=Create a &desktop icon
+CreateMenuLink=Create a start menu link
+RunPrg=Run GnuCash now
+AdditionalIcons=Create these icons:
 
 MainFiles=GnuCash Program
 TranslFiles=Translation Files
@@ -141,6 +169,10 @@
 
 de.FullInstall=Komplett-Installation
 de.CustomInstall=Benutzerdefiniert
+de.CreateDesktopIcon=Ein Icon auf dem Desktop erstellen
+de.CreateMenuLink=Eine Verknüpfung im Startmenü erstellen
+de.RunPrg=GnuCash jetzt starten
+de.AdditionalIcons=Folgende Icons erstellen:
 
 de.MainFiles=GnuCash Hauptprogramm
 de.TranslFiles=Deutsche Übersetzung



More information about the gnucash-changes mailing list