diff --git a/.cvsignore b/.cvsignore index e69de29..3c7cf40 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +ocfs2-tools-1.3.9.tar.gz diff --git a/ocfs2-tools.spec b/ocfs2-tools.spec new file mode 100644 index 0000000..f98339a --- /dev/null +++ b/ocfs2-tools.spec @@ -0,0 +1,198 @@ +%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} + +%define with_console %{?_without_console: 0} %{?!_without_console: 1} +%define alphatag 20080221git + +Summary: Tools for managing the Ocfs2 cluster file system +Name: ocfs2-tools +Version: 1.3.9 +Release: 7.%{alphatag}%{?dist} +License: GPLv2 +Group: System Environment/Base +# The source for this package was pulled from upstream's git repo and manually +# turned into a release tarball. Use the following commands to generate the +# tarball: +# git clone git://oss.oracle.com/git/ocfs2-tools.git ocfs2-tools-1.3.9 +# cd ocfs2-tools-1.3.9 +# git checkout -b 20080221git 22fb58d0318a2946479833bb5e2fd58864499c78 +# ./autogen.sh +# cd .. +# tar -czvf ocfs2-tools-1.3.9.tar.gz ocfs2-tools-1.3.9 +Source: %{name}-%{version}.tar.gz +URL: http://oss.oracle.com/projects/ocfs2-tools/ +Requires(post): chkconfig +Requires(preun): chkconfig +Requires(preun): /sbin/service +Requires: bash, coreutils, net-tools, modutils +Requires: e2fsprogs, chkconfig, glib2 >= 2.2.3 +BuildRequires: e2fsprogs-devel, glib2-devel >= 2.2.3 +BuildRequires: pygtk2 >= 1.99.16, python-devel >= 2.5 +BuildRequires: ncurses-devel, readline-devel, desktop-file-utils + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root + +%description +Programs to manage the Ocfs2 cluster file system, including mkfs.ocfs2, +tunefs.ocfs2 and fsck.ocfs2. + +Ocfs2 is a general purpose extent based shared disk cluster file +system. It supports 64 bit inode numbers, and has automatically +extending metadata groups which may also make it attractive for +non-clustered use. Ocfs2 leverages some well tested kernel +technologies, such as JBD - the same journaling subsystem in use by +ext3. + +%if %{with_console} +%package -n ocfs2console +Summary: GUI frontend for Ocfs2 management +Group: System Environment/Kernel +Requires: e2fsprogs, glib2 >= 2.2.3, vte >= 0.11.10, pygtk2 >= 1.99.16 +Requires: python >= 2.5, %{name} = %{version}-%{release} + + +%description -n ocfs2console +Ocfs2console can make it easier to manage an Ocfs2 cluster by +providing a gui front-end to common tasks, including initial cluster +setup. In addition to cluster setup, Ocfs2console can format and +mount Ocfs2 volumes. +%endif + +%package devel +Summary: Headers and static archives for ocfs2-tools +Group: Development/Libraries +Requires: e2fsprogs-devel, glib2-devel >= 2.2.3, pkgconfig +Requires: %{name} = %{version}-%{release} +Provides: %{name}-static = %{version}-%{release} + +%description devel +ocfs2-tools-devel contains the libraries and header files needed to +develop Ocfs2 filesystem-specific programs. + + + +%prep +%setup -q + + +%build +%configure \ +%if ! %{with_console} + --enable-ocfs2console=no \ +%endif + --enable-dynamic-fsck=yes + +# parallel build currently fails, so no %{_smp_mflags} +make + + +%install +rm -rf "$RPM_BUILD_ROOT" + +mkdir -p $RPM_BUILD_ROOT/%{_initrddir} +cp -f vendor/common/o2cb.init $RPM_BUILD_ROOT/%{_initrddir}/o2cb +cp -f vendor/common/ocfs2.init $RPM_BUILD_ROOT/%{_initrddir}/ocfs2 +mkdir -p $RPM_BUILD_ROOT/etc/sysconfig +cp -f vendor/common/o2cb.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/o2cb + +make DESTDIR="$RPM_BUILD_ROOT" install + +chmod 644 $RPM_BUILD_ROOT/%{_libdir}/*.a + +%if %{with_console} +%{__python} -c "import compileall; compileall.compile_dir('$RPM_BUILD_ROOT/%{python_sitearch}/ocfs2interface', ddir='%{python_sitearch}/ocfs2interface')" +# rpm autostripper needs to see these as executable +chmod 755 $RPM_BUILD_ROOT/%{python_sitearch}/ocfs2interface/*.so + +mkdir -p $RPM_BUILD_ROOT%{_datadir}/ocfs2console/ +cp -f vendor/common/ocfs2console.png $RPM_BUILD_ROOT%{_datadir}/ocfs2console/ +desktop-file-install --vendor="fedora" \ + --dir=$RPM_BUILD_ROOT%{_datadir}/applications/ \ + vendor/common/ocfs2console.desktop +%endif + + +%clean +rm -rf "$RPM_BUILD_ROOT" + + +%post +/sbin/chkconfig --add o2cb +/sbin/chkconfig --add ocfs2 + +%preun +if [ $1 = 0 ]; then # execute this only if we are NOT doing an upgrade + /sbin/service ocfs2 stop >/dev/null 2>&1 || : + /sbin/service o2cb stop >/dev/null 2>&1 || : + /sbin/chkconfig --del ocfs2 + /sbin/chkconfig --del o2cb +fi + +%files +%defattr(-,root,root,-) +%doc README.O2CB COPYING CREDITS MAINTAINERS +%doc documentation/users_guide.txt +/sbin/fsck.ocfs2 +/sbin/mkfs.ocfs2 +/sbin/mounted.ocfs2 +/sbin/tunefs.ocfs2 +/sbin/debugfs.ocfs2 +/sbin/o2cb_ctl +/sbin/mount.ocfs2 +/sbin/ocfs2cdsl +/sbin/ocfs2_hb_ctl +%{_initrddir}/o2cb +%{_initrddir}/ocfs2 +%config(noreplace) /etc/sysconfig/o2cb +%{_mandir}/man8/debugfs.ocfs2.8.gz +%{_mandir}/man8/fsck.ocfs2.8.gz +%{_mandir}/man8/fsck.ocfs2.checks.8.gz +%{_mandir}/man8/mkfs.ocfs2.8.gz +%{_mandir}/man8/tunefs.ocfs2.8.gz +%{_mandir}/man8/mount.ocfs2.8.gz +%{_mandir}/man8/mounted.ocfs2.8.gz +%{_mandir}/man8/o2cb_ctl.8.gz +%{_mandir}/man8/ocfs2_hb_ctl.8.gz +%{_mandir}/man8/ocfs2cdsl.8.gz + + +%if %{with_console} +%files -n ocfs2console +%defattr(-,root,root,-) +%dir %{python_sitearch}/ocfs2interface +%{python_sitearch}/ocfs2interface/* +%{_sbindir}/ocfs2console +%{_mandir}/man8/ocfs2console.8.gz +%{_datadir}/applications/fedora-ocfs2console.desktop +%dir %{_datadir}/ocfs2console/ +%{_datadir}/ocfs2console/* +%endif + +%files devel +%defattr(-,root,root,-) +%{_libdir}/*.a +%{_libdir}/pkgconfig/*.pc +%dir %{_includedir}/ocfs2-kernel +%dir %{_includedir}/o2cb +%dir %{_includedir}/o2dlm +%dir %{_includedir}/ocfs2 +%{_includedir}/ocfs2-kernel/* +%{_includedir}/o2cb/* +%{_includedir}/o2dlm/* +%{_includedir}/ocfs2/* + + + +%changelog + +* Fri Apr 18 2008 Mark Fasheh - 1.3.9-7.20080221git.fc8 +- Use 'Fedora' as vendor for desktop-file-install + +* Thu Feb 21 2008 Mark Fasheh - 1.3.9-6.20080221git.fc8 +- Move to git revision 22fb58d0318a2946479833bb5e2fd58864499c78 + +* Mon Feb 4 2008 Mark Fasheh - 1.3.9-5.20080131git +- Incorporate feedback via bugzilla during review process. + +* Thu Jan 31 2008 Mark Fasheh - 1.3.9-4.20080131git +- Initial Fedora spec, heavily modified from ocfs2-tools distribution. Thanks + to Eric Sandeen for helping with this. diff --git a/sources b/sources index e69de29..799257e 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +150346c30891caa4273849f23fdc1a08 ocfs2-tools-1.3.9.tar.gz