# # Patch managed by http://www.holgerschurig.de/patcher.html # Index: unionfs-1.0.9/Makefile =================================================================== --- unionfs-1.0.9.orig/Makefile 2005-02-20 16:27:43.000000000 -0600 +++ unionfs-1.0.9/Makefile 2005-02-20 16:31:36.000000000 -0600 @@ -3,11 +3,19 @@ # # 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 -MODPREFIX= +DESTDIR = +prefix = /usr/local +sbindir = ${prefix}/sbin +mandir = ${prefix}/man +man4dir = ${mandir}/man4 +man8dir = ${mandir}/man8 +moduledir = /lib/modules/${KERNELVER} + VERSION = 1.0.9 TAROPTS = czvf UNIONFS_DEBUG_CFLAG = -g @@ -25,8 +33,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 -fno-strict-aliasing ${EXTRACFLAGS} ${UNIONFS_DEBUG_CFLAG} ${UNIONFS_OPT_CFLAG} endif EXTRA_CFLAGS += -D__KERNEL__ -DMODULE -DFISTGEN -I. ${TOPINC} -Wall -Werror -fno-strict-aliasing ${EXTRACFLAGS} ${UNIONFS_DEBUG_CFLAG} ${UNIONFS_OPT_CFLAG} @@ -39,7 +47,7 @@ BINS := unionctl uniondbg -all: readthereadme unionfs$(KERNELVERSION) +all: readthereadme unionfs$(KERNELMAJVER) readthereadme: @echo "******************************************************************************" @@ -47,13 +55,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} @@ -78,23 +88,32 @@ ${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 ${MODPREFIX}/lib/modules/`uname -r`/kernel/fs ; else cp unionfs.o ${MODPREFIX}/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 uninstall: - if [ -f unionfs.ko ] ; then rm /lib/modules/`uname -r`/kernel/fs/unionfs.ko ; else rm /lib/modules/`uname -r`/kernel/fs/unionfs.o ; fi - rm ${PREFIX}/man/man8/unionctl.8 - rm ${PREFIX}/man/man8/uniondbg.8 - rm ${PREFIX}/man/man4/unionfs.4 - rm ${PREFIX}/sbin/unionctl - rm ${PREFIX}/sbin/uniondbg +ifeq (${KERNELMAJVER},2.4) + rm ${DESTDIR}${moduledir}/kernel/fs/unionfs.o +else + rm ${DESTDIR}${moduledir}/kernel/fs/unionfs.ko +endif + rm ${DESTDIR}${man8dir}/unionctl.8 + rm ${DESTDIR}${man8dir}/uniondbg.8 + rm ${DESTDIR}${man4dir}/unionfs.4 + rm ${DESTDIR}${sbindir}/unionctl + rm ${DESTDIR}${sbindir}/uniondbg release: unionfs-${VERSION}.tar.gz