new version
[fuse.git] / debian / rules
blob848bc1061be65b01a253b0b23ab8a734d42bc868
1 #!/usr/bin/make -f
2 # Sample debian/rules that uses debhelper.
3 # GNU copyright 1997 to 1999 by Joey Hess.
5 #export DH_VERBOSE=1
6 export DH_COMPAT=3
8 DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
9 DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
11 KSRC ?= /usr/src/linux
12 MOD_DIR ?= '.'
14 ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
15 CFLAGS += -g
16 endif
17 ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
18 INSTALL_PROGRAM += -s
19 endif
22 build: build-stamp
23 build-stamp:
24 $(checkdir)
26 ./makeconf.sh
27 ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --disable-kernel-module --disable-example
28 $(MAKE)
30 touch build-stamp
32 clean: kdist_clean
33 $(checkdir)
34 $(checkroot)
35 rm -f build-stamp
37 -$(MAKE) distclean
38 -test -r /usr/share/misc/config.sub && \
39 cp -f /usr/share/misc/config.sub config.sub
40 -test -r /usr/share/misc/config.guess && \
41 cp -f /usr/share/misc/config.guess config.guess
43 find -name '*.o' -o -name '*.so' -o -name fusermount -type f -o \
44 \( -name 'Makefile' -a ! -regex '.*python.*' \) | xargs rm -f
46 rm -f debian/control
47 cat debian/source.control debian/fuse.control > debian/control
49 dh_clean
51 clean-modules:
52 $(checkdir)
53 $(checkroot)
54 rm -f build-modules-stamp
55 rm -rf debian/fuse-module-*
56 rm -f debian/KVERS debian/MODVERS debian/control.tmp
58 -$(MAKE) distclean
60 test -f debian/control || touch debian/control
61 dh_clean
63 install: build
64 $(checkdir)
65 $(checkroot)
67 dh_clean -k
68 dh_installdirs
70 $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
72 # -source package
73 find . \( -name \*.o -path ./debian/tmp \) -prune -o -print | \
74 cpio -admp debian/tmp/usr/src/modules/fuse
75 cd debian/tmp/usr/src/modules/fuse && \
76 $(MAKE) -f debian/rules clean
77 cd debian/tmp/usr/src && \
78 tar cf fuse.tar modules && \
79 rm -r modules
80 gzip -9 debian/tmp/usr/src/fuse.tar
82 build-modules: build-modules-stamp
83 build-modules-stamp:
84 $(checkdir)
86 ./makeconf.sh
87 ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --disable-lib --disable-util --disable-example --with-kernel=$(KSRC)
89 $(MAKE)
91 touch build-modules-stamp
93 install-modules: build-modules
94 $(checkdir)
95 $(checkroot)
97 install -d $(CURDIR)/debian/fuse-module-$(KVERS)/lib/modules/$(KVERS)/kernel/fs/fuse
98 install -m 0644 kernel/fuse.o $(CURDIR)/debian/fuse-module-$(KVERS)/lib/modules/$(KVERS)/kernel/fs/fuse/fuse.o
100 binary-fuse: build install
101 $(checkdir)
102 $(checkroot)
103 dh_movefiles
104 find debian/ -type d | xargs rmdir --ignore-fail-on-non-empty -p
106 dh_installdocs
107 dh_installexamples
108 dh_installchangelogs ChangeLog
109 dh_link
110 dh_strip
111 dh_compress
112 dh_fixperms
113 dh_makeshlibs
114 dh_installdeb
115 dh_shlibdeps
116 dh_gencontrol
117 dh_md5sums
118 dh_builddeb
120 binary-modules: build-modules install-modules
121 $(checkdir)
122 $(checkroot)
124 KSRC="$(KSRC)" KVERS="$(KVERS)" KDREV="$(KDREV)" sh -v debian/setvers.sh
125 DH_OPTIONS="-pfuse-module-$(KVERS)"
127 dh_installdocs $(DH_OPTIONS)
128 dh_installexamples $(DH_OPTIONS)
129 dh_installchangelogs ChangeLog $(DH_OPTIONS)
130 dh_strip $(DH_OPTIONS)
131 dh_compress $(DH_OPTIONS)
132 dh_fixperms $(DH_OPTIONS)
133 dh_md5sums $(DH_OPTIONS)
134 dh_builddeb --destdir=$(MOD_DIR)/.. -pfuse-module-$(KVERS)
136 binary-arch: binary-fuse
137 $(checkdir)
138 $(checkroot)
139 set -e; KPATH=$(KPATH); \
140 if [ "$$KPATH" ]; then \
141 for k in `IFS=':'; echo $$KPATH`; do \
142 test ! -d $$d || \
143 $(MAKE) -f debian/rules KSRC="$$k" clean-modules binary-modules; \
144 done; \
147 binary: binary-arch
149 kdist_clean: clean-modules
151 kdist_image:
152 $(checkdir)
153 $(checkroot)
154 for CONFLOC in ~/.kernel-pkg.conf /etc/kernel-pkg.conf; \
155 do test -f $$CONFLOC && break; done; \
156 $(MAKE) -f debian/rules \
157 MOD_DIR=$(KSRC) CONFLOC=$$CONFLOC \
158 clean-modules binary-modules
160 kdist: kdist_image
161 KSRC="$(KSRC)" KMAINT="$(KMAINT)" KEMAIL="$(KEMAIL)" \
162 sh -v debian/genchanges.sh
164 define checkdir
165 test -f debian/rules -a -f debian/changelog
166 endef
168 define checkroot
169 test root = "`whoami`"
170 endef
172 .PHONY: build clean binary-indep binary-arch binary install