Package: glib2-shlibs Version: 2.51.4 Revision: 1 BuildDepends: << gettext-bin, gettext-tools, libgettext8-dev, libiconv-dev, pykg-config, libffi6, libpcre1 (>= 8.39-1), fink (>= 0.32) << Depends: << libgettext8-shlibs, libiconv, xdg-base, libffi6-shlibs, libpcre1-shlibs (>= 8.39-1) << Recommends: << desktop-file-utils (>= 0.22-1), shared-mime-info (>= 1.3-1) << Replaces: glib2 (<< 2.12.0-1) Source: mirror:gnome:sources/glib/2.51/glib-%v.tar.xz Source-MD5: a0a067f1b4bf45cc2a38ffd81f837da5 SetCFLAGS: -Os ConfigureParams: --mandir=%p/share/man --disable-gtk-doc ac_cv_path_GTKDOC_REBASE=true --disable-dependency-tracking --disable-fam --disable-visibility PKG_CONFIG=%p/bin/pykg-config CompileScript: << PERL_PATH=/usr/bin/perl PERL=/usr/bin/perl ./configure %c PYTHON=/usr/bin/python perl -pi -e '$_="#define BROKEN_POLL 1\n" if /BROKEN_POLL/' config.h make << InfoTest: << TestDepends: << desktop-file-utils (>= 0.22-1), shared-mime-info (>= 1.3-1) << TestScript: LANG=C make check || exit 2 << InstallScript: << make install DESTDIR=%d rm -rf %i/share/gdb %i/share/glib-2.0/gdb perl -ni -e 'print unless /Libs.private:/' %i/lib/pkgconfig/*.pc mkdir -p %i/lib/glib-2.0/pkgconfig-strict perl -p -e 's/-lintl//g' %i/lib/pkgconfig/glib-2.0.pc > %i/lib/glib-2.0/pkgconfig-strict/glib-2.0.pc << Shlibs: << %p/lib/libgio-2.0.0.dylib 2201.0.0 %n (>= 2.22.4-1) %p/lib/libglib-2.0.0.dylib 2201.0.0 %n (>= 2.22.4-1) %p/lib/libgmodule-2.0.0.dylib 2201.0.0 %n (>= 2.22.4-1) %p/lib/libgobject-2.0.0.dylib 2201.0.0 %n (>= 2.22.4-1) %p/lib/libgthread-2.0.0.dylib 2201.0.0 %n (>= 2.22.4-1) << DocFiles: << AUTHORS docs/reference/AUTHORS:AUTHORS.docs.reference gmodule/AUTHORS:AUTHORS.gmodule ChangeLog* docs/reference/ChangeLog:ChangeLog.docs.reference gio/ChangeLog:ChangeLog.gio gmodule/ChangeLog:ChangeLog.gmodule gobject/ChangeLog:ChangeLog.gobject gthread/ChangeLog:ChangeLog.gthread po/ChangeLog:ChangeLog.po COPYING NEWS README << SplitOff: << Package: glib2-dev Depends: << dpkg-base-files, glib2-shlibs (= %v-%r), libgettext8-shlibs, libiconv << Description: Handy library of utility functions Replaces: glib2 (<< 2.18.4-2) BuildDependsOnly: True Files: << bin include lib/glib-2.0 lib/lib*-2.0.{dylib,la} lib/pkgconfig share/aclocal share/glib-2.0 share/gtk-doc << DocFiles: << AUTHORS docs/reference/AUTHORS:AUTHORS.docs.reference gmodule/AUTHORS:AUTHORS.gmodule ChangeLog* docs/reference/ChangeLog:ChangeLog.docs.reference gio/ChangeLog:ChangeLog.gio gmodule/ChangeLog:ChangeLog.gmodule gobject/ChangeLog:ChangeLog.gobject gthread/ChangeLog:ChangeLog.gthread po/ChangeLog:ChangeLog.po COPYING NEWS README << DescUsage: << Other packages may need to pass explicit -lintl when linking. glib2 used to publish this flag via .pc and .la, so others' sloppiness previously had no visible effect. As of 2.22.4-2, the default glib-2.0.pc does still contain that flag whereas the one in %p/lib/glib-2.0/pkgconfig-strict does not. Packages should test with that path in their PKG_CONFIG_PATH and add explicit flag-passing if it fails in order to prepare for the future when the default .pc may not have that flag. << << Description: Handy library of utility functions DescPort: << glib2 provides etc/glib-2.0/charset.alias for darwin because there's no system-wide charset.alias. See also: http://bugzilla.gnome.org/show_bug.cgi?id=346816 Can we figure out how to generate this (gettext-tools config.charset for host=darwin5?)or import it from an authoritative upstream source instead of dragging along a legacy file in %N.patch? check uses some C++ but it doesn't leak out into the installed package Patch child-test.c for our location of `true`. See: http://bugzilla.gnome.org/show_bug.cgi?id=495690 We need to set LANG=C when doing 'make check', else a previously installed glib2 will trigger a crash caused by a bug in the old de.po. See http://bugzilla.gnome.org/show_bug.cgi?id=310731 Need to figure out how to patch tests/Makefile to use the nascent gettext dictionaries in preference to installed ones. poll() is broken on 10.4 but not 10.3; force internal emulation to regardless of config result so that lib builds the same everywhere and is portable. Need to patch gutils.h for inline semantics of gcc on OS X >= 10.5. gcc version is not sufficient to determine it (appears to be xcode- specific patches to gcc), so test Apple gcc build number. See: http://bugzilla.gnome.org/show_bug.cgi?id=315437 (patch #96366 does not work...not __GNUC_PREREQ). No idea a portable solution, but msachs says "static inline" is right for this case, so hardcode it. 2.14.5 does it "differently" but still looks like the same wrong patch, so leaving our existing "static inline" hard-coding patch. Fix paths in glib-gettextize. See: http://bugzilla.gnome.org/show_bug.cgi?id=518309 Fix glib/gslice.c clobbering of errno. See: http://bugzilla.gnome.org/show_bug.cgi?id=554092 (patch from comments #14) Safer -framework flag to avoid future munging in .la. See: http://bugzilla.gnome.org/show_bug.cgi?id=566994 Flag is not passed at all via .la now, but okay because we don't have static libs and the shared libs get what they need via dyld. Not fixing RTLD_GLOBAL configure test. See: http://bugzilla.gnome.org/show_bug.cgi?id=583010 libgio needs libresolv to get _res_9_* symbols. See: https://bugzilla.gnome.org/show_bug.cgi?id=606857 Hidden-visibility is only partially supported on non-ELF and causes problems on 10.7 due to use of weak aliases. Removed in future glib upstream, so scrap it here too. See: http://permalink.gmane.org/gmane.os.apple.fink.gnome/2592 String sorting ("collation") is broken on x86_64. See: https://bugzilla.gnome.org/show_bug.cgi?id=612019 https://bugzilla.gnome.org/show_bug.cgi?id=673047 << DescPackaging: << Library contains some C symbols whose real name looks like C++ munges. This should not be construed to mean that glib2 is C++ nor that it needs to obey Fink C++ packaging rules. C++ is also used in some self-tests. Prior to 2.12.0-1, %N contained the gettext catalogs and the charset.alias file, which are used by the %N-shlibs files. Starting in 2.12.0-1, they are all now in the %N-shlibs package, and %N is a dummy for compatibility and upgrades. More recently, %N was nuked entirely. Builds with included pcre instead of external lib to avoid need to cascade deps on pcre packages gtester-report claims to require python >= 2.4, but it appears to run with 2.3. Adjust to allow that version so can use Apple's on OS X < 10.5 also (py2.5 comes with OS X 10.5). See: http://bugzilla.gnome.org/show_bug.cgi?id=553716 The following are newly deprecated in glib2 2.18.1 since 2.14.6: g_assert_warning G_GNUC_FUNCTION G_GNUC_PRETTY_FUNCTION And in 2.20: g_volume_monitor_adopt_orphan_mount And in 2.22: g_drive_eject g_drive_eject_finish g_file_unmount_mountable g_file_unmount_mountable_finish g_file_eject_mountable g_file_eject_mountable_finish g_mount_unmount g_mount_unmount_finish g_volume_eject g_volume_eject_finish External packages and out-of-sync gnome core might still be using them, so may as well leave them undeprecated until jump to glib3. Leaving G_DISABLE_SINGLE_INCLUDES undefined in most places, though in the future it will become defined... Disable the FAM plugin for gio. Darwin doesn't have libfam. Fink has gamin, a third-party implementation available in fink, has a dependency on glib. Eventually package gio-fam separately to avoid circular dependency. But even if compiled and installed, gio-directory-monitoring doesn't work (does not detect dir creation/renaming/deletion or contained-file creation/deletion) so better to leave it out--gives runtime "Unable to find default local directory monitor type" diagnostic rather than silent non-workingness. Really should get a native file/directory monitor implementation, maybe using kqueue or FSEvents. See: https://bugzilla.gnome.org/show_bug.cgi?id=543148 libgio sometimes runs %p/bin/update-desktop-database from the desktop-file-utils package or %p/bin/update-mime-database from the shared-mime-info package, but those programs link against libglib. Leave it as %N-shlibs:Recommends:... to break the circular dependency. Ick. Required for self-test, so would need to build (but not test) glib2, then build d-f-u & s-m-i against it, then rebuild glib2 with testing enabled. Ick^2. Make sure the update-*-database programs can be found even if run from a non-fink'ed shell: explicit path and fink XDG vars. Don't install gdb files. They aren't named correctly and it's not clear they are usable on darwin. See: https://bugzilla.gnome.org/show_bug.cgi?id=606877 Also, they don't even get installed in the correct location. See: https://bugzilla.gnome.org/show_bug.cgi?id=606872 All libs are shared-only and all symbols are resolved via dyld so do not export dependencies' -l flags in via pkg-config. Reduces BuildDepends inheritance of things that are not in public interface. Upstream doc upgrade to gconvert.c for compatibility with newer gtk-doc. https://git.gnome.org/browse/glib/commit/glib/gconvert.c?id=b5fb6b4bbfe5903be06a515449a07cf1f1119c26 Using pykg-config instead of pkg-config at build-time to break dependency loop. The compiled pkg-config program uses glib, so it's better to have it use fink's actual (patched, tested, etc.) one than embedding its own cloned code fragments from glib upstream. << License: LGPL Maintainer: The Gnome Core Team Homepage: http://www.gtk.org