Browse code

update mkfile to be more in line with build.sh

Sigrid Solveig Haflínudóttir authored on 18/05/2021 12:40:12
Showing 1 changed files
... ...
@@ -1,10 +1,9 @@
1 1
 </$objtype/mkfile
2 2
 
3
-TARG=assembler debugger emulator
4
-USM=`{walk -f projects/ | grep '\.usm$' | grep -v blank.usm | grep -v asma.usm}
3
+TARG=bin/debugger bin/uxnasm bin/uxnemu
4
+USM=`{walk -f projects/ | grep '\.usm$' | grep -v blank.usm}
5 5
 ROM=${USM:%.usm=%.rom}
6 6
 CFLAGS=$CFLAGS -I/sys/include/npe
7
-BIN=/$objtype/bin/uxn
8 7
 HFILES=\
9 8
 	/sys/include/npe/stdio.h\
10 9
 	src/devices/apu.h\
... ...
@@ -12,13 +11,14 @@ HFILES=\
12 11
 	src/devices/ppu.h\
13 12
 	src/uxn.h\
14 13
 
15
-CLEANFILES=${TARG:%=bin/%} `{echo $ROM | sed 's,([^ /]+/)+,bin/,g'}
14
+CLEANFILES=$TARG $ROM
16 15
 
17 16
 default:V: all
18 17
 
19
-all:V: ${TARG:%=bin/%} $ROM
18
+all:V: bin $TARG $ROM
20 19
 
21
-</sys/src/cmd/mkmany
20
+bin:
21
+	mkdir -p bin
22 22
 
23 23
 /sys/include/npe/stdio.h:
24 24
 	hget https://git.sr.ht/~ft/npe/archive/master.tar.gz | tar xz &&
... ...
@@ -26,26 +26,31 @@ all:V: ${TARG:%=bin/%} $ROM
26 26
 	mk install &&
27 27
 	rm -r npe-master
28 28
 
29
-%.rom: %.usm bin/assembler
30
-	bin/assembler $stem.usm $target && cp $target bin/
29
+%.rom:Q: %.usm bin/uxnasm
30
+	bin/uxnasm $stem.usm $target >/dev/null
31 31
 
32
-bin/assembler:Q: $O.assembler
33
-	mkdir -p bin && cp $prereq $target
32
+bin/debugger: debugger.$O uxn.$O
33
+	$LD -o $target $prereq
34 34
 
35
-bin/debugger:Q: $O.debugger
36
-	mkdir -p bin && cp $prereq $target
35
+bin/uxnasm: assembler.$O
36
+	$LD -o $target $prereq
37 37
 
38
-bin/emulator:Q: $O.emulator
39
-	mkdir -p bin && cp $prereq $target
40
-
41
-$O.assembler: assembler.$O
42
-
43
-$O.debugger: debugger.$O uxn.$O
44
-
45
-$O.emulator: emulator.$O apu.$O mpu.$O ppu.$O uxn.$O
38
+bin/uxnemu: emulator.$O apu.$O mpu.$O ppu.$O uxn.$O
39
+	$LD -o $target $prereq
46 40
 
47 41
 (assembler|debugger|emulator|uxn)\.$O:R: src/\1.c
48 42
 	$CC $CFLAGS -Isrc -o $target src/$stem1.c
49 43
 
50 44
 (apu|mpu|ppu)\.$O:R: src/devices/\1.c
51 45
 	$CC $CFLAGS -Isrc -o $target src/devices/$stem1.c
46
+
47
+nuke:V: clean
48
+
49
+clean:V:
50
+	rm -f *.[$OS] [$OS].??* $TARG $CLEANFILES
51
+
52
+%.clean:V:
53
+	rm -f $stem.[$OS] [$OS].$stem $stem
54
+
55
+install:QV: all
56
+	exit 'Sorry, there is no install rule yet'