-%bcond_with dbuspolicy
+# Do not create provides from extension .so files because the main package
+# should anchor any reverse-dependencies
+%global __provides_exclude_from ^(.*\\.extension-kdbus)$
+
%bcond_with coverage
%define baseline 2.40
%define with_systemtap 0
BuildRequires: pkgconfig(libpcre)
BuildRequires: pkgconfig(zlib)
# Enable support for libdbuspolicy (only for kdbus transport)
-%if %{with dbuspolicy}
BuildRequires: pkgconfig(libdbuspolicy1)
-%endif
%description
GLib is a general-purpose utility library, which provides many useful
GIO provides a modern, easy-to-use VFS API.
+%package -n libgio-extension-kdbus
+Summary: Extension for libgio to support KDBUS in Tizen
+Requires: libgio = %{version}-%{release}
+
+%description -n libgio-extension-kdbus
+This modifies libgio to support KDBUS in Tizen.
+
%package -n libgthread
Summary: General-Purpose Utility Library -- Library for Threads
NOAUTORECONF=1 NOCONFIGURE=1 ./autogen.sh
export CFLAGS+=" -D_TIZEN_DBUS_TOUCH"
+# Create kdbus extension first (libgio)
+%reconfigure \
+ --enable-static \
+%if 0%{?with_systemtap}
+ --enable-systemtap \
+%endif
+ --enable-libdbuspolicy \
+ --enable-always-build-tests \
+ --enable-installed-tests \
+%if %{with coverage}
+ --disable-gcov-coverage \
+%endif
+ --with-pcre=system
+
+%{__make} %{?_smp_mflags} V=1
+
+mkdir -p extension-kdbus
+pushd gio/.libs/
+# rm if symlink. mv if regular file.
+for FILE in libgio-*.so*; do test -h "$FILE" && rm "$FILE" || mv "$FILE" ../../extension-kdbus/ ; done
+popd
+
+%{__make} clean
+
+
+
# Support for generating separate packages with libraries generating coverage files
# WARNING: if coverage build is enabled, incremental builds will not work correctly.
# Use the option only to generate glib2-coverage packages.
%if 0%{?with_systemtap}
--enable-systemtap \
%endif
-%if %{with dbuspolicy}
- --enable-libdbuspolicy \
-%endif
--enable-always-build-tests \
--enable-installed-tests \
%if %{with coverage}
%make_install
%find_lang glib20 %{?no_lang_C}
+# kdbus extension
+pushd extension-kdbus
+for FILE in *; do mv "$FILE" "%{buildroot}%{_libdir}/$FILE.extension-kdbus"; done
+popd
+
mkdir -p %{buildroot}%{_sysconfdir}/profile.d
install -D -m0644 glib2.sh %{buildroot}%{_sysconfdir}/profile.d/zzz-glib2.sh
install -D -m0644 glib2.csh %{buildroot}%{_sysconfdir}/profile.d/zzz-glib2.csh
%files -n libgio
%manifest %{name}.manifest
%defattr(-, root, root)
+%exclude %{_libdir}/libgio*.so.*.extension-kdbus
%{_libdir}/libgio*.so.*
%dir %{_libdir}/gio
%dir %{_libdir}/gio/modules
%lang_package -f glib20
+%post -n libgio-extension-kdbus
+pushd %{_libdir}
+for FILE in libgio*.so.*.extension-kdbus; do mv "$FILE" "${FILE%.extension-kdbus}"; done
+popd
+%files -n libgio-extension-kdbus
+%manifest %{name}.manifest
+%{_libdir}/libgio*.so.*.extension-kdbus
+
%files devel
%manifest %{name}.manifest