app-crypt/eid-mw: Update -9999 to drop gtk requirement in newest builds
authorSven Vermeulen <swift@gentoo.org>
Sun, 16 Aug 2015 18:08:07 +0000 (20:08 +0200)
committerSven Vermeulen <swift@gentoo.org>
Sun, 16 Aug 2015 18:16:03 +0000 (20:16 +0200)
Provided by Vincent Hardy, this patches the live ebuild to drop the gtk
requirement from the code. It also includes the pkgconfig file.

Gentoo-Bug: 557604

Package-Manager: portage-2.2.20.1

app-crypt/eid-mw/eid-mw-9999.ebuild
app-crypt/eid-mw/files/gtk_not_required_9999.patch [new file with mode: 0644]
app-crypt/eid-mw/metadata.xml

index 9ef575a906b3f2b41296a24f900a9dbffc6fb082..06e154cbea829257c8f9a13b12ce350e2077a886 100644 (file)
@@ -4,18 +4,18 @@
 
 EAPI=5
 
-inherit eutils versionator mozextension multilib
+inherit eutils autotools mozextension multilib
 
 if [[ ${PV} == "9999" ]] ; then
        EGIT_REPO_URI="git://github.com/Fedict/${PN}.git
                https://github.com/Fedict/${PN}.git"
-       inherit git-2 autotools
+       inherit git-2
        SRC_URI=""
 else
-       MY_P="${PN}-${PV/_p/-}"
-       SRC_URI="http://eid.belgium.be/en/binaries/${MY_P}.tar_tcm406-258906.gz -> ${MY_P}.tar.gz"
-       KEYWORDS="~x86 ~amd64"
-       S="${WORKDIR}/eid-mw-$(get_version_component_range 1-3)"
+       MY_P="${P}-v${PV}"
+       SRC_URI="http://eid.belgium.be/en/binaries/${MY_P}.tar_tcm406-270730.gz -> ${MY_P}.tar.gz"
+       KEYWORDS="~x86 ~amd64 ~arm"
+       S="${WORKDIR}/${MY_P}"
 fi
 
 SLOT="0"
@@ -24,9 +24,12 @@ DESCRIPTION="Belgian Electronic Identity Card middleware supplied by the Belgian
 
 HOMEPAGE="http://eid.belgium.be"
 
-IUSE="+gtk +xpi"
+IUSE="+gtk +xpi +dialogs"
 
-RDEPEND="gtk? ( x11-libs/gtk+:2 )
+REQUIRED_USE="
+       dialogs? ( gtk )"
+
+RDEPEND="gtk? ( x11-libs/gtk+:* )
        >=sys-apps/pcsc-lite-1.2.9
        xpi? ( || ( >=www-client/firefox-bin-3.6.24
                >=www-client/firefox-3.6.20 ) )
@@ -35,18 +38,32 @@ RDEPEND="gtk? ( x11-libs/gtk+:2 )
 DEPEND="${RDEPEND}
        virtual/pkgconfig"
 
