]> git.sur5r.net Git - cc65/blob - packages/debian/rules
de7da1047c1b8f6889f3e489177a141fb41635bf
[cc65] / packages / debian / rules
1 #!/usr/bin/make -f
2 # Made with the aid of debmake, by Christoph Lameter,
3 # based on the sample debian/rules file for GNU hello by Ian Jackson.
4
5 #export DH_COMPAT=5
6
7 include /usr/share/dpatch/dpatch.make
8
9 build: build-stamp
10
11 build-stamp: patch
12         dh_testdir
13
14         install -d libsrc/apple2enh/extra
15
16         # Add here commands to compile the package.
17         $(MAKE) -C src -f make/gcc.mak
18         $(MAKE) -C libsrc
19         $(MAKE) -C doc txt html info
20
21
22         chmod 755 debian/fixinfo
23         debian/fixinfo
24
25         touch build-stamp
26
27         [ -e announce.txt ] || touch announce.txt
28
29 clean: unpatch
30         dh_testdir
31         dh_testroot
32         rm -f build-stamp
33
34         -$(MAKE) -C src -f make/gcc.mak zap
35         -$(MAKE) -C libsrc zap
36         -$(MAKE) -C doc zap
37
38         # remove files that the upstream system erroneously left behind
39         [ ! -e libsrc/geos-cbm/devel/geos-tgi.tgi ] || rm libsrc/geos-cbm/devel/geos-tgi.tgi
40         [ ! -e libsrc/geos-cbm/devel/geos-vdc.emd ] || rm libsrc/geos-cbm/devel/geos-vdc.emd
41         [ ! -e libsrc/geos-cbm/devel/geos-stdjoy.joy ] || rm libsrc/geos-cbm/devel/geos-stdjoy.joy
42
43         dh_clean
44
45 install: DH_OPTIONS=
46 install: build
47         dh_testdir
48         dh_testroot
49         dh_installdirs
50         
51         # Add here commands to install the package into debian/tmp.
52         # (copied from RPM spec file)
53         mkdir -p debian/tmp/usr/bin
54         mkdir -p debian/tmp/usr/lib/cc65/asminc
55         mkdir -p debian/tmp/usr/lib/cc65/cfg
56         mkdir -p debian/tmp/usr/lib/cc65/emd
57         mkdir -p debian/tmp/usr/lib/cc65/include/em
58         mkdir -p debian/tmp/usr/lib/cc65/include/geos
59         mkdir -p debian/tmp/usr/lib/cc65/include/joystick
60         mkdir -p debian/tmp/usr/lib/cc65/include/mouse
61         mkdir -p debian/tmp/usr/lib/cc65/include/sys
62         mkdir -p debian/tmp/usr/lib/cc65/include/tgi
63         mkdir -p debian/tmp/usr/lib/cc65/joy
64         mkdir -p debian/tmp/usr/lib/cc65/lib
65         mkdir -p debian/tmp/usr/lib/cc65/mou
66         mkdir -p debian/tmp/usr/lib/cc65/obj
67         mkdir -p debian/tmp/usr/lib/cc65/ser
68         mkdir -p debian/tmp/usr/lib/cc65/tgi
69         
70         # Binaries
71         install -s -m 755 src/ar65/ar65 debian/tmp/usr/bin
72         install -s -m 755 src/ca65/ca65 debian/tmp/usr/bin
73         install    -m 755 src/ca65html/ca65html debian/tmp/usr/bin
74         install -s -m 755 src/cc65/cc65 debian/tmp/usr/bin
75         install -s -m 755 src/cl65/cl65 debian/tmp/usr/bin
76         install -s -m 755 src/co65/co65 debian/tmp/usr/bin
77         install -s -m 755 src/da65/da65 debian/tmp/usr/bin
78         install -s -m 755 src/grc65/grc65 debian/tmp/usr/bin
79         install -s -m 755 src/ld65/ld65 debian/tmp/usr/bin
80         install -s -m 755 src/od65/od65 debian/tmp/usr/bin
81         
82         # Libraries and includes
83         install -m 644 libsrc/*.lib debian/tmp/usr/lib/cc65/lib
84         install -m 644 include/*.h debian/tmp/usr/lib/cc65/include
85         install -m 644 include/geos/*.h debian/tmp/usr/lib/cc65/include/geos
86         install -m 644 include/em/*.h debian/tmp/usr/lib/cc65/include/em
87         install -m 644 include/joystick/*.h debian/tmp/usr/lib/cc65/include/joystick
88         install -m 644 include/mouse/*.h debian/tmp/usr/lib/cc65/include/mouse
89         install -m 644 include/sys/*.h debian/tmp/usr/lib/cc65/include/sys
90         install -m 644 include/tgi/*.h debian/tmp/usr/lib/cc65/include/tgi
91         install -m 644 asminc/*.inc debian/tmp/usr/lib/cc65/asminc
92         
93         # Extra object files
94         for extra in libsrc/*-*.o; do \
95             install -m 644 $${extra} debian/tmp/usr/lib/cc65/obj; \
96         done
97         
98         # Additional linker configurations
99         for config in src/ld65/cfg/*-*.cfg; do \
100             install -m 644 $${config} debian/tmp/usr/lib/cc65/cfg; \
101         done
102         
103         # Drivers
104         install -m 644 libsrc/*.emd debian/tmp/usr/lib/cc65/emd
105         install -m 644 libsrc/*.joy debian/tmp/usr/lib/cc65/joy
106         install -m 644 libsrc/*.mou debian/tmp/usr/lib/cc65/mou
107         install -m 644 libsrc/*.ser debian/tmp/usr/lib/cc65/ser
108         install -m 644 libsrc/*.tgi debian/tmp/usr/lib/cc65/tgi
109         
110         dh_install
111         dh_movefiles
112
113 # This single target is used to build all the packages, all at once, or
114 # one at a time. So keep in mind: any options passed to commands here will
115 # affect _all_ packages. Anything you want to only affect one package
116 # should be put in another target, such as the install target.
117 binary-common:
118         dh_testdir
119         dh_testroot
120         dh_installchangelogs
121         dh_installdocs
122         dh_installexamples
123         dh_installmenu
124 #       dh_installcatalogs
125 #       dh_installmime
126 #       dh_installinit
127         dh_installman
128         dh_installinfo
129 #       dh_installwm
130 #       dh_lintian
131 #       dh_bugfiles
132 #       dh_undocumented
133         dh_strip
134         dh_link
135         dh_compress
136         dh_fixperms
137 #       dh_makeshlibs
138         dh_installdeb
139         dh_shlibdeps
140         dh_gencontrol
141         dh_md5sums
142         dh_builddeb
143
144 # Build architecture independant packages using the common target.
145 binary-indep: build install
146         $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common
147
148 # Build architecture dependant packages using the common target.
149 binary-arch: build install
150         $(MAKE) -f debian/rules DH_OPTIONS=-a binary-common
151 # Any other binary targets build just one binary package at a time.
152 binary-%: build install
153         make -f debian/rules binary-common DH_OPTIONS=-p$*
154
155 binary: binary-indep binary-arch
156 .PHONY: build clean binary-indep binary-arch binary-common binary install
157