Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37698003
en ru br
ALT Linux repos
S:2.78.0-alt1
5.0: 2.20.1-alt1
4.1: 2.16.6-alt0.M41.2
4.0: 2.14.1-alt1
3.0: 2.6.5-alt1

Group :: System/Libraries
RPM: glib2

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

%define _name glib
%define ver_major 2.14
%def_enable static
%def_enable gtk_doc

Name: glib2
Version: %ver_major.1
Release: alt1

Summary: A library of handy utility functions
License: %lgpl2plus
Group: System/Libraries
Url: ftp://ftp.gnome.org
Packager: Alexey Rusakov <ktirf at altlinux.ru>
Source: %gnome_ftp/%_name/%ver_major/%_name-%version.tar.bz2

# These should be prepared for each major version.

Source1: %name-%ver_major-glib.map
Source2: %name-%ver_major-gobject.map

Provides: lib%name = %version-%release
Obsoletes: lib%name

%define pkgconfig_ver 0.15-alt3.2
%define gtk_doc_ver 1.3
%define intltool_ver 0.33
%define gnome_common_ver 2.8.0

BuildPreReq: rpm-build-gnome rpm-build-licenses

BuildPreReq: pkg-config >= %pkgconfig_ver
BuildPreReq: gtk-doc >= %gtk_doc_ver
BuildPreReq: intltool >= %intltool_ver

BuildRequires: docbook-dtds docbook-style-xsl gcc-c++ indent libgpg-error xml-common xsltproc

%description
GLib is the low-level core library that forms the basis for projects
such as GTK+ and GNOME. It provides data structure handling for C,
portability wrappers, and interfaces for such runtime functionality as
an event loop, threads, dynamic loading, and an object system.

%package devel
Summary: Development files and tools for GLib
Group: Development/C
Requires: %name = %version-%release, pkgconfig
Provides: lib%name-devel = %version
Obsoletes: lib%name-devel

%description devel
GLib is the low-level core library that forms the basis for projects
such as GTK+ and GNOME. It provides data structure handling for C,
portability wrappers, and interfaces for such runtime functionality as
an event loop, threads, dynamic loading, and an object system.

This package provides header files and development tools for GLIB.

%package devel-doc
Summary: Development documentation for GLib
Group: Development/C
Conflicts: %name < %version-%release

%description devel-doc
GLib is the low-level core library that forms the basis for projects
such as GTK+ and GNOME. It provides data structure handling for C,
portability wrappers, and interfaces for such runtime functionality as
an event loop, threads, dynamic loading, and an object system.

This package contains development documentation for GLib.

%if_enabled static
%package devel-static
Summary: Static version of GLib libraries
Group: Development/C
Requires: %name-devel = %version-%release
Provides: lib%name-devel-static = %version
Obsoletes: lib%name-devel-static

%description devel-static
GLib is the low-level core library that forms the basis for projects
such as GTK+ and GNOME. It provides data structure handling for C,
portability wrappers, and interfaces for such runtime functionality as
an event loop, threads, dynamic loading, and an object system.

This package provides GLIB static libraries.
%endif

%prep
%setup -q -n %_name-%version

install -p -m644 %SOURCE1 glib/symver.map
install -p -m644 %SOURCE2 gobject/symver.map

%build
%configure \
   %{subst_enable static} \
%if_enabled gtk_doc
   --enable-gtk-doc
%endif

%make_build LIBTOOL_EXPORT_OPTIONS=-Wl,--version-script=symver.map
#make -C tests check-TESTS

%install
%make_install DESTDIR=%buildroot \
       LIBRARY_PATH=%buildroot%_libdir install

cat <<__SH__ >%name.sh
## This causes GLib2 applications to convert filenames from
## locale encoding to UTF-8. If the locale encoding is already
## UTF-8 then it makes no difference.

export G_BROKEN_FILENAMES=1

# This causes GLib2 applications to convert filenames from

# G_FILENAME_ENCODING encoding to UTF-8.
# Any application can use G_FILENAME_ENCODING for this purposes
# or link natspec library

NATSPEC=/usr/bin/natspec
test -x \$NATSPEC && export G_FILENAME_ENCODING=\`natspec -f\`
__SH__

cat <<__CSH__ >%name.csh
## This causes GLib2 applications to convert filenames from
## locale encoding to UTF-8. If the locale encoding is already
## UTF-8 then it makes no difference.

setenv G_BROKEN_FILENAMES 1

# This causes GLib2 applications to convert filenames from

# G_FILENAME_ENCODING encoding to UTF-8.
# Any application can use G_FILENAME_ENCODING for this purposes
# or link natspec library

setenv NATSPEC /usr/bin/natspec
test -x \$NATSPEC && setenv G_FILENAME_ENCODING \`natspec -f\`
__CSH__

install -pD -m755 %name.sh %buildroot%_sysconfdir/profile.d/lib%name.sh
install -pD -m755 %name.csh %buildroot%_sysconfdir/profile.d/lib%name.csh

%find_lang glib20

%post -p %post_ldconfig
%postun -p %postun_ldconfig

%files -f glib20.lang
%_libdir/*.so.*
%_sysconfdir/profile.d/*
%doc AUTHORS ChangeLog NEWS README

%files devel
%_bindir/*
%_includedir/*
%_libdir/*.so
%_libdir/glib-2.0
%_pkgconfigdir/*
%_mandir/man?/*
%_datadir/aclocal/*
%_datadir/glib-2.0

%if_enabled gtk_doc
%files devel-doc
%_datadir/gtk-doc/html/*
%endif

%if_enabled static
%files devel-static
%_libdir/*.a
%endif

%changelog

Full changelog you can see here

 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin