xref: /plan9/sys/src/cmd/tcs/font/mkfile (revision 7dd7cddf99dd7472612f1413b4da293630e6b1bc)
1</$objtype/mkfile
2NPROC=3
3
4OBJ=main.$O font.$O \
5	kmap.$O kbits.$O kuten208.$O \
6	bmap.$O bbits.$O big5.$O \
7	gmap.$O gbits.$O qbits.$O gb.$O
8
9$O.out:	$OBJ
10	$LD $prereq -lbio -lg
11
12%.$O:	%.c
13	$CC -w $stem.c
14
15$O:	hdr.h
16
17kuten208.$O:	../kuten208.c
18	$CC -I.. -w ../kuten208.c
19big5.$O:	../big5.c
20	$CC -I.. -w ../big5.c
21gb.$O:	../gb.c
22	$CC -I.. -w ../gb.c
23
24kuten208.$O kmap.$O:	../kuten208.h
25big5.$O bmap.$O:	../big5.h
26gb.$O gmap.$O:		../gb.h
27
28clean:V:
29	rm -f [$OS].out *.[$OS] y.tab.? rc.*
30
31poot:V:	merge
32	merge /lib/font/bit/gb/*.7000.24 > /dev/null
33
34merge:	merge.c
35	$CC -w merge.c && vl -o merge merge.$O && rm merge.$O
36
37fonts:V:	v.out rc.jis rc.big5
38	jis.rc
39	big5.rc
40
41rc.jis:VQD:
42	awk 'BEGIN {
43		fontsize = 512		# set this to chars/subfont
44		dest = "/lib/font/bit/jis"
45		print "#!/bin/rc"
46		printf "v.out -s 0x3000 0x303f > %s/jis3000.16\n", dest
47		printf "v.out -s 0x30a1 0x30fe > %s/katakana.16\n", dest
48		printf "v.out -s 0x3041 0x309e > %s/hiragana.16\n", dest
49		printf "v.out 0x3000 0x303f > %s/jis3000.24\n", dest
50		printf "v.out 0x30a1 0x30fe > %s/katakana.24\n", dest
51		printf "v.out 0x3041 0x309e > %s/hiragana.24\n", dest
52		for(i = 19968; i < 40865; i += fontsize)
53			printf "v.out -s 0x%x 0x%x > %s/jis%x.16\n", i, i+fontsize-1, dest, i
54		for(i = 19968; i < 40865; i += fontsize)
55			printf "v.out 0x%x 0x%x > %s/jis%x.24\n", i, i+fontsize-1, dest, i
56		exit
57	}' > $target
58	chmod 775 $target
59
60rc.big5:VQD:
61	awk 'BEGIN {
62		fontsize = 512		# set this to chars/subfont
63		dest = "/lib/font/bit/big5"
64		print "#!/bin/rc"
65		for(i = 19968; i < 40869; i += fontsize)
66			printf "v.out -5 -s 0x%x 0x%x > %s/%x.16\n", i, i+fontsize-1, dest, i
67		exit
68	}' > $target
69	chmod 775 $target
70
71rc.gb:VQD:
72	fn g{
73	x=$1
74	y=$2
75	z=$3
76	awk 'BEGIN {
77		fontsize = 512		# set this to chars/subfont
78		dest = "/lib/font/bit/gb/'$"x'."
79		opt = "'$"y'"
80		sz = "'$"z'"
81		print "#!/bin/rc"
82		printf "v.out %s 0x3000 0x303f > %s3000.%s\n", opt, dest, sz
83		printf "v.out %s 0x30a1 0x30fe > %skatakana.%s\n", opt, dest, sz
84		printf "v.out %s 0x3041 0x309e > %shiragana.%s\n", opt, dest, sz
85		printf "v.out %s 0x3100 0x312f > %sbopomofo.%s\n", opt, dest, sz
86		printf "v.out %s 0x3200 0x32ff > %s3200.%s\n", opt, dest, sz
87		for(i = 19968; i < 40869; i += fontsize)
88			printf "v.out %s 0x%x 0x%x > %s%x.%s\n", opt, i, i+fontsize-1, dest, i, sz
89		exit
90	}'
91	}
92	{
93		g TradSong '-q -f ../han/cfan24.ccf' 24
94		g FangSong '-q -f ../han/cfang24.ccf' 24
95		g Hei '-q -f ../han/chei24.ccf' 24
96		g Kai '-q -f ../han/ckai24.ccf' 24
97		g Song '-q -f ../han/csong24.ccf' 24
98		g Song '-g -s -f ../han/cclib16st.bdf' 16
99		g FangSong '-g -s -f ../han/cclib16fs.bdf' 16
100	} > $target
101	chmod 775 $target
102
103