+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- unionfs-1.0.7/Makefile~make.patch
++++ unionfs-1.0.7/Makefile
+@@ -3,10 +3,20 @@
+ #
+
+ # this should point to where your kernel headers are
+-LINUXSRC = /lib/modules/`uname -r`/build
++KERNELVER := $(shell uname -r)
++KERNELMAJVER := $(shell echo ${KERNELVER} | cut -d. -f1,2)
++LINUXSRC = /lib/modules/${KERNELVER}/build
+ TOPINC = -I${LINUXSRC}/include
++
+ # This is where the make install target will put stuff
+-PREFIX = /usr/local
++DESTDIR =
++prefix = /usr/local
++sbindir = ${prefix}/sbin
++mandir = ${prefix}/man
++man4dir = ${mandir}/man4
++man8dir = ${mandir}/man8
++moduledir = /lib/modules/${KERNELVER}
++
+ VERSION = 1.0.7
+ TAROPTS = czvf
+
+@@ -22,8 +32,8 @@
+ endif
+
+ CC = gcc
+-KERNELVERSION=$(shell uname -r | cut -d. -f1,2)
+-ifeq ($(KERNELVERSION),2.4)
++LD = ld
++ifeq (${KERNELMAJVER},2.4)
+ CFLAGS = -D__KERNEL__ -DMODULE -DFISTGEN -I. ${TOPINC} -Wall -Wno-unused-label -Werror -g ${EXTRACFLAGS} -O2
+ endif
+ EXTRA_CFLAGS += -D__KERNEL__ -DMODULE -DFISTGEN -I. ${TOPINC} -Wall -Werror -g ${EXTRACFLAGS} -O2
+@@ -35,7 +45,7 @@
+
+ BINS := unionctl uniondbg
+
+-all: readthereadme unionfs$(KERNELVERSION)
++all: readthereadme unionfs$(KERNELMAJVER)
+
+ readthereadme:
+ @echo "******************************************************************************"
+@@ -43,13 +53,15 @@
+ @echo "******************************************************************************"
+ @echo ""
+
+-unionfs2.6: ${BINS}
++unionfs2.6: unionfs.ko ${BINS}
++
++unionfs.ko:
+ make -C ${LINUXSRC} SUBDIRS=$(PWD) FISTDEVMK=$(PWD)/fistdev.mk modules
+
+ unionfs2.4: ${obj-m} ${BINS}
+
+ ${obj-m}: ${unionfs-objs}
+- ld -o ${obj-m} -r ${unionfs-objs}
++ ${LD} -o ${obj-m} -r ${unionfs-objs}
+
+ unionctl: unionctl.c
+ ${CC} -o $@ $? ${UCFLAGS}
+@@ -74,15 +86,20 @@
+ ${unionfs-objs}: unionfs.h fist.h
+
+ install: all
+- mkdir -p ${PREFIX}/sbin
+- cp unionctl ${PREFIX}/sbin
+- cp uniondbg ${PREFIX}/sbin
+- mkdir -p ${PREFIX}/man/man4
+- mkdir -p ${PREFIX}/man/man8
+- cp man/unionfs.4 ${PREFIX}/man/man4
+- cp man/unionctl.8 ${PREFIX}/man/man8
+- cp man/uniondbg.8 ${PREFIX}/man/man8
+- if [ -f unionfs.ko ] ; then cp unionfs.ko /lib/modules/`uname -r`/kernel/fs ; else cp unionfs.o /lib/modules/`uname -r`/kernel/fs ; fi
++ mkdir -p ${DESTDIR}${sbindir}
++ cp unionctl ${DESTDIR}${sbindir}
++ cp uniondbg ${DESTDIR}${sbindir}
++ mkdir -p ${DESTDIR}${man4dir}
++ mkdir -p ${DESTDIR}${man8dir}
++ cp man/unionfs.4 ${DESTDIR}${man4dir}
++ cp man/unionctl.8 ${DESTDIR}${man8dir}
++ cp man/uniondbg.8 ${DESTDIR}${man8dir}
++ mkdir -p ${DESTDIR}${moduledir}/kernel/fs
++ifeq (${KERNELMAJVER},2.4)
++ cp unionfs.o ${DESTDIR}${moduledir}/kernel/fs
++else
++ cp unionfs.ko ${DESTDIR}${moduledir}/kernel/fs
++endif
+
+
+ release: unionfs-${VERSION}.tar.gz
+unionutils = "unionctl uniondbg"
+
+include unionfs.inc
+inherit module
+CFLAGS =+ "-D__KERNEL__ -DMODULE -I${STAGING_KERNEL_DIR}/include"
+EXTRA_OEMAKE = "'CC=${KERNEL_CC}' 'LD=${KERNEL_LD}' \
+ 'KERNELVER=${KERNEL_VERSION}' \
+ 'LINUXSRC=${STAGING_KERNEL_DIR}' \
+ 'CROSS_COMPILE=${TARGET_PREFIX}' \
+ 'OS=${TARGET_OS}'"
+
+do_compile () {
+ unset CFLAGS LDFLAGS
+ oe_runmake unionfs${KERNEL_OBJECT_SUFFIX}
+}
+
+do_install () {
+ install -d ${D}/lib/modules/${KERNEL_VERSION}/kernel/fs
+ install -m 0644 unionfs${KERNEL_OBJECT_SUFFIX} ${D}/lib/modules/${KERNEL_VERSION}/kernel/fs/
+
+ install -d ${D}/${mandir}/man4
+ install -m 0644 man/unionfs.4 ${D}/${mandir}/man4/
+}