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