Check also <ntfs/*> include files when checking 'libntfs' availability.
[captive.git] / captive.spec.in
index a8ddc20..e226be6 100644 (file)
@@ -25,11 +25,14 @@ Name: @PACKAGE@
 Version: @VERSION@
 Release: %{release}
 Group: System Environment/Base
-Source: http://www.jankratochvil.net/project/captive/@PACKAGE@-@VERSION@.tar.gz
+Packager: Jan Kratochvil <project-captive@jankratochvil.net>
+Source: http://www.jankratochvil.net/project/captive/dist/@PACKAGE@-@VERSION@.tar.gz
 Copyright: GPL
 BuildRoot: /var/tmp/@PACKAGE@-@VERSION@-%{release}-root
 BuildRequires: ORBit2-devel
 Requires: ORBit2
+# Due to --with-orbit-line=linc
+Conflicts: ORBit2 >= 2.7.0
 BuildRequires: openssl-devel
 Requires: openssl
 BuildRequires: gnome-vfs2-devel
@@ -59,24 +62,35 @@ ISO9660 and EXT2 is also provided.
 Summary: LUFS module for Microsoft Windows platform filesystem access.
 Group: System Environment/Base
 Requires: captive = %{PACKAGE_VERSION}
+BuildRequires: lufs >= 0.9.6-1captive
 Requires: lufs >= 0.9.6-1captive
 
 %description lufs
 LUFS is a hybrid userspace filesystem framework.
 
 Package provides LUFS filesystem module to access Microsoft Windows platform
-filesystems such as NTFS.
+filesystems such as NTFS. Use filesystem type 'captive-ntfs' for NTFS disks.
 
 %package install
 Summary: Instant installer for Microsoft Windows platform filesystem access.
 Group: System Environment/Base
 Requires: captive-lufs = %{PACKAGE_VERSION}
-BuildRequires: ntfsprogs-devel
-Requires: ntfsprogs
+# Versions before 1.8.0 were too buggy
+BuildRequires: ntfsprogs-devel >= 1.8.0
+# 'PreReq' needed for Mandrake-9.1 otherwise '%preun install' fails
+# during 'rpm -e ntfsprogs captive-install':
+PreReq: ntfsprogs >= 1.8.0
+Requires: ntfsprogs >= 1.8.0
 Requires: ntfsprogs-gnomevfs
 Requires: gnome-vfs-httpcaptive
 BuildRequires: gnome-vfs2-devel
 Requires: gnome-vfs2
+BuildRequires: libgnomeui-devel
+Requires: libgnomeui
+BuildRequires: readline-devel
+Requires: readline
+BuildRequires: libxml2-devel >= 2.4.29
+Requires: libxml2 >= 2.4.29
 
 %description install
 Package provides easy enough unattended installation of Microsoft Windows
@@ -104,19 +118,20 @@ NTFS disks will become mount(8)able at directories: /mnt/captive-VOLUME_NAME
 %build
 # Never disable debug for captive, see FAQ
 #      "How to check valid input arguments? Invalid processing state assumptions?"
-# FIXME: Use our own CFLAGS to prevent '-mcpu=i686' which up to gcc-20030214 gcc
-# will ignore stack freeing of attribute((stdcall)) callees in caller functions code.
-# Check at the final call of src/libcaptive/reactos/ntoskrnl/io/irp.c/IofCallDriver().
-CFLAGS="-O2"
 %configure \
                --enable-shared --disable-static \
                --with-readline \
-               --with-sandbox-setuid=@PACKAGE@ \
-               --with-sandbox-setgid=@PACKAGE@ \
-               --with-sandbox-chroot=%{_var}/lib/@PACKAGE@ \
-               --with-sbin-mountdir=/sbin \
-               --with-sbin-mount-fs=ntfs:fastfat:cdfs:ext2fsd \
-               --disable-gtk-doc
+               --disable-bug-replay \
+               --enable-lufs \
+               --enable-install-pkg \
+               --enable-sandbox-setuid=@PACKAGE@ \
+               --enable-sandbox-setgid=@PACKAGE@ \
+               --enable-sandbox-chroot=%{_var}/lib/@PACKAGE@ \
+               --enable-man-pages \
+               --enable-sbin-mountdir=/sbin \
+               --enable-sbin-mount-fs=ntfs:fastfat:cdfs:ext2fsd \
+               --disable-gtk-doc \
+               --with-orbit-line=linc
 make
 
 %install
@@ -127,32 +142,42 @@ rm -rf $RPM_BUILD_ROOT
 
 %post
 /sbin/ldconfig
+/usr/sbin/useradd -c "Captive Sandbox" -s /sbin/nologin -r -d %{_var}/lib/@PACKAGE@ captive 2>/dev/null || true
 
 %postun
 /sbin/ldconfig
+# Remove stale sandbox chroot directories owned by 'captive.captive':
+rm -rf %{_var}/lib/@PACKAGE@/sandbox-server-*
 
 %files
 %defattr(-,root,root)
 %doc README NEWS AUTHORS TODO
 %{_libdir}/lib@PACKAGE@-@VERSION@.so
+%attr(644,root,root) %{_mandir}/man?/@PACKAGE@.*
 %{_libdir}/gnome-vfs-2.0/modules/lib@PACKAGE@-gnomevfs-@VERSION@.so
 %{_libdir}/gnome-vfs-2.0/modules/lib@PACKAGE@-gnomevfs.so
 %{_bindir}/@PACKAGE@-cmdline
+%attr(644,root,root) %{_mandir}/man?/@PACKAGE@-cmdline.*
 %attr(4755,root,root) %{_sbindir}/@PACKAGE@-sandbox-server
+%attr(644,root,root) %{_mandir}/man?/@PACKAGE@-sandbox-server.*
 %config %{_sysconfdir}/gnome-vfs-2.0/modules/@PACKAGE@.conf
 %{_datadir}/locale/*/LC_MESSAGES/@PACKAGE@.mo
 %attr(755,root,root) %{_var}/lib/@PACKAGE@
+%attr(1777,root,root) %{_var}/lib/@PACKAGE@/tmp
+%attr(644,root,root) %{_var}/lib/@PACKAGE@/*.sys
 
 %files lufs
 %defattr(-,root,root)
 %{_libdir}/liblufs-@PACKAGE@fs-@VERSION@.so
 %{_libdir}/liblufs-@PACKAGE@fs.so
+%attr(644,root,root) %{_mandir}/man?/lufs-@PACKAGE@fs.*
 /sbin/mount.@PACKAGE@
 /sbin/mount.@PACKAGE@-*
+%attr(644,root,root) %{_mandir}/man?/mount.@PACKAGE@.*
 
 %post install
 %{_sbindir}/captive-install-fstab --add
-%{_sbindir}/captive-install-acquire --scan-disks-quick
+%{_sbindir}/captive-install-acquire --text --scan-disks-quick
 
 %preun install
 %{_sbindir}/captive-install-fstab --remove
@@ -161,7 +186,9 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(-,root,root)
 %config %{_sysconfdir}/w32-mod-id.captivemodid.xml
 %{_sbindir}/captive-install-fstab
+%attr(644,root,root) %{_mandir}/man?/captive-install-fstab.*
 %{_sbindir}/captive-install-acquire
+%attr(644,root,root) %{_mandir}/man?/captive-install-acquire.*
 
 # %files devel
 # %defattr(-,root,root)