diff options
author | Andreas Proschofsky <suka@gentoo.org> | 2010-03-23 19:39:30 +0000 |
---|---|---|
committer | Andreas Proschofsky <suka@gentoo.org> | 2010-03-23 19:39:30 +0000 |
commit | ff98b124db9101ba72f45cdb70a34784900c85a2 (patch) | |
tree | c80b3d338b46140c55d19a36eaee23f2b7207e39 /dev-libs | |
parent | Bump to clutter 1.2.4, bugfix galore (diff) | |
download | suka-ff98b124db9101ba72f45cdb70a34784900c85a2.tar.gz suka-ff98b124db9101ba72f45cdb70a34784900c85a2.tar.bz2 suka-ff98b124db9101ba72f45cdb70a34784900c85a2.zip |
Add newer glib for gtk+ 2.20
svn path=/; revision=229
Diffstat (limited to 'dev-libs')
-rw-r--r-- | dev-libs/glib/Manifest | 6 | ||||
-rw-r--r-- | dev-libs/glib/files/glib-2.10.3-ia64-atomic-ops.patch | 39 | ||||
-rw-r--r-- | dev-libs/glib/files/glib-2.12.12-fbsd.patch | 21 | ||||
-rw-r--r-- | dev-libs/glib/files/glib-2.18.1-workaround-gio-test-failure-without-userpriv.patch | 20 | ||||
-rw-r--r-- | dev-libs/glib/files/glib-2.6.3-testglib-ssp.patch | 11 | ||||
-rw-r--r-- | dev-libs/glib/glib-2.23.6.ebuild | 97 |
6 files changed, 194 insertions, 0 deletions
diff --git a/dev-libs/glib/Manifest b/dev-libs/glib/Manifest new file mode 100644 index 0000000..0ca03eb --- /dev/null +++ b/dev-libs/glib/Manifest @@ -0,0 +1,6 @@ +AUX glib-2.10.3-ia64-atomic-ops.patch 1058 RMD160 066e63a99739dc412fbed7f773118323f53ea774 SHA1 13c22e2f75a77e9e0546e495fd28015ddcb8bade SHA256 ad9cad6793626b4e36a59aa6cb839607847aa57ebc37592fd1e273ccd23a53c8 +AUX glib-2.12.12-fbsd.patch 668 RMD160 d8bf399b7e0b417c4622b278282086418c1d3363 SHA1 b7a0f4d67083f2c9b4bbecd84a6d597dd0f0f9ed SHA256 23b0dc406d3d45fe125268b731af67147e83f6e38a63c7892828bdbfe1c31e8d +AUX glib-2.18.1-workaround-gio-test-failure-without-userpriv.patch 616 RMD160 dd06abe9298d6e3e4d3eda0d5d155f1545dfd1aa SHA1 92164aa1b29f49cf62fc366231f2046b8b3def52 SHA256 e64ad4fbd67f142f5a19b29eab323bf18856309ed064e7a9f838b6c1c38a8adb +AUX glib-2.6.3-testglib-ssp.patch 344 RMD160 6709acf85c52e39553e2e5ee93637f7e9cc7eca6 SHA1 403b249a460a9700669e754a562fb6974f3d6898 SHA256 c2ece3d7b4533e3bfbe8100df5d0824176d9dfa0b18697a8919162956c8ebfa8 +DIST glib-2.23.6.tar.bz2 5317317 RMD160 2f005befa81856e5a66a5d77f4820e5c63f81a32 SHA1 14e366d8ff26de72f50c0ab44130cb64b0028630 SHA256 f91840e27ad4cd48e655a6babed7e2024f86814f94961da88ca2adba447c6e77 +EBUILD glib-2.23.6.ebuild 2783 RMD160 2aebbcf75dae5be295cb7702561481491ed6b915 SHA1 c1963fe3b51ccd47027638cfcb2584d31910daa1 SHA256 14ce4e157b424ad4dcfded60e2499fb532aeacd192f065be8f2c275089d0aaf3 diff --git a/dev-libs/glib/files/glib-2.10.3-ia64-atomic-ops.patch b/dev-libs/glib/files/glib-2.10.3-ia64-atomic-ops.patch new file mode 100644 index 0000000..0859e33 --- /dev/null +++ b/dev-libs/glib/files/glib-2.10.3-ia64-atomic-ops.patch @@ -0,0 +1,39 @@ +From Debian, this one is needed for gcc < 4.1... + +--- glib-2.10.0/glib/gatomic.c 2006-02-24 14:02:51.000000000 +0000 ++++ glib-2.10.0/glib/gatomic.c 2006-03-06 18:12:06.000000000 +0000 +@@ -414,14 +414,14 @@ + g_atomic_int_exchange_and_add (volatile gint *atomic, + gint val) + { +- return __sync_fetch_and_add (atomic, val); ++ return __sync_fetch_and_add_si (atomic, val); + } + + void + g_atomic_int_add (volatile gint *atomic, + gint val) + { +- __sync_fetch_and_add (atomic, val); ++ __sync_fetch_and_add_si (atomic, val); + } + + gboolean +@@ -429,7 +429,7 @@ + gint oldval, + gint newval) + { +- return __sync_bool_compare_and_swap (atomic, oldval, newval); ++ return __sync_bool_compare_and_swap_si (atomic, oldval, newval); + } + + gboolean +@@ -437,7 +437,7 @@ + gpointer oldval, + gpointer newval) + { +- return __sync_bool_compare_and_swap ((long *)atomic, ++ return __sync_bool_compare_and_swap_di ((long *)atomic, + (long)oldval, (long)newval); + } + diff --git a/dev-libs/glib/files/glib-2.12.12-fbsd.patch b/dev-libs/glib/files/glib-2.12.12-fbsd.patch new file mode 100644 index 0000000..bba6329 --- /dev/null +++ b/dev-libs/glib/files/glib-2.12.12-fbsd.patch @@ -0,0 +1,21 @@ +diff --exclude-from=/home/dang/.scripts/diffrc -up -ruN glib-2.12.12.orig/gmodule/gmodule-dl.c glib-2.12.12/gmodule/gmodule-dl.c +--- glib-2.12.12.orig/gmodule/gmodule-dl.c 2007-05-01 19:12:40.000000000 -0400 ++++ glib-2.12.12/gmodule/gmodule-dl.c 2007-07-05 20:10:51.000000000 -0400 +@@ -106,6 +106,7 @@ _g_module_open (const gchar *file_name, + static gpointer + _g_module_self (void) + { ++#ifndef __FreeBSD__ + gpointer handle; + + /* to query symbols from the program itself, special link options +@@ -117,6 +118,9 @@ _g_module_self (void) + g_module_set_error (fetch_dlerror (TRUE)); + + return handle; ++#else ++ return RTLD_DEFAULT; ++#endif + } + + static void diff --git a/dev-libs/glib/files/glib-2.18.1-workaround-gio-test-failure-without-userpriv.patch b/dev-libs/glib/files/glib-2.18.1-workaround-gio-test-failure-without-userpriv.patch new file mode 100644 index 0000000..cabe56f --- /dev/null +++ b/dev-libs/glib/files/glib-2.18.1-workaround-gio-test-failure-without-userpriv.patch @@ -0,0 +1,20 @@ +Temporary workaround for gio tests failure when ran without FEATURES=userpriv +until upstream bug #552912 is fixed + +--- gio/tests/live-g-file.c.orig 2008-09-25 05:44:12.848556034 +0300 ++++ gio/tests/live-g-file.c 2008-09-25 06:12:34.248726237 +0300 +@@ -769,11 +769,14 @@ + if (posix_compat) + { + /* target directory is not accessible (no execute flag) */ ++#if 0 ++/* Fails when ran as root */ + do_copy_move (root, item, TEST_DIR_NO_ACCESS, + TEST_NO_ACCESS); + /* target directory is readonly */ + do_copy_move (root, item, TEST_DIR_NO_WRITE, + TEST_NO_ACCESS); ++#endif + } + } + } diff --git a/dev-libs/glib/files/glib-2.6.3-testglib-ssp.patch b/dev-libs/glib/files/glib-2.6.3-testglib-ssp.patch new file mode 100644 index 0000000..9b104dd --- /dev/null +++ b/dev-libs/glib/files/glib-2.6.3-testglib-ssp.patch @@ -0,0 +1,11 @@ +--- tests/Makefile.in.orig 2005-04-07 01:05:39.000000000 +0000 ++++ tests/Makefile.in 2005-04-07 01:09:02.000000000 +0000 +@@ -50,7 +50,7 @@ + CATOBJEXT = @CATOBJEXT@ + CC = @CC@ + CCDEPMODE = @CCDEPMODE@ +-CFLAGS = @CFLAGS@ ++CFLAGS = @CFLAGS@ -fno-stack-protector + CPP = @CPP@ + CPPFLAGS = @CPPFLAGS@ + CROSS_COMPILING_FALSE = @CROSS_COMPILING_FALSE@ diff --git a/dev-libs/glib/glib-2.23.6.ebuild b/dev-libs/glib/glib-2.23.6.ebuild new file mode 100644 index 0000000..6586fe5 --- /dev/null +++ b/dev-libs/glib/glib-2.23.6.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="2" + +inherit gnome.org libtool eutils flag-o-matic + +DESCRIPTION="The GLib library of C routines" +HOMEPAGE="http://www.gtk.org/" + +LICENSE="LGPL-2" +SLOT="2" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~sparc-fbsd ~x86-fbsd" +IUSE="debug doc fam hardened selinux xattr" + +RDEPEND="virtual/libiconv + xattr? ( sys-apps/attr ) + fam? ( virtual/fam )" +DEPEND="${RDEPEND} + >=dev-util/pkgconfig-0.16 + >=sys-devel/gettext-0.11 + doc? ( + >=dev-libs/libxslt-1.0 + >=dev-util/gtk-doc-1.11 + ~app-text/docbook-xml-dtd-4.1.2 )" + +src_prepare() { + if use ppc64 && use hardened ; then + replace-flags -O[2-3] -O1 + epatch "${FILESDIR}/glib-2.6.3-testglib-ssp.patch" + fi + + if use ia64 ; then + # Only apply for < 4.1 + local major=$(gcc-major-version) + local minor=$(gcc-minor-version) + if (( major < 4 || ( major == 4 && minor == 0 ) )); then + epatch "${FILESDIR}/glib-2.10.3-ia64-atomic-ops.patch" + fi + fi + + # Don't fail gio tests when ran without userpriv, upstream bug 552912 + # This is only a temporary workaround, remove as soon as possible + epatch "${FILESDIR}/${PN}-2.18.1-workaround-gio-test-failure-without-userpriv.patch" + + # Fix gmodule issues on fbsd; bug #184301 + epatch "${FILESDIR}"/${PN}-2.12.12-fbsd.patch + + # Do not try to remove files on live filesystem, bug #XXX ? + sed 's:^\(.*"/desktop-app-info/delete".*\):/*\1*/:' \ + -i "${S}"/gio/tests/desktop-app-info.c || die "sed failed" + + [[ ${CHOST} == *-freebsd* ]] && elibtoolize +} + +src_configure() { + local myconf + + epunt_cxx + + # Building with --disable-debug highly unrecommended. It will build glib in + # an unusable form as it disables some commonly used API. Please do not + # convert this to the use_enable form, as it results in a broken build. + # -- compnerd (3/27/06) + use debug && myconf="--enable-debug" + + # Always build static libs, see #153807 + # Always use internal libpcre, bug #254659 + econf ${myconf} \ + $(use_enable xattr) \ + $(use_enable doc man) \ + $(use_enable doc gtk-doc) \ + $(use_enable fam) \ + $(use_enable selinux) \ + --enable-static \ + --enable-regex \ + --with-pcre=internal \ + --with-threads=posix +} + +src_install() { + emake DESTDIR="${D}" install || die "Installation failed" + + # Do not install charset.alias even if generated, leave it to libiconv + rm -f "${D}/usr/lib/charset.alias" + + dodoc AUTHORS ChangeLog* NEWS* README || die "dodoc failed" +} + +src_test() { + unset DBUS_SESSION_BUS_ADDRESS + export XDG_CONFIG_DIRS=/etc/xdg + export XDG_DATA_DIRS=/usr/local/share:/usr/share + export XDG_DATA_HOME="${T}" + emake check || die "tests failed" +} |