2006-04-08 Marcus Brinkmann <marcus@g10code.de>
authorMarcus Brinkmann <mb@g10code.com>
Sat, 8 Apr 2006 11:02:59 +0000 (11:02 +0000)
committerMarcus Brinkmann <mb@g10code.com>
Sat, 8 Apr 2006 11:02:59 +0000 (11:02 +0000)
* m4/gpg4win.m4 (GPG4WIN_IPKG): New macro for internal packages.
* include/config.nsi.in (gpg4win_pkg_man_novice_de,
gpg4win_pkg_man_novice_de_version, gpg4win_pkg_man_advanced_de,
gpg4win_pkg_man_advanced_de_version): Removed.
* src/installer.nsi [GPG4WIN_LIGHT]: Set the output filename for
the light installer.
* configure.ac: New option --enable-light-installer to control the
new automake conditional BUILD_LIGHT_INSTALLER.
Make packages man_novide_de and man_advanced_de included packages.
* src/Makefile.am (gpg4win-light-$(VERSION).exe): New target.
(all_src, all_light): New variables.
(all-local): Use all_src and all_light.
* src/gpg4win.nsi [GPG4WIN_LIGHT]: Undefine HAVE_PKG_MAN_NOVICE_DE
and HAVE_PKG_MAN_ADVANCED_DE.

ChangeLog
configure.ac
include/config.nsi.in
m4/gpg4win.m4
src/Makefile.am
src/gpg4win-splash.wav
src/gpg4win.nsi
src/installer.nsi

index ab2a03c..966b2e1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,20 @@
+2006-04-08  Marcus Brinkmann  <marcus@g10code.de>
+
+       * m4/gpg4win.m4 (GPG4WIN_IPKG): New macro for internal packages.
+       * include/config.nsi.in (gpg4win_pkg_man_novice_de,
+       gpg4win_pkg_man_novice_de_version, gpg4win_pkg_man_advanced_de,
+       gpg4win_pkg_man_advanced_de_version): Removed.
+       * src/installer.nsi [GPG4WIN_LIGHT]: Set the output filename for
+       the light installer.
+       * configure.ac: New option --enable-light-installer to control the
+       new automake conditional BUILD_LIGHT_INSTALLER.
+       Make packages man_novide_de and man_advanced_de included packages.
+       * src/Makefile.am (gpg4win-light-$(VERSION).exe): New target.
+       (all_src, all_light): New variables.
+       (all-local): Use all_src and all_light.
+       * src/gpg4win.nsi [GPG4WIN_LIGHT]: Undefine HAVE_PKG_MAN_NOVICE_DE
+       and HAVE_PKG_MAN_ADVANCED_DE.
+
 2006-04-07  Werner Koch  <wk@g10code.com>
 
        * configure.ac: Use new method to include the SVN revison.  Now it
index 0438f11..381969b 100644 (file)
@@ -64,7 +64,7 @@ AC_SUBST(BUILD_FILEVERSION)
 
 
 # For development of this package it is useful to build without
