r3897: Automatic commit for debian_version_4_1_0-1
[ctsim.git] / debian / rules
1 #!/usr/bin/make -f
2
3 export DH_COMPAT=4
4
5 ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
6         CFLAGS += -g
7 endif
8 ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
9         INSTALL_PROGRAM += -s
10 endif
11
12 host_arch       := $(shell dpkg-architecture -qDEB_HOST_ARCH)
13
14 pkg             := ctsim
15 pkg-p4          := ctsim-pentium4
16 pkg-athlon      := ctsim-athlon
17 pkg-help        := ctsim-help
18 pkg-doc         := ctsim-doc
19
20 ctsim-shared    := usr/share/ctsim
21
22 prefix          := debian/$(pkg)
23 prefix-p4       := debian/$(pkg-p4)
24 prefix-athlon   := debian/$(pkg-athlon)
25 prefix-help     := debian/$(pkg-help)
26 prefix-doc      := debian/$(pkg-doc)
27
28 DESTDIR         := `pwd`/$(prefix)
29 DESTDIR-P4      := `pwd`/$(prefix-p4)
30 DESTDIR-ATHLON  := `pwd`/$(prefix-athlon)
31 HELPDIR         := `pwd`/$(prefix-help)/$(ctsim-shared)
32 doc-dir         := usr/share/doc/$(pkg-doc)
33 pixmap-dir      := usr/X11R6/include/X11/pixmaps
34
35
36 configure: configure-stamp
37 configure-stamp:
38         dh_testdir
39         # Add here commands to configure the package.
40         ./configure --prefix=$(DESTDIR)/usr --mandir=$(DESTDIR)/usr/share/man --datadir=$(HELPDIR) --with-ctn
41         touch configure-stamp
42
43
44 build-arch: configure-stamp build-arch-stamp
45 build-arch-stamp:
46         dh_testdir
47         # Add here commands to compile the package.
48         $(MAKE) all
49         touch build-arch-stamp
50
51 build-indep: configure-stamp  build-indep-stamp
52 build-indep-stamp:
53         dh_testdir
54         # Add here command to compile/build the arch indep package.
55         # It's ok not to do anything here, if you don't need to build
56         #  anything for this package.
57         #/usr/bin/docbook-to-man debian/#PACKAGE#.sgml > #PACKAGE#.1
58         (cd docs; tar xzf html.tar.gz)
59         touch build-indep-stamp
60
61 build: build-arch build-indep
62
63 clean:
64         dh_testdir
65         dh_testroot
66         rm -f build-arch-stamp build-indep-stamp configure-stamp
67         # Add here commands to clean up after the build process.
68         -$(MAKE) distclean
69         find . -type f -and -name \*~ -or -name .\*~ -exec rm -f {} \;
70         rm -f debian/ctsim.postinst.* debian/ctsim.prerm.*
71         dh_clean
72
73 install: DH_OPTIONS=
74 install: build
75         dh_testdir
76         dh_testroot
77         dh_clean -k
78         dh_installdirs
79         #
80         dh_installdirs -p $(pkg-help) $(ctsim-shared)
81         ${MAKE} install
82         echo Testing for i386 optimized builds
83         echo Host architecture is $(host_arch)
84 ifneq (,$(findstring i386,$(host_arch)))
85         echo Building CPU-specific i386 flavors
86         # Pentium 4
87         ${MAKE} clean
88         ./configure --prefix=$(DESTDIR-P4)/usr --mandir=$(DESTDIR-P4)/usr/share/man --datadir=$(HELPDIR) --with-ctn --with-mcpu=pentium4
89         $(MAKE) all
90         ${MAKE} install
91         # Athlon
92         ${MAKE} clean
93         ./configure --prefix=$(DESTDIR-ATHLON)/usr --mandir=$(DESTDIR-ATHLON)/usr/share/man --datadir=$(HELPDIR) --with-ctn --with-mcpu=athlon
94         $(MAKE) all
95         ${MAKE} install
96         dh_installdirs -p $(pkg-p4) $(pixmap-dir)
97         dh_installdirs -p $(pkg-athlon) $(pixmap-dir)
98         dh_install -p $(pkg-p4) debian/ctsim.xpm $(pixmap-dir)
99         dh_install -p $(pkg-athlon) debian/ctsim.xpm $(pixmap-dir)
100 endif
101         # Add here commands to install the package into debian/ctsim.
102         dh_installdirs -p $(pkg) $(pixmap-dir)
103         dh_install -p $(pkg) debian/ctsim.xpm $(pixmap-dir)
104         dh_install -p $(pkg-help) docs/ctsim.htb $(ctsim-shared)
105         dh_install -p $(pkg-doc) docs/html $(doc-dir)
106         dh_link -p $(pkg-doc) $(doc-dir)/html/$(pkg)_contents.html $(doc-dir)/html/index.html
107         gzip -9 docs/ctsim.pdf
108         dh_install -p $(pkg-doc) docs/ctsim.pdf.gz $(doc-dir)
109         gunzip docs/ctsim.pdf.gz
110         chmod +x helical/*.sh tools/*.sh
111
112 # Build architecture-independent files here.
113 # Pass -i to all debhelper commands in this target to reduce clutter.
114 binary-indep: build install
115         dh_testdir -i
116         dh_testroot -i
117 #       dh_installdebconf -i
118         dh_installdocs -i
119         dh_installexamples -i
120         dh_installmenu -i
121 #       dh_installlogrotate -i
122 #       dh_installemacsen -i
123 #       dh_installpam -i
124 #       dh_installmime -i
125 #       dh_installinit -i
126         dh_installcron -i
127 #       dh_installman -i
128         dh_installinfo -i
129 #       dh_undocumented -i
130         dh_installchangelogs ChangeLog -i
131         dh_link -i
132         dh_compress -i
133         dh_fixperms -i
134         dh_installdeb -i
135 #       dh_perl -i
136         dh_gencontrol -i
137         dh_md5sums -i
138         dh_builddeb -i
139
140 # Build architecture-dependent files here.
141 binary-arch: build install
142         dh_testdir -a
143         dh_testroot -a
144 #       dh_installdebconf -a
145         dh_installdocs -a
146         dh_installexamples -a tools/sample-ctsim.sh helical/sample-helical.sh
147         dh_installmenu -a
148 #       dh_installlogrotate -a
149 #       dh_installemacsen -a
150 #       dh_installpam -a
151 #       dh_installmime -a
152 #       dh_installinit -a
153         dh_installcron -a
154 #       dh_installman -a
155         dh_installinfo -a
156 #       dh_undocumented -a
157         dh_installchangelogs ChangeLog -a
158         dh_strip -a
159         dh_link -a
160         dh_compress -a
161         dh_fixperms -a
162 #       dh_makeshlibs -a
163         dh_installdeb -a
164 #       dh_perl -a
165         dh_shlibdeps -a
166         dh_gencontrol -a
167         dh_md5sums -a
168         dh_builddeb -p $(pkg)
169 ifneq (,$(findstring i386,$(host_arch)))
170         dh_builddeb -p $(pkg-p4)
171         dh_builddeb -p $(pkg-athlon)
172 endif
173
174 binary: binary-indep binary-arch
175
176 .PHONY: build clean binary-indep binary-arch binary install configure
177