2008-09-27 Colin Leroy <colin@colino.net>
authorColin Leroy <colin@colino.net>
Sat, 27 Sep 2008 16:36:47 +0000 (16:36 +0000)
committerColin Leroy <colin@colino.net>
Sat, 27 Sep 2008 16:36:47 +0000 (16:36 +0000)
* configure.ac,
src/Makefile.am,
include/config.nsi.in,
src/inst-sections.nsi,
packages/packages.current: Add libxml2 for Claws plugins.
* src/inst-libxml2.nsi, src/uninst-libxml2.nsi,
New files for libxml2.

ChangeLog
configure.ac
include/config.nsi.in
src/Makefile.am
src/inst-libxml2.nsi [new file with mode: 0644]
src/inst-sections.nsi
src/uninst-libxml2.nsi [new file with mode: 0644]

index 029776c..f874ed1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,20 @@
        * configure.ac,
        src/Makefile.am,
        include/config.nsi.in,
+       src/inst-sections.nsi,
+       packages/packages.current: Add libxml2 for Claws plugins.
+       * src/inst-libxml2.nsi, src/uninst-libxml2.nsi,
+       New files for libxml2.
+
+2008-09-27  Colin Leroy  <colin@colino.net>
+
+       * packages/packages.current: Update claws (fixes its build).
+
+2008-09-27  Colin Leroy  <colin@colino.net>
+
+       * configure.ac,
+       src/Makefile.am,
+       include/config.nsi.in,
        src/gpg4win.nsi,
        src/inst-sections.nsi,
        packages/packages.current: Add Curl, Claws plugins Gtkhtml,
index 288486c..2545ddd 100644 (file)
@@ -209,11 +209,12 @@ GPG4WIN_SPKG([libtasn1])
 GPG4WIN_SPKG([opencdk], [libgpg-error libgcrypt])
 GPG4WIN_SPKG([gnutls], [libgsasl libtasn1 opencdk])
 GPG4WIN_SPKG([libetpan], [pthreads-w32 gnutls])
-GPG4WIN_SPKG([curl], [zlib gnutls kdesupport])
+GPG4WIN_SPKG([curl], [zlib gnutls])
+GPG4WIN_SPKG([libxml2], [zlib])
 GPG4WIN_SPKG([claws-mail], [libiconv gettext zlib gtk+ libpng jpeg glib dnl
                             gpgme pthreads-w32 crypt regex libetpan gnutls])
 GPG4WIN_SPKG([notification_plugin], [claws-mail])
-GPG4WIN_SPKG([gtkhtml2_viewer], [curl claws-mail])
+GPG4WIN_SPKG([gtkhtml2_viewer], [curl claws-mail libxml2])
 GPG4WIN_SPKG([vcalendar], [curl claws-mail])
 GPG4WIN_IPKG([compendium_de])
 GPG4WIN_IPKG([man_novice_en])
index aa61fef..3c4ba61 100644 (file)
 !define gpg4win_pkg_curl @gpg4win_pkg_curl@
 !define gpg4win_pkg_curl_version @gpg4win_pkg_curl_version@
 
+@HAVE_PKG_LIBXML2@
+!define gpg4win_pkg_libxml2 @gpg4win_pkg_libxml2@
+!define gpg4win_pkg_libxml2_version @gpg4win_pkg_libxml2_version@
 
 @HAVE_PKG_LIBETPAN@
 !define gpg4win_pkg_libetpan @gpg4win_pkg_libetpan@
index f940754..e01c51b 100644 (file)
@@ -30,6 +30,7 @@ EXTRA_DIST = pkg-config gpg4win.nsi gpg4win-src.nsi config.site \
         inst-opencdk.nsi          uninst-opencdk.nsi         \
         inst-gnutls.nsi                   uninst-gnutls.nsi          \
         inst-curl.nsi             uninst-curl.nsi            \
+        inst-libxml2.nsi          uninst-libxml2.nsi         \
         inst-libetpan.nsi         uninst-libetpan.nsi        \
         inst-claws-mail.nsi       uninst-claws-mail.nsi      \
         inst-notification_plugin.nsi      uninst-notification_plugin.nsi      \
@@ -84,7 +85,7 @@ CLEANFILES = g4wihelp.dll versioninfo.txt README.en.txt README.de.txt \
 
 # Supported source packages.
 gpg4win_spkgs = glib libgpg-error gpgme gpgol gpgex \
-               gpa winpt libgsasl libtasn1 opencdk gnutls curl \
+               gpa winpt libgsasl libtasn1 opencdk gnutls curl libxml2 \
                 libetpan claws-mail notification_plugin gtkhtml2_viewer \
                vcalendar gnupg2 pinentry libassuan libksba libgcrypt \
                adns dirmngr w32pth scute
@@ -202,6 +203,9 @@ gpg4win_pkg_gnutls_configure = \
 gpg4win_pkg_curl_configure = \
   --with-gnutls --without-ca-bundle
 
+gpg4win_pkg_libxml2_configure = \
+  --enable-shared --without-python
+
 # The CFLAGS are needed to find pthread-w32.
 gpg4win_pkg_libetpan_configure = --with-gnutls \
   CPPFLAGS=\"-I$(idir)/include\" LIBS=\"-L$(idir)/lib\"
@@ -354,6 +358,12 @@ define gpg4win_pkg_kdesupport_post_install
  rm -fR "$$$${pkgidir_dev}/share/apps/cmake/modules")
 endef
 
+# libxml2 ships some binaries, which we already have from kdesupport.  Remove a stow
+# conflict about that. 
+define gpg4win_pkg_libxml2_post_install
+(rm -f "$$$${pkgidir}/bin/xmllint.exe"; \
+ rm -f "$$$${pkgidir}/bin/xmlcatalog.exe")
+endef
 
 # Supported internal packages.  Internal packages do not require any
 # special support.  Thus, this variable is actually unused, and no
diff --git a/src/inst-libxml2.nsi b/src/inst-libxml2.nsi
new file mode 100644 (file)
index 0000000..4a2b50e
--- /dev/null
@@ -0,0 +1,38 @@
+# inst-libxml2.nsi - Installer snippet for libxml2.        -*- coding: latin-1; -*-
+# Copyright (C) 2005, 2007, 2008 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}/libxml2-${gpg4win_pkg_libxml2_version}
+
+!ifdef DEBUG
+Section "libxml2" SEC_libxml2
+!else
+Section "-libxml2" SEC_libxml2
+!endif
+  SetOutPath "$INSTDIR"
+!ifdef SOURCES
+  File ${gpg4win_pkg_libxml2}
+!else
+
+  File ${prefix}/bin/libxml2-2.dll
+
+!endif
+SectionEnd
index 992cc43..3332ef7 100644 (file)
 !ifdef HAVE_PKG_CURL
 !include "inst-curl.nsi"
 !endif
+!ifdef HAVE_PKG_LIBXML2
+!include "inst-libxml2.nsi"
+!endif
 !ifdef HAVE_PKG_PINENTRY
 !include "inst-pinentry.nsi"
 !endif
 !ifdef HAVE_PKG_CURL
 !include "uninst-curl.nsi"
 !endif
+!ifdef HAVE_PKG_LIBXML2
+!include "uninst-libxml2.nsi"
+!endif
 !ifdef HAVE_PKG_GTK_
 !include "uninst-gtk+.nsi"
 !endif
@@ -587,6 +593,9 @@ Function CalcDepends
 !ifdef HAVE_PKG_CURL
   !insertmacro UnselectSection ${SEC_curl}
 !endif
+!ifdef HAVE_PKG_LIBXML2
+  !insertmacro UnselectSection ${SEC_libxml2}
+!endif
 !ifdef HAVE_PKG_LIBGPG_ERROR
   !insertmacro UnselectSection ${SEC_libgpg_error}
 !endif
@@ -720,7 +729,7 @@ Function CalcDepends
   !insertmacro SelectSection ${SEC_libetpan}
   !insertmacro SelectSection ${SEC_gnutls}
   !insertmacro SelectSection ${SEC_curl}
-  !insertmacro SelectSection ${SEC_kdesupport}
+  !insertmacro SelectSection ${SEC_libxml2}
   skip_claws_mail:
 !endif
 
@@ -743,6 +752,13 @@ Function CalcDepends
   skip_curl:
 !endif
 
+!ifdef HAVE_PKG_LIBXML2
+  !insertmacro SectionFlagIsSet ${SEC_libxml2} ${SF_SELECTED} have_libxml2 skip_libxml2
+  have_libxml2:
+  !insertmacro SelectSection ${SEC_zlib}
+  skip_libxml2:
+!endif
+
 !ifdef HAVE_PKG_OPENCDK
   !insertmacro SectionFlagIsSet ${SEC_opencdk} ${SF_SELECTED} have_opencdk skip_opencdk
   have_opencdk:
diff --git a/src/uninst-libxml2.nsi b/src/uninst-libxml2.nsi
new file mode 100644 (file)
index 0000000..f6a1472
--- /dev/null
@@ -0,0 +1,37 @@
+# uninst-libxml2.nsi - Installer snippet for libxml2.-*- coding: latin-1; -*-
+# Copyright (C) 2005, 2007 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}/libxml2-${gpg4win_pkg_libxml2_version}
+
+
+; Uninstaller section.
+Section "-un.libxml2"
+!ifdef SOURCES
+  Push "${gpg4win_pkg_libxml2}"
+  Call un.SourceDelete
+!else
+
+  Delete "$INSTDIR\libxml2-2.dll"
+  RMDir "$INSTDIR"
+
+!endif
+SectionEnd