-# creatign the source install;er (takes a long time).  This option may
+# creatign the source installer (takes a long time).  This option may
 # be used to suppress creation of the source installer.
 AC_ARG_ENABLE(source-installer,
     AC_HELP_STRING([--disable-source-installer],
@@ -75,6 +75,17 @@ AC_MSG_RESULT($source_installer)
 AM_CONDITIONAL(BUILD_SOURCE_INSTALLER, test "$build_source_installer" = yes)
 
 
+# You can build a light version of the installer in addition to the
+# regular version.  This one does not contain the manuals.
+AC_ARG_ENABLE(light-installer,
+    AC_HELP_STRING([--disable-light-installer],
+                   [Do not create the light version of the installer]),
+                    build_light_installer=$enableval,
+                    build_light_installer=yes)
+AC_MSG_RESULT($light_installer)
+AM_CONDITIONAL(BUILD_LIGHT_INSTALLER, test "$build_light_installer" = yes)
+
+
 # Required tools.
 AC_PROG_CC
 AC_PROG_CPP
@@ -139,8 +150,8 @@ GPG4WIN_SPKG([sylpheed-claws], [libiconv gettext zlib gtk+ libpng glib dnl
                                 gpgme pthreads-w32 crypt regex])
 # The Eudora license (the one for thye EMS API) is still not acceptable.
 #GPG4WIN_SPKG([eudoragpg])
-GPG4WIN_SPKG([man_novice_de])
-GPG4WIN_SPKG([man_advanced_de])
+GPG4WIN_IPKG([man_novice_de])
+GPG4WIN_IPKG([man_advanced_de])
 
 GPG4WIN_FINALIZE
 
index dd63dd0..0f51777 100644 (file)
 !define gpg4win_pkg_gettext_version @gpg4win_pkg_gettext_version@
 !define gpg4win_pkg_gettext_src @gpg4win_pkg_gettext_src@
 
+# Internal packages.
 @HAVE_PKG_MAN_NOVICE_DE@
-!define gpg4win_pkg_man_novice_de @gpg4win_pkg_man_novice_de@
-!define gpg4win_pkg_man_novice_de_version @gpg4win_pkg_man_novice_de_version@
 
 @HAVE_PKG_MAN_ADVANCED_DE@
-!define gpg4win_pkg_man_advanced_de @gpg4win_pkg_man_advanced_de@
-!define gpg4win_pkg_man_advanced_de_version @gpg4win_pkg_man_advanced_de_version@
index dcf73f7..2c11ddd 100644 (file)
@@ -202,6 +202,37 @@ AC_DEFUN([GPG4WIN_FINALIZE],
 ])
 
 
+# GPG4WIN_IPKG([PKG],[DEPENDS],[IF-FOUND],[IF-NOT-FOUND])
+# Set up the internal package PKG.
+# It is provided in gpg4win_val.
+AC_DEFUN([GPG4WIN_IPKG],
+[
+  AC_REQUIRE([GPG4WIN_INIT])
+  AC_MSG_CHECKING([for internal package $1])
+  _gpg4win_pkg=maybe
+  AC_ARG_ENABLE([pkg-$1],
+    AS_HELP_STRING([--enable-pkg-$1[=DIR]],
+                   [include internal package $1]),
+    _gpg4win_pkg=$enableval,
+    _gpg4win_pkg=yes)
+
+  AC_MSG_RESULT($_gpg4win_pkg)
+
+  AS_IF([test "$_gpg4win_pkg" != no],
+    _gpg4win_pkgs="$_gpg4win_pkgs $1"
+    GPG4WIN_DEFINE(HAVE_PKG_[]m4_translit([$1],[a-z+-],[A-Z__]))
+    # Record dependencies.  Also enter every package as node.
+    _gpg4win_deps="$_gpg4win_deps $1 $1"
+    AS_IF([test ! -z "$2"],
+          for _gpg4win_i in $2; do
+            _gpg4win_deps="$_gpg4win_deps $_gpg4win_i $1"
+          done)
+      [$3],
+      [$4])
+])
+
+
+
 # GPG4WIN_SPKG([PKG],[DEPENDS],[IF-FOUND],[IF-NOT-FOUND])
 # Set up the source package PKG.
 # It is provided in gpg4win_val.
index 19011e0..51a80d7 100644 (file)
@@ -220,11 +220,17 @@ README.de.txt : versioninfo.txt $(top_srcdir)/doc/README.de.txt
 # if makensis changed to the directory of the source file at startup.
 # So we have to pull a couple of strings to correct this.
 gpg4win-$(VERSION).exe: gpg4win.nsi $(common_nsi) stamps/stamp-final \
-                        g4wihelp.dll  README.en.txt README.de.txt \
+                        g4wihelp.dll README.en.txt README.de.txt \
                        installer-options.ini
        $(MAKENSIS) -V3 -DBUILD_DIR=`pwd` -DTOP_SRCDIR=$(top_srcdir) \
                -DSRCDIR=$(srcdir) $(srcdir)/gpg4win.nsi
 
+gpg4win-light-$(VERSION).exe: gpg4win.nsi $(common_nsi) stamps/stamp-final \
+                        g4wihelp.dll README.en.txt README.de.txt \
+                       installer-options.ini
+       $(MAKENSIS) -V3 -DBUILD_DIR=`pwd` -DTOP_SRCDIR=$(top_srcdir) \
+               -DSRCDIR=$(srcdir) -DGPG4WIN_LIGHT=1 $(srcdir)/gpg4win.nsi
+
 stamps/stamp-dist-self: versioninfo.txt
        (set -e; cd ..; make dist-bzip2)
        touch stamps/stamp-dist-self
@@ -239,10 +245,18 @@ g4wihelp.dll: g4wihelp.c exdll.h
           -lwinmm -lgdi32
 
 if BUILD_SOURCE_INSTALLER
-all-local: gpg4win-$(VERSION).exe gpg4win-src-$(VERSION).exe
+all_src = gpg4win-src-$(VERSION).exe
 else
-all-local: gpg4win-$(VERSION).exe
+all_src =
 endif
 
+if BUILD_LIGHT_INSTALLER
+all_light = gpg4win-light-$(VERSION).exe
+else
+all_light =
+endif
+
+all-local: gpg4win-$(VERSION).exe $(all_light) $(all_src)
+
 clean-local:
        rm -f gpg4win-$(VERSION).exe gpg4win-src-$(VERSION).exe
index 792d341..d622b19 100644 (file)
Binary files a/src/gpg4win-splash.wav and b/src/gpg4win-splash.wav differ
index 10a6373..dac95e3 100644 (file)
 !addplugindir "${BUILD_DIR}"
 !include "../include/config.nsi"
 
+# For the "light" version of the package, we explicitely disable some
+# of the packages right after including config.nsi.
+!ifdef GPG4WIN_LIGHT
+!undef HAVE_PKG_MAN_NOVICE_DE
+!undef HAVE_PKG_MAN_ADVANCED_DE
+!endif
+
 
 # The package name and version.  PRETTY_PACKAGE is a user visible name
 # only while PACKAGE is useful for filenames etc.  PROD_VERSION is the
index 6a0e5ca..31881f1 100644 (file)
@@ -39,7 +39,11 @@ Name "${PRETTY_PACKAGE}"
 
 
 # Set the output filename.
+!ifdef GPG4WIN_LIGHT
+OutFile "${PACKAGE}-light-${VERSION}.exe"
+!else
 OutFile "${PACKAGE}-${VERSION}.exe"
+!endif
 
 Icon "${TOP_SRCDIR}/doc/logo/gpg4win-logo-icon.ico"
 UninstallIcon "${TOP_SRCDIR}/doc/logo/gpg4win-logo-icon.ico"
@@ -249,6 +253,7 @@ LangString T_NoKeyManager ${LANG_GERMAN} \
 #
 Function CustomPageOptions
   !insertmacro MUI_HEADER_TEXT "$(T_InstallOptions)" "$(T_InstallOptLinks)"
+
   # Note, that the default selection is done in the ini file
   !insertmacro MUI_INSTALLOPTIONS_WRITE "installer-options.ini" \
        "Field 1" "Text"  "$(T_InstOptLabelA)"
@@ -259,7 +264,6 @@ Function CustomPageOptions
   !insertmacro MUI_INSTALLOPTIONS_WRITE "installer-options.ini" \
        "Field 4" "Text"  "$(T_InstOptFieldC)"
 
-
   !insertmacro MUI_INSTALLOPTIONS_DISPLAY "installer-options.ini"
 FunctionEnd