Added patch from Fabio Erculiani <lxnay@lxnaydesign.net> to fix unionfs compilation...
authorChris Gianelloni <wolf31o2@gentoo.org>
Mon, 12 Feb 2007 18:32:45 +0000 (18:32 +0000)
committerChris Gianelloni <wolf31o2@gentoo.org>
Mon, 12 Feb 2007 18:32:45 +0000 (18:32 +0000)
git-svn-id: svn+ssh://svn.gentoo.org/var/svnroot/genkernel/trunk@481 67a159dc-881f-0410-a524-ba9dfbe2cb84

ChangeLog
gen_cmdline.sh
gen_compile.sh
genkernel

index e855a98688a1b620cba4448cc21072d348d671a3..a7cdf378101b3c6d9faa04e803deb267ffa4cacd 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,11 @@
 # Copyright 2006-2007 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  12 Feb 2007; Chris Gianelloni <wolf31o2@gentoo.org> gen_cmdline.sh,
+  gen_compile.sh, genkernel:
+  Added patch from Fabio Erculiani <lxnay@lxnaydesign.net> to fix unionfs
+  compilation. This is for bug #152945.
+
   08 Feb 2007; Chris Gianelloni <wolf31o2@gentoo.org> gen_cmdline.sh,
   gen_funcs.sh:
   Added patch from Martin Parm <parmus@diku.dk> to fix the --no-color option.
index 2561890fa3bcbc49a26c06b9e687be722909f406..a3222bd08418c9fab9d1d5bd2396768cffc8c6a2 100755 (executable)
@@ -209,7 +209,8 @@ parse_cmdline() {
              ;;
              --unionfs)
                      echo
-                     print_warning 1 "WARNING: unionfs support is in active development and is not meant for general use."
+                     print_warning 1 "WARNING: unionfs support is in active development and is not meant for general"
+                         print_warning 1 "use."
                      print_warning 1 "DISABLING UNIONFS SUPPORT AT THIS TIME."
                      echo
              ;;
@@ -217,7 +218,8 @@ parse_cmdline() {
                      CMD_UNIONFS=1
                      print_info 2 "CMD_UNIONFS: $CMD_UNIONFS"
                      echo
-                     print_warning 1 "WARNING: unionfs support is in active development and is not meant for general use."
+                     print_warning 1 "WARNING: unionfs support is in active development and is not meant for general"
+                         print_warning 1 "use."
                      print_warning 1 "Bug Reports without patches/fixes will be ignored."
                      print_warning 1 "Use at your own risk as this could blow up your system."
                      print_warning 1 "This code is subject to change at any time."
index 85743802512210ce4a027458f47043e2c5d9b8bc..4dabc1465940a3fddae1572724b57820a1ce1e3e 100644 (file)
@@ -327,9 +327,9 @@ compile_unionfs_modules() {
                        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} ||
+               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!'
@@ -338,6 +338,7 @@ compile_unionfs_modules() {
                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
@@ -350,11 +351,13 @@ compile_unionfs_modules() {
 
                if [ "${PAT}" -ge '6' ]
                then
-                       cd "${TEMP}"
-                       cd "${UNIONFS_DIR}"
+                       # ARCH is used by unionfs - and conflicts with genkernel
+                       ARCH_PUSH=${ARCH}
+                       unset ARCH
                        # 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
@@ -386,7 +389,7 @@ compile_unionfs_utils() {
                        gen_die "Could not find unionfs source tarball: ${UNIONFS_SRCTAR}!"
                cd "${TEMP}"
                rm -rf ${UNIONFS_DIR} > /dev/null
-               rm -rf unionfs > /dev/null
+               rm -rf unionfs* > /dev/null
                mkdir -p unionfs/sbin
                /bin/tar -zxpf ${UNIONFS_SRCTAR} ||
                        gen_die 'Could not extract unionfs source tarball!'
@@ -394,16 +397,20 @@ compile_unionfs_utils() {
                        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
-               
+
+               if [ ! -e "uniondbg" ]; then
+                       cd utils
+               fi
                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      
+               cd ${TEMP}/unionfs
                /bin/tar -cjf "${UNIONFS_BINCACHE}" . ||
                        gen_die 'Could not create unionfs tools binary cache'
                
index c39c76a7020326a5e668f77e580ae7abc8f71322..54247fdb7a6a424508304175adb69b6fd0637902 100755 (executable)
--- a/genkernel
+++ b/genkernel
@@ -2,7 +2,7 @@
 # Genkernel v3
 
 PATH="/bin:/usr/bin:/sbin:/usr/sbin"
-GK_V='3.4.6'
+GK_V='3.4.7_pre1'
 
 TMPDIR='/var/tmp/genkernel'
 TEMP=${TMPDIR}/$RANDOM.$RANDOM.$RANDOM.$$