# # Spec file for oracleasm # # Macros # This one is hardcoded because, well, it belongs there %define _prefix /usr # Because RPM is dumb %define _unpackaged_files_terminate_build 0 %define builddef 1 %define buildpae 0 %define buildxen 0 %define builddebug 0 %ifarch i686 %define karch i686 %define buildpae 1 %define buildxen 1 %define builddebug @@DEBUG@@ %endif %ifarch x86_64 %define karch x86_64 %define buildxen 1 %define builddebug @@DEBUG@@ %endif %ifarch ia64 %define karch ia64 %define buildxen 1 %define builddebug @@DEBUG@@ %endif %ifarch ppc64 %define karch ppc64 %define builddebug @@DEBUG@@ %endif %ifarch s390x %define karch s390x %define builddebug @@DEBUG@@ %endif # This must be changed to the minimum ABI compat kernel version expected %define kver @@KVER@@ # The minimum -support package required for the kernel bits. %define support_ver 2.0.0 # Minimum oracleasmlib version that supports positive ASM_ERR_NODEV. %define min_enodev 2.0.1 Summary: The Oracle Automatic Storage Management library driver. Name: oracleasm-%{kver} Version: @DIST_VERSION@ Release: @@PKG_VERSION@@.el5 License: GPL Group: System Environment/Kernel Source: oracleasm-@DIST_VERSION@.tar.gz URL: http://oss.oracle.com/projects/oracleasm/ Distribution: Oracle Vendor: Oracle Corporation Packager: Joel Becker Provides: oracleasm = %{version} AutoReqProv: no Requires: kernel = %{kver} Requires: oracleasm-support >= %{support_ver} Conflicts: oracleasmlib < %{min_enodev} BuildRequires: kernel-devel = %{kver} BuildRoot: %{_tmppath}/oracleasm-%{PACKAGE_VERSION}-%{PACKAGE_RELEASE}-root %description Kernel driver for the Oracle Automatic Storage Management library. This package is compiled for the default kernel. %if %{buildpae} %package -n oracleasm-%{kver}PAE Summary: The Oracle Automatic Storage Management library driver for PAE systems. Group: System Environment/Kernel AutoReqProv: no Provides: oracleasm = %{version} Requires: kernel-PAE = %{kver} Requires: oracleasm-support >= %{support_ver} Conflicts: oracleasmlib < %{min_enodev} BuildRequires: kernel-PAE-devel = %{kver} %description -n oracleasm-%{kver}PAE Kernel driver for the Oracle Automatic Storage Management library. This package is compiled for the PAE kernel. %endif %if %{buildxen} %package -n oracleasm-%{kver}xen Summary: The Oracle Automatic Storage Management library driver for Xen systems. Group: System Environment/Kernel AutoReqProv: no Provides: oracleasm = %{version} Requires: kernel-xen = %{kver} Requires: oracleasm-support >= %{support_ver} Conflicts: oracleasmlib < %{min_enodev} BuildRequires: kernel-xen-devel = %{kver} %description -n oracleasm-%{kver}xen Kernel driver for the Oracle Automatic Storage Management library. This package is compiled for the Xen virtualized systems. %endif %if %{builddebug} %package -n oracleasm-%{kver}debug Summary: The Oracle Automatic Storage Management library driver for debug systems. Group: System Environment/Kernel AutoReqProv: no Provides: oracleasm = %{version} Requires: kernel-debug = %{kver} Requires: oracleasm-support >= %{support_ver} Conflicts: oracleasmlib < %{min_enodev} BuildRequires: kernel-debug-devel = %{kver} %description -n oracleasm-%{kver}debug Kernel driver for the Oracle Automatic Storage Management library. This package is compiled for the debug kernel. %endif %prep %setup -n oracleasm-%{version} %build local_configure() { ./configure \ --prefix=%{_prefix} \ --exec-prefix=%{_exec_prefix} \ --bindir=%{_bindir} \ --sbindir=%{_sbindir} \ --sysconfdir=%{_sysconfdir} \ --datadir=%{_datadir} \ --includedir=%{_includedir} \ --libdir=%{_libdir} \ --libexecdir=%{_libexecdir} \ --localstatedir=%{_localstatedir} \ --sharedstatedir=%{_sharedstatedir} \ --mandir=%{_mandir} \ --infodir=%{_infodir} \ --with-vendor=rhel5 \ --with-vendorkernel="$1" } %if %{builddef} local_configure "%{kver}" make V=0 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install # 2.6 kbuild can't do this install nicely EXTRA_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}/extra" INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}/kernel/drivers/addon/oracleasm" mkdir -p "${INST_MODLIB}" mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/" make clean %endif %if %{buildpae} local_configure "%{kver}PAE" make V=0 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install # 2.6 kbuild can't do this install nicely EXTRA_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}PAE/extra" INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}PAE/kernel/drivers/addon/oracleasm" mkdir -p "${INST_MODLIB}" mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/" make clean %endif %if %{buildxen} local_configure "%{kver}xen" make V=0 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install # 2.6 kbuild can't do this install nicely EXTRA_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}xen/extra" INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}xen/kernel/drivers/addon/oracleasm" mkdir -p "${INST_MODLIB}" mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/" make clean %endif %if %{builddebug} local_configure "%{kver}debug" make V=0 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install # 2.6 kbuild can't do this install nicely EXTRA_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}debug/extra" INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}debug/kernel/drivers/addon/oracleasm" mkdir -p "${INST_MODLIB}" mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/" make clean %endif %install %clean rm -rf "$RPM_BUILD_ROOT" %if %{builddef} %post -n oracleasm-%{kver} depmod -ae %{kver} %files -n oracleasm-%{kver} %defattr(-,root,root) /lib/modules/%{kver}/kernel/drivers/addon/oracleasm %endif %if %{buildpae} %post -n oracleasm-%{kver}PAE depmod -ae %{kver}PAE %files -n oracleasm-%{kver}PAE %defattr(-,root,root) /lib/modules/%{kver}PAE/kernel/drivers/addon/oracleasm %endif %if %{buildxen} %post -n oracleasm-%{kver}xen depmod -ae %{kver}xen %files -n oracleasm-%{kver}xen %defattr(-,root,root) /lib/modules/%{kver}xen/kernel/drivers/addon/oracleasm %endif %if %{builddebug} %post -n oracleasm-%{kver}debug depmod -ae %{kver}debug %files -n oracleasm-%{kver}debug %defattr(-,root,root) /lib/modules/%{kver}debug/kernel/drivers/addon/oracleasm %endif %changelog * Mon Nov 12 2007 Sunil Mushran - Add support to build modules for kernel-debug for RHEL5 * Wed Apr 18 2007 Joel Becker - Add RHEL5 * Fri Feb 09 2007 Joel Becker - Strip down for Fedora Core 6 * Thu May 25 2006 Joel Becker - Add largesmp * Fri Feb 04 2005 Joel Becker - Make RHEL4 specfile. * Tue Sep 21 2004 Joel Becker - Make SLES9 specfile. * Tue Jan 13 2004 Joel Becker - Make kernel-only. * Thu Nov 20 2003 Joel Becker - Add x86 and ia64 targets. * Wed Nov 19 2003 Joel Becker - Make the UL SP3 changes. * Wed Nov 12 2003 Joel Becker - Start the ASM rename. * Thu Oct 30 2003 Joel Becker - Created EL3 version * Mon Jun 23 2003 Joel Becker - Added osm-lib bits * Fri Jun 20 2003 Joel Becker - Initial RPM