aboutsummaryrefslogtreecommitdiff
path: root/devel/glib12
diff options
context:
space:
mode:
authorMaxim Sobolev <sobomax@FreeBSD.org>2001-12-12 04:51:10 +0000
committerMaxim Sobolev <sobomax@FreeBSD.org>2001-12-12 04:51:10 +0000
commit4839f602ebda5e8eeabd290bead9ebdb368ffa37 (patch)
tree7789c5eb4fd7a7c9d5788489a938d100f511e03f /devel/glib12
parent688aa71c6f580fb638aa286dbbbc162853e13157 (diff)
downloadports-4839f602ebda5e8eeabd290bead9ebdb368ffa37.tar.gz
ports-4839f602ebda5e8eeabd290bead9ebdb368ffa37.zip
Smash a compatibility bug in g_module_open(). It seems that unlike Linux one,
FreeBSD's dlopen(NULL, ...) doesn't return a handle useable for resolving symbols in both the program itself and all modules it dlopen'ed. Instead, when requested for a self handle return RTLD_DEFAULT, which seems closely matches dlopen(NULL, ...) in Linux. Bump PORTREVISION. Recommended update for all GNOME/GTK users. Inspired by: John Merryweather Cooper <john_m_cooper@yahoo.com>
Notes
Notes: svn path=/head/; revision=51373
Diffstat (limited to 'devel/glib12')
-rw-r--r--devel/glib12/Makefile2
-rw-r--r--devel/glib12/files/patch-gmodule::gmodule-dl.c23
2 files changed, 24 insertions, 1 deletions
diff --git a/devel/glib12/Makefile b/devel/glib12/Makefile
index e058a816c483..513c855c0ed2 100644
--- a/devel/glib12/Makefile
+++ b/devel/glib12/Makefile
@@ -7,7 +7,7 @@
PORTNAME= glib
PORTVERSION= 1.2.10
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GNOME}
MASTER_SITE_SUBDIR= stable/sources/glib
diff --git a/devel/glib12/files/patch-gmodule::gmodule-dl.c b/devel/glib12/files/patch-gmodule::gmodule-dl.c
new file mode 100644
index 000000000000..5460f6300bc1
--- /dev/null
+++ b/devel/glib12/files/patch-gmodule::gmodule-dl.c
@@ -0,0 +1,23 @@
+
+$FreeBSD$
+
+--- gmodule/gmodule-dl.c 2001/12/12 04:39:42 1.1
++++ gmodule/gmodule-dl.c 2001/12/12 04:41:05
+@@ -100,6 +100,7 @@
+ static gpointer
+ _g_module_self (void)
+ {
++#ifndef __FreeBSD__
+ gpointer handle;
+
+ /* to query symbols from the program itself, special link options
+@@ -111,6 +112,9 @@
+ g_module_set_error (fetch_dlerror ());
+
+ return handle;
++#else
++ return RTLD_DEFAULT;
++#endif
+ }
+
+ static void