[oe-commits] org.oe.dev aufs: added aufs(another union filesystem)

woglinde2 commit oe at amethyst.openembedded.net
Mon Sep 1 18:36:38 UTC 2008


aufs: added aufs(another union filesystem)
* patch provided by Bernhard Guillon  aka mr_nice
* closes bug 4524

Author: woglinde2 at openembedded.org
Branch: org.openembedded.dev
Revision: 2d574b396363dc4b0725e8562582f359dc3f9e9e
ViewMTN: http://monotone.openembedded.org/revision/info/2d574b396363dc4b0725e8562582f359dc3f9e9e
Files:
1
packages/aufs
packages/aufs/aufs
packages/aufs/aufs/aufs_create_no_manpage.patch
packages/aufs/aufs_cvs.bb
conf/distro/include/sane-srcdates.inc
Diffs:

#
# mt diff -rd3e08c833a5c092d9e0ba41adb747c2b93e8553a -r2d574b396363dc4b0725e8562582f359dc3f9e9e
#
#
#
# add_dir "packages/aufs"
# 
# add_dir "packages/aufs/aufs"
# 
# add_file "packages/aufs/aufs/aufs_create_no_manpage.patch"
#  content [e0a7fa112994fecc771033ff581a9974c48649ff]
# 
# add_file "packages/aufs/aufs_cvs.bb"
#  content [756bfb0fefa7cf7a0eb2df75e32b29ab540ee503]
# 
# patch "conf/distro/include/sane-srcdates.inc"
#  from [9007aebc39932ba342d30c8e70192aa4ddfc13cd]
#    to [bc0e8e2f090f061492b00b5e97bd6c3106d66670]
#
============================================================
--- packages/aufs/aufs/aufs_create_no_manpage.patch	e0a7fa112994fecc771033ff581a9974c48649ff
+++ packages/aufs/aufs/aufs_create_no_manpage.patch	e0a7fa112994fecc771033ff581a9974c48649ff
@@ -0,0 +1,34 @@
+OE-only:
+comment: Not building the manpage is just a hack.
+
+diff -Nur aufs.vanilla/util/Makefile aufs/util/Makefile
+--- aufs.vanilla/util/Makefile	2008-08-23 13:00:37.000000000 +0200
++++ aufs/util/Makefile	2008-08-23 15:40:26.000000000 +0200
+@@ -1,25 +1,10 @@
+ 
+ # $Id: Makefile,v 1.10 2008/05/26 04:02:40 sfjro Exp $
+ 
+-all: aufs.5 aulchown
++all: aulchown
+ 	test -x ./mount.aufs || chmod a+x ./mount.aufs
+ 
+-aufs.5: aufs.in.5 ./c2tmac
+-	${RM} $@
+-	./c2tmac > $@
+-	awk '{ \
+-		gsub(/\140[^\047]*\047/, "\\[oq]&\\[cq]"); \
+-		gsub(/\\\[oq\]\140/, "\\[oq]"); \
+-		gsub(/\047\\\[cq\]/, "\\[cq]"); \
+-		gsub(/\047/, "\\[aq]"); \
+-		print; \
+-	}' aufs.in.5 >> $@
+-	chmod a-w $@
+-
+ CFLAGS += -O2 -Wall ${EXTRA_CFLAGS} ${ccflags-y}
+ 
+-.INTERMEDIATE: c2tmac.o c2tmac
+-c2tmac.o: c2tmac.c ../include/linux/aufs_type.h
+-
+ clean:
+-	${RM} c2tmac aulchown aufs.5 *~ .*~
++	${RM} aulchown *~ .*~
============================================================
--- packages/aufs/aufs_cvs.bb	756bfb0fefa7cf7a0eb2df75e32b29ab540ee503
+++ packages/aufs/aufs_cvs.bb	756bfb0fefa7cf7a0eb2df75e32b29ab540ee503
@@ -0,0 +1,62 @@
+DESCRIPTION = "Aufs is a stackable unification filesystem such as Unionfs, which unifies several directories and provides a merged single directory."
+HOMEPAGE = "http://aufs.sourceforge.net/"
+LICENSE = "GPL"
+RDEPENDS = "kernel (${KERNEL_VERSION})"
+DEPENDS = "virtual/kernel sed-native"
+PV = "cvs${SRCDATE}"
+PR = "r0"
+S = "${WORKDIR}/aufs"
+inherit module
+
+# We do not create the manpage for aufs because we do not install it anyway.
+# If you want to have the manpage created you will need to add host cc to
+# the makefile else it will fail to crosscompile.
+# See http://svn.exactcode.de/t2/trunk/package/filesystem/aufs/compile.patch.cross
+# as an example how this could be done.
+
+SRC_URI = "cvs://anonymous@aufs.cvs.sourceforge.net/cvsroot/aufs;module=aufs;date=${SRCDATE} \
+	file://aufs_create_no_manpage.patch;patch=1 "
+
+EXTRA_OEMAKE = "KDIR=${STAGING_KERNEL_DIR} -f local.mk"
+
+# We need to check the architecture and the kernel version to
+# configure properly lokal.mk. We ignore the export CONFIG_AUFS_STAT option.
+# If you want to have CONFIG_AUFS_STAT enabled you have to add some other ARCH checks.
+# Debian does not enable CONFIG_AUFS_STAT for arm.
+# We disable CONFIG_AUFS_SYSAUFS for arm because arm does not know about cmpxchg.
+# If you want this feature enabled you have to define it.
+# I suggest you to read http://osdir.com/ml/linux.kernel.tracing/2006-12/msg00020.html
+
+do_configure() {
+echo ${S} > /home/nice/sdir
+	K_VERSION=$(echo ${KERNEL_VERSION} | awk 'BEGIN{FS="."}{print $3}')
+	cd ${S}
+	if [ $K_VERSION -ge 24 ] ; then	
+		sed -i 's/CONFIG_AUFS_FAKE_DM\ =\ y/CONFIG_AUFS_FAKE_DM\ =/g'  local.mk
+	fi
+	if [ $K_VERSION -eq 25 ] || [ $ARCH = "arm" ] ; then
+		sed -i 's/CONFIG_AUFS_SYSAUFS\ =\ y/CONFIG_AUFS_SYSAUFS\ =/g'  local.mk 
+	fi
+}
+
+do_compile(){
+	LDFLAGS=""
+	oe_runmake 
+}
+
+do_install() {
+	install -m 500 -p mount.aufs umount.aufs auplink aulchown ${D}/${sbindir}
+	mkdir -p ${D}/etc/default	
+	echo FLUSH=ALL > ${D}/etc/default/auplink
+	mkdir -p ${D}/${base_libdir}/modules/${KERNEL_VERSION}/drivers/extra/	
+	cp aufs.ko ${D}/${base_libdir}/modules/${KERNEL_VERSION}/drivers/extra/
+}
+
+pkg_postinst() {
+if test "x$D" != "x"; then
+       exit 1
+else
+	depmod -ae
+fi
+}
+
============================================================
--- conf/distro/include/sane-srcdates.inc	9007aebc39932ba342d30c8e70192aa4ddfc13cd
+++ conf/distro/include/sane-srcdates.inc	bc0e8e2f090f061492b00b5e97bd6c3106d66670
@@ -51,6 +51,7 @@ SRCDATE_gtkhtml2 ?= "20060323"
 SRCDATE_gtkhtml2 ?= "20060323"
 
 # Misc packages, sorted by alphabet
+SRCDATE_aufs ?= "20080826"
 SRCDATE_avetanabt ?= "20060814"
 SRCDATE_bl ?= "20060814"
 SRCDATE_python-pydirectfb = "20071210"






More information about the Openembedded-commits mailing list