[Oracleasm-commits] jlbec commits r322 - in trunk/vendor: rhel4 sles9

svn-commits at oss.oracle.com svn-commits at oss.oracle.com
Mon Nov 21 21:24:53 CST 2005


Author: jlbec
Date: 2005-11-21 21:24:52 -0600 (Mon, 21 Nov 2005)
New Revision: 322

Added:
   trunk/vendor/sles9/kernel.guess
Modified:
   trunk/vendor/rhel4/kernel.guess
   trunk/vendor/sles9/Makefile
   trunk/vendor/sles9/oracleasm-2.6.5.spec-generic.in
Log:

o Add vendor/sles9/kernel.guess
o Update vendor/sles9/oracleasm-2.6.5.spec-generic.in for vendor stuff.
o Change `` to $() in rhel4's kernel.guess



Modified: trunk/vendor/rhel4/kernel.guess
===================================================================
--- trunk/vendor/rhel4/kernel.guess	2005-11-22 01:54:03 UTC (rev 321)
+++ trunk/vendor/rhel4/kernel.guess	2005-11-22 03:24:52 UTC (rev 322)
@@ -32,8 +32,8 @@
 {
     KVER="$1"
 
-    DIRTYPE=`guess_rhel4_type "$KVER"`
-    ARCH=`guess_rhel4_arch`
+    DIRTYPE=$(guess_rhel4_type "$KVER")
+    ARCH=$(guess_rhel4_arch)
 
     if [ -z "$DIRTYPE" ]
     then
@@ -68,7 +68,7 @@
         return 1
     fi
 
-    if [ "$KVER" != "`verfromdir "${RHEL4_KERNEL_BASE}/${DIR}"`" ]
+    if [ "$KVER" != "$(verfromdir "${RHEL4_KERNEL_BASE}/${DIR}")" ]
     then
         return 1
     fi
@@ -82,7 +82,7 @@
 {
     KVER="$1"
 
-    dir=`guess_rhel4_dir "$KVER"`
+    dir=$(guess_rhel4_dir "$KVER")
     if validate_dir "$KVER" "$dir"
     then
         echo "${RHEL4_KERNEL_BASE}/${dir}"
@@ -94,7 +94,7 @@
     # Find the most recent valid kernel
     ls -1 -t "$RHEL4_KERNEL_BASE" | while read kdir
     do
-        KVER="`verfromdir "${RHEL4_KERNEL_BASE}/${kdir}"`"
+        KVER="$(verfromdir "${RHEL4_KERNEL_BASE}/${kdir}")"
         if validate_dir "$KVER" "$kdir"
         then
             echo "${RHEL4_KERNEL_BASE}/${kdir}"
@@ -107,13 +107,13 @@
 include|build)
     if [ -n "$2" ]
     then
-        KPATH="`validate_version "$2"`"
+        KPATH="$(validate_version "$2")"
     else
-        KVER="`uname -r`"
-        KPATH="`validate_version "$KVER"`"
+        KVER="$(uname -r)"
+        KPATH="$(validate_version "$KVER")"
         if [ -z "$KPATH" ]
         then
-            KPATH="`find_version`"
+            KPATH="$(find_version)"
         fi
     fi
     if [ -n "$KPATH" ]

Modified: trunk/vendor/sles9/Makefile
===================================================================
--- trunk/vendor/sles9/Makefile	2005-11-22 01:54:03 UTC (rev 321)
+++ trunk/vendor/sles9/Makefile	2005-11-22 03:24:52 UTC (rev 322)
@@ -4,6 +4,7 @@
 
 DIST_FILES =				\
 	oracleasm-2.6.5.spec-generic.in	\
+	kernel.guess			\
 	rpmarch.guess			\
 	Vendor.make			\
 	vendor.guess

Added: trunk/vendor/sles9/kernel.guess
===================================================================
--- trunk/vendor/sles9/kernel.guess	2005-11-22 01:54:03 UTC (rev 321)
+++ trunk/vendor/sles9/kernel.guess	2005-11-22 03:24:52 UTC (rev 322)
@@ -0,0 +1,210 @@
+#!/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> ...]
+#
+SLES9_KERNEL_TYPES="
+    x86_64:default,smp
+    ppc64:pseries64,iseries64,pmac64
+    ia64:default,64k-pagesize,sn2
+    i386:default,smp,bigsmp
+    s390:s390x
+"
+    
+
+
+guess_sles9_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_sles9_type()
+{
+    KVER="$1"
+
+    ARCH="$(guess_sles9_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_sles9_dir()
+{
+    KVER="$1"
+
+    DIRTYPE=$(guess_sles9_type "$KVER")
+    ARCH=$(guess_sles9_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_sles9_dir "$KVER"`
+    if validate_dir "$KVER" "$dir"
+    then
+        echo "${SLES9_KERNEL_BASE}/${dir}"
+    fi
+}
+
+find_version()
+{
+    ARCH="$(guess_sles9_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
+        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
+}
+
+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
+            KPATH="${KPATH}/include"
+        fi
+        echo "${KPATH}"
+    fi
+    ;;
+targets)
+    ;;
+"")
+    echo "Missing operation" >&2
+    ;;
+*)
+    echo "Invalid operation: $1" >&2
+    exit 1
+    ;;
+esac


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

Modified: trunk/vendor/sles9/oracleasm-2.6.5.spec-generic.in
===================================================================
--- trunk/vendor/sles9/oracleasm-2.6.5.spec-generic.in	2005-11-22 01:54:03 UTC (rev 321)
+++ trunk/vendor/sles9/oracleasm-2.6.5.spec-generic.in	2005-11-22 03:24:52 UTC (rev 322)
@@ -297,12 +297,12 @@
 		--sharedstatedir=%{_sharedstatedir}	\
 		--mandir=%{_mandir}			\
 		--infodir=%{_infodir}			\
-		--with-kernel="$1"
+		--with-vendor=sles9			\
+		--with-vendorkernel="$1"
 }
 
 %if %{builddefault}
-KPATH="/usr/src/linux-%{kver}-obj/%{karch}/default"
-local_configure "${KPATH}"
+local_configure "%{kver}-default"
 make QUIET=1
 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install 
 
@@ -316,8 +316,7 @@
 %endif
 
 %if %{buildsmp}
-KPATH="/usr/src/linux-%{kver}-obj/%{karch}/smp"
-local_configure "${KPATH}"
+local_configure "%{kver}-smp"
 make QUIET=1
 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install 
 
@@ -331,8 +330,7 @@
 %endif
 
 %if %{buildbigsmp}
-KPATH="/usr/src/linux-%{kver}-obj/%{karch}/bigsmp"
-local_configure "${KPATH}"
+local_configure "%{kver}-bigsmp"
 make QUIET=1
 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install 
 
@@ -346,8 +344,7 @@
 %endif
 
 %if %{build64kpagesize}
-KPATH="/usr/src/linux-%{kver}-obj/%{karch}/64k-pagesize"
-local_configure "${KPATH}"
+local_configure "%{kver}-64k-pagesize"
 make QUIET=1
 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install 
 
@@ -361,8 +358,7 @@
 %endif
 
 %if %{buildsn2}
-KPATH="/usr/src/linux-%{kver}-obj/%{karch}/sn2"
-local_configure "${KPATH}"
+local_configure "%{kver}-sn2"
 make QUIET=1
 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install 
 
@@ -376,8 +372,7 @@
 %endif
 
 %if %{buildiseries64}
-KPATH="/usr/src/linux-%{kver}-obj/%{karch}/iseries64"
-local_configure "${KPATH}"
+local_configure "%{kver}-iseries64"
 make QUIET=1
 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install 
 
@@ -391,8 +386,7 @@
 %endif
 
 %if %{buildpmac64}
-KPATH="/usr/src/linux-%{kver}-obj/%{karch}/pmac64"
-local_configure "${KPATH}"
+local_configure "%{kver}-pmac64"
 make QUIET=1
 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install 
 
@@ -406,8 +400,7 @@
 %endif
 
 %if %{buildpseries64}
-KPATH="/usr/src/linux-%{kver}-obj/%{karch}/pseries64"
-local_configure "${KPATH}"
+local_configure "%{kver}-pseries64"
 make QUIET=1
 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install 
 
@@ -421,8 +414,7 @@
 %endif
 
 %if %{builds390}
-KPATH="/usr/src/linux-%{kver}-obj/%{karch}/s390"
-local_configure "${KPATH}"
+local_configure "%{kver}-s390"
 make QUIET=1
 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install 
 
@@ -436,8 +428,7 @@
 %endif
 
 %if %{builds390x}
-KPATH="/usr/src/linux-%{kver}-obj/%{karch}/s390x"
-local_configure "${KPATH}"
+local_configure "%{kver}-s390x"
 make QUIET=1
 make DESTDIR="$RPM_BUILD_ROOT" INSTALL_MOD_PATH='$(DESTDIR)' install 
 



More information about the Oracleasm-commits mailing list