#
+# TODO:
+# - fix packages descriptions and groups
+# - make conditional builds switches working
+# - correct linking dependencies (now even not gnome connected libs are linked with gnome)
+# - check provides/requires
+#
# Conditional build:
#%%bcond_without gnome # don't build gnome-vfs support
%bcond_without lufs # don't build LUFS support
Summary(pl): Captive - obs³uga NTFS dla Linuksa z odczytem i zapisem
Name: captive
Version: 1.1.5
-Release: 0.1
+Release: 0.4
Epoch: 0
License: GPL
Group: Base/Kernel
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gnome-vfs2-devel >= 2.0
+BuildRequires: gtk-doc
BuildRequires: libxml2-devel >= 2.5.9
%{?with_lufs:BuildRequires: lufs-devel}
BuildRequires: openssl-devel
BuildRequires: ntfsprogs-devel
BuildRequires: libgnomeui-devel
BuildRequires: libglade2-devel
+Requires(pre): /usr/bin/getgid
+Requires(pre): /bin/id
+Requires(pre): /usr/sbin/groupadd
+Requires(pre): /usr/sbin/useradd
+Requires: lufis
Provides: group(captive)
Provides: user(captive)
-Requires: lufis
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
wykorzystanie plików oryginalnego sterownika aby osi±gn±æ lepsz±
kompatybilno¶æ i bezpieczeñstwo.
+%package -n gnome-vfs2-module-captive
+Summary: Captive module for gnome-vfs
+Summary(pl): Modu³ captive dla gnome-vfs
+Group: Libraries
+Requires: %{name} = %{epoch}:%{version}-%{release}
+
+%description -n gnome-vfs2-module-captive
+Captive module for gnome-vfs.
+
+%description -n gnome-vfs2-module-captive -l pl
+Modu³ captive dla gnome-vfs.
+
%package install
Summary: Windows filesystem drivers installer for captive
Summary(pl): Instalator windowsowych sterowników systemu plików dla captive
%description install -l pl
Instalator windowsowych sterowników systemu plików dla captive.
+%package devel
+Summary: Captive - NTFS read/write filesystem for Linux
+Summary(pl): Captive - obs³uga NTFS dla Linuksa z odczytem i zapisem
+Group: Base/Utilities
+Requires: %{name}-libs = %{epoch}:%{version}-%{release}
+
+%description devel
+This package contains header files and development libraries for captive.
+
+%description devel -l pl
+Pakiet zawiera pliki nag³ówkowe i biblioteki deweloperskie dla captive.
+
+%package libs
+Summary: Captive - NTFS read/write filesystem for Linux
+Summary(pl): Captive - obs³uga NTFS dla Linuksa z odczytem i zapisem
+Group: Base/Utilities
+
+%description libs
+This package contains shared libraries for captive.
+
+%description libs -l pl
+Pakiet zawiera biblioteki dzielone dla captive.
+
%prep
%setup -q
%patch0 -p1
%patch3 -p1
%build
-rm -f missing
%{__libtoolize}
%{__aclocal} -I macros
%{__autoconf}
--enable-sbin-mount-fs=ntfs:fastfat:cdfs:ext2fsd \
--with-orbit-line=link \
--with-tmpdir=/tmp \
- --localstatedir=/var
+ --localstatedir=/var \
+ --enable-gtk-doc
%{__make}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{_docdir}
+mv $RPM_BUILD_ROOT/usr/share/gtk-doc $RPM_BUILD_ROOT%{_docdir}
+
+rm -f $RPM_BUILD_ROOT%{_libdir}/gnome-vfs-2.0/modules/*.la
+
+%find_lang %{name}
+
%clean
-#rm -rf $RPM_BUILD_ROOT
+rm -rf $RPM_BUILD_ROOT
%pre
-if [ -n "`getgid captive`" ]; then
- if [ "`getgid http`" != "141" ]; then
+if [ -n "`/usr/bin/getgid captive`" ]; then
+ if [ "`/usr/bin/getgid captive`" != "141" ]; then
echo "Error: group captive doesn't have gid=141. Correct this before installing captive." 1>&2
exit 1
fi
else
/usr/sbin/groupadd -g 141 -r -f captive
fi
-if [ -n "`id -u captive 2>/dev/null`" ]; then
- if [ "`id -u http`" != "141" ]; then
+if [ -n "`/bin/id -u captive 2>/dev/null`" ]; then
+ if [ "`/bin/id -u captive`" != "141" ]; then
echo "Error: user captive doesn't have uid=141. Correct this before installing captive." 1>&2
exit 1
fi
/usr/sbin/useradd -u 141 -r -d /var/lib/captive -s /bin/false -c "Captive User" -g captive captive 1>&2
fi
-%files
+%post libs -p /sbin/ldconfig
+%postun libs -p /sbin/ldconfig
+
+%files -f %{name}.lang
%defattr(644,root,root,755)
%doc AUTHORS NEWS README THANKS TODO
%attr(755,root,root) %{_bindir}/*
%attr(755,root,root) %{_sbindir}/captive-sandbox-server
%attr(755,root,root) /sbin/*
-%{_libdir}/lib*
-%{_libdir}/gnome-vfs-2.0/modules/*
-%{_includedir}/captive/*
+%attr(755,root,root) %{_libdir}/libcaptive-1.1.5.so
+%attr(755,root,root) %{_libdir}/liblufs-captivefs-1.1.5.so
%{_mandir}/man1/captive-cmdline.1*
%{_mandir}/man1/captive-sandbox-server.1*
%{_mandir}/man7/*
/var/lib/captive
/etc/w32-mod-id.captivemodid.xml
-
+%files -n gnome-vfs2-module-captive
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/gnome-vfs-2.0/modules/libcaptive-gnomevfs*.so
%{_sysconfdir}/gnome-vfs-2.0/modules/captive.conf
-#%%attr(755,root,root) %{_libdir}/gnome-vfs-2.0/modules/libntfs-gnomevfs.so*
-
-
-#/etc/w32-mod-id.captivemodid.xml
-#/usr/share/locale/cs/LC_MESSAGES/captive.mo
%files install
%defattr(644,root,root,755)
%attr(755,root,root) %{_sbindir}/captive-install*
%{_mandir}/man1/captive-install*
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libcaptive.so
+%attr(755,root,root) %{_libdir}/liblufs-captivefs.so
+%{_libdir}/lib*.la
+%{_includedir}/captive
+%{_gtkdocdir}/captive-apiref
+
+%files libs
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libcaptive-1.1.5.so
+%attr(755,root,root) %{_libdir}/liblufs-captivefs-1.1.5.so