#
# Makefile for HLaTeX fonts
#
# created by koaunghi.un@zdv.uni-tuebingen.de <1994/08/12>.
#
# "make" creates following fonts, which belong to standard HLaTeX font set:
#	gothic:		hgtmA	hgtmB	hgtbA	hgtbB
#	hanja:		hmjm[C-V]	hmjb[C-V]
#	symbol:		hsymm	hsymb
#
# If you want to make additional fonts say "make extra" for following
# fonts.
#	outline:	holA	holB
#
# You need HLaTeX to use these fonts.

SHELL = /bin/sh

MAGSTEP = 0.5 0.6 0.7 0.8 0.9 1.0 \\magstep0.5 \\magstep1 \
	\\magstep2 \\magstep3 \\magstep4 \\magstep5

#
# Configure here.
# ---------------

CC = gcc
CFLAGS = -O2
LDFLAGS = -s
INSTALL = install -c -m 644
PATCH = patch -p1
MKDIR = mkdir -p

# For valid MODE, see $MFINPUTS/modes.mf
#MODE = imagen
MODE = qmsostf

TEXFONTS = /usr/local/lib/texmf/fonts

# It's safe to leave following directories untouched, if you have
# dvi-drivers that are built with kpathsea library(xdvik,dvipsk).
# Otherwise, it's better to install fonts manually instead of saying
# 'make install' on the command line.

KOREAN_DIR = $(TEXFONTS)/korean

HANGUL_FONTS = $(KOREAN_DIR)/hangul
HANGUL_PKDIR = $(HANGUL_FONTS)/pk/$(MODE)
HANGUL_MFDIR = $(HANGUL_FONTS)/src
HANGUL_TFMDIR = $(HANGUL_FONTS)/tfm

HANJA_FONTS = $(KOREAN_DIR)/hanja
HANJA_PKDIR = $(HANJA_FONTS)/pk/$(MODE)
HANJA_TFMDIR = $(HANJA_FONTS)/tfm

#
# End of user configurations
# --------------------------

all: gothic symbol hanja

extra: outline

bm2mf-hanja: bm2mf-hanja.c p2c.h
	$(CC) $(CFLAGS) $(LDFLAGS) $< -o $@

bm2mf-hanja.c: bm2mf.c bm2mf-hanja.diff
	$(PATCH) -o $@ < bm2mf-hanja.diff

##

hanja: hanja65 bm2mf-hanja
	chmod +x ./make.hanja
	./make.hanja $(MODE)

hanja65: hanja65.gz
	gzip -d hanja65.gz

symbol: hsymm.mf hsymb.mf hsym.mf
	[ -d $(MODE) ] || mkdir $(MODE)
	for i in m b ; do \
	    for j in $(MAGSTEP) ; do \
		mf "\mode:=$(MODE); mag:=$${j}; input hsym$${i}.mf" ; \
		gftopk ./hsym$${i}.*gf ; \
		mv hsym$${i}.*pk $(MODE) ; \
		rm hsym$${i}.*gf ; \
	    done ; \
	    mv hsym*.tfm $(MODE)/ ; \
	done

gothic: hgtA.mf hgtB.mf hgtmA.mf hgtmB.mf hgtbA.mf hgtbB.mf
	[ -d $(MODE) ] || mkdir $(MODE)
	for i in A B ; do \
	    for j in $(MAGSTEP) ; do \
		mf "\mode:=$(MODE); mag:=$${j}; input hgtm$${i}.mf" ; \
		gftopk ./hgtm$${i}.*gf ; \
		mv hgtm$${i}.*pk $(MODE) ; \
		rm hgtm$${i}.*gf ; \
		mf "\mode:=$(MODE); mag:=$${j}; input hgtb$${i}.mf" ; \
		gftopk ./hgtb$${i}.*gf ; \
		mv hgtb$${i}.*pk $(MODE) ; \
		rm hgtb$${i}.*gf ; \
	    done ; \
	    mv hgt*.tfm $(MODE) ; \
	done

outline: holA.mf holB.mf
	[ -d $(MODE) ] || mkdir $(MODE)
	for i in A B ; do \
	    for j in $(MAGSTEP) ; do \
		mf "\mode:=$(MODE); mag:=$${j}; input hol$${i}.mf" ; \
		gftopk ./hol$${i}.*gf ; \
		mv hol$${i}.*pk $(MODE) ; \
		rm hol$${i}.*gf ; \
	    done ; \
	    mv hol*.tfm $(MODE) ; \
	done

install: all
	[ -d $(TEXFONTS) ] || $(MKDIR) $(TEXFONTS)
	[ -d $(KOREAN_DIR) ] || $(MKDIR) $(KOREAN_DIR)
	[ -d $(HANGUL_FONTS) ] || $(MKDIR) $(HANGUL_FONTS)
	[ -d $(HANJA_FONTS) ] || $(MKDIR) $(HANJA_FONTS)
	[ -d $(HANGUL_FONTS)/pk ] || $(MKDIR) $(HANGUL_FONTS)/pk
	[ -d $(HANJA_FONTS)/pk ] || $(MKDIR) $(HANJA_FONTS)/pk
	[ -d $(HANGUL_PKDIR) ] || $(MKDIR) $(HANGUL_PKDIR)
	[ -d $(HANJA_PKDIR) ] || $(MKDIR) $(HANJA_PKDIR)
	$(INSTALL) $(MODE)/*pk $(HANGUL_PKDIR)
	$(INSTALL) $(MODE).hanja/*pk $(HANJA_PKDIR)
	[ -d $(HANGUL_MFDIR) ] || $(MKDIR) $(HANGUL_MFDIR)
	$(INSTALL) hgt*.mf hol*.mf $(HANGUL_MFDIR)
	[ -d $(HANGUL_TFMDIR) ] || $(MKDIR) $(HANGUL_TFMDIR)
	$(INSTALL) $(MODE)/*.tfm $(HANGUL_TFMDIR)
	$(INSTALL) $(MODE).hanja/*.tfm $(HANJA_TFMDIR)

clean:
	rm -f hmj*.mf hpg*.mf *.log *.tfm *gf *pk mfput.log #*# *~
	rm -f bm2mf-hangul bm2mf-hanja bm2mf-hangul.c bm2mf-hanja.c
