1 |
|
# Makefile for creating Basilisk II distributions |
2 |
|
# Written in 1999 by Christian Bauer <Christian.Bauer@uni-mainz.de> |
3 |
|
|
4 |
+ |
VERSION = $(shell sed <BasiliskII.spec -n '/^Version: */s///p') |
5 |
+ |
RELEASE = $(shell sed <BasiliskII.spec -n '/^Release: */s///p') |
6 |
+ |
VERNAME = BasiliskII-$(VERSION) |
7 |
+ |
|
8 |
|
SRCARCHIVE = $(shell date +BasiliskII_src_%d%m%Y.tar.gz) |
9 |
< |
BUILDDIR = $(shell echo /tmp/build$$) |
9 |
> |
SRCRPM = $(VERNAME)-$(RELEASE).src.rpm |
10 |
> |
BINRPM = $(VERNAME)-$(RELEASE).i386.rpm |
11 |
> |
AMIGAARCHIVE = $(VERNAME)-$(RELEASE).amiga.lha |
12 |
> |
BEOSPPCARCHIVE = $(VERNAME)-$(RELEASE).beosppc.zip |
13 |
> |
BEOSX86ARCHIVE = $(VERNAME)-$(RELEASE).beosx86.zip |
14 |
> |
|
15 |
> |
TMPDIR = $(shell date +/tmp/build%m%s) |
16 |
> |
RPMDIR = /usr/src/redhat |
17 |
> |
DOCS = $(shell sed <BasiliskII.spec -n '/^\%doc */s///p') |
18 |
> |
SRCS = src |
19 |
> |
|
20 |
> |
default: |
21 |
> |
@echo "This top-level Makefile is for creating Basilisk II distributions." |
22 |
> |
@echo "If you want to install Basilisk II V$(VERSION) on your system, please follow" |
23 |
> |
@echo "the instructions in the file INSTALL." |
24 |
> |
@echo "If you want to create a Basilisk II V$(VERSION) distribution, type \"make help\"" |
25 |
> |
@echo "to get a list of possible targets." |
26 |
> |
|
27 |
> |
help: |
28 |
> |
@echo "The following targets are available:" |
29 |
> |
@echo " tarball source tarball ($(SRCARCHIVE))" |
30 |
> |
@echo " rpm source and binary RPMs ($(SRCRPM) and $(BINRPM))" |
31 |
> |
@echo " amiga AmigaOS binary archive ($(AMIGAARCHIVE))" |
32 |
> |
@echo " beosppc BeOS/ppc binary archive ($(BEOSPPCARCHIVE))" |
33 |
> |
@echo " beosx86 BeOS/x86 binary archive ($(BEOSX86ARCHIVE))" |
34 |
> |
|
35 |
> |
clean: |
36 |
> |
-rm -f $(SRCARCHIVE) |
37 |
> |
-rm -f $(SRCRPM) $(BINRPM) |
38 |
> |
-rm -f $(AMIGAARCHIVE) $(BEOSPPCARCHIVE) $(BEOSX86ARCHIVE) |
39 |
|
|
40 |
|
# |
41 |
|
# Source tarball |
42 |
|
# |
43 |
< |
srcdist: $(SRCARCHIVE) |
43 |
> |
tarball: $(SRCARCHIVE) |
44 |
> |
|
45 |
> |
$(SRCARCHIVE): $(SRCS) $(DOCS) |
46 |
> |
-rm -rf $(TMPDIR) |
47 |
> |
mkdir $(TMPDIR) |
48 |
> |
cd $(TMPDIR); cvs checkout BasiliskII |
49 |
> |
rm -rf $(TMPDIR)/BasiliskII/src/powerrom_cpu #not yet ready for distribution |
50 |
> |
mv $(TMPDIR)/BasiliskII $(TMPDIR)/$(VERNAME) |
51 |
> |
cd $(TMPDIR); tar cfz $@ $(VERNAME) |
52 |
> |
mv $(TMPDIR)/$@ . |
53 |
> |
rm -rf $(TMPDIR) |
54 |
> |
|
55 |
> |
# |
56 |
> |
# RPMs (source and i386 binary) |
57 |
> |
# |
58 |
> |
rpm: $(SRCRPM) $(BINRPM) |
59 |
|
|
60 |
< |
$(SRCARCHIVE): src CHANGES COPYING README TECH TODO |
61 |
< |
-rm -rf $(BUILDDIR) |
62 |
< |
mkdir $(BUILDDIR) |
63 |
< |
cd $(BUILDDIR); cvs checkout BasiliskII |
64 |
< |
rm $(BUILDDIR)/BasiliskII/BasiliskII.spec |
65 |
< |
rm $(BUILDDIR)/BasiliskII/Makefile |
66 |
< |
rm -rf $(BUILDDIR)/BasiliskII/src/powerrom_cpu |
67 |
< |
cd $(BUILDDIR); tar cfz $@ BasiliskII |
68 |
< |
mv $(BUILDDIR)/$@ . |
69 |
< |
rm -rf $(BUILDDIR) |
60 |
> |
$(RPMDIR)/SOURCES/$(SRCARCHIVE): $(SRCARCHIVE) |
61 |
> |
cp $(SRCARCHIVE) $(RPMDIR)/SOURCES |
62 |
> |
|
63 |
> |
$(RPMDIR)/SRPMS/$(SRCRPM) $(RPMDIR)/RPMS/i386/$(BINRPM): $(RPMDIR)/SOURCES/$(SRCARCHIVE) BasiliskII.spec |
64 |
> |
rpm -ba BasiliskII.spec |
65 |
> |
|
66 |
> |
$(SRCRPM): $(RPMDIR)/SRPMS/$(SRCRPM) |
67 |
> |
cp $(RPMDIR)/SRPMS/$(SRCRPM) . |
68 |
> |
|
69 |
> |
$(BINRPM): $(RPMDIR)/RPMS/i386/$(BINRPM) |
70 |
> |
cp $(RPMDIR)/RPMS/i386/$(BINRPM) . |
71 |
|
|
72 |
|
# |
73 |
< |
# RPM source archive |
73 |
> |
# Binary archive for AmigaOS |
74 |
|
# |
75 |
< |
srcrpm: $(SRCARCHIVE) |
75 |
> |
amiga: $(AMIGAARCHIVE) |
76 |
> |
|
77 |
> |
$(AMIGAARCHIVE): $(SRCS) $(DOCS) src/AmigaOS/BasiliskII |
78 |
> |
-rm -rf $(TMPDIR) |
79 |
> |
mkdir $(TMPDIR) |
80 |
> |
mkdir $(TMPDIR)/$(VERNAME) |
81 |
> |
cp $(DOCS) $(TMPDIR)/$(VERNAME) |
82 |
> |
cp src/AmigaOS/BasiliskII $(TMPDIR)/$(VERNAME) |
83 |
> |
cp src/AmigaOS/BasiliskII.info $(TMPDIR)/$(VERNAME) |
84 |
> |
chmod 775 $(TMPDIR)/$(VERNAME)/BasiliskII |
85 |
> |
cd $(TMPDIR); lha a $@ $(VERNAME) |
86 |
> |
mv $(TMPDIR)/$@ . |
87 |
> |
rm -rf $(TMPDIR) |
88 |
|
|
89 |
|
# |
90 |
< |
# RPM binary archive (Unix/i386) |
90 |
> |
# Binary archive for BeOS/ppc |
91 |
|
# |
92 |
< |
i386rpm: |
92 |
> |
beosppc: $(BEOSPPCARCHIVE) |
93 |
> |
|
94 |
> |
$(BEOSPPCARCHIVE): $(SRCS) $(DOCS) src/BeOS/obj.ppc/BasiliskII |
95 |
> |
-rm -rf $(TMPDIR) |
96 |
> |
mkdir $(TMPDIR) |
97 |
> |
mkdir $(TMPDIR)/$(VERNAME) |
98 |
> |
cp $(DOCS) $(TMPDIR)/$(VERNAME) |
99 |
> |
cp src/BeOS/obj.ppc/BasiliskII $(TMPDIR)/$(VERNAME) |
100 |
> |
mimeset -f $(TMPDIR) |
101 |
> |
cd $(TMPDIR); zip -ry $@ $(VERNAME)/ |
102 |
> |
mv $(TMPDIR)/$@ . |
103 |
> |
rm -rf $(TMPDIR) |
104 |
> |
|
105 |
> |
# |
106 |
> |
# Binary archive for BeOS/x86 |
107 |
> |
# |
108 |
> |
beosx86: $(BEOSX86ARCHIVE) |
109 |
> |
|
110 |
> |
$(BEOSX86ARCHIVE): $(SRCS) $(DOCS) src/BeOS/obj.x86/BasiliskII |
111 |
> |
-rm -rf $(TMPDIR) |
112 |
> |
mkdir $(TMPDIR) |
113 |
> |
mkdir $(TMPDIR)/$(VERNAME) |
114 |
> |
cp $(DOCS) $(TMPDIR)/$(VERNAME) |
115 |
> |
cp src/BeOS/obj.x86/BasiliskII $(TMPDIR)/$(VERNAME) |
116 |
> |
mimeset -f $(TMPDIR) |
117 |
> |
cd $(TMPDIR); zip -ry $@ $(VERNAME)/ |
118 |
> |
mv $(TMPDIR)/$@ . |
119 |
> |
rm -rf $(TMPDIR) |