1 |
# Makefile for creating SheepShaver distributions |
2 |
# Written in 1999 by Christian Bauer <Christian.Bauer@uni-mainz.de> |
3 |
|
4 |
VERSION := 2 |
5 |
RELEASE := 2 |
6 |
VERNAME := SheepShaver-$(VERSION) |
7 |
|
8 |
SRCARCHIVE := $(shell date +SheepShaver_src_%d%m%Y.tar.gz) |
9 |
|
10 |
TMPDIR := $(shell date +/tmp/build%m%s) |
11 |
DOCS := HISTORY LOG TODO |
12 |
SRCS := src |
13 |
|
14 |
# Where Basilisk II directory can be found |
15 |
B2_TOPDIR := ../BasiliskII |
16 |
|
17 |
# Where Kheperix directory can be found |
18 |
KPX_TOPDIR := ../kheperix |
19 |
|
20 |
default: help |
21 |
|
22 |
help: |
23 |
@echo "This top-level Makefile is for creating SheepShaver distributions." |
24 |
@echo "The following targets are available:" |
25 |
@echo " tarball source tarball ($(SRCARCHIVE))" |
26 |
@echo " links create links to Basilisk II sources" |
27 |
@echo " kpx_cpu synchronize with Kheperix CPU emulator" |
28 |
|
29 |
clean: |
30 |
-rm -f $(SRCARCHIVE) |
31 |
|
32 |
# |
33 |
# Source tarball |
34 |
# |
35 |
tarball: $(SRCARCHIVE) |
36 |
|
37 |
$(SRCARCHIVE): $(SRCS) $(DOCS) |
38 |
-rm -rf $(TMPDIR) |
39 |
mkdir $(TMPDIR) |
40 |
cd $(TMPDIR); cvs export -D "$(ISODATE)" SheepShaver |
41 |
rm $(TMPDIR)/SheepShaver/Makefile |
42 |
mv $(TMPDIR)/SheepShaver $(TMPDIR)/$(VERNAME) |
43 |
cd $(TMPDIR); tar cfz $@ $(VERNAME) |
44 |
mv $(TMPDIR)/$@ . |
45 |
rm -rf $(TMPDIR) |
46 |
|
47 |
# |
48 |
# Links to Basilisk II sources |
49 |
# |
50 |
links: |
51 |
@list='adb.cpp audio.cpp cdrom.cpp disk.cpp extfs.cpp prefs.cpp \ |
52 |
scsi.cpp sony.cpp xpram.cpp \ |
53 |
include/adb.h include/audio.h include/audio_defs.h \ |
54 |
include/cdrom.h include/clip.h include/debug.h include/disk.h \ |
55 |
include/extfs.h include/extfs_defs.h include/prefs.h \ |
56 |
include/scsi.h include/serial.h include/serial_defs.h \ |
57 |
include/sony.h include/sys.h include/timer.h include/xpram.h \ |
58 |
BeOS/audio_beos.cpp BeOS/extfs_beos.cpp BeOS/scsi_beos.cpp \ |
59 |
BeOS/serial_beos.cpp BeOS/sys_beos.cpp BeOS/timer_beos.cpp \ |
60 |
BeOS/xpram_beos.cpp BeOS/SheepDriver BeOS/SheepNet \ |
61 |
Unix/audio_oss_esd.cpp Unix/extfs_unix.cpp Unix/serial_unix.cpp \ |
62 |
Unix/sshpty.h Unix/sshpty.c Unix/strlcpy.h Unix/strlcpy.c \ |
63 |
Unix/sys_unix.cpp Unix/timer_unix.cpp Unix/xpram_unix.cpp \ |
64 |
Unix/sigsegv.h Unix/sigsegv.cpp Unix/vm_alloc.h Unix/vm_alloc.cpp \ |
65 |
Unix/posix_sem.cpp Unix/video_vosf.h Unix/video_blit.h \ |
66 |
Unix/video_blit.cpp \ |
67 |
Unix/Linux/scsi_linux.cpp Unix/Linux/NetDriver'; \ |
68 |
PREFIX="`pwd`/"; case $(B2_TOPDIR) in /*) PREFIX="";; esac; \ |
69 |
for i in $$list; do \ |
70 |
echo $$i; \ |
71 |
ln -sf $${PREFIX}$(B2_TOPDIR)/src/$$i src/$$i; \ |
72 |
done; |
73 |
|
74 |
# |
75 |
# Synchronize with Kheperix CPU emulator" |
76 |
# |
77 |
kpx_cpu: |
78 |
@list='include/basic-blockinfo.hpp \ |
79 |
include/basic-cpu.hpp \ |
80 |
include/basic-plugin.hpp \ |
81 |
include/task-plugin.hpp \ |
82 |
include/block-alloc.hpp \ |
83 |
src/cpu/block-cache.hpp \ |
84 |
src/cpu/vm.hpp \ |
85 |
src/cpu/ppc/ppc-cpu.hpp \ |
86 |
src/cpu/ppc/ppc-cpu.cpp \ |
87 |
src/cpu/ppc/ppc-decode.cpp \ |
88 |
src/cpu/ppc/ppc-execute.cpp \ |
89 |
src/cpu/ppc/genexec.pl \ |
90 |
src/cpu/ppc/ppc-bitfields.hpp \ |
91 |
src/cpu/ppc/ppc-blockinfo.hpp \ |
92 |
src/cpu/ppc/ppc-config.hpp \ |
93 |
src/cpu/ppc/ppc-operands.hpp \ |
94 |
src/cpu/ppc/ppc-operations.hpp \ |
95 |
src/cpu/ppc/ppc-registers.hpp'; \ |
96 |
for i in $$list; do \ |
97 |
echo $$i; \ |
98 |
mkdir -p src/kpx_cpu/`dirname $$i`; \ |
99 |
cp -f $(KPX_TOPDIR)/$$i src/kpx_cpu/$$i; \ |
100 |
/bin/true ln -sf $$i src/kpx_cpu/`basename $$i`; \ |
101 |
done; |