1#	$NetBSD: Makefile,v 1.29 2021/05/24 22:40:44 christos Exp $
2#
3
4.include <bsd.own.mk>
5.include "${NETBSDSRCDIR}/distrib/common/Makefile.distrib"
6
7.include <bsd.kernobj.mk>
8
9# we use spark, so that we get filetypes.
10ARCHIVE=BtNetBSD.spk
11
12RAMDISKDIR!=	cd ${.CURDIR}/../ramdisk && ${PRINTOBJDIR}
13
14BOOTLOADER=	${DESTDIR}/usr/mdec/boot32,ffa
15NBFS=		${DESTDIR}/usr/mdec/nbfs,ffa
16
17all: ${ARCHIVE}
18
19release: check_RELEASEDIR .WAIT ${ARCHIVE}
20	${RELEASE_INSTALL} splug.bas ${RELEASEDIR}/${RELEASEMACHINEDIR}/installation/misc
21	${RELEASE_INSTALL} ${DISTRIBDIR}/notes/acorn32/prep.RISCOS \
22	    ${RELEASEDIR}/${RELEASEMACHINEDIR}/
23	${RELEASE_INSTALL} ${ARCHIVE} \
24	    ${RELEASEDIR}/${RELEASEMACHINEDIR}/installation/misc/
25
26${ARCHIVE}: tmp/BtNetBSD
27	TOOL_MKTEMP=${TOOL_MKTEMP}; export TOOL_MKTEMP; \
28	TOOL_SPARKCRC=${TOOL_SPARKCRC}; export TOOL_SPARKCRC; \
29	TOOL_STAT=${TOOL_STAT}; export TOOL_STAT; \
30	    cd tmp/BtNetBSD && \
31	    ${HOST_SH} ${.CURDIR}/../mksparkive.sh * > ${.OBJDIR}/${ARCHIVE}
32
33UUDECODE_FILES=unixfs_res Sprite banner pling.Sprites pling.Sprites22 MemFix
34UUDECODE_FILES+=splug.bas
35
36UUDECODE_FILES_RENAME_unixfs_res=tmp/BtNetBSD/!BtNetBSD/native/unixfs_res,ffa
37UUDECODE_FILES_RENAME_Sprite=tmp/BtNetBSD/!BtNetBSD/src/Banner/Sprite,ff9
38UUDECODE_FILES_RENAME_banner=tmp/BtNetBSD/!BtNetBSD/Banner,ffa
39UUDECODE_FILES_RENAME_pling.Sprites=tmp/BtNetBSD/!BtNetBSD/!Sprites,ff9
40UUDECODE_FILES_RENAME_pling.Sprites22=tmp/BtNetBSD/!BtNetBSD/!Sprites22,ff9
41UUDECODE_FILES_RENAME_MemFix=tmp/BtNetBSD/!BtNetBSD/MemFix,ffa
42
43SETTYPE_FILES=!BtNetBSD/!Boot !BtNetBSD/!Edit !BtNetBSD/!Help !BtNetBSD/!Run
44SETTYPE_FILES+=!BtNetBSD/BtNetBSD !BtNetBSD/PreBoot !BtNetBSD/TestBoot
45SETTYPE_FILES+=!BtNetBSD/checkro403
46
47SETTYPE_FILE_!BtNetBSD/!Boot=feb
48SETTYPE_FILE_!BtNetBSD/!Edit=feb
49SETTYPE_FILE_!BtNetBSD/!Help=feb
50SETTYPE_FILE_!BtNetBSD/!Run=feb
51SETTYPE_FILE_!BtNetBSD/BtNetBSD=ffb
52SETTYPE_FILE_!BtNetBSD/PreBoot=feb
53SETTYPE_FILE_!BtNetBSD/TestBoot=ffb
54SETTYPE_FILE_!BtNetBSD/checkro403=ffb
55
56SETTYPE_FILES+=!BtNetBSD/native/MountUFS !BtNetBSD/native/KillUnixfs
57SETTYPE_FILES+=!BtNetBSD/native/OpenRoot !BtNetBSD/native/wd0a
58SETTYPE_FILES+=!BtNetBSD/native/wd0e !BtNetBSD/native/wd0f
59SETTYPE_FILES+=!BtNetBSD/native/wd0g !BtNetBSD/native/wd1a
60SETTYPE_FILES+=!BtNetBSD/native/wd1e
61
62SETTYPE_FILE_!BtNetBSD/native/KillUnixfs=feb
63SETTYPE_FILE_!BtNetBSD/native/MountUFS=ffb
64SETTYPE_FILE_!BtNetBSD/native/OpenRoot=feb
65SETTYPE_FILE_!BtNetBSD/native/wd0a=feb
66SETTYPE_FILE_!BtNetBSD/native/wd0e=feb
67SETTYPE_FILE_!BtNetBSD/native/wd0f=feb
68SETTYPE_FILE_!BtNetBSD/native/wd0g=feb
69SETTYPE_FILE_!BtNetBSD/native/wd1a=feb
70SETTYPE_FILE_!BtNetBSD/native/wd1e=feb
71
72SETTYPE_FILES+=!BtNetBSD/src/Banner/!Path !BtNetBSD/src/Banner/Banner
73SETTYPE_FILES+=!BtNetBSD/src/Banner/resutil
74
75SETTYPE_FILE_!BtNetBSD/src/Banner/!Path=feb
76SETTYPE_FILE_!BtNetBSD/src/Banner/Banner=ffb
77SETTYPE_FILE_!BtNetBSD/src/Banner/resutil=ffb
78
79SETTYPE_FILES+=misc/bb_netbsd
80
81SETTYPE_FILE_misc/bb_netbsd=ffb
82
83.PATH: ${.CURDIR}/BtNetBSD/!BtNetBSD
84.PATH: ${.CURDIR}/BtNetBSD/!BtNetBSD/native 
85.PATH: ${.CURDIR}/BtNetBSD/!BtNetBSD/src/Banner
86
87${UUDECODE_FILES}: setup_tmp
88
89.PHONY: setup_tmp
90setup_tmp:
91	-rm -rf tmp
92	mkdir tmp
93	cp -R ${.CURDIR}/BtNetBSD tmp/
94	-find tmp -path '*/CVS/*' -type f -exec rm -rf {} +
95	-find tmp -name CVS -type d -exec rmdir {} +
96	-find tmp -name '*.uue' -type f -exec rm -f {} +
97
98.PHONY: settypes
99settypes: setup_tmp
100.for file in ${SETTYPE_FILES}
101. if ${SETTYPE_FILE_${file}} == ffb
102	${TOOL_AWK} '{ printf "%5d %s\n", FNR * 10, $$0 }' \
103	    < tmp/BtNetBSD/${file} > tmp/BtNetBSD/${file}.tmp
104	mv tmp/BtNetBSD/${file}.tmp tmp/BtNetBSD/${file}
105. endif
106	mv tmp/BtNetBSD/${file} tmp/BtNetBSD/${file},${SETTYPE_FILE_${file}}
107.endfor
108
109.PHONY: tmp/BtNetBSD
110tmp/BtNetBSD: setup_tmp ${UUDECODE_FILES} settypes
111	cp ${KERNOBJDIR}/INSTALL/netbsd tmp/BtNetBSD/InstKern,1a9
112	cp ${BOOTLOADER} 'tmp/BtNetBSD/!BtNetBSD/boot32,ffa'
113	cp ${NBFS} 'tmp/BtNetBSD/!BtNetBSD/nbfs,ffa'
114	${TOOL_MDSETIMAGE} tmp/BtNetBSD/InstKern,1a9 ${RAMDISKDIR}/ramdisk.fs
115	# unixfs is copied into the !BtNetBSD dir at install time
116	cd tmp/BtNetBSD && cp -R '!BtNetBSD/native' unixfs
117
118clean: localclean
119
120localclean:
121	rm -f ${ARCHIVE}
122	-if [ -d tmp ]; then rm -rf tmp; fi
123
124.include <bsd.files.mk>
125