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