[Oracleasm-commits] jlbec commits r351 - in trunk: . kernel vendor vendor/sles10

svn-commits@oss.oracle.com svn-commits at oss.oracle.com
Wed Jul 12 20:10:29 CDT 2006


Author: jlbec
Date: 2006-07-12 20:10:27 -0500 (Wed, 12 Jul 2006)
New Revision: 351

Added:
   trunk/vendor/sles10/
   trunk/vendor/sles10/Makefile
   trunk/vendor/sles10/Vendor.make
   trunk/vendor/sles10/kernel.guess
   trunk/vendor/sles10/oracleasm.spec-generic.in
   trunk/vendor/sles10/rpmarch.guess
   trunk/vendor/sles10/vendor.guess
Modified:
   trunk/configure.in
   trunk/kernel/
   trunk/kfeature.m4
   trunk/vendor/Makefile
Log:

Add the sles10 vendor.

Introduce OCFS2_KERNEL_CHECK_INCLUDES() to handle more than one include
directory, like on sles9/10 where KERNELSRC and KERNELOBJ are not the
same path.

Teach vendor/sles10/kernel.guess to output both paths, and teach
configure.in to use them.



Modified: trunk/configure.in
===================================================================
--- trunk/configure.in	2006-07-07 06:06:34 UTC (rev 350)
+++ trunk/configure.in	2006-07-13 01:10:27 UTC (rev 351)
@@ -141,18 +141,20 @@
 BACKING_DEV_CAPABILITIES=
 GET_SB_HAS_VFSMOUNT=
 if test x"$BUILD_DRIVER" = "xyes"; then
-  KERNELINC="${KERNELDIR}/include"  # Needed by kfeature.m4
+  kernelincludes="`vendor/${mb_vendor}/kernel.guess include`"
   KAPI_COMPAT_HEADERS=
 
-  OCFS2_CHECK_KERNEL([capabilities mask in backing_dev_info], backing-dev.h,
+  OCFS2_CHECK_KERNEL_INCLUDES([capabilities mask in backing_dev_info],
+    linux/backing-dev.h, $kernelincludes,
     BACKING_DEV_CAPABILITIES=yes, , [\<BDI_CAP_NO_WRITEBACK\>])
 
-  OCFS2_CHECK_KERNEL([vfsmount in ->get_sb() helpers], fs.h,
-    GET_SB_HAS_VFSMOUNT=yes, , [^extern int get_sb_pseudo])
+  OCFS2_CHECK_KERNEL_INCLUDES([vfsmount in ->get_sb() helpers],
+    linux/fs.h, $kernelincludes, GET_SB_HAS_VFSMOUNT=yes, ,
+    [^extern int get_sb_pseudo])
 
   mutex_compat_header=
-  OCFS2_CHECK_KERNEL([for mutex API], mutex.h, ,
-    mutex_compat_header="i_mutex.h", [mutex_lock])
+  OCFS2_CHECK_KERNEL_INCLUDES([for mutex API], linux/mutex.h,
+    $kernelincludes, , mutex_compat_header="i_mutex.h", [mutex_lock])
   KAPI_COMPAT_HEADERS="$KAPI_COMPAT_HEADERS $mutex_compat_header"
 
   # using -include has two advantages:
@@ -171,5 +173,6 @@
 include/linux/oracleasm/module_version.h
 vendor/sles9/oracleasm.spec-generic
 vendor/rhel4/oracleasm.spec-generic
+vendor/sles10/oracleasm.spec-generic
 vendor/common/oracleasm-headers.spec-generic
 ])


Property changes on: trunk/kernel
___________________________________________________________________
Name: svn:ignore
   - *.sw?
.*.d
stamp-md5
.*.cmd
*.ko
.tmp_versions
oracleasm.mod.c

   + *.sw?
.*.d
stamp-md5
.*.cmd
*.ko
.tmp_versions
oracleasm.mod.c
Modules.symvers


Modified: trunk/kfeature.m4
===================================================================
--- trunk/kfeature.m4	2006-07-07 06:06:34 UTC (rev 350)
+++ trunk/kfeature.m4	2006-07-13 01:10:27 UTC (rev 351)
@@ -1,3 +1,33 @@
+dnl This version can take multiple include paths
+dnl OCFS2_CHECK_KERNEL_INCLUDES(FEATURE, HEADER-LIST, INCLUDE-PATHS,
+dnl                             [ACTION-IF-TRUE], [ACTION-IF-FALSE],
+dnl                             [REGEX])
+dnl If REGEX is not provided, FEATURE is assumed to be a string to
+dnl match.  Unlike OCFS2_CHECK_KERNEL, includes must be the full include
+dnl ("linux/fs.h", not "fs.h").
+AC_DEFUN([OCFS2_CHECK_KERNEL_INCLUDES],
+  [AC_MSG_CHECKING([for $1])
+   kernel_check_regexp="m4_default([$6], [\<$1(])"
+
+   kernel_check_headers=
+   for kinclude in $3; do
+     for kfile in $2; do
+       if test -e "$kinclude/$kfile"; then
+         kernel_check_headers="$kernel_check_headers $kinclude/$kfile"
+       fi
+     done
+   done
+
+   if test x"$kernel_check_headers" != "x" && \
+     grep "$kernel_check_regexp" $kernel_check_headers >/dev/null 2>&1 ; then
+     m4_default([$4], :)
+     AC_MSG_RESULT(yes)
+   else
+     m4_default([$5], :)
+     AC_MSG_RESULT(no)
+   fi
+])# OCFS2_CHECK_KERNEL_INCLUDES
+
 AC_DEFUN([OCFS2_CHECK_KERNEL],
   [AC_MSG_CHECKING([for $1])
    kernel_check_regexp="m4_default([$5], [\<$1(])"

Modified: trunk/vendor/Makefile
===================================================================
--- trunk/vendor/Makefile	2006-07-07 06:06:34 UTC (rev 350)
+++ trunk/vendor/Makefile	2006-07-13 01:10:27 UTC (rev 351)
@@ -11,7 +11,7 @@
 #
 # Add any directories to recurse into via the SUBDIRS variable.
 # 
-SUBDIRS = common rhel4 sles9 rhel3 sles8 rhas21
+SUBDIRS = common sles10 rhel4 sles9 rhel3 sles8 rhas21
 
 #
 # Include this at the very end of the Makefile


Property changes on: trunk/vendor/sles10
___________________________________________________________________
Name: svn:ignore
   + .*.sw?
oracleasm.init
*.spec
*.spec-generic



Added: trunk/vendor/sles10/Makefile
===================================================================
--- trunk/vendor/sles10/Makefile	2006-07-07 06:06:34 UTC (rev 350)
+++ trunk/vendor/sles10/Makefile	2006-07-13 01:10:27 UTC (rev 351)
@@ -0,0 +1,12 @@
+TOPDIR = ../..
+
+include $(TOPDIR)/Preamble.make
+
+DIST_FILES =				\
+	oracleasm.spec-generic.in	\
+	kernel.guess			\
+	rpmarch.guess			\
+	Vendor.make			\
+	vendor.guess
+
+include $(TOPDIR)/Postamble.make

Added: trunk/vendor/sles10/Vendor.make
===================================================================
--- trunk/vendor/sles10/Vendor.make	2006-07-07 06:06:34 UTC (rev 350)
+++ trunk/vendor/sles10/Vendor.make	2006-07-13 01:10:27 UTC (rev 351)
@@ -0,0 +1,24 @@
+#
+# SLES 10
+#
+
+TOOLSARCH = $(shell $(TOPDIR)/vendor/sles10/rpmarch.guess tools $(TOPDIR))
+MODULEARCH = $(shell $(TOPDIR)/vendor/sles10/rpmarch.guess module $(TOPDIR))
+
+
+$(TOPDIR)/vendor/sles10/oracleasm-%.spec: $(TOPDIR)/vendor/sles10/oracleasm.spec-generic
+	SPECVER="$@"; \
+		SPECVER="$${SPECVER#*oracleasm-}"; \
+		SPECVER="$${SPECVER%.spec}"; \
+		sed -e 's/@@KVER@@/'$${SPECVER}'/' -e 's/@@PKG_VERSION@@/'$(PKG_VERSION)'/' < $< > $@
+
+sles10_%_srpm: dist $(TOPDIR)/vendor/sles10/oracleasm-%.spec
+	rpmbuild -bs --define "_sourcedir $(TOPDIR)" --define "_srcrpmdir $(TOPDIR)" $(TOPDIR)/vendor/sles10/oracleasm-$(patsubst sles10_%_srpm,%,$@).spec
+
+sles10_%_rpm: sles10_%_srpm
+	rpmbuild --rebuild $(MODULEARCH) "oracleasm-$(patsubst sles10_%_rpm,%,$@)-$(DIST_VERSION)-$(PKG_VERSION).src.rpm"
+
+
+include $(TOPDIR)/vendor/common/Vendor.make
+
+packages: $(shell $(TOPDIR)/vendor/sles10/kernel.guess targets) support_rpm

Added: trunk/vendor/sles10/kernel.guess
===================================================================
--- trunk/vendor/sles10/kernel.guess	2006-07-07 06:06:34 UTC (rev 350)
+++ trunk/vendor/sles10/kernel.guess	2006-07-13 01:10:27 UTC (rev 351)
@@ -0,0 +1,298 @@
+#!/bin/sh
+
+SLES9_KERNEL_BASE="/usr/src"
+
+#
+# SLES9 has wacky names for its kernel flavors.  So we'll just create
+# a list here of the mappings.  It's pretty simple.  One entry per
+# architecture, <arch>:<flavor1>[,<flavor> ...]
+#
+# Anyway, we can even reuse this when detecting kernels to build
+# packages for.  A kernel is only built if build trees for all flavors
+# are installed.
+#
+SLES9_KERNEL_TYPES="
+    x86_64:default,smp
+    ppc64:pseries64,iseries64,pmac64
+    ia64:default,64k-pagesize,sn2
+    i386:default,smp,bigsmp
+    s390:s390x
+"
+    
+
+
+guess_sles10_arch()
+{
+    ARCH=$(uname -m)
+    case "$ARCH" in
+    i386|i586|i686)
+	echo "i386"
+        ;;
+    s390x)
+        echo "s390"
+        ;;
+    *)
+        # This appears to be correct on ppc64
+        echo "$ARCH"
+        ;;
+    esac
+}
+
+guess_sles10_type()
+{
+    KVER="$1"
+
+    ARCH="$(guess_sles10_arch)"
+    if [ -z "$ARCH" ]
+    then
+        return
+    fi
+
+    for typelist in $SLES9_KERNEL_TYPES
+    do
+        TARCH=$(echo $typelist | cut -f1 -d:)
+        if [ "$TARCH" = "$ARCH" ]
+        then
+            for type in $(echo $typelist | cut -f2 -d: | sed -e 's/,/ /g')
+            do
+                case "$KVER" in
+                *-${type})
+                    echo "$type"
+                    break
+                    ;;
+                *)
+                    ;;
+                esac
+            done
+            break
+        fi
+    done
+}
+
+guess_sles10_dir()
+{
+    KVER="$1"
+
+    DIRTYPE=$(guess_sles10_type "$KVER")
+    ARCH=$(guess_sles10_arch)
+
+    if [ -n "$DIRTYPE" ]
+    then
+        echo "linux-${1%-${DIRTYPE}}-obj/${ARCH}/${DIRTYPE}"
+    fi
+}
+
+verfromdir()
+{
+    TESTDIR="$1"
+    if [ -r "${TESTDIR}/include/linux/version.h" ]
+    then
+        awk '/UTS_RELEASE/{gsub(/"/,"",$3); print $3}' "${TESTDIR}/include/linux/version.h"
+    fi
+}
+
+validate_dir()
+{
+    KVER="$1"
+    DIR="$2"
+
+    if [ ! -d "${SLES9_KERNEL_BASE}/${DIR}" ]
+    then
+        return 1
+    elif [ ! -f "${SLES9_KERNEL_BASE}/${DIR}/include/linux/autoconf.h" ]
+    then
+        return 1
+    elif [ ! -f "${SLES9_KERNEL_BASE}/${DIR}/include/linux/version.h" ]
+    then
+        return 1
+    fi
+
+    if [ "$KVER" != "`verfromdir "${SLES9_KERNEL_BASE}/${DIR}"`" ]
+    then
+        return 1
+    fi
+
+    return 0
+}
+
+# Takes a `uname -r` and returns "ver type", where ver
+# is 2.6.9-NN.EL and type is "smp" or the like.
+validate_version()
+{
+    KVER="$1"
+
+    dir=`guess_sles10_dir "$KVER"`
+    if validate_dir "$KVER" "$dir"
+    then
+        echo "${SLES9_KERNEL_BASE}/${dir}"
+    fi
+}
+
+find_version()
+{
+    ARCH="$(guess_sles10_arch)"
+    if [ -z "$ARCH" ]
+    then
+        return
+    fi
+
+    types=
+    for typelist in $SLES9_KERNEL_TYPES
+    do
+        TARCH=$(echo $typelist | cut -f1 -d:)
+        if [ "$TARCH" = "$ARCH" ]
+        then
+            types=$(echo $typelist | cut -f2 -d: | sed -e 's/,/ /g')
+            break
+        fi
+    done
+
+    if [ -z "$types" ]
+    then
+        return
+    fi
+
+     # Find the most recent valid kernel
+    ls -1 -t "$SLES9_KERNEL_BASE" | while read kdir
+    do
+        if [ -L "${SLES9_KERNEL_BASE}/${kdir}" -o ! -d "${SLES9_KERNEL_BASE}/${kdir}" ]
+        then
+            continue
+        fi
+
+        case "$kdir" in
+        *-obj)
+            ;;
+        *)
+            continue
+            ;;
+        esac
+        KERNELDIR=
+        for type in $types
+        do
+            KVER="`verfromdir "${SLES9_KERNEL_BASE}/${kdir}/${ARCH}/${type}"`"
+            if validate_dir "$KVER" "$kdir/${ARCH}/${type}"
+            then
+                KERNELDIR="${SLES9_KERNEL_BASE}/${kdir}/${ARCH}/${type}"
+                break
+            fi
+        done
+        if [ -n "$KERNELDIR" ]
+        then
+            echo "$KERNELDIR"
+            break
+        fi
+    done
+}
+
+validate_target()
+{
+    DIR="$1"
+    ARCH="$2"
+    types="$3"
+    for type in $types
+    do
+        KVER="`verfromdir "${SLES9_KERNEL_BASE}/${kdir}/${ARCH}/${type}"`"
+        if ! validate_dir "$KVER" "$kdir/${ARCH}/${type}"
+        then
+            return 1
+        fi
+    done
+
+    return 0
+}
+
+find_targets()
+{
+    ARCH="$(guess_sles10_arch)"
+    if [ -z "$ARCH" ]
+    then
+        return
+    fi
+
+    types=
+    for typelist in $SLES9_KERNEL_TYPES
+    do
+        TARCH=$(echo $typelist | cut -f1 -d:)
+        if [ "$TARCH" = "$ARCH" ]
+        then
+            types=$(echo $typelist | cut -f2 -d: | sed -e 's/,/ /g')
+            break
+        fi
+    done
+
+    if [ -z "$types" ]
+    then
+        return
+    fi
+
+    ls -1 -t "$SLES9_KERNEL_BASE" | while read kdir
+    do
+        # Avoid the symlinks
+        if [ -L "${SLES9_KERNEL_BASE}/${kdir}" -o ! -d "${SLES9_KERNEL_BASE}/${kdir}" ]
+        then
+            continue
+        fi
+        case "$kdir" in
+        linux-*-obj)
+            if validate_target "$kdir" "$ARCH" "$types"
+            then
+                KVER="${kdir#linux-}"
+                KVER="${KVER%-obj}"
+                if rpm -q "kernel-syms-${KVER}" 1>/dev/null 2>&1
+                then
+                    echo "sles10_${KVER}_rpm"
+                fi
+            fi
+            ;;
+        *)
+            ;;
+        esac
+    done
+}
+
+sles10_includes()
+{
+    DIR="$1"
+    kernelsrc=`awk '/^KERNELSRC/{print $3}' "${DIR}/Makefile" 2>/dev/null`
+
+    INCLUDES="$DIR/include"
+    [ -n "$kernelsrc" ] && INCLUDES="${INCLUDES} ${DIR}/${kernelsrc}/include"
+
+    echo "$INCLUDES"
+}
+
+case "$1" in
+include|build)
+    if [ -n "$2" ]
+    then
+        KPATH="`validate_version "$2"`"
+    else
+        KVER="`uname -r`"
+        KPATH="`validate_version "$KVER"`"
+        if [ -z "$KPATH" ]
+        then
+            KPATH="`find_version`"
+        fi
+    fi
+    if [ -n "$KPATH" ]
+    then
+        if [ "$1" = "include" ]
+        then
+            sles10_includes "${KPATH}"
+        else
+            echo "${KPATH}"
+        fi
+    fi
+    ;;
+targets)
+    find_targets
+    ;;
+"")
+    echo "Missing operation" >&2
+    ;;
+*)
+    echo "Invalid operation: $1" >&2
+    exit 1
+    ;;
+esac


