ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/Makefile
Revision: 1.18
Committed: 2002-10-28T10:56:23Z (22 years ago) by nigel
Branch: MAIN
CVS Tags: nigel-build-12, nigel-build-13, nigel-build-16, nigel-build-15
Changes since 1.17: +17 -0 lines
Log Message:
Added rules to generate MacOSX archive

File Contents

# Content
1 # Makefile for creating Basilisk II distributions
2 # Written in 2002 by Christian Bauer <Christian.Bauer@uni-mainz.de>
3
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 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 V$(VERSION) distribution, type \"make help\""
24 @echo "to get a list of possible targets."
25
26 help:
27 @echo "The following targets are available:"
28 @echo " tarball source tarball ($(SRCARCHIVE))"
29 @echo " rpm source and binary RPMs"
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
41 #
42 tarball: $(SRCARCHIVE)
43
44 $(SRCARCHIVE): $(SRCS) $(DOCS)
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 (source and binary)
57 #
58 rpm: $(SRCARCHIVE)
59 rpm -ta --clean $(SRCARCHIVE)
60
61 #
62 # Binary archive for AmigaOS
63 #
64 amiga: $(AMIGAARCHIVE)
65
66 $(AMIGAARCHIVE): $(SRCS) $(DOCS) src/AmigaOS/BasiliskII
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
80 #
81 beosppc: $(BEOSPPCARCHIVE)
82
83 $(BEOSPPCARCHIVE): $(SRCS) $(DOCS) src/BeOS/obj.ppc/BasiliskII
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
96 #
97 beosx86: $(BEOSX86ARCHIVE)
98
99 $(BEOSX86ARCHIVE): $(SRCS) $(DOCS) src/BeOS/obj.x86/BasiliskII
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)