Common subdirectories: /usr/share/genkernel/alpha and genkernel-unionfscb/alpha diff -uN /usr/share/genkernel/gen_compile.sh genkernel-unionfscb/gen_compile.sh --- /usr/share/genkernel/gen_compile.sh 2006-11-10 02:12:54.000000000 -0500 +++ genkernel-unionfscb/gen_compile.sh 2006-11-22 19:44:29.000000000 -0500 @@ -1,5 +1,7 @@ #!/bin/bash +. gen_unionfs_helpers.sh + compile_kernel_args() { local ARGS @@ -318,95 +320,29 @@ } compile_unionfs_modules() { + # This sets ${UNIONFS_VERSION} to the correct value. + get_unionfs_version + UNIONFS_MODULES_BINCACHE=${UNIONFS_MODULES_BINCACHE/UNIONFS_VER/${UNIONFS_VERSION}} + UNIONFS_BINCACHE=${UNIONFS_BINCACHE/UNIONFS_VER/${UNIONFS_VERSION}} + # subsitute source tarball here. + # the user can override this functionality by changing + # ${UNIONFS_SRCTAR} in /etc/genkernel.conf. genkernel can + # print a warning if the two versions do not match. + UNIONFS_SRCTAR=${UNIONFS_SRCTAR/UNIONFS_VER/${UNIONFS_VERSION}} + UNIONFS_DIR="unionfs-${UNIONFS_VERSION}" if [ ! -f "${UNIONFS_MODULES_BINCACHE}" ] then - [ -f "${UNIONFS_SRCTAR}" ] || - gen_die "Could not find unionfs source tarball: ${UNIONFS_SRCTAR}!" - cd "${TEMP}" - rm -rf ${UNIONFS_DIR} > /dev/null - rm -rf unionfs > /dev/null - mkdir -p unionfs - /bin/tar -zxpf ${UNIONFS_SRCTAR} || - gen_die 'Could not extract unionfs source tarball!' - [ -d "${UNIONFS_DIR}" ] || - gen_die 'Unionfs directory ${UNIONFS_DIR} is invalid!' - cd "${UNIONFS_DIR}" - print_info 1 'unionfs modules: >> Compiling...' - echo "LINUXSRC=${KERNEL_DIR}" >> fistdev.mk - echo 'TOPINC=-I$(LINUXSRC)/include' >> fistdev.mk - echo "MODDIR= /lib/modules/${KV}" >> fistdev.mk - echo "KERNELVERSION=${KV}" >> fistdev.mk - # Fix for hardened/selinux systems to have extened attributes - # per r2d2's request. Also add -DUNIONFS_UNSUPPORTED for 2.6.16 - echo "EXTRACFLAGS=-DUNIONFS_XATTR -DFIST_SETXATTR_CONSTVOID -DUNIONFS_UNSUPPORTED" \ - >> fistdev.mk - # Here we do something really nasty and disable debugging, along with - # change our default CFLAGS - echo "UNIONFS_DEBUG_CFLAG=-DUNIONFS_NDEBUG" >> fistdev.mk - echo "UNIONFS_OPT_CFLAG= -O2 -pipe" >> fistdev.mk - - if [ "${PAT}" -ge '6' ] - then - cd "${TEMP}" - cd "${UNIONFS_DIR}" - # Compile unionfs module within the unionfs - # environment not within the kernelsrc dir - make unionfs.ko || gen_die 'failed to compile unionfs' - else - gen_die 'unionfs is only supported on 2.6 targets' - fi - print_info 1 'unionfs: >> Copying to cache...' - - mkdir -p ${TEMP}/unionfs/lib/modules/${KV}/kernel/fs/unionfs - - if [ -f unionfs.ko ] - then - cp -f unionfs.ko ${TEMP}/unionfs/lib/modules/${KV}/kernel/fs/unionfs - else - cp -f unionfs.o ${TEMP}/unionfs/lib/modules/${KV}/kernel/fs/unionfs - fi - - cd ${TEMP}/unionfs - /bin/tar -cjf "${UNIONFS_MODULES_BINCACHE}" . || - gen_die 'Could not create unionfs modules binary cache' - - cd "${TEMP}" - rm -rf "${UNIONFS_DIR}" > /dev/null - rm -rf unionfs > /dev/null + print_info 1 "UNIONFS: ${UNIONFS_VERSION} ${UNIONFS_SRCTAR}" + print_info 1 "UNIONFS callback: ${UNIONFS_COMPILE_FUNC}" + ${UNIONFS_COMPILE_FUNC} fi } compile_unionfs_utils() { if [ ! -f "${UNIONFS_BINCACHE}" ] then - [ -f "${UNIONFS_SRCTAR}" ] || - gen_die "Could not find unionfs source tarball: ${UNIONFS_SRCTAR}!" - cd "${TEMP}" - rm -rf ${UNIONFS_DIR} > /dev/null - rm -rf unionfs > /dev/null - mkdir -p unionfs/sbin - /bin/tar -zxpf ${UNIONFS_SRCTAR} || - gen_die 'Could not extract unionfs source tarball!' - [ -d "${UNIONFS_DIR}" ] || - gen_die 'Unionfs directory ${UNIONFS_DIR} is invalid!' - cd "${UNIONFS_DIR}" - print_info 1 'unionfs tools: >> Compiling...' - sed -i Makefile -e 's|${CC} -o|${CC} -static -o|g' - compile_generic utils utils - - print_info 1 'unionfs: >> Copying to cache...' - strip uniondbg unionctl - cp uniondbg ${TEMP}/unionfs/sbin/ || - gen_die 'Could not copy the uniondbg binary to the tmp directory' - cp unionctl ${TEMP}/unionfs/sbin/ || - gen_die 'Could not copy the unionctl binary to the tmp directory' - cd ${TEMP}/unionfs - /bin/tar -cjf "${UNIONFS_BINCACHE}" . || - gen_die 'Could not create unionfs tools binary cache' - - cd "${TEMP}" - rm -rf "${UNIONFS_DIR}" > /dev/null - rm -rf unionfs > /dev/null + print_info 1 "unionfs tools callback: ${UNIONFS_COMPILE_UTILS_FUNC}" + ${UNIONFS_COMPILE_UTILS_FUNC} fi } diff -uN /usr/share/genkernel/gen_unionfs_helpers.sh genkernel-unionfscb/gen_unionfs_helpers.sh --- /usr/share/genkernel/gen_unionfs_helpers.sh 1969-12-31 19:00:00.000000000 -0500 +++ genkernel-unionfscb/gen_unionfs_helpers.sh 2006-11-22 19:45:16.000000000 -0500 @@ -0,0 +1,297 @@ +#!/bin/bash +# Daniel Casimiro +# + +# Emulates: hash[key]=value +# * This function is from: +# http://tldp.org/LDP/abs/html/contributed-scripts.html#HASHLIB +# +# Params: +# 1 - hash +# 2 - key +# 3 - value +function hash_set { + eval "${Hash_config_varname_prefix}${1}_${2}=\"${3}\"" +} + +# Emulates something similar to: +# foreach($hash as $key => $value) { fun($key,$value); } +# * This function is from: +# http://tldp.org/LDP/abs/html/contributed-scripts.html#HASHLIB +# +# It is possible to write different variations of this function. +# Here we use a function call to make it as "generic" as possible. +# +# Params: +# 1 - hash +# 2 - function name +function hash_foreach { + local keyname oldIFS="$IFS" + IFS=' ' + for i in $(eval "echo \${!${Hash_config_varname_prefix}${1}_*}"); do + keyname=$(eval "echo \${i##${Hash_config_varname_prefix}${1}_}") + eval "$2 $keyname \"\$$i\"" + done + IFS="$oldIFS" +} + +# UnionFS requires different versions for different kernels. +# This list is as of 27 October 2006. +# Kernel Version Compatibility: +# Kernel Version Unionfs Version +# 2.4.x (x>19) 1.0.14 +# 2.6.x (x<9) Not Supported +# 2.6.9 - 2.6.15 1.1.5 +# 2.6.16 1.2 +# 2.6.17 1.3 +# 2.6.18 1.4 +# 2.6.newer CVS Snapshots + +# $1 unionfs version +# $2 kernel version regular expression +test_unionfs_version() { + MYKV=`expr match "${KV}" $2` + # this test can be improved... + if [ ${MYKV} -gt 0 ]; then + # The keys cannot contain '.', so underscores are substituted here. + UNIONFS_VERSION=${1//_/.} + fi +} + +# set kernel versions regular expressions and unionfs versions in config file +# build a hash that maps kernel version re's to unionfs version +# for each hash key, use the value when the key regular expression evals +# true when compared to ${BASEKV} +get_unionfs_version() { + # Do not support 2.4 kernels yet; just need another RE. + # The hash is hard coded here, but it could be built from variables defined + # in /etc/genkernel.conf + hash_set unionfsversions 1_1_5 "2\.6\.\(\<1[0-5]\>\|9\)" + hash_set unionfsversions 1_2 "2\.6\.16" + hash_set unionfsversions 1_3 "2\.6\.17" + hash_set unionfsversions 1_4 "2\.6\.18" + + # Unset the UNIONFS_VERSION that was set in /etc/genkernel.conf + # This function could check if the variable is set, and then break + # Or, it could use a different variable name + UNIONFS_VERSION= + hash_foreach unionfsversions test_unionfs_version + + if [ -z ${UNIONFS_VERSION} ]; then + gen_die "${KV} is an invalid kernel for UNIONFS!" + fi + + tmpunion=${UNIONFS_VERSION//./_} + UNIONFS_COMPILE_FUNC=compile_unionfs_modules_${tmpunion:0:3} + UNIONFS_COMPILE_UTILS_FUNC=compile_unionfs_utils_${tmpunion:0:3} +} + +compile_unionfs_modules_1_1() { + [ -f "${UNIONFS_SRCTAR}" ] || + gen_die "Could not find unionfs source tarball: ${UNIONFS_SRCTAR}!" + + cd "${TEMP}" + rm -rf ${UNIONFS_DIR} > /dev/null + rm -rf unionfs > /dev/null + mkdir -p unionfs + /bin/tar -zxpf ${UNIONFS_SRCTAR} || + gen_die 'Could not extract unionfs source tarball!' + + [ -d "${UNIONFS_DIR}" ] || + gen_die 'Unionfs directory ${UNIONFS_DIR} is invalid!' + cd "${UNIONFS_DIR}" + print_info 1 'unionfs modules: >> Compiling...' + echo "LINUXSRC=${KERNEL_DIR}" >> fistdev.mk + echo 'TOPINC=-I$(LINUXSRC)/include' >> fistdev.mk + echo "MODDIR= /lib/modules/${KV}" >> fistdev.mk + echo "KERNELVERSION=${KV}" >> fistdev.mk + # Fix for hardened/selinux systems to have extened attributes + # per r2d2's request. Also add -DUNIONFS_UNSUPPORTED for 2.6.16 + echo "EXTRACFLAGS=-DUNIONFS_XATTR -DFIST_SETXATTR_CONSTVOID -DUNIONFS_UNSUPPORTED" \ + >> fistdev.mk + # Here we do something really nasty and disable debugging, along with + # change our default CFLAGS + echo "UNIONFS_DEBUG_CFLAG=-DUNIONFS_NDEBUG" >> fistdev.mk + echo "UNIONFS_OPT_CFLAG= -O2 -pipe" >> fistdev.mk + + if [ "${PAT}" -ge '6' ] + then + cd "${TEMP}" + cd "${UNIONFS_DIR}" + sed -i Makefile -e 's|-Werror||g' + # Compile unionfs module within the unionfs + # environment not within the kernelsrc dir + make unionfs.ko || gen_die 'failed to compile unionfs' + else + gen_die 'unionfs is only supported on 2.6 targets' + fi + print_info 1 'unionfs: >> Copying to cache...' + + mkdir -p ${TEMP}/unionfs/lib/modules/${KV}/kernel/fs/unionfs + + if [ -f unionfs.ko ] + then + cp -f unionfs.ko ${TEMP}/unionfs/lib/modules/${KV}/kernel/fs/unionfs + else + cp -f unionfs.o ${TEMP}/unionfs/lib/modules/${KV}/kernel/fs/unionfs + fi + + cd ${TEMP}/unionfs + /bin/tar -cjf "${UNIONFS_MODULES_BINCACHE}" . || + gen_die 'Could not create unionfs modules binary cache' + + cd "${TEMP}" + rm -rf "${UNIONFS_DIR}" > /dev/null + rm -rf unionfs > /dev/null +} + +compile_unionfs_modules_1_2() { + compile_unionfs_modules_1_1 +} + +compile_unionfs_modules_1_3() { + [ -f "${UNIONFS_SRCTAR}" ] || + gen_die "Could not find unionfs source tarball: ${UNIONFS_SRCTAR}!" + + cd "${TEMP}" + rm -rf ${UNIONFS_DIR} > /dev/null + rm -rf unionfs* > /dev/null + mkdir unionfs + /bin/tar xzpf ${UNIONFS_SRCTAR} || + gen_die 'Could not extract unionfs source tarball!' + + [ -d "${UNIONFS_DIR}" ] || + gen_die 'Unionfs directory ${UNIONFS_DIR} is invalid!' + cd "${UNIONFS_DIR}" + print_info 1 'unionfs modules: >> Compiling...' + echo "LINUXSRC=${KERNEL_DIR}" >> fistdev.mk + echo 'TOPINC=-I$(LINUXSRC)/include' >> fistdev.mk + echo "MODDIR= /lib/modules/${KV}" >> fistdev.mk + echo "KVERS=${KV}" >> fistdev.mk + echo "KERNELVERSION=${KV}" >> fistdev.mk + # Fix for hardened/selinux systems to have extened attributes + # per r2d2's request. Also add -DUNIONFS_UNSUPPORTED for 2.6.16 + echo "EXTRACFLAGS=-DUNIONFS_XATTR -DFIST_SETXATTR_CONSTVOID -DUNIONFS_UNSUPPORTED" \ + >> fistdev.mk + # Here we do something really nasty and disable debugging, along with + # change our default CFLAGS + echo "UNIONFS_DEBUG_CFLAG=-DUNIONFS_NDEBUG" >> fistdev.mk + echo "UNIONFS_OPT_CFLAG= -O2 -pipe" >> fistdev.mk + + if [ "${PAT}" -ge '6' ] + then + # ARCH is used by unionfs - and conflicts with genkernel + ARCH_PUSH=${ARCH} + unset ARCH + #sed -i Makefile -e 's|-Werror||g' + # Compile unionfs module within the unionfs + # environment not within the kernelsrc dir + make unionfs.ko || gen_die 'failed to compile unionfs' + ARCH=${ARCH_PUSH} + else + gen_die 'unionfs is only supported on 2.6 targets' + fi + print_info 1 'unionfs: >> Copying to cache...' + + mkdir -p ${TEMP}/unionfs/lib/modules/${KV}/kernel/fs/unionfs + + if [ -f unionfs.ko ] + then + cp -f unionfs.ko ${TEMP}/unionfs/lib/modules/${KV}/kernel/fs/unionfs + else + cp -f unionfs.o ${TEMP}/unionfs/lib/modules/${KV}/kernel/fs/unionfs + fi + + cd ${TEMP}/unionfs + /bin/tar -cjf "${UNIONFS_MODULES_BINCACHE}" . || + gen_die 'Could not create unionfs modules binary cache' + + cd "${TEMP}" + rm -rf "${UNIONFS_DIR}" > /dev/null + rm -rf unionfs* > /dev/null +} + +compile_unionfs_modules_1_4() { + compile_unionfs_modules_1_3 +} + +# uniofs_utils +compile_unionfs_utils_1_1() { + if [ ! -f "${UNIONFS_BINCACHE}" ] + then + [ -f "${UNIONFS_SRCTAR}" ] || + gen_die "Could not find unionfs source tarball: ${UNIONFS_SRCTAR}!" + cd "${TEMP}" + rm -rf ${UNIONFS_DIR} > /dev/null + rm -rf unionfs > /dev/null + mkdir -p unionfs/sbin + /bin/tar -zxpf ${UNIONFS_SRCTAR} || + gen_die 'Could not extract unionfs source tarball!' + [ -d "${UNIONFS_DIR}" ] || + gen_die 'Unionfs directory ${UNIONFS_DIR} is invalid!' + cd "${UNIONFS_DIR}" + print_info 1 'unionfs tools: >> Compiling...' + sed -i Makefile -e 's|${CC} -o|${CC} -static -o|g' + compile_generic utils utils + + print_info 1 'unionfs: >> Copying to cache...' + strip uniondbg unionctl + cp uniondbg ${TEMP}/unionfs/sbin/ || + gen_die 'Could not copy the uniondbg binary to the tmp directory' + cp unionctl ${TEMP}/unionfs/sbin/ || + gen_die 'Could not copy the unionctl binary to the tmp directory' + cd ${TEMP}/unionfs + /bin/tar -cjf "${UNIONFS_BINCACHE}" . || + gen_die 'Could not create unionfs tools binary cache' + + cd "${TEMP}" + rm -rf "${UNIONFS_DIR}" > /dev/null + rm -rf unionfs > /dev/null + fi +} + +compile_unionfs_utils_1_2() { + compile_unionfs_utils_1_1 +} + +compile_unionfs_utils_1_3() { + if [ ! -f "${UNIONFS_BINCACHE}" ] + then + [ -f "${UNIONFS_SRCTAR}" ] || + gen_die "Could not find unionfs source tarball: ${UNIONFS_SRCTAR}!" + cd "${TEMP}" + rm -rf ${UNIONFS_DIR} > /dev/null + rm -rf unionfs > /dev/null + mkdir -p unionfs/sbin + /bin/tar -zxpf ${UNIONFS_SRCTAR} || + gen_die 'Could not extract unionfs source tarball!' + [ -d "${UNIONFS_DIR}" ] || + gen_die 'Unionfs directory ${UNIONFS_DIR} is invalid!' + cd "${UNIONFS_DIR}" + print_info 1 'unionfs tools: >> Compiling...' + sed -i utils/Makefile -e 's|${CC} -o|${CC} -static -o|g' + sed -i Makefile -e 's|${CC} -o|${CC} -static -o|g' + compile_generic utils utils + + print_info 1 'moving into utils directory...' + cd utils + + print_info 1 'unionfs: >> Copying to cache...' + strip uniondbg unionctl + cp uniondbg ${TEMP}/unionfs/sbin/ || + gen_die 'Could not copy the uniondbg binary to the tmp directory' + cp unionctl ${TEMP}/unionfs/sbin/ || + gen_die 'Could not copy the unionctl binary to the tmp directory' + cd ${TEMP}/unionfs + /bin/tar -cjf "${UNIONFS_BINCACHE}" . || + gen_die 'Could not create unionfs tools binary cache' + + cd "${TEMP}" + rm -rf "${UNIONFS_DIR}" > /dev/null + rm -rf unionfs > /dev/null + fi +} + +compile_unionfs_utils_1_4() { + compile_unionfs_utils_1_3 +} Common subdirectories: /usr/share/genkernel/generic and genkernel-unionfscb/generic Common subdirectories: /usr/share/genkernel/ia64 and genkernel-unionfscb/ia64 Common subdirectories: /usr/share/genkernel/mips and genkernel-unionfscb/mips Common subdirectories: /usr/share/genkernel/netboot and genkernel-unionfscb/netboot Common subdirectories: /usr/share/genkernel/parisc and genkernel-unionfscb/parisc Common subdirectories: /usr/share/genkernel/parisc64 and genkernel-unionfscb/parisc64 Common subdirectories: /usr/share/genkernel/pkg and genkernel-unionfscb/pkg Common subdirectories: /usr/share/genkernel/ppc and genkernel-unionfscb/ppc Common subdirectories: /usr/share/genkernel/ppc64 and genkernel-unionfscb/ppc64 diff -uN /usr/share/genkernel/sample_unionfs_genkernel.conf genkernel-unionfscb/sample_unionfs_genkernel.conf --- /usr/share/genkernel/sample_unionfs_genkernel.conf 1969-12-31 19:00:00.000000000 -0500 +++ genkernel-unionfscb/sample_unionfs_genkernel.conf 2006-11-22 19:31:08.000000000 -0500 @@ -0,0 +1,142 @@ +# Genkernel Configuration File + +# ===========GENKERNEL BASIC CONFIGURATION============= + +# Run 'make menuconfig' before compiling this kernel? +MENUCONFIG="no" + +# Run 'make clean' before compilation? +# If set to NO, implies MRPROPER WILL NOT be run +# Also, if clean is NO, it won't copy over any configuration +# file, it will use what's there. +CLEAN="yes" + +# Run 'make mrproper' before configuration/compilation? +MRPROPER="yes" + +# Copy bootsplash into the initrd image? +BOOTSPLASH="yes" + +# Override the arch detection? +# ARCH_OVERRIDE="x86" + +# Mount BOOTDIR automatically if it isn't mounted? +MOUNTBOOT="yes" + +# Save the new configuration in /etc/kernels upon +# successfull compilation +SAVE_CONFIG="yes" + +# Use Color output in Genkernel? +USECOLOR="yes" + +# Add new kernel to grub? +# BOOTLOADER="grub" + +# Clear initramfs cpio cache dir +# CLEAR_CPIO_CACHE="yes" + +# Clear build cache dir +# CLEAR_CACHE_DIR="yes" + + +# =========GENKERNEL LOCATION CONFIGURATION============ +# Variables: +# %%ARCH%% - Final determined architecture +# %%CACHE%% - Final determined cache location + +# Set the boot directory, default is /boot +#BOOTDIR="/boot" + +# Default share directory location +GK_SHARE="/usr/share/genkernel" + +# Location of helper-scripts +#GK_BIN="${GK_SHARE}/bin" +GK_BIN="${GK_SHARE}" +# Location of the default cache +CACHE_DIR="${GK_SHARE}/pkg/%%ARCH%%" +# Log output file +DEBUGFILE="/var/log/genkernel.log" +# Debug Level +DEBUGLEVEL=1 + +# Default location of kernel source +DEFAULT_KERNEL_SOURCE="/usr/src/linux" +# Default kernel config (only use to override using %%ARCH%%/kernel-config-${VER}.${PAT} !) +# DEFAULT_KERNEL_CONFIG="${GK_SHARE}/%%ARCH%%/kernel-config" + +# Configuration file for busybox +BUSYBOX_CONFIG="${GK_SHARE}/%%ARCH%%/busy-config" +# BusyBox Version +BUSYBOX_VER="1.1.3+gentoo" +# Busybox bin-cache location, to store pre-compiled busybox +# binary is just a bzip2 busybox executable +BUSYBOX_BINCACHE="%%CACHE%%/busybox-${BUSYBOX_VER}-%%ARCH%%.bz2" +# Location of BusyBox source tarball +BUSYBOX_SRCTAR="${GK_SHARE}/pkg/busybox-${BUSYBOX_VER}.tar.bz2" +# Directory created after busybox tarball is extracted +BUSYBOX_DIR="busybox-${BUSYBOX_VER}" + +MODULE_INIT_TOOLS_VER="0.9.15-pre4" +MODULE_INIT_TOOLS_SRCTAR="${GK_SHARE}/pkg/module-init-tools-${MODULE_INIT_TOOLS_VER}.tar.bz2" +MODULE_INIT_TOOLS_DIR="module-init-tools-${MODULE_INIT_TOOLS_VER}" +MODULE_INIT_TOOLS_BINCACHE="%%CACHE%%/insmod-%%ARCH%%-static-2.6.bz2" + +MODUTILS_VER="2.4.26" +MODUTILS_SRCTAR="${GK_SHARE}/pkg/modutils-${MODUTILS_VER}.tar.bz2" +MODUTILS_DIR="modutils-${MODUTILS_VER}" +MODUTILS_BINCACHE="%%CACHE%%/insmod-%%ARCH%%-static-2.4.bz2" + +DIETLIBC_VER="0.27" +DIETLIBC_SRCTAR="${GK_SHARE}/pkg/dietlibc-${DIETLIBC_VER}.tar.bz2" +DIETLIBC_DIR="dietlibc-${DIETLIBC_VER}" +DIETLIBC_BINCACHE="%%CACHE%%/dietlibc-${DIETLIBC_VER}-%%ARCH%%.tar.bz2" +DIETLIBC_BINCACHE_TEMP="%%CACHE%%/dietlibc-${DIETLIBC_VER}-%%ARCH%%-tempdir" + +DEVFSD_VER="1.3.25-dietlibc-kernel25" +DEVFSD_SRCTAR="${GK_SHARE}/pkg/devfsd-${DEVFSD_VER}.tar.bz2" +DEVFSD_DIR="devfsd" +DEVFSD_BINCACHE="%%CACHE%%/devfsd-${DEVFSD_VER}-%%ARCH%%.bz2" +DEVFSD_CONF_BINCACHE="%%CACHE%%/devfsd-conf-${DIETLIBC_VER}-%%ARCH%%.bz2" + +#UDEV_VER="VERSION_UDEV" +#UDEV_DIR="udev-${UDEV_VER}" +#UDEV_SRCTAR="${GK_SHARE}/pkg/udev-${UDEV_VER}.tar.bz2" +#UDEV_BINCACHE="%%CACHE%%/udev-${UDEV_VER}-%%ARCH%%.tar.bz2" + +#KLIBC_VER="VERSION_KLIBC" +#KLIBC_DIR="klibc-${KLIBC_VER}" +#KLIBC_SRCTAR="${GK_SHARE}/pkg/klibc-${KLIBC_VER}.tar.bz2" +#KLIBC_BINCACHE="%%CACHE%%/klibc-${KLIBC_VER}-%%ARCH%%.tar.bz2" + +DEVICE_MAPPER_VER="1.00.17" +DEVICE_MAPPER_DIR="device-mapper.${DEVICE_MAPPER_VER}" +DEVICE_MAPPER_SRCTAR="${GK_SHARE}/pkg/device-mapper.${DEVICE_MAPPER_VER}.tgz" +DEVICE_MAPPER_BINCACHE="%%CACHE%%/device-mapper-${DEVICE_MAPPER_VER}-%%ARCH%%.tar.bz2" + +LVM2_VER="2.00.25" +LVM2_DIR="LVM2.${LVM2_VER}" +LVM2_SRCTAR="${GK_SHARE}/pkg/LVM2.${LVM2_VER}.tgz" +LVM2_BINCACHE="%%CACHE%%/LVM2.${LVM2_VER}-%%ARCH%%.tar.bz2" + +DMRAID_VER="1.0.0.rc10" +DMRAID_DIR="dmraid/${DMRAID_VER}" +DMRAID_SRCTAR="${GK_SHARE}/pkg/dmraid-${DMRAID_VER}.tar.bz2" +DMRAID_BINCACHE="%%CACHE%%/dmraid-${DMRAID_VER}-%%ARCH%%.tar.bz2" + +# Kernel Version Compatibility +# (from http://www.am-utils.org/project-unionfs.html) + +# 2.6.9 - 2.6.15 1.1.5 +# 2.6.16 1.2 +# 2.6.17 1.3 + +UNIONFS_SRCTAR="${GK_SHARE}/pkg/unionfs-UNIONFS_VER.tar.gz" +UNIONFS_BINCACHE="%%CACHE%%/unionfs-UNIONFS_VER-tools-%%ARCH%%.tar.bz2" +UNIONFS_MODULES_BINCACHE="%%CACHE%%/unionfs-UNIONFS_VER-modules-%%KV%%-%%ARCH%%.tar.bz2" + +E2FSPROGS_VER="1.38" +E2FSPROGS_DIR="e2fsprogs-${E2FSPROGS_VER}" +E2FSPROGS_SRCTAR="${GK_SHARE}/pkg/e2fsprogs-${E2FSPROGS_VER}.tar.gz" +BLKID_BINCACHE="%%CACHE%%/blkid-${E2FSPROGS_VER}-%%ARCH%%.bz2" Common subdirectories: /usr/share/genkernel/sparc and genkernel-unionfscb/sparc Common subdirectories: /usr/share/genkernel/sparc64 and genkernel-unionfscb/sparc64 Common subdirectories: /usr/share/genkernel/um and genkernel-unionfscb/um Common subdirectories: /usr/share/genkernel/x86 and genkernel-unionfscb/x86 Common subdirectories: /usr/share/genkernel/x86_64 and genkernel-unionfscb/x86_64 Common subdirectories: /usr/share/genkernel/xen0 and genkernel-unionfscb/xen0 Common subdirectories: /usr/share/genkernel/xenU and genkernel-unionfscb/xenU