summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Vinson <nvinson234@gmail.com>2016-10-15 13:24:12 -0700
committerDavid Seifert <soap@gentoo.org>2016-10-16 19:24:04 +0200
commit9c77065a52897026dc3cd4c16e8eec9273befc5c (patch)
tree31b9a683c10169ab9154fcf3c6199ccf002e8f5e /net-irc/hexchat
parentnet-misc/connman: add keepdir call (diff)
downloadgentoo-9c77065a52897026dc3cd4c16e8eec9273befc5c.tar.gz
gentoo-9c77065a52897026dc3cd4c16e8eec9273befc5c.tar.bz2
gentoo-9c77065a52897026dc3cd4c16e8eec9273befc5c.zip
net-irc/hexchat: fix libgdiplus.so & Werror errors
Fixes the System.DllNotFounException: libgdiplus.so error when the theme-manager USE flag is set. The problem is that only mono[minimal] is buildable right now, so mono[-minimal] does not work. However, mono[minimal] does not pull in libgdiplus.so. Therefore, the "fix" is to pull in libgdiplus as a dependency if the user is using mono[minimal]. Unfortunately, this doesn't fix the mono[-minimal] use case. Additionally, removes all Werror* flags from configure.ac. Gentoo-bug: 578290 Gentoo-bug: 597126 Package-Manager: portage-2.3.2 Closes: https://github.com/gentoo/gentoo/pull/2563 Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'net-irc/hexchat')
-rw-r--r--net-irc/hexchat/files/hexchat-2.12.2-configure.ac-remove-werror.patch25
-rw-r--r--net-irc/hexchat/hexchat-2.12.2-r1.ebuild147
-rw-r--r--net-irc/hexchat/hexchat-9999.ebuild8
3 files changed, 179 insertions, 1 deletions
diff --git a/net-irc/hexchat/files/hexchat-2.12.2-configure.ac-remove-werror.patch b/net-irc/hexchat/files/hexchat-2.12.2-configure.ac-remove-werror.patch
new file mode 100644
index 000000000000..7798d81c740d
--- /dev/null
+++ b/net-irc/hexchat/files/hexchat-2.12.2-configure.ac-remove-werror.patch
@@ -0,0 +1,25 @@
+The option -Werror=missing-include-dirs causes the build to fail if
+non-exsistent directories are added via -I. Removing the rest of the -Werror*
+flags to ensure no new bugs get created because a -Werror flag stopped the
+build.
+
+--- hexchat-2.12.2/configure.ac.old 2016-10-15 13:40:30.585210113 -0700
++++ hexchat-2.12.2/configure.ac 2016-10-15 13:40:44.937008119 -0700
+@@ -634,17 +634,10 @@ AX_APPEND_COMPILE_FLAGS([\
+ -Wno-unused-parameter \
+ -Wno-sign-compare \
+ -Wno-pointer-sign \
+ -Wno-missing-field-initializers \
+ -Wno-unused-result \
+- -Werror=format-security \
+- -Werror=init-self \
+- -Werror=declaration-after-statement \
+- -Werror=missing-include-dirs \
+- -Werror=date-time \
+- -Werror=implicit-function-declaration \
+- -Werror=pointer-arith \
+ ])
+
+ AS_IF([test "$stack_protector" = "yes"], [
+ AX_APPEND_COMPILE_FLAGS([ \
+ -fstack-protector-strong \
diff --git a/net-irc/hexchat/hexchat-2.12.2-r1.ebuild b/net-irc/hexchat/hexchat-2.12.2-r1.ebuild
new file mode 100644
index 000000000000..0b74edbc377d
--- /dev/null
+++ b/net-irc/hexchat/hexchat-2.12.2-r1.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5} )
+inherit autotools fdo-mime gnome2-utils mono-env python-single-r1
+
+DESCRIPTION="Graphical IRC client based on XChat"
+HOMEPAGE="https://hexchat.github.io/"
+
+if [[ "${PV}" == "9999" ]] ; then
+ inherit git-r3
+ SRC_URI=""
+ EGIT_REPO_URI="git://github.com/hexchat/hexchat.git"
+else
+ SRC_URI="https://dl.hexchat.net/hexchat/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux"
+fi
+
+LICENSE="GPL-2 plugin-fishlim? ( MIT )"
+SLOT="0"
+IUSE="dbus debug +gtk libcanberra libnotify libproxy libressl lua nls perl plugin-checksum plugin-doat plugin-fishlim plugin-sysinfo python spell ssl theme-manager"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+COMMON_DEPEND="dev-libs/glib:2
+ dbus? ( sys-apps/dbus )
+ gtk? ( x11-libs/gtk+:2 )
+ libcanberra? ( media-libs/libcanberra )
+ libproxy? ( net-libs/libproxy )
+ libnotify? ( x11-libs/libnotify )
+ lua? ( dev-lang/lua:= )
+ nls? ( virtual/libintl )
+ perl? ( dev-lang/perl )
+ plugin-sysinfo? ( sys-apps/pciutils )
+ python? ( ${PYTHON_DEPS} )
+ spell? ( app-text/iso-codes )
+ ssl? (
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ )
+ theme-manager? (
+ || (
+ ( dev-lang/mono[minimal] dev-dotnet/libgdiplus )
+ dev-lang/mono[-minimal]
+ )
+ )"
+
+RDEPEND="${COMMON_DEPEND}
+ spell? ( app-text/enchant )"
+DEPEND="${COMMON_DEPEND}
+ app-arch/xz-utils
+ virtual/pkgconfig
+ dev-util/intltool
+ theme-manager? ( dev-util/monodevelop )"
+
+PATCHES=(
+ "${FILESDIR}/hexchat-2.12.2-configure.ac-remove-werror.patch"
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+ if use theme-manager ; then
+ mono-env_pkg_setup
+ export XDG_CACHE_HOME="${T}/.cache"
+ fi
+}
+
+src_configure() {
+ econf \
+ --enable-plugin \
+ $(use_enable nls) \
+ $(use_enable ssl openssl) \
+ $(use_enable gtk gtkfe) \
+ $(use_enable !gtk textfe) \
+ $(use_enable python python "${EPYTHON}") \
+ $(use_enable perl) \
+ $(use_enable plugin-checksum checksum) \
+ $(use_enable plugin-doat doat) \
+ $(use_enable plugin-fishlim fishlim) \
+ $(use_enable plugin-sysinfo sysinfo) \
+ $(use_enable dbus) \
+ $(use_enable lua) \
+ $(use_enable libnotify) \
+ $(use_enable libcanberra) \
+ $(use_enable libproxy) \
+ $(use_enable spell isocodes) \
+ $(use_enable debug) \
+ $(use_with theme-manager)
+}
+
+src_install() {
+ emake DESTDIR="${D}" \
+ UPDATE_ICON_CACHE=true \
+ UPDATE_MIME_DATABASE=true \
+ UPDATE_DESKTOP_DATABASE=true \
+ install
+ dodoc readme.md
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_preinst() {
+ if use gtk ; then
+ gnome2_icon_savelist
+ fi
+}
+
+pkg_postinst() {
+ if use gtk ; then
+ gnome2_icon_cache_update
+ else
+ elog "You have disabled the gtk USE flag. This means you don't have"
+ elog "the GTK-GUI for HexChat but only a text interface called \"hexchat-text\"."
+ fi
+
+ if use theme-manager ; then
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ elog "Themes are available at:"
+ elog " https://hexchat.github.io/themes.html"
+ fi
+
+ elog
+ elog "optional dependencies:"
+ elog " media-sound/sox (sound playback if you don't have libcanberra"
+ elog " enabled)"
+ elog " x11-plugins/hexchat-javascript (javascript support)"
+ elog " x11-themes/sound-theme-freedesktop (default BEEP sound,"
+ elog " needs libcanberra enabled)"
+}
+
+pkg_postrm() {
+ if use gtk ; then
+ gnome2_icon_cache_update
+ fi
+
+ if use theme-manager ; then
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ fi
+}
diff --git a/net-irc/hexchat/hexchat-9999.ebuild b/net-irc/hexchat/hexchat-9999.ebuild
index 530b1572184d..21b0714eae56 100644
--- a/net-irc/hexchat/hexchat-9999.ebuild
+++ b/net-irc/hexchat/hexchat-9999.ebuild
@@ -40,7 +40,13 @@ COMMON_DEPEND="dev-libs/glib:2
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
)
- theme-manager? ( dev-lang/mono )"
+ theme-manager? (
+ || (
+ ( dev-lang/mono[minimal] dev-dotnet/libgdiplus )
+ dev-lang/mono[-minimal]
+ )
+ )"
+
RDEPEND="${COMMON_DEPEND}
spell? ( app-text/enchant )"
DEPEND="${COMMON_DEPEND}