1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
|
#
# 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
|