-if [[ ${PV} == "9999" ]]; then
-       src_prepare() {
+src_prepare() {
+       use gtk || epatch "${FILESDIR}"/gtk_not_required_${PV}.patch
+
+       if [[ ${PV} == "9999" ]] ; then
+               # Only in current git. Hopefully, in next release.
+               sed -i -e 's:/beid/rsaref220:/rsaref220:' configure.ac
+               sed -i -e 's:/beid::' cardcomm/pkcs11/src/libbeidpkcs11.pc.in
+       fi
+
+       if [[ ${PV} == "9999" ]] || ! use gtk ; then
                eautoreconf
-       }
-fi
+       fi
+}
 
 src_configure() {
-       econf $(use_enable gtk dialogs) --disable-static
+       econf $(use_enable dialogs) --disable-static
 }
 
 src_install() {
        emake DESTDIR="${D}" install
+
+       if [[ ${PV} != "9999" ]] ; then
+               # Automatically done in current git. Hopefully, in next release.
+               rm doc/sdk/include/rsaref220/win32.h
+               doheader -r doc/sdk/include/*
+       fi
        if use xpi; then
                declare MOZILLA_FIVE_HOME
                if has_version '>=www-client/firefox-3.6.20'; then
diff --git a/app-crypt/eid-mw/files/gtk_not_required_9999.patch b/app-crypt/eid-mw/files/gtk_not_required_9999.patch
new file mode 100644 (file)
index 0000000..ba4d4b1
--- /dev/null
@@ -0,0 +1,64 @@
+diff --git a/Makefile.am b/Makefile.am
+index 1a605f7..6475886 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,7 +1,7 @@
+ ACLOCAL_AMFLAGS = -I scripts/m4
+ EXTRA_DIST = scripts/build-aux/config.rpath  debian build-debian.sh rpm doc
+-SUBDIRS=cardcomm/pkcs11/src doc/sdk/include/rsaref220 tests/unit plugins_tools/xpi plugins_tools/aboutmw/gtk
++SUBDIRS=cardcomm/pkcs11/src doc/sdk/include/rsaref220 tests/unit plugins_tools/xpi
+ xpipackage:
+       $(MAKE) -C plugins_tools/xpi xpipackage
+diff --git a/cardcomm/pkcs11/src/Makefile.am b/cardcomm/pkcs11/src/Makefile.am
+index b70e7f2..ac38944 100644
+--- a/cardcomm/pkcs11/src/Makefile.am
++++ b/cardcomm/pkcs11/src/Makefile.am
+@@ -165,30 +165,4 @@ libbeidpkcs11_la_SOURCES += \
+       dialogs/dialogsgtk/single_dialog.c
+ endif
+-libexec_PROGRAMS = beid-askpin beid-changepin beid-badpin beid-askaccess beid-spr-askpin beid-spr-changepin
+-
+-beid_askpin_SOURCES = dialogs/dialogsgtk/parent.c dialogs/dialogsgtk/beid-askpin.c
+-beid_askpin_CPPFLAGS = -I$(srcdir)/dialogsgtk -I$(srcdir)/../common/src -I$(srcdir)/src @GTK_CFLAGS@
+-beid_askpin_LDADD = @GTK_LIBS@
+-
+-beid_changepin_SOURCES = dialogs/dialogsgtk/parent.c dialogs/dialogsgtk/beid-changepin.c
+-beid_changepin_CPPFLAGS = -I$(dialogsdir)/dialogsgtk -I$(dialogsdir)/../common/dialogs -I$(dialogsdir)/dialogs @GTK_CFLAGS@
+-beid_changepin_LDADD = @GTK_LIBS@
+-
+-beid_badpin_SOURCES = dialogs/dialogsgtk/parent.c dialogs/dialogsgtk/beid-badpin.c
+-beid_badpin_CPPFLAGS = -I$(dialogsdir)/dialogsgtk -I$(dialogsdir)/../common/dialogs -I$(dialogsdir)/dialogs @GTK_CFLAGS@
+-beid_badpin_LDADD = @GTK_LIBS@
+-
+-beid_askaccess_SOURCES = dialogs/dialogsgtk/parent.c dialogs/dialogsgtk/beid-askaccess.c
+-beid_askaccess_CPPFLAGS = -I$(dialogsdir)/dialogsgtk -I$(dialogsdir)/../common/dialogs -I$(dialogsdir)/dialogs @GTK_CFLAGS@
+-beid_askaccess_LDADD = @GTK_LIBS@
+-
+-beid_spr_askpin_SOURCES = dialogs/dialogsgtk/parent.c dialogs/dialogsgtk/beid-spr-askpin.c
+-beid_spr_askpin_CPPFLAGS = -I$(dialogsdir)/dialogsgtk -I$(dialogsdir)/../common/dialogs -I$(dialogsdir)/dialogs @GTK_CFLAGS@
+-beid_spr_askpin_LDADD = @GTK_LIBS@
+-
+-beid_spr_changepin_SOURCES = dialogs/dialogsgtk/parent.c dialogs/dialogsgtk/beid-spr-changepin.c
+-beid_spr_changepin_CPPFLAGS = -I$(dialogsdir)/dialogsgtk -I$(dialogsdir)/../common/dialogs -I$(dialogsdir)/dialogs @GTK_CFLAGS@
+-beid_spr_changepin_LDADD = @GTK_LIBS@
+-
+ pkgconfig_DATA=libbeidpkcs11.pc
+diff --git a/configure.ac b/configure.ac
+index 102c1c7..efdf0e2 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -56,11 +56,6 @@ then
+       fi
+ fi
+-if test x"$have_gtk" = "xno"
+-then
+-      AC_MSG_ERROR([At least one version of GTK is required.])
+-fi
+-
+ ###########################################################################
+ ####### read user-specific requests from --enable directives         ######
+ ###########################################################################
index 964772a1c4bbaf951debf72104e98f0ef95dfe55..a695712ba3d3a5cf4dcbc7ea1da9e4607e2f7d00 100644 (file)
@@ -20,9 +20,12 @@ These three functions form the basis of the countless applications for your eID.
 </longdescription>
 <use>
   <flag name="gtk">
-    Enable the dialog pages, by using <pkg>x11-libs/gtk+:2</pkg>
+    All dialogs are available, by using <pkg>x11-libs/gtk+:*</pkg>
   </flag>
-  <flag name="xpi">
+  <flag name="dialogs">
+    Enable "askaccess" dialog box, by using <pkg>x11-libs/gtk+:*</pkg>
+  </flag>
+   <flag name="xpi">
     Build and install an extension for Mozilla browsers.
   </flag>
 </use>