Property changes on: trunk/vendor/sles10/kernel.guess
___________________________________________________________________
Name: svn:executable
   + *

Added: trunk/vendor/sles10/oracleasm.spec-generic.in
===================================================================
--- trunk/vendor/sles10/oracleasm.spec-generic.in	2006-07-07 06:06:34 UTC (rev 350)
+++ trunk/vendor/sles10/oracleasm.spec-generic.in	2006-07-13 01:10:27 UTC (rev 351)
@@ -0,0 +1,578 @@
+#
+# 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
+
+# Turn on's and off's
+%define builddefault		1
+%define buildsmp		1
+%define buildbigsmp		1
+%define build64kpagesize	0
+%define buildsn2		0
+%define buildiseries64		0
+%define buildpmac64		0
+%define buildpseries64		0
+%define builds390		0
+%define builds390x		0
+
+%ifarch %{ix86}
+%define karch i386
+%endif
+
+%ifarch x86_64 ia32e
+%define karch x86_64
+
+%define buildbigsmp		0
+%endif
+
+%ifarch ia64
+%define karch ia64
+
+%define buildsmp		0
+%define buildbigsmp		0
+%define build64kpagesize	1
+%define buildsn2		1
+%endif
+
+%ifarch ppc64
+%define karch ppc64
+
+%define builddefault		0
+%define buildsmp		0
+%define buildbigsmp		0
+%define buildiseries64		1
+%define buildpmac64		1
+%define buildpseries64		1
+%endif
+
+%ifarch s390
+%define karch s390
+
+%define builddefault		0
+%define buildsmp		0
+%define buildbigsmp		0
+%define builds390		1
+%endif
+
+%ifarch s390x
+%define karch s390
+
+%define builddefault		0
+%define buildsmp		0
+%define buildbigsmp		0
+%define builds390x		1
+%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@@
+License: GPL
+Group: System Environment/Kernel
+Source: oracleasm- at DIST_VERSION@.tar.gz
+URL: http://oss.oracle.com/projects/oracleasm/
+Distribution: Oracle
+Vendor: Oracle Corporation
+Packager: Joel Becker <joel.becker at oracle.com>
+Provides: oracleasm = %{version}
+AutoReqProv: no
+Requires: kernel-default = %{kver}
+Requires: oracleasm-support >= %{support_ver}
+Conflicts: oracleasmlib < %{min_enodev}
+BuildRequires: kernel-source = %{kver}, kernel-syms = %{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 %{builddefault}
+%package default
+Summary: The Oracle Automatic Storage Management library driver for UP systems.
+Group: System Environment/Kernel
+AutoReqProv: no
+Provides: oracleasm = %{version}
+Requires: kernel-default = %{kver}
+Requires: oracleasm-support >= %{support_ver}
+Conflicts: oracleasmlib < %{min_enodev}
+BuildRequires: kernel-source = %{kver}, kernel-syms = %{kver}
+
+%description default
+Kernel driver for the Oracle Automatic Storage Management library.
+This package is compiled for the default kernel.
+%endif
+
+
+%if %{buildsmp}
+%package smp
+Summary: The Oracle Automatic Storage Management library driver for SMP systems.
+Group: System Environment/Kernel
+AutoReqProv: no
+Provides: oracleasm = %{version}
+Requires: kernel-smp = %{kver}
+Requires: oracleasm-support >= %{support_ver}
+BuildRequires: kernel-source = %{kver}, kernel-syms = %{kver}
+
+%description smp
+Kernel driver for the Oracle Automatic Storage Management library.
+This package is compiled for symmetric multiprocessor kernels.
+%endif
+
+
+%if %{buildbigsmp}
+%package bigsmp
+Summary: The Oracle Automatic Storage Management library driver for NUMA systems.
+Group: System Environment/Kernel
+Provides: oracleasm = %{version}
+AutoReqProv: no
+Requires: kernel-bigsmp = %{kver}
+Requires: oracleasm-support >= %{support_ver}
+Conflicts: oracleasmlib < %{min_enodev}
+BuildRequires: kernel-source = %{kver}, kernel-syms = %{kver}
+
+%description bigsmp
+Kernel driver for the Oracle Automatic Storage Management library.
+This package is compiled for large memory SMP kernels.
+%endif
+
+
+%if %{build64kpagesize}
+%package 64k-pagesize
+Summary: The Oracle Automatic Storage Management library driver for Itanium kernels with a 64KB pagesize.
+Group: System Environment/Kernel
+Provides: oracleasm = %{version}
+AutoReqProv: no
+Requires: kernel-64k-pagesize = %{kver}
+Requires: oracleasm-support >= %{support_ver}
+Conflicts: oracleasmlib < %{min_enodev}
+BuildRequires: kernel-source = %{kver}, kernel-syms = %{kver}
+
+%description 64k-pagesize
+Kernel driver for the Oracle Automatic Storage Management library.
+This package is compiled for Itanium kernels with a 64KB pagesize.
+%endif
+
+
+%if %{buildsn2}
+%package sn2
+Summary: The Oracle Automatic Storage Management library driver for Altix systems.
+Group: System Environment/Kernel
+Provides: oracleasm = %{version}
+AutoReqProv: no
+Requires: kernel-sn2 = %{kver}
+Requires: oracleasm-support >= %{support_ver}
+Conflicts: oracleasmlib < %{min_enodev}
+BuildRequires: kernel-source = %{kver}, kernel-syms = %{kver}
+
+%description sn2
+Kernel driver for the Oracle Automatic Storage Management library.
+This package is compiled for UP Itanium2 kernels.
+%endif
+
+
+%if %{buildiseries64}
+%package iseries64
+Summary: The Oracle Automatic Storage Management library driver for IBM iSeries systems.
+Group: System Environment/Kernel
+Provides: oracleasm = %{version}
+AutoReqProv: no
+Requires: kernel-iseries64 = %{kver}
+Requires: oracleasm-support >= %{support_ver}
+Conflicts: oracleasmlib < %{min_enodev}
+BuildRequires: kernel-source = %{kver}, kernel-syms = %{kver}
+
+%description iseries64
+Kernel driver for the Oracle Automatic Storage Management library.
+This package is compiled for IBM iSeries systems.
+%endif
+
+
+%if %{buildpmac64}
+%package pmac64
+Summary: The Oracle Automatic Storage Management library driver for 64-bit Power Macintosh kernels.
+Group: System Environment/Kernel
+Provides: oracleasm = %{version}
+AutoReqProv: no
+Requires: kernel-pmac64 = %{kver}
+Requires: oracleasm-support >= %{support_ver}
+Conflicts: oracleasmlib < %{min_enodev}
+BuildRequires: kernel-source = %{kver}, kernel-syms = %{kver}
+
+%description pmac64
+Kernel driver for the Oracle Automatic Storage Management library.
+This package is compiled for 64-bit Power Macintosh kernels.
+%endif
+
+
+%if %{buildpseries64}
+%package pseries64
+Summary: The Oracle Automatic Storage Management library driver for IBM pSeries systems.
+Group: System Environment/Kernel
+Provides: oracleasm = %{version}
+AutoReqProv: no
+Requires: kernel-pseries64 = %{kver}
+Requires: oracleasm-support >= %{support_ver}
+Conflicts: oracleasmlib < %{min_enodev}
+BuildRequires: kernel-source = %{kver}, kernel-syms = %{kver}
+
+%description pseries64
+Kernel driver for the Oracle Automatic Storage Management library.
+This package is compiled for IBM pSeries systems.
+%endif
+
+
+%if %{builds390}
+%package s390
+Summary: The Oracle Automatic Storage Management library driver for IBM S/390 31-bit systems.
+Group: System Environment/Kernel
+Provides: oracleasm = %{version}
+AutoReqProv: no
+Requires: kernel-s390 = %{kver}
+Requires: oracleasm-support >= %{support_ver}
+Conflicts: oracleasmlib < %{min_enodev}
+BuildRequires: kernel-source = %{kver}, kernel-syms = %{kver}
+
+%description s390
+Kernel driver for the Oracle Automatic Storage Management library.
+This package is compiled for IBM S/390 31-bit systems.
+%endif
+
+
+%if %{builds390x}
+%package s390x
+Summary: The Oracle Automatic Storage Management library driver for IBM zSeries systems.
+Group: System Environment/Kernel
+Provides: oracleasm = %{version}
+AutoReqProv: no
+Requires: kernel-s390x = %{kver}
+Requires: oracleasm-support >= %{support_ver}
+Conflicts: oracleasmlib < %{min_enodev}
+BuildRequires: kernel-source = %{kver}, kernel-syms = %{kver}
+
+%description s390x
+Kernel driver for the Oracle Automatic Storage Management library.
+This package is compiled for IBM zSeries systems.
+%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=sles10			\
+		--with-vendorkernel="$1"
+}
+
+%if %{builddefault}
+local_configure "%{kver}-default"
+make QUIET=1
+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}-default/extra"
+INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}-default/kernel/drivers/addon/oracleasm"
+mkdir -p "${INST_MODLIB}"
+mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/"
+
+make clean
+%endif
+
+%if %{buildsmp}
+local_configure "%{kver}-smp"
+make QUIET=1
+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}-smp/extra"
+INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}-smp/kernel/drivers/addon/oracleasm"
+mkdir -p "${INST_MODLIB}"
+mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/"
+
+make clean
+%endif
+
+%if %{buildbigsmp}
+local_configure "%{kver}-bigsmp"
+make QUIET=1
+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}-bigsmp/extra"
+INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}-bigsmp/kernel/drivers/addon/oracleasm"
+mkdir -p "${INST_MODLIB}"
+mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/"
+
+make clean
+%endif
+
+%if %{build64kpagesize}
+local_configure "%{kver}-64k-pagesize"
+make QUIET=1
+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}-64k-pagesize/extra"
+INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}-64k-pagesize/kernel/drivers/addon/oracleasm"
+mkdir -p "${INST_MODLIB}"
+mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/"
+
+make clean
+%endif
+
+%if %{buildsn2}
+local_configure "%{kver}-sn2"
+make QUIET=1
+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}-sn2/extra"
+INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}-sn2/kernel/drivers/addon/oracleasm"
+mkdir -p "${INST_MODLIB}"
+mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/"
+
+make clean
+%endif
+
+%if %{buildiseries64}
+local_configure "%{kver}-iseries64"
+make QUIET=1
+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}-iseries64/extra"
+INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}-iseries64/kernel/drivers/addon/oracleasm"
+mkdir -p "${INST_MODLIB}"
+mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/"
+
+make clean
+%endif
+
+%if %{buildpmac64}
+local_configure "%{kver}-pmac64"
+make QUIET=1
+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}-pmac64/extra"
+INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}-pmac64/kernel/drivers/addon/oracleasm"
+mkdir -p "${INST_MODLIB}"
+mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/"
+
+make clean
+%endif
+
+%if %{buildpseries64}
+local_configure "%{kver}-pseries64"
+make QUIET=1
+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}-pseries64/extra"
+INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}-pseries64/kernel/drivers/addon/oracleasm"
+mkdir -p "${INST_MODLIB}"
+mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/"
+
+make clean
+%endif
+
+%if %{builds390}
+local_configure "%{kver}-s390"
+make QUIET=1
+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}-s390/extra"
+INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}-s390/kernel/drivers/addon/oracleasm"
+mkdir -p "${INST_MODLIB}"
+mv "${EXTRA_MODLIB}"/oracleasm.ko "${INST_MODLIB}/"
+
+make clean
+%endif
+
+%if %{builds390x}
+local_configure "%{kver}-s390x"
+make QUIET=1
+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}-s390x/extra"
+INST_MODLIB="${RPM_BUILD_ROOT}/lib/modules/%{kver}-s390x/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 %{builddefault}
+%post default
+depmod -ae %{kver}-default
+
+%files default
+%defattr(-,root,root)
+/lib/modules/%{kver}-default/kernel/drivers/addon/oracleasm
+%endif
+
+
+%if %{buildsmp}
+%post smp
+depmod -ae %{kver}-smp
+
+%files smp
+%defattr(-,root,root)
+/lib/modules/%{kver}-smp/kernel/drivers/addon/oracleasm
+%endif
+
+
+%if %{buildbigsmp}
+%post bigsmp
+depmod -ae %{kver}-bigsmp
+
+%files bigsmp
+%defattr(-,root,root)
+/lib/modules/%{kver}-bigsmp/kernel/drivers/addon/oracleasm
+%endif
+
+
+%if %{build64kpagesize}
+%post 64k-pagesize
+depmod -ae %{kver}-64k-pagesize
+
+%files 64k-pagesize
+%defattr(-,root,root)
+/lib/modules/%{kver}-64k-pagesize/kernel/drivers/addon/oracleasm
+%endif
+
+
+%if %{buildsn2}
+%post sn2
+depmod -ae %{kver}-sn2/
+
+%files sn2
+%defattr(-,root,root)
+/lib/modules/%{kver}-sn2/kernel/drivers/addon/oracleasm
+%endif
+
+
+%if %{buildiseries64}
+%post iseries64
+depmod -ae %{kver}-iseries64
+
+%files iseries64
+%defattr(-,root,root)
+/lib/modules/%{kver}-iseries64/kernel/drivers/addon/oracleasm
+%endif
+
+
+%if %{buildpmac64}
+%post pmac64
+depmod -ae %{kver}-pmac64
+
+%files pmac64
+%defattr(-,root,root)
+/lib/modules/%{kver}-pmac64/kernel/drivers/addon/oracleasm
+%endif
+
+
+%if %{buildpseries64}
+%post pseries64
+depmod -ae %{kver}-pseries64
+
+%files pseries64
+%defattr(-,root,root)
+/lib/modules/%{kver}-pseries64/kernel/drivers/addon/oracleasm
+%endif
+
+
+%if %{builds390}
+%post s390
+depmod -ae %{kver}-s390
+
+%files s390
+%defattr(-,root,root)
+/lib/modules/%{kver}-s390/kernel/drivers/addon/oracleasm
+%endif
+
+
+%if %{builds390x}
+%post s390x
+depmod -ae %{kver}-s390x
+
+%files s390x
+%defattr(-,root,root)
+/lib/modules/%{kver}-s390x/kernel/drivers/addon/oracleasm
+%endif
+
+
+
+%changelog
+* Tue Sep 21 2004 Joel Becker <joel.becker at oracle.com>
+- Make SLES9 specfile.
+
+* Tue Jan 13 2004 Joel Becker <joel.becker at oracle.com>
+- Make kernel-only.
+
+* Thu Nov 20 2003 Joel Becker <joel.becker at oracle.com>
+- Add x86 and ia64 targets.
+
+* Wed Nov 19 2003 Joel Becker <joel.becker at oracle.com>
+- Make the UL SP3 changes.
+
+* Wed Nov 12 2003 Joel Becker <joel.becker at oracle.com>
+- Start the ASM rename.
+
+* Thu Oct 30 2003 Joel Becker <joel.becker at oracle.com>
+- Created EL3 version
+
+* Mon Jun 23 2003 Joel Becker <joel.becker at oracle.com>
+- Added osm-lib bits
+
+* Fri Jun 20 2003 Joel Becker <joel.becker at oracle.com>
+- Initial RPM
+

Added: trunk/vendor/sles10/rpmarch.guess
===================================================================
--- trunk/vendor/sles10/rpmarch.guess	2006-07-07 06:06:34 UTC (rev 350)
+++ trunk/vendor/sles10/rpmarch.guess	2006-07-13 01:10:27 UTC (rev 351)
@@ -0,0 +1,70 @@
+#! /bin/sh
+
+mode="$1"
+srcdir="$2"
+
+host_cpu=
+
+QUERYFILE=/etc/SuSE-release
+
+if test -n "$QUERYFILE"; then
+  host_cpu="`rpm -qf $QUERYFILE --queryformat \"%{ARCH}\"`"
+fi
+
+if test -z "$host_cpu" -o "$host_cpu" = "noarch" ; then
+  host_alias=`$srcdir/config.guess`
+  host=`$srcdir/config.sub $host_alias`
+  host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+fi
+
+case "$host_cpu" in
+  x86_64|ia64|s390x)
+    TOOLSARCH="$host_cpu"
+    ;;
+  i386|i486|i586|i686|i786|k6|k7)
+    TOOLSARCH="i386"
+    ;;
+  ppc|ppc64|ppciseries|ppcpseries|ppc64iseries|ppc64pseries|powerpc|powerpc64)
+    TOOLSARCH="ppc64"
+    ;;
+  *)
+    echo "rpmarch.guess: Warning: unknown RPM CPU architecture: $host_cpu" >&2
+    TOOLSARCH=""
+    ;;
+esac
+
+# Only a few of these need to be overwritten from RPM's default
+case "$host_cpu" in
+  i586)
+    MODULEARCH="$host_cpu"
+    ;;
+  i386|i686)
+    MODULEARCH="i586"
+    ;;
+  ppc|ppc64|ppciseries|ppcpseries|ppc64iseries|ppc64pseries|powerpc|powerpc64)
+    MODULEARCH="ppc64"
+    ;;
+  *)
+    MODULEARCH=""
+    ;;
+esac
+
+case "$mode" in
+  module)
+    if [ -n "$MODULEARCH" ] ; then
+      echo "--target $MODULEARCH"
+    fi
+    ;;
+  tools)
+    if [ -n "$TOOLSARCH" ] ; then
+      echo "--target $TOOLSARCH"
+    fi
+    ;;
+  *)
+    echo "rpmarch.guess: Invalid mode: $mode" >&2
+    echo "error"
+    exit 1
+    ;;
+esac
+
+exit 0


Property changes on: trunk/vendor/sles10/rpmarch.guess
___________________________________________________________________
Name: svn:executable
   + *

Added: trunk/vendor/sles10/vendor.guess
===================================================================
--- trunk/vendor/sles10/vendor.guess	2006-07-07 06:06:34 UTC (rev 350)
+++ trunk/vendor/sles10/vendor.guess	2006-07-13 01:10:27 UTC (rev 351)
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+if [ ! -f /etc/SuSE-release ]
+then
+    exit 1
+fi
+
+if [ "`rpm -qf /etc/SuSE-release --qf '%{VERSION}' 2>/dev/null`" != "10" ]
+then
+    exit 1
+fi
+
+exit 0


Property changes on: trunk/vendor/sles10/vendor.guess
___________________________________________________________________
Name: svn:executable
   + *




More information about the Oracleasm-commits mailing list