Magellan Linux

Diff of /trunk/virtualbox/vboxsf.sh

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1070 by niro, Mon Aug 9 20:31:47 2010 UTC revision 1639 by niro, Tue Feb 7 22:57:29 2012 UTC
# Line 1  Line 1 
1  #!/bin/bash  #!/bin/bash
2  # $Header: /root/magellan-cvs/src/virtualbox/vboxsf.sh,v 1.1 2010-08-09 20:31:47 niro Exp $  # $Id$
3  # Compiles vboxsf module for given kernel  # Compiles vboxsf module for given kernel
4    
5  die() { echo -e "${COLRED}$@${COLDEFAULT}"; exit 1; }  die() { echo -e "${COLRED}$@${COLDEFAULT}"; exit 1; }
# Line 33  mod_suffix() Line 33  mod_suffix()
33   local ksrc="$@"   local ksrc="$@"
34   local mod_suffix   local mod_suffix
35    
36   if [[ $(kernel_major_version ${ksrc}) = 2.6 ]]   if [[ $(kernel_major_version ${ksrc}) = 2.4 ]]
37   then   then
  mod_suffix="ko"  
  else  
38   mod_suffix="o"   mod_suffix="o"
39     else
40     mod_suffix="ko"
41   fi   fi
42    
43   echo "${mod_suffix}"   echo "${mod_suffix}"
# Line 48  BUILDROOT="$(mktemp -d)" Line 48  BUILDROOT="$(mktemp -d)"
48  SRCTARBALL="/usr/src/vboxsf/vboxsf-${PVER}.tar.bz2"  SRCTARBALL="/usr/src/vboxsf/vboxsf-${PVER}.tar.bz2"
49  SRCDIR="${BUILDROOT}/vboxsf"  SRCDIR="${BUILDROOT}/vboxsf"
50  KERNEL_MODULE="vboxsf"  KERNEL_MODULE="vboxsf"
51    MODULES_AUTOLOAD="/etc/modules-load.d"
52    
53  COLRED="\033[1;6m\033[31m"  COLRED="\033[1;6m\033[31m"
54  COLGREEN="\033[1;6m\033[32m"  COLGREEN="\033[1;6m\033[32m"
# Line 76  done Line 77  done
77  # some sane defaults  # some sane defaults
78  [[ -z ${KERNEL_VERSION} ]] && KERNEL_VERSION="$(uname -r)"  [[ -z ${KERNEL_VERSION} ]] && KERNEL_VERSION="$(uname -r)"
79  [[ -z ${KERNEL_SOURCES} ]] && KERNEL_SOURCES="/lib/modules/${KERNEL_VERSION}/source"  [[ -z ${KERNEL_SOURCES} ]] && KERNEL_SOURCES="/lib/modules/${KERNEL_VERSION}/source"
80  KERNEL_MODULE_DEST="/lib/modules/${KERNEL_VERSION}/video"  KERNEL_MODULE_DEST="/lib/modules/${KERNEL_VERSION}/misc"
81  KERNEL_MODULE_SUFFIX="$(mod_suffix ${KERNEL_SOURCES})"  KERNEL_MODULE_SUFFIX="$(mod_suffix ${KERNEL_SOURCES})"
82    
83  if [[ -f ${KERNEL_MODULE_DEST}/${KERNEL_MODULE}.${KERNEL_MODULE_SUFFIX} ]]  if [[ -f ${KERNEL_MODULE_DEST}/${KERNEL_MODULE}.${KERNEL_MODULE_SUFFIX} ]]
# Line 89  then Line 90  then
90   fi   fi
91   rm -f ${KERNEL_MODULE_DEST}/${KERNEL_MODULE}.${KERNEL_MODULE_SUFFIX}   rm -f ${KERNEL_MODULE_DEST}/${KERNEL_MODULE}.${KERNEL_MODULE_SUFFIX}
92  fi  fi
93    if [[ -f ${MODULES_AUTOLOAD}/${KERNEL_MODULE}.conf ]]
94    then
95     mecho "Removing old ${KERNEL_MODULE} autoload config ..."
96     rm -f ${MODULES_AUTOLOAD}/${KERNEL_MODULE}.conf
97    fi
98    
99  # unpack src-tarball  # unpack src-tarball
100  mecho "Uncompressing src-tarball ..."  mecho "Uncompressing src-tarball ..."
# Line 96  tar xjpf ${SRCTARBALL} -C ${BUILDROOT} | Line 102  tar xjpf ${SRCTARBALL} -C ${BUILDROOT} |
102  cd ${SRCDIR}  cd ${SRCDIR}
103    
104  mecho "Compiling ${KERNEL_MODULE}-module for kernel ${KERNEL_VERSION} ..."  mecho "Compiling ${KERNEL_MODULE}-module for kernel ${KERNEL_VERSION} ..."
105  gcc_major="$(gcc --version | grep gcc | cut -d' ' -f3|cut -d. -f1)"  make -C ${KERNEL_SOURCES} V=0 M="$(pwd)" modules || die
 export _POSIX2_VERSION="199209"  
 [[ $(kernel_major_version ${KERNEL_SOURCES}) = 2.6 ]] && cp 2.6.x/Makefile ${SRCDIR}  
 make -C ${KERNEL_SOURCES} V=0 M="$(pwd)" GCC_VER_MAJ="${gcc_major}" modules || die  
106    
107  mecho "Installing ${KERNEL_MODULE}-module into ${KERNEL_MODULE_DEST} ..."  mecho "Installing ${KERNEL_MODULE}-module into ${KERNEL_MODULE_DEST} ..."
108  install -d ${KERNEL_MODULE_DEST} || die  install -d ${KERNEL_MODULE_DEST} || die
109  install -m0644 ${KERNEL_MODULE}.${KERNEL_MODULE_SUFFIX} ${KERNEL_MODULE_DEST} || die  install -m0644 ${KERNEL_MODULE}.${KERNEL_MODULE_SUFFIX} ${KERNEL_MODULE_DEST} || die
110    if [[ -d ${MODULE_AUTOLOAD} ]]
111    then
112     echo "${KERNEL_MODULE}" > ${MODULES_AUTOLOAD}/${KERNEL_MODULE}.conf
113    fi
114    
115  mecho "Calculating module dependencies ..."  mecho "Calculating module dependencies ..."
116  depmod -ae ${KERNEL_VERSION}  depmod -a ${KERNEL_VERSION}
117    
118  exit 0  exit 0

Legend:
Removed from v.1070  
changed lines
  Added in v.1639