Add scute as new package
authorAndre Heinecke <aheinecke@gnupg.org>
Wed, 6 Mar 2019 07:25:35 +0000 (08:25 +0100)
committerAndre Heinecke <aheinecke@gnupg.org>
Wed, 6 Mar 2019 07:25:35 +0000 (08:25 +0100)
* configure.ac: Declare new package and dependencies.
* packages/packages.current (scute): Add a snapshot.
* src/Makefile.am (EXTRA_DIST): Add nsi files.
(gpg4win_spkgs): Add scute.
* src/config.nsi.in: The usual
* src/inst-sections.nsi: Add scute. Install it when
GnuPG is installed.
* src/mkportable-full.h (full_files): Add scute.dll
* src/inst-scute.nsi, src/uninst-scute.nsi: New.

--
Scute is very small so we can install it always when GnuPG
is installed. A further improvement could be to also
register it automatically with Mozilla Software.

configure.ac
packages/packages.current
src/Makefile.am
src/config.nsi.in
src/inst-scute.nsi [new file with mode: 0644]
src/inst-sections.nsi
src/mkportable-full.h
src/uninst-scute.nsi [new file with mode: 0644]

index c5840a3..e8a84c1 100644 (file)
@@ -315,6 +315,7 @@ GPG4WIN_SPKG([libpng], [pkgconfig])
 GPG4WIN_SPKG([bzip2])
 GPG4WIN_SPKG([libgpg-error], [libiconv gettext])
 GPG4WIN_SPKG([libassuan], [libgpg-error w32pth])
+GPG4WIN_SPKG([scute], [libgpg-error libassuan])
 GPG4WIN_SPKG([pinentry], [qtbase libiconv gtk+])
 GPG4WIN_SPKG([gpgme], [libgpg-error glib qtbase])
 GPG4WIN_SPKG([gpgol], [gpgme libassuan])
index e36171c..05018a8 100644 (file)
@@ -553,10 +553,13 @@ server https://download.kde.org/Attic/applications
 file 17.12.2/src/kmime-17.12.2.tar.xz
 chk 29f11eafeb13c0045069a250bdcd57fda4bdd3423e7e1b7e0ca0517a9afefd24
 
-# Devel versions are needed until Kleopatra can be based on
-# a stable branch.
+# Snapshots which contain unreleased fixes important for Gpg4win
 server http://files.intevation.de/projects/gpg4all
 
+#by ah
+file scute/scute-1.6.0-beta187.tar.bz2
+chk 8d2a56dff6e6c12d628dd32075497326e8345c0096dec1280f7ab2c737410837
+
 # by: ah
 file pinentry/pinentry-1.1.1-beta5.tar.bz2
 chk 7bda3fef7d7f0f77dd4dfe11e3364c64f1e9646945afa995da8a5084ce59e101
index b1f417c..8be9d39 100644 (file)
@@ -85,6 +85,7 @@ EXTRA_DIST = pkg-config gpg4win.nsi gpg4win-src.nsi \
         inst-qttranslations.nsi uninst-qttranslations.nsi \
         inst-qtwinextras.nsi uninst-qtwinextras.nsi \
         inst-boost.nsi uninst-boost.nsi \
+        inst-scute.nsi uninst-scute.nsi \
         inst-extra-cmake-modules.nsi uninst-extra-cmake-modules.nsi \
         inst-gpg4win-tools.nsi uninst-gpg4win-tools.nsi \
         inst-gpgme-browser.nsi \
@@ -118,7 +119,7 @@ gpg4win_spkgs = glib libffi gdk-pixbuf gtk+ \
                 libgpg-error gpgme gpgol gpgex libpng \
                gpa opencdk \
                pinentry libassuan \
-               w32pth paperkey regex libiconv gettext
+               w32pth paperkey regex libiconv gettext scute
 
 gpg4win_qtpkgs = qtbase qttools qtwinextras qtsvg qttranslations
 
index f898ab9..94e697c 100644 (file)
 !define gpg4win_pkg_gpg4win_tools @gpg4win_pkg_gpg4win_tools@
 !define gpg4win_pkg_gpg4win_tools_version @gpg4win_pkg_gpg4win_tools_version@
 
+@HAVE_PKG_SCUTE@
+!define gpg4win_pkg_scute @gpg4win_pkg_scute@
+!define gpg4win_pkg_scute_version @gpg4win_pkg_scute_version@
+
 # Internal packages.
 @HAVE_PKG_COMPENDIUM@
 
diff --git a/src/inst-scute.nsi b/src/inst-scute.nsi
new file mode 100644 (file)
index 0000000..cc773e3
--- /dev/null
@@ -0,0 +1,39 @@
+# Copyright (C) 2019 g10 Code GmbH
+#
+# This file is part of GPG4Win.
+#
+# GPG4Win is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# GPG4Win is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+!ifdef prefix
+!undef prefix
+!endif
+!define prefix ${ipdir}/scute-${gpg4win_pkg_scute_version}
+
+!ifdef DEBUG
+Section "scute" SEC_scute
+!else
+Section "-scute" SEC_scute
+!endif
+  SetOutPath "$INSTDIR\bin"
+  ClearErrors
+  SetOverwrite try
+  File "${prefix}/lib/scute.dll"
+  SetOverwrite lastused
+  ifErrors 0 +3
+      File /oname=scute.dll.tmp "${prefix}/lib/scute.dll"
+      Rename /REBOOTOK scute.dll.tmp scute.dll
+!ifdef SOURCES
+  File "${gpg4win_pkg_scute}"
+!endif
+SectionEnd
index cfe8726..b4ca294 100644 (file)
 !ifdef HAVE_PKG_GPG4WIN_TOOLS
 !include "inst-gpg4win-tools.nsi"
 !endif
+!ifdef HAVE_PKG_SCUTE
+!include "inst-scute.nsi"
+!endif
 
 # These are displayed in the selection dialog.
 
 !ifdef HAVE_PKG_GPG4WIN_TOOLS
 !include "uninst-gpg4win-tools.nsi"
 !endif
+!ifdef HAVE_PKG_SCUTE
+!include "uninst-scute.nsi"
+!endif
 
 !include "uninst-gpg4win.nsi"
 
@@ -713,6 +719,9 @@ Function CalcDepends
 !ifdef HAVE_PKG_GPG4WIN_TOOLS
   !insertmacro UnselectSection ${SEC_gpg4win-tools}
 !endif
+!ifdef HAVE_PKG_SCUTE
+  !insertmacro UnselectSection ${SEC_scute}
+!endif
 
   # Always install gnupg2.  This is also ensured by putting
   # these packages in the RO section and enabling them by default, but
@@ -787,6 +796,7 @@ Function CalcDepends
   !insertmacro SectionFlagIsSet ${SEC_gnupg_w32} ${SF_SELECTED} have_gnupg_w32 skip_gnupg_w32
   have_gnupg_w32:
   !insertmacro SelectSection ${SEC_pinentry}
+  !insertmacro SelectSection ${SEC_scute}
   skip_gnupg_w32:
 !endif
 
index ec0961c..2b8bbd4 100644 (file)
@@ -289,6 +289,7 @@ const char * const full_files[] =
   "bin/translations/qtquick1_ko.qm",
   "bin/translations/qtxmlpatterns_it.qm",
   "bin/intl.dll",
+  "bin/scute.dll",
   "bin/gresource.exe",
   "include/gpgme.h",
   "include/assuan.h",
diff --git a/src/uninst-scute.nsi b/src/uninst-scute.nsi
new file mode 100644 (file)
index 0000000..5c02a2e
--- /dev/null
@@ -0,0 +1,35 @@
+# uninst-scute.nsi - Installer f. scute. -*- coding: latin-1; -*-
+# Copyright (C) 2019 g10 Code GmbH
+#
+# This file is part of GPG4Win.
+#
+# GPG4Win is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# GPG4Win is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+
+
+!ifdef prefix
+!undef prefix
+!endif
+!define prefix ${ipdir}/scute-${gpg4win_pkg_scute_version}
+
+
+; Uninstaller section.
+Section "-un.scute"
+!ifdef SOURCES
+  Push "${gpg4win_pkg_scute}"
+  Call un.SourceDelete
+!else
+  Delete /REBOOTOK "$INSTDIR\bin\scute.dll"
+!endif
+SectionEnd