- major update to glib2-2.20.4

- add missing REGRESS_DEPENDS

*remove previous version before trying to compile this*

Report any failure directly to me please.

tested by landry@ on a sparc64 bulk, thanks!
ok jasper@ on a previous diff
This commit is contained in:
ajacoutot 2009-07-12 20:38:09 +00:00
parent ed6c258cc4
commit 1d7f915015
12 changed files with 58 additions and 117 deletions

View File

@ -1,12 +1,12 @@
# $OpenBSD: Makefile,v 1.61 2009/04/21 13:02:12 ajacoutot Exp $
# $OpenBSD: Makefile,v 1.62 2009/07/12 20:38:09 ajacoutot Exp $
COMMENT-main= general-purpose utility library
COMMENT-docs= glib2 documentation
COMMENT-fam= fam(3) gio module
VERSION= 2.18.4
VERSION= 2.20.4
DISTNAME= glib-${VERSION}
PKGNAME-main= glib2-${VERSION}p3
PKGNAME-main= glib2-${VERSION}
PKGNAME-docs= glib2-docs-${VERSION}
PKGNAME-fam= glib2-fam-${VERSION}
@ -14,11 +14,11 @@ CATEGORIES= devel
HOMEPAGE= http://www.gtk.org/
SHARED_LIBS+= glib-2.0 1800.1 #.1800.3
SHARED_LIBS+= gobject-2.0 1800.1
SHARED_LIBS+= gmodule-2.0 1800.1
SHARED_LIBS+= gthread-2.0 1800.1
SHARED_LIBS+= gio-2.0 1800.2
SHARED_LIBS+= glib-2.0 1801.0 # .2000.2
SHARED_LIBS+= gobject-2.0 1801.0 # .2000.2
SHARED_LIBS+= gmodule-2.0 1801.0 # .2000.2
SHARED_LIBS+= gthread-2.0 1801.0 # .2000.2
SHARED_LIBS+= gio-2.0 1801.0 # .2000.2
# LGPLv2
PERMIT_PACKAGE_CDROM= Yes
@ -26,7 +26,7 @@ PERMIT_PACKAGE_FTP= Yes
PERMIT_DISTFILES_CDROM= Yes
PERMIT_DISTFILES_FTP= Yes
MASTER_SITES= ${MASTER_SITE_GNOME:=sources/glib/2.18/}
MASTER_SITES= ${MASTER_SITE_GNOME:=sources/glib/${VERSION:C/^([0-9]+\.[0-9]+).*/\1/}/}
EXTRACT_SUFX= .tar.bz2
MULTI_PACKAGES= -main -docs -fam
@ -53,6 +53,8 @@ WANTLIB-fam= m rpcsvc stdc++
PATCH_LIST= patch-* PPC-patch-glib_Makefile_in
.endif
REGRESS_DEPENDS= :desktop-file-utils-*:devel/desktop-file-utils
USE_GMAKE= Yes
USE_LIBTOOL= Yes
CONFIGURE_STYLE= gnu

View File

@ -1,5 +1,5 @@
MD5 (glib-2.18.4.tar.bz2) = 7CXtJhU02HAUEACrc/Givw==
RMD160 (glib-2.18.4.tar.bz2) = xHpxcI/ROt5w1y00Q3mdPnSgRZ0=
SHA1 (glib-2.18.4.tar.bz2) = PiE5XGmA45cNUmC0bstrh/JILGE=
SHA256 (glib-2.18.4.tar.bz2) = ausshF6f3DiJQ6zaui9jV+MAfF/6qNZmkEZ5z7QN4QA=
SIZE (glib-2.18.4.tar.bz2) = 4809051
MD5 (glib-2.20.4.tar.bz2) = NGkWZzwOq3IZHPRLSv5TXw==
RMD160 (glib-2.20.4.tar.bz2) = 6dvv2ND5Tq09/d6wWete5LMZ+nw=
SHA1 (glib-2.20.4.tar.bz2) = oM7it1u0hd6Sb6Q7M4h63I+cGbs=
SHA256 (glib-2.20.4.tar.bz2) = r3CfDqv7v6XFmgJ2TKHdXmUJu+f7Z6R0ssRIvaewb7k=
SIZE (glib-2.20.4.tar.bz2) = 5035410

View File

@ -1,30 +1,30 @@
$OpenBSD: patch-configure,v 1.13 2008/11/24 16:05:03 ajacoutot Exp $
--- configure.orig Mon Nov 24 10:13:53 2008
+++ configure Mon Nov 24 10:14:14 2008
@@ -35533,7 +35533,7 @@ if test "${ac_cv_lib_fam_FAMOpen+set}" = set; then
$OpenBSD: patch-configure,v 1.14 2009/07/12 20:38:09 ajacoutot Exp $
--- configure.orig Sat Jun 27 06:21:02 2009
+++ configure Wed Jul 1 12:54:41 2009
@@ -35637,7 +35637,7 @@ if test "${ac_cv_lib_fam_FAMOpen+set}" = set; then
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
-LIBS="-lfam $LIBS"
+LIBS="-lm -lfam $LIBS"
+LIBS="-lfam -lm $LIBS"
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -35750,7 +35750,7 @@ if test "${ac_cv_lib_fam_FAMNoExists+set}" = set; then
@@ -35854,7 +35854,7 @@ if test "${ac_cv_lib_fam_FAMNoExists+set}" = set; then
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
-LIBS="-lfam $LIBS"
+LIBS="-lm -lfam $LIBS"
+LIBS="-lfam -lm $LIBS"
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
@@ -35817,7 +35817,7 @@ _ACEOF
@@ -35921,7 +35921,7 @@ _ACEOF
fi
- FAM_LIBS="-lfam"
+ FAM_LIBS="-lm -lfam"
+ FAM_LIBS="-lfam -lm"
fam_support=yes
else
{ $as_echo "$as_me:$LINENO: WARNING: *** FAM support will not be built (header files not found) ***" >&5

View File

@ -1,7 +1,7 @@
$OpenBSD: patch-docs_reference_glib_Makefile_in,v 1.2 2008/11/24 16:05:03 ajacoutot Exp $
--- docs/reference/glib/Makefile.in.orig Mon Nov 24 06:49:56 2008
+++ docs/reference/glib/Makefile.in Mon Nov 24 10:14:32 2008
@@ -384,8 +384,7 @@ CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_ST
$OpenBSD: patch-docs_reference_glib_Makefile_in,v 1.3 2009/07/12 20:38:09 ajacoutot Exp $
--- docs/reference/glib/Makefile.in.orig Sat Jun 27 06:20:57 2009
+++ docs/reference/glib/Makefile.in Wed Jul 1 12:54:00 2009
@@ -408,8 +408,7 @@ CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_ST
########################################################################
man_MANS = \
glib-gettextize.1 \

View File

@ -1,10 +1,10 @@
$OpenBSD: patch-glib_Makefile_in,v 1.12 2008/11/24 16:05:03 ajacoutot Exp $
$OpenBSD: patch-glib_Makefile_in,v 1.13 2009/07/12 20:38:09 ajacoutot Exp $
Don't install gtester-report, it'll only pull in python.
--- glib/Makefile.in.orig Mon Nov 24 06:49:57 2008
+++ glib/Makefile.in Mon Nov 24 10:14:32 2008
@@ -620,7 +620,7 @@ INSTALL_PROGS = $(am__append_1) $(am__append_2) $(am__
--- glib/Makefile.in.orig Sat Jun 27 06:20:58 2009
+++ glib/Makefile.in Wed Jul 1 12:54:00 2009
@@ -666,7 +666,7 @@ INSTALL_PROGS = $(am__append_1) $(am__append_2) $(am__
@OS_WIN32_TRUE@@OS_WIN32_X64_FALSE@gspawn_win32_helper_console_LDADD = libglib-2.0.la
@OS_UNIX_TRUE@gtester_SOURCES = gtester.c
@OS_UNIX_TRUE@gtester_LDADD = libglib-2.0.la

View File

@ -1,67 +0,0 @@
$OpenBSD: patch-glib_gbase64_c,v 1.2 2009/04/13 09:03:34 ajacoutot Exp $
Security fix for CVE-2008-4316.
Fixes multiple integer overflows.
Patch adapted from upstream svn -r 7973.
--- glib/gbase64.c.orig Fri Jan 9 06:36:18 2009
+++ glib/gbase64.c Mon Apr 13 10:42:02 2009
@@ -54,8 +54,9 @@ static const char base64_alphabet[] =
*
* The output buffer must be large enough to fit all the data that will
* be written to it. Due to the way base64 encodes you will need
- * at least: @len * 4 / 3 + 6 bytes. If you enable line-breaking you will
- * need at least: @len * 4 / 3 + @len * 4 / (3 * 72) + 7 bytes.
+ * at least: (@len / 3 + 1) * 4 + 4 bytes (+ 4 may be needed in case of
+ * non-zero state). If you enable line-breaking you will need at least:
+ * ((@len / 3 + 1) * 4 + 4) / 72 + 1 bytes of extra space.
*
* @break_lines is typically used when putting base64-encoded data in emails.
* It breaks the lines at 72 columns instead of putting all of the text on
@@ -233,8 +234,13 @@ g_base64_encode (const guchar *data,
g_return_val_if_fail (data != NULL, NULL);
g_return_val_if_fail (len > 0, NULL);
- /* We can use a smaller limit here, since we know the saved state is 0 */
- out = g_malloc (len * 4 / 3 + 4);
+ /* We can use a smaller limit here, since we know the saved state is 0,
+ +1 is needed for trailing \0, also check for unlikely integer overflow */
+ if (len >= ((G_MAXSIZE - 1) / 4 - 1) * 3)
+ g_error("%s: input too large for Base64 encoding (%"G_GSIZE_FORMAT" chars)",
+ G_STRLOC, len);
+ out = g_malloc ((len / 3 + 1) * 4 + 1);
+
outlen = g_base64_encode_step (data, len, FALSE, out, &state, &save);
outlen += g_base64_encode_close (FALSE, out + outlen, &state, &save);
out[outlen] = '\0';
@@ -275,7 +281,8 @@ static const unsigned char mime_base64_rank[256] = {
*
* The output buffer must be large enough to fit all the data that will
* be written to it. Since base64 encodes 3 bytes in 4 chars you need
- * at least: @len * 3 / 4 bytes.
+ * at least: (@len / 4) * 3 + 3 bytes (+ 3 may be needed in case of non-zero
+ * state).
*
* Return value: The number of bytes of output that was written
*
@@ -358,7 +365,8 @@ g_base64_decode (const gchar *text,
gsize *out_len)
{
guchar *ret;
- gint input_length, state = 0;
+ gsize input_length;
+ gint state = 0;
guint save = 0;
g_return_val_if_fail (text != NULL, NULL);
@@ -368,7 +376,9 @@ g_base64_decode (const gchar *text,
g_return_val_if_fail (input_length > 1, NULL);
- ret = g_malloc0 (input_length * 3 / 4);
+ /* We can use a smaller limit here, since we know the saved state is 0,
+ +1 used to avoid calling g_malloc0(0), and hence retruning NULL */
+ ret = g_malloc0 ((input_length / 4) * 3 + 1);
*out_len = g_base64_decode_step (text, input_length, ret, &state, &save);

View File

@ -1,6 +1,6 @@
$OpenBSD: patch-glib_gmacros_h,v 1.9 2008/10/27 21:28:01 landry Exp $
--- glib/gmacros.h.orig Thu Oct 16 16:31:58 2008
+++ glib/gmacros.h Sat Oct 18 16:46:26 2008
$OpenBSD: patch-glib_gmacros_h,v 1.10 2009/07/12 20:38:09 ajacoutot Exp $
--- glib/gmacros.h.orig Wed Apr 1 01:04:20 2009
+++ glib/gmacros.h Thu Jun 11 14:15:29 2009
@@ -38,6 +38,7 @@
/* We include stddef.h to get the system's definition of NULL
*/
@ -9,7 +9,7 @@ $OpenBSD: patch-glib_gmacros_h,v 1.9 2008/10/27 21:28:01 landry Exp $
/* Here we provide G_GNUC_EXTENSION as an alias for __extension__,
* where this is valid. This allows for warningless compilation of
@@ -183,11 +184,13 @@
@@ -187,11 +188,13 @@
#define TRUE (!FALSE)
#endif

View File

@ -1,7 +1,7 @@
$OpenBSD: patch-glib_gstrfuncs_c,v 1.8 2008/10/27 21:28:01 landry Exp $
--- glib/gstrfuncs.c.orig Thu Oct 16 16:31:58 2008
+++ glib/gstrfuncs.c Sat Oct 18 16:46:26 2008
@@ -1313,7 +1313,7 @@ g_strerror (gint errnum)
$OpenBSD: patch-glib_gstrfuncs_c,v 1.9 2009/07/12 20:38:09 ajacoutot Exp $
--- glib/gstrfuncs.c.orig Wed Apr 1 01:04:20 2009
+++ glib/gstrfuncs.c Thu Jun 11 14:15:29 2009
@@ -1381,7 +1381,7 @@ g_strerror (gint errnum)
g_static_private_set (&msg_private, msg, g_free);
}
@ -10,7 +10,7 @@ $OpenBSD: patch-glib_gstrfuncs_c,v 1.8 2008/10/27 21:28:01 landry Exp $
errno = saved_errno;
return msg;
@@ -1463,7 +1463,7 @@ extern const char *strsignal(int);
@@ -1545,7 +1545,7 @@ extern const char *strsignal(int);
g_static_private_set (&msg_private, msg, g_free);
}

View File

@ -1,7 +1,7 @@
$OpenBSD: patch-tests_Makefile_in,v 1.10 2008/11/24 16:05:03 ajacoutot Exp $
--- tests/Makefile.in.orig Mon Nov 24 06:49:58 2008
+++ tests/Makefile.in Mon Nov 24 10:14:32 2008
@@ -676,7 +676,6 @@ test_programs = \
$OpenBSD: patch-tests_Makefile_in,v 1.11 2009/07/12 20:38:09 ajacoutot Exp $
--- tests/Makefile.in.orig Sat Jun 27 06:20:59 2009
+++ tests/Makefile.in Wed Jul 1 12:54:00 2009
@@ -702,7 +702,6 @@ test_programs = \
tree-test \
type-test \
unicode-caseconv \

View File

@ -1,7 +1,7 @@
$OpenBSD: patch-tests_refcount_Makefile_in,v 1.10 2008/11/24 16:05:03 ajacoutot Exp $
--- tests/refcount/Makefile.in.orig Mon Nov 24 06:49:59 2008
+++ tests/refcount/Makefile.in Mon Nov 24 10:14:32 2008
@@ -347,7 +347,6 @@ libgmodule = $(top_builddir)/gmodule/libgmodule-2.0.la
$OpenBSD: patch-tests_refcount_Makefile_in,v 1.11 2009/07/12 20:38:09 ajacoutot Exp $
--- tests/refcount/Makefile.in.orig Sat Jun 27 06:21:00 2009
+++ tests/refcount/Makefile.in Wed Jul 1 12:54:00 2009
@@ -353,7 +353,6 @@ libgmodule = $(top_builddir)/gmodule/libgmodule-2.0.la
libgobject = $(top_builddir)/gobject/libgobject-2.0.la
LDADD = $(libglib) $(libgobject) $(libgthread) $(G_THREAD_LIBS)
test_programs = \

View File

@ -1,4 +1,4 @@
@comment $OpenBSD: PLIST-docs,v 1.16 2008/11/22 17:23:15 ajacoutot Exp $
@comment $OpenBSD: PLIST-docs,v 1.17 2009/07/12 20:38:09 ajacoutot Exp $
@conflict glib2-<2.4.6
share/gtk-doc/
share/gtk-doc/html/
@ -69,6 +69,7 @@ share/gtk-doc/html/gio/index.html
share/gtk-doc/html/gio/index.sgml
share/gtk-doc/html/gio/ix01.html
share/gtk-doc/html/gio/ix02.html
share/gtk-doc/html/gio/ix03.html
share/gtk-doc/html/gio/left.png
share/gtk-doc/html/gio/migrating.html
share/gtk-doc/html/gio/pt01.html
@ -178,6 +179,7 @@ share/gtk-doc/html/glib/ix08.html
share/gtk-doc/html/glib/ix09.html
share/gtk-doc/html/glib/ix10.html
share/gtk-doc/html/glib/ix11.html
share/gtk-doc/html/glib/ix12.html
share/gtk-doc/html/glib/left.png
share/gtk-doc/html/glib/mainloop-states.gif
share/gtk-doc/html/glib/right.png

View File

@ -1,4 +1,4 @@
@comment $OpenBSD: PLIST-main,v 1.6 2008/10/27 21:28:01 landry Exp $
@comment $OpenBSD: PLIST-main,v 1.7 2009/07/12 20:38:09 ajacoutot Exp $
@pkgpath devel/glib2
%%SHARED%%
@bin bin/glib-genmarshal
@ -93,6 +93,7 @@ include/glib-2.0/glib/gmessages.h
include/glib-2.0/glib/gnode.h
include/glib-2.0/glib/goption.h
include/glib-2.0/glib/gpattern.h
include/glib-2.0/glib/gpoll.h
include/glib-2.0/glib/gprimes.h
include/glib-2.0/glib/gprintf.h
include/glib-2.0/glib/gqsort.h
@ -203,6 +204,9 @@ share/locale/bs/
share/locale/bs/LC_MESSAGES/
share/locale/bs/LC_MESSAGES/glib20.mo
share/locale/ca/LC_MESSAGES/glib20.mo
share/locale/ca@valencia/
share/locale/ca@valencia/LC_MESSAGES/
share/locale/ca@valencia/LC_MESSAGES/glib20.mo
share/locale/cs/LC_MESSAGES/glib20.mo
share/locale/cy/
share/locale/cy/LC_MESSAGES/