]> git.sur5r.net Git - cc65/blob - packages/rpm/redhat/cc65.spec
Preparation for extra platform object files
[cc65] / packages / rpm / redhat / cc65.spec
1 #
2 # SPEC file for the cc65 C compiler and RedHat 7.x
3 #
4 # 03/08/2001, Ullrich von Bassewitz (uz@cc65.org)
5 #
6
7 ###############################################################################
8 #                                Main package                                 #
9 ###############################################################################
10
11 Summary: Crosscompiler/Crossassembler for 6502 systems
12 %define name cc65
13 Name: %{name}
14 %define version 2.13.0
15 Version: %{version}
16 Release: 1
17 License: Freeware with exceptions - see docs
18 Group: Development/Languages
19 Source: ftp://ftp.musoftware.de/uz/cc65/%{name}-sources-%{version}.tar.bz2
20 Vendor: MU Softwareentwicklung
21 Packager: Ullrich von Bassewitz <uz@musoftware.de>
22 URL: http://www.cc65.org/
23 %ifos linux
24 BuildRequires: perl
25 BuildRequires: sgml-tools
26 %endif
27 BuildRoot: /var/tmp/%{name}-%{version}
28
29 %description
30 A C crosscompiler for 6502 systems, including a macroassembler that
31 supports 6502, 65SC02 and 65816 CPUs, a linker, an archiver and some
32 other tools. To create programs for one of the supported target
33 machines, you have to install at least one of the target platform
34 packages in addition to the main package.
35
36 %files
37 %defattr(644,root,root,755)
38 %doc announce.txt
39 %doc doc/BUGS
40 %doc doc/CREDITS
41 %doc doc/readme.1st
42 %attr(755,root,root)            /usr/bin/ar65
43 %attr(755,root,root)            /usr/bin/ca65
44 %attr(755,root,root)            /usr/bin/ca65html
45 %attr(755,root,root)            /usr/bin/cc65
46 %attr(755,root,root)            /usr/bin/cl65
47 %attr(755,root,root)            /usr/bin/co65
48 %attr(755,root,root)            /usr/bin/da65
49 %attr(755,root,root)            /usr/bin/ld65
50 %attr(755,root,root)            /usr/bin/od65
51 %attr(755,root,root) %dir       /usr/lib/cc65
52 %attr(755,root,root) %dir       /usr/lib/cc65/cfg
53 %attr(755,root,root) %dir       /usr/lib/cc65/emd
54 %attr(755,root,root) %dir       /usr/lib/cc65/joy
55 %attr(755,root,root) %dir       /usr/lib/cc65/lib
56 %attr(755,root,root) %dir       /usr/lib/cc65/obj
57 %attr(755,root,root) %dir       /usr/lib/cc65/ser
58 %attr(755,root,root) %dir       /usr/lib/cc65/tgi
59 %attr(755,root,root) %dir       /usr/lib/cc65/include
60 %attr(644,root,root)            /usr/lib/cc65/include/*.h
61 %attr(755,root,root) %dir       /usr/lib/cc65/include/em
62 %attr(644,root,root)            /usr/lib/cc65/include/em/*.h
63 %attr(755,root,root) %dir       /usr/lib/cc65/include/joystick
64 %attr(644,root,root)            /usr/lib/cc65/include/joystick/*.h
65 %attr(755,root,root) %dir       /usr/lib/cc65/include/mouse
66 %attr(644,root,root)            /usr/lib/cc65/include/mouse/*.h
67 %attr(755,root,root) %dir       /usr/lib/cc65/include/sys
68 %attr(644,root,root)            /usr/lib/cc65/include/sys/*.h
69 %attr(755,root,root) %dir       /usr/lib/cc65/include/tgi
70 %attr(644,root,root)            /usr/lib/cc65/include/tgi/*.h
71 %attr(755,root,root) %dir       /usr/lib/cc65/asminc
72 %attr(644,root,root)            /usr/lib/cc65/asminc/*.inc
73
74
75
76 ###############################################################################
77 #                          Documentation subpackage                           #
78 ###############################################################################
79
80 %package doc
81
82 Requires: %{name} = %{version}
83 License: Freeware
84 Summary: Documentation for the cc65 C compiler
85 Group: Development/Languages
86
87 %description doc
88 This package contains the documentation for the cc65 C compiler, mostly
89 in HTML format. Other formats can be generated from the sources.
90
91 %files doc
92 %doc doc/*.html
93 %doc doc/compile.txt
94 %doc doc/internal.txt
95 %doc doc/newvers.txt
96 %doc samples
97
98
99
100 ###############################################################################
101 #                             Apple ][ subpackage                             #
102 ###############################################################################
103
104 %package apple2
105 Requires: %{name} = %{version}
106 License: Freeware
107 Summary: Apple ][ specific libraries and headers for the cc65 compiler.
108 Group: Development/Languages
109
110 %description apple2
111 This package contains the header files and libraries needed to write
112 programs for the Apple ][ using the cc65 crosscompiler.
113
114 %files apple2
115 %attr(644,root,root)            /usr/lib/cc65/lib/apple2.lib
116 %attr(644,root,root)            /usr/lib/cc65/emd/a2.*.emd
117 %attr(644,root,root)            /usr/lib/cc65/joy/a2.*.joy
118 %attr(644,root,root)            /usr/lib/cc65/mou/a2.*.mou
119 %attr(644,root,root)            /usr/lib/cc65/ser/a2.*.ser
120 %attr(644,root,root)            /usr/lib/cc65/tgi/a2.*.tgi
121 %attr(644,root,root)            /usr/lib/cc65/cfg/apple2-*.cfg
122
123
124
125 ###############################################################################
126 #                            Apple //e subpackage                             #
127 ###############################################################################
128
129 %package apple2enh
130 Requires: %{name} = %{version}
131 License: Freeware
132 Summary: Apple //e specific libraries and headers for the cc65 compiler.
133 Group: Development/Languages
134
135 %description apple2enh
136 This package contains the header files and libraries needed to write
137 programs for the Apple //e using the cc65 crosscompiler.
138
139 %files apple2enh
140 %attr(644,root,root)            /usr/lib/cc65/lib/apple2enh.lib
141 %attr(644,root,root)            /usr/lib/cc65/emd/a2e.*.emd
142 %attr(644,root,root)            /usr/lib/cc65/joy/a2e.*.joy
143 %attr(644,root,root)            /usr/lib/cc65/mou/a2e.*.mou
144 %attr(644,root,root)            /usr/lib/cc65/ser/a2e.*.ser
145 %attr(644,root,root)            /usr/lib/cc65/tgi/a2e.*.tgi
146
147
148
149 ###############################################################################
150 #                              Atari subpackage                               #
151 ###############################################################################
152
153 %package atari
154 Requires: %{name} = %{version}
155 License: Freeware
156 Summary: Atari specific libraries and headers for the cc65 compiler.
157 Group: Development/Languages
158
159 %description atari
160 This package contains the header files and libraries needed to write
161 programs for the 8 bit Atari machines using the cc65 crosscompiler.
162
163 %files atari
164 %attr(644,root,root)            /usr/lib/cc65/lib/atari.lib
165 %attr(644,root,root)            /usr/lib/cc65/joy/atari*.joy
166
167
168
169 ###############################################################################
170 #                            Oric Atmos subpackage                            #
171 ###############################################################################
172
173 %package atmos
174 Requires: %{name} = %{version}
175 License: Freeware
176 Summary: Oric Atmos specific libraries and headers for the cc65 compiler.
177 Group: Development/Languages
178
179 %description atmos
180 This package contains the header files and libraries needed to write
181 programs for the Oric Atmos using the cc65 crosscompiler.
182
183 %files atmos
184 %attr(644,root,root)            /usr/lib/cc65/lib/atmos.lib
185 %attr(644,root,root)            /usr/lib/cc65/tgi/atmos-*.tgi
186
187
188
189 ###############################################################################
190 #                               C128 subpackage                               #
191 ###############################################################################
192
193 %package c128
194 Requires: %{name} = %{version}
195 License: Freeware
196 Summary: C128 specific libraries and headers for the cc65 compiler.
197 Group: Development/Languages
198
199 %description c128
200 This package contains the header files and libraries needed to write
201 programs for the Commodore C128 using the cc65 crosscompiler.
202
203 %files c128
204 %attr(644,root,root)            /usr/lib/cc65/lib/c128.lib
205 %attr(644,root,root)            /usr/lib/cc65/emd/c128-*.emd
206 %attr(644,root,root)            /usr/lib/cc65/joy/c128-*.joy
207 %attr(644,root,root)            /usr/lib/cc65/mou/c128-*.mou
208 %attr(644,root,root)            /usr/lib/cc65/ser/c128-*.ser
209 %attr(644,root,root)            /usr/lib/cc65/tgi/c128-*.tgi
210
211
212
213 ###############################################################################
214 #                                C16 subpackage                               #
215 ###############################################################################
216
217 %package c16
218 Requires: %{name} = %{version}
219 License: Freeware
220 Summary: C16/116 specific libraries and headers for the cc65 compiler.
221 Group: Development/Languages
222
223 %description c16
224 This package contains the header files and libraries needed to write
225 programs for the Commodore C16/116 using the cc65 crosscompiler.
226
227 %files c16
228 %attr(644,root,root)            /usr/lib/cc65/lib/c16.lib
229 %attr(644,root,root)            /usr/lib/cc65/emd/c16-*.emd
230 %attr(644,root,root)            /usr/lib/cc65/joy/c16-*.joy
231
232
233
234 ###############################################################################
235 #                               C64 subpackage                                #
236 ###############################################################################
237
238 %package c64
239 Requires: %{name} = %{version}
240 License: Freeware
241 Summary: C64 specific libraries and headers for the cc65 compiler.
242 Group: Development/Languages
243
244 %description c64
245 This package contains the header files and libraries needed to write
246 programs for the Commodore C64 using the cc65 crosscompiler.
247
248 %files c64
249 %attr(644,root,root)            /usr/lib/cc65/lib/c64.lib
250 %attr(644,root,root)            /usr/lib/cc65/emd/dtv-*.emd
251 %attr(644,root,root)            /usr/lib/cc65/emd/c64-*.emd
252 %attr(644,root,root)            /usr/lib/cc65/joy/c64-*.joy
253 %attr(644,root,root)            /usr/lib/cc65/mou/c64-*.mou
254 %attr(644,root,root)            /usr/lib/cc65/ser/c64-*.ser
255 %attr(644,root,root)            /usr/lib/cc65/tgi/c64-*.tgi
256
257
258
259 ###############################################################################
260 #                              CBM510 subpackage                              #
261 ###############################################################################
262
263 %package cbm510
264 Requires: %{name} = %{version}
265 License: Freeware
266 Summary: CBM 510 specific libraries and headers for the cc65 compiler.
267 Group: Development/Languages
268
269 %description cbm510
270 This package contains the header files and libraries needed to write
271 programs for the Commodore CBM 510 (aka P500) using the cc65
272 crosscompiler.
273
274 %files cbm510
275 %attr(644,root,root)            /usr/lib/cc65/lib/cbm510.lib
276 %attr(644,root,root)            /usr/lib/cc65/emd/cbm510-*.emd
277 %attr(644,root,root)            /usr/lib/cc65/joy/cbm510-*.joy
278 %attr(644,root,root)            /usr/lib/cc65/ser/cbm510-*.ser
279
280
281
282 ###############################################################################
283 #                              CBM610 subpackage                              #
284 ###############################################################################
285
286 %package cbm610
287 Requires: %{name} = %{version}
288 License: Freeware
289 Summary: CBM 610 specific libraries and headers for the cc65 compiler.
290 Group: Development/Languages
291
292 %description cbm610
293 This package contains the header files and libraries needed to write
294 programs for the Commodore PET-II (CBM600/700) family of computers using
295 the cc65 crosscompiler.
296
297 %files cbm610
298 %attr(644,root,root)            /usr/lib/cc65/lib/cbm610.lib
299 %attr(644,root,root)            /usr/lib/cc65/emd/cbm610-*.emd
300 %attr(644,root,root)            /usr/lib/cc65/ser/cbm610-*.ser
301
302
303
304 ###############################################################################
305 #                               GEOS subpackage                               #
306 ###############################################################################
307
308 %package geos
309 Requires: %{name} = %{version}
310 License: Freeware
311 Summary: GEOS specific libraries and headers for the cc65 compiler.
312 Group: Development/Languages
313
314 %description geos
315 This package contains the header files and libraries needed to write
316 GEOS programs for the C64/C128 using the cc65 crosscompiler.
317
318 %files geos
319 %attr(755,root,root)            /usr/bin/grc
320 %attr(644,root,root)            /usr/lib/cc65/lib/geos.lib
321 %attr(755,root,root) %dir       /usr/lib/cc65/include/geos
322 %attr(644,root,root)            /usr/lib/cc65/include/geos/*.h
323 %attr(644,root,root)            /usr/lib/cc65/emd/geos-*.emd
324 %attr(644,root,root)            /usr/lib/cc65/joy/geos-*.joy
325 %attr(644,root,root)            /usr/lib/cc65/tgi/geos-*.tgi
326
327
328
329 ###############################################################################
330 #                               Lynx subpackage                               #
331 ###############################################################################
332
333 %package lynx
334 Requires: %{name} = %{version}
335 License: Freeware
336 Summary: Lynx specific libraries and headers for the cc65 compiler.
337 Group: Development/Languages
338
339 %description lynx
340 This package contains the header files and libraries needed to write
341 programs for the Lynx Game Console using the cc65 crosscompiler.
342
343 %files lynx
344 %attr(644,root,root)            /usr/lib/cc65/lib/lynx.lib
345 %attr(644,root,root)            /usr/lib/cc65/joy/lynx-*.joy
346 %attr(644,root,root)            /usr/lib/cc65/ser/lynx-*.ser
347 %attr(644,root,root)            /usr/lib/cc65/tgi/lynx-*.tgi
348
349
350
351 ###############################################################################
352 #                               NES subpackage                                #
353 ###############################################################################
354
355 %package nes
356 Requires: %{name} = %{version}
357 License: Freeware
358 Summary: NES specific libraries and headers for the cc65 compiler.
359 Group: Development/Languages
360
361 %description nes
362 This package contains the header files and libraries needed to write
363 programs for the Nintendo Entertainment System using the cc65
364 crosscompiler.
365
366 %files nes
367 %attr(644,root,root)            /usr/lib/cc65/lib/nes.lib
368 %attr(644,root,root)            /usr/lib/cc65/joy/nes-*.joy
369
370
371
372 ###############################################################################
373 #                               PET subpackage                                #
374 ###############################################################################
375
376 %package pet
377 Requires: %{name} = %{version}
378 License: Freeware
379 Summary: PET specific libraries and headers for the cc65 compiler.
380 Group: Development/Languages
381
382 %description pet
383 This package contains the header files and libraries needed to write
384 programs for the Commodore PET family of computers using the cc65
385 crosscompiler.
386
387 %files pet
388 %attr(644,root,root)            /usr/lib/cc65/lib/pet.lib
389 %attr(644,root,root)            /usr/lib/cc65/joy/pet-*.joy
390
391
392
393 ###############################################################################
394 #                              Plus/4 subpackage                              #
395 ###############################################################################
396
397 %package plus4
398 Requires: %{name} = %{version}
399 License: Freeware
400 Summary: Plus/4 specific libraries and headers for the cc65 compiler.
401 Group: Development/Languages
402
403 %description plus4
404 This package contains the header files and libraries needed to write
405 programs for the Commodore Plus/4 and C16/116 using the cc65
406 crosscompiler.
407
408 %files plus4
409 %attr(644,root,root)            /usr/lib/cc65/lib/plus4.lib
410 %attr(644,root,root)            /usr/lib/cc65/joy/plus4-*.joy
411 %attr(644,root,root)            /usr/lib/cc65/ser/plus4-*.ser
412
413
414
415 ###############################################################################
416 #                           Supervision subpackage                            #
417 ###############################################################################
418
419 %package supervision
420 Requires: %{name} = %{version}
421 License: Freeware
422 Summary: Supervision specific libraries and headers for the cc65 compiler.
423 Group: Development/Languages
424
425 %description supervision
426 This package contains the header files and libraries needed to write
427 programs for the Supervision Game console using the cc65 crosscompiler.
428
429 %files supervision
430 %attr(644,root,root)            /usr/lib/cc65/lib/supervision.lib
431 %attr(644,root,root)            /usr/lib/cc65/cfg/supervision-*.cfg
432
433
434
435 ###############################################################################
436 #                              VIC20 subpackage                               #
437 ###############################################################################
438
439 %package vic20
440 Requires: %{name} = %{version}
441 License: Freeware
442 Summary: VIC20 specific libraries and headers for the cc65 compiler.
443 Group: Development/Languages
444
445 %description vic20
446 This package contains the header files and libraries needed to write
447 programs for the Commodore VIC20 using the cc65 crosscompiler.
448
449 %files vic20
450 %attr(644,root,root)            /usr/lib/cc65/lib/vic20.lib
451 %attr(644,root,root)            /usr/lib/cc65/joy/vic20-*.joy
452 %attr(644,root,root)            /usr/lib/cc65/cfg/vic20-*.cfg
453
454
455
456 ###############################################################################
457 #                                    Build                                    #
458 ###############################################################################
459
460
461
462 %prep
463 %setup -q
464
465
466 %build
467 # Binaries
468 make -C src -f make/gcc.mak
469 # Libraries
470 make -C libsrc -s zap all
471 # Documentation
472 make -C doc html
473
474
475 %install
476 mkdir -p $RPM_BUILD_ROOT/usr/{bin,lib/cc65/{asminc,cfg,emd,include/{em,geos,joystick,mouse,sys,tgi},joy,lib,mou,obj,ser,tgi}}
477
478 # Binaries
479 install -s -m 755 src/ar65/ar65 $RPM_BUILD_ROOT/usr/bin
480 install -s -m 755 src/ca65/ca65 $RPM_BUILD_ROOT/usr/bin
481 install    -m 755 src/ca65html/ca65html $RPM_BUILD_ROOT/usr/bin
482 install -s -m 755 src/cc65/cc65 $RPM_BUILD_ROOT/usr/bin
483 install -s -m 755 src/cl65/cl65 $RPM_BUILD_ROOT/usr/bin
484 install -s -m 755 src/co65/co65 $RPM_BUILD_ROOT/usr/bin
485 install -s -m 755 src/da65/da65 $RPM_BUILD_ROOT/usr/bin
486 install -s -m 755 src/grc/grc $RPM_BUILD_ROOT/usr/bin
487 install -s -m 755 src/ld65/ld65 $RPM_BUILD_ROOT/usr/bin
488 install -s -m 755 src/od65/od65 $RPM_BUILD_ROOT/usr/bin
489
490 # Libraries and includes
491 install -m 644 libsrc/*.lib $RPM_BUILD_ROOT/usr/lib/cc65/lib
492 install -m 644 include/*.h $RPM_BUILD_ROOT/usr/lib/cc65/include
493 install -m 644 include/geos/*.h $RPM_BUILD_ROOT/usr/lib/cc65/include/geos
494 install -m 644 include/em/*.h $RPM_BUILD_ROOT/usr/lib/cc65/include/em
495 install -m 644 include/joystick/*.h $RPM_BUILD_ROOT/usr/lib/cc65/include/joystick
496 install -m 644 include/mouse/*.h $RPM_BUILD_ROOT/usr/lib/cc65/include/mouse
497 install -m 644 include/sys/*.h $RPM_BUILD_ROOT/usr/lib/cc65/include/sys
498 install -m 644 include/tgi/*.h $RPM_BUILD_ROOT/usr/lib/cc65/include/tgi
499 install -m 644 asminc/*.inc $RPM_BUILD_ROOT/usr/lib/cc65/asminc
500
501 # Extra object files
502 for extra in libsrc/*-*.o; do
503     install -m 644 ${extra} $RPM_BUILD_ROOT/usr/lib/cc65/obj
504 done
505
506 # Additional linker configurations
507 for config in src/ld65/cfg/*-*.cfg; do
508     install -m 644 ${config} $RPM_BUILD_ROOT/usr/lib/cc65/cfg
509 done
510
511 # Drivers
512 install -m 644 libsrc/*.emd $RPM_BUILD_ROOT/usr/lib/cc65/emd
513 install -m 644 libsrc/*.joy $RPM_BUILD_ROOT/usr/lib/cc65/joy
514 install -m 644 libsrc/*.mou $RPM_BUILD_ROOT/usr/lib/cc65/mou
515 install -m 644 libsrc/*.ser $RPM_BUILD_ROOT/usr/lib/cc65/ser
516 install -m 644 libsrc/*.tgi $RPM_BUILD_ROOT/usr/lib/cc65/tgi
517
518
519 %clean
520 rm -rf $RPM_BUILD_ROOT
521
522
523
524 %changelog
525 * Thu Dec 23 2003 Ullrich von Bassewitz <uz@cc65.org>
526 - Changelog is now in CVS