OSDN Git Service

Code drop from //branches/cupcake/...@124589
[android-x86/external-e2fsprogs.git] / debian / attic / libs / rules
1 #! /usr/bin/make -f
2 # -*- makefile -*-
3 #
4 # Invoke each target with `./debian/rules <target>'.  All targets should be
5 # invoked with the package root as the current directory.
6 #
7 # The `binary' target must be run as root, as it needs to install files with
8 # specific ownerships.
9
10 # Uncomment this to turn on verbose mode.
11 export DH_VERBOSE=1
12
13 package = e2fsprogs
14 ARCH = $(shell dpkg --print-architecture)
15
16 # find the version for the main package, from changelog file
17 MAIN_VERSION = $(shell head -1 debian/changelog | cut '-d ' -f 2 | sed 's/[()]//g')
18 # find versions for libraries going into their own packages, from their Makefile.in's
19 COMERR_VERSION = $(shell grep ELF_VERSION lib/et/Makefile.in | cut '-d ' -f3)
20 COMERR_MAJOR = $(word 1,$(subst ., ,$(COMERR_VERSION)))
21 SS_VERSION = $(shell grep ELF_VERSION lib/ss/Makefile.in | cut '-d ' -f3)
22 SS_MAJOR = $(word 1,$(subst ., ,$(SS_VERSION)))
23
24 topdir = $(shell pwd)
25 debdir = $(topdir)/debian
26 maindir = $(debdir)/tmp
27 builddir = $(topdir)/builddir
28 docdir = $(maindir)/usr/doc/$(package)
29
30 SUBPACKAGES_DIRS = tmp e2fslibsg e2fslibsg-dev comerr$(COMERR_MAJOR)g comerrg-dev \
31         ss$(SS_MAJOR)g ssg-dev
32
33 installdoc = install -m 644
34 installbin = install -m 755
35
36 ifeq ($(ARCH),alpha)
37 CCOPTS = -g -O2 -fsigned-char -DHAVE_NETINET_IN_H
38 LIBC-DEV = libc6.1-dev
39 else
40 CCOPTS = -g -O2 -fsigned-char
41 LIBC-DEV = libc6-dev
42 endif
43
44 build: configured
45         dh_testdir
46         make -C $(builddir)
47         make -C $(builddir)/misc findsuper
48         cd doc && texi2html -split_chapter libext2fs.texinfo
49         cd lib/et && texi2html -split_chapter -expandinfo com_err.texinfo
50         touch build
51
52 configured:
53         dh_testdir
54         mkdir -p $(builddir)
55         cd $(builddir) && CFLAGS="$(CFLAGS)" \
56                 ../configure --enable-elf-shlibs --enable-dynamic-e2fsck \
57                 --with-ccopts="$(CCOPTS)"
58         touch configured
59
60 clean:
61         dh_testdir
62         rm -f build configured install
63         -make -C $(builddir) -i distclean
64         rm -rf $(builddir)
65         rm -f doc/libext2fs_*.html lib/et/com_err_*.html
66         dh_clean
67
68 binary-indep: build
69   # no arch-independant debs.
70
71 binary-arch: build
72         dh_testversion 0.56 # == 0.53 + fixes
73         dh_testdir -a
74         dh_testroot -a
75         dh_clean -a -k
76         dh_installdirs -a
77
78         make -C $(builddir) install DESTDIR=$(maindir)
79         install -m 755 $(builddir)/misc/findsuper $(maindir)/sbin
80   # static libs and .h files
81         make -C $(builddir) install-libs DESTDIR=$(maindir)
82         install -m 644 $(builddir)/lib/ss/ss_err.h $(maindir)/usr/include/ss/
83
84 # fix and install compile_et script
85         sed s%$(topdir)/lib/et%/usr/share/comerr% \
86           <$(builddir)/lib/et/compile_et \
87           >$(debdir)/comerrg-dev/usr/bin/compile_et
88         chmod 755 $(debdir)/comerrg-dev/usr/bin/compile_et
89 # add support files for compile_et
90         install -m 644 lib/et/et_c.awk lib/et/et_h.awk \
91           $(debdir)/comerrg-dev/usr/share/comerr/
92
93 # fix and install mk_cmds script
94         sed s%$(topdir)/lib/ss%/usr/share/ss% \
95           <$(builddir)/lib/ss/mk_cmds \
96           >$(debdir)/ssg-dev/usr/bin/mk_cmds
97         chmod 755 $(debdir)/ssg-dev/usr/bin/mk_cmds
98 # add support files for mk_cmds
99         install -m 644 lib/ss/ct_c.awk lib/ss/ct_c.sed \
100           $(debdir)/ssg-dev/usr/share/ss/
101
102 # docs
103         mkdir -p $(debdir)/e2fslibsg-dev/usr/doc/e2fslibsg
104         ln -sf e2fslibsg $(debdir)/e2fslibsg-dev/usr/doc/e2fslibsg-dev
105         mkdir -p $(maindir)/usr/doc/e2fslibsg
106         ln -sf e2fslibsg $(maindir)/usr/doc/e2fsprogs
107         mkdir -p $(debdir)/comerrg-dev/usr/doc/comerr$(COMERR_MAJOR)g
108         ln -sf comerr$(COMERR_MAJOR)g $(debdir)/comerrg-dev/usr/doc/comerrg-dev
109         mkdir -p $(debdir)/ssg-dev/usr/doc/ss$(SS_MAJOR)g
110         ln -sf ss$(SS_MAJOR)g $(debdir)/ssg-dev/usr/doc/ssg-dev
111         dh_installdocs -a
112
113   # HTML docs
114         install -d $(debdir)/e2fslibsg-dev/usr/doc/e2fslibsg-dev/html-info/
115         install -p $(topdir)/doc/libext2fs_*.html \
116            $(debdir)/e2fslibsg-dev/usr/doc/e2fslibsg-dev/html-info/
117         install -d $(debdir)/comerrg-dev/usr/doc/comerrg-dev/html-info/
118         install -p $(topdir)/lib/et/com_err_*.html \
119            $(debdir)/comerrg-dev/usr/doc/comerrg-dev/html-info/
120
121   # texinfo docs
122         install -p $(topdir)/doc/libext2fs.texinfo \
123            $(debdir)/e2fslibsg-dev/usr/doc/e2fslibsg/libext2fs.texi
124         install -p $(topdir)/lib/et/com_err.texinfo \
125            $(debdir)/comerrg-dev/usr/doc/comerr2g/com_err.texi
126
127   # doc-base support
128         install -d $(debdir)/e2fslibsg-dev/usr/share/doc-base/
129         install -p -m 644 $(debdir)/libext2fs.docbase \
130            $(debdir)/e2fslibsg-dev/usr/share/doc-base/libext2fs
131         install -d $(debdir)/comerrg-dev/usr/share/doc-base/
132         install -p -m 644 $(debdir)/com_err.docbase \
133            $(debdir)/comerrg-dev/usr/share/doc-base/com_err
134
135   # examples
136         dh_installexamples -a
137
138   # dh_installmanpages still makes a mess as of 0.54 (see below dh_movefiles)
139         install -p $(topdir)/lib/et/compile_et.1 $(maindir)/usr/man/man1/
140         install -d $(maindir)/usr/man/man3/
141         install -p $(topdir)/lib/et/com_err.3 $(maindir)/usr/man/man3/
142         ln -s e2fsck.8 $(maindir)/usr/man/man8/fsck.ext2.8
143         ln -s mke2fs.8 $(maindir)/usr/man/man8/mkfs.ext2.8
144
145         dh_movefiles -a
146   # cleanup empty dirs
147         cd  $(maindir) && rmdir usr/man/cat? bin lib usr/include/* usr/include \
148                 usr/info usr/lib usr/man/man3 usr/doc/e2fslibsg
149
150 #       dh_installmenu -a
151
152   # broken + useless in 0.52
153   #     dh_installmanpages -a
154
155         dh_undocumented -a
156
157         dh_installchangelogs -pe2fslibsg -pcomerr$(COMERR_MAJOR)g -pss$(SS_MAJOR)g ChangeLog
158
159         dh_strip -a
160         dh_compress -a
161         dh_fixperms -a
162
163         echo "libcdev:Depends=$(LIBC-DEV)" > debian/comerrg-dev.substvars
164         echo "libcdev:Depends=$(LIBC-DEV)" > debian/ssg-dev.substvars
165         echo "libcdev:Depends=$(LIBC-DEV)" > debian/e2fslibsg-dev.substvars
166
167         dh_installdeb -a
168         LD_LIBRARY_PATH=$(builddir)/lib:/lib:/usr/lib \
169           dh_shlibdeps -a
170         dh_gencontrol -u '-isp' -pe2fsprogs -pe2fslibsg -pe2fslibsg-dev
171         dh_gencontrol -u '-isp' -pcomerr$(COMERR_MAJOR)g -pcomerrg-dev \
172           -u '-v$(COMERR_VERSION)-$(MAIN_VERSION)'
173         dh_gencontrol -u '-isp' -pss$(SS_MAJOR)g -pssg-dev \
174           -u '-v$(SS_VERSION)-$(MAIN_VERSION)'
175         dh_makeshlibs -a
176 #       dh_du -a
177         dh_md5sums -a
178         dh_builddeb -a
179
180 binary: binary-indep binary-arch
181
182 .PHONY: binary binary-arch binary-indep clean checkroot