
CC	:= gcc
CFLAGS	:= -O2 -Wall

THISDIR    := $(shell basename `pwd`)
FONTSPEC   := -misc-fixed-medium-r-semicondensed-*-13-120-75-75-c-60
FONTSERVER := unix/:7100

CHARSETS := $(patsubst led-%.bdf,%,$(wildcard led-*.bdf))
ifeq ($(CHARSETS),)
CHARSETS := $(shell fslsfonts -server $(FONTSERVER) -fn "$(FONTSPEC)-*" |\
                    cut -d- -f14-)
endif
LED_PCF  := $(patsubst %,led-%.pcf.gz,$(CHARSETS))
TT_PCF   := caption.pcf.gz captioni.pcf.gz
TT_PCF   += teletext1.pcf.gz teletext1i.pcf.gz
TT_PCF   += teletext2.pcf.gz teletext2i.pcf.gz
TT_PCF   += teletext4.pcf.gz teletext4i.pcf.gz

LED_BDF  := $(subst .pcf.gz,.bdf,$(LED_PCF))
TT_BDF   := $(subst .pcf.gz,.bdf,$(TT_PCF))

##################################################################

all: $(LED_PCF) $(TT_PCF) $(LED_BDF) $(TT_BDF)
	mkfontdir
ifneq ($(DISPLAY),)
	-xset fp- "`pwd`:unscaled"
	xset +fp "`pwd`:unscaled"
	xset fp rehash
endif

clean distclean:
	rm -f $(LED_PCF) $(TT_PCF) $(TT_BDF)
	rm -f code/x11fonts
	rm -f fonts.dir fonts.cache-1
	rm -f *~ code/*~

realclean: distclean
	rm -f  $(LED_BDF) $(TT_BDF)

tarball: clean
	(cd ..; tar cvjf $(THISDIR).tar.bz2 $(THISDIR))

##################################################################

%.pcf.gz: %.bdf
	rm -f $@
	bdftopcf -o $*.pcf $<
	gzip $*.pcf

led-%.bdf:
	FONTSERVER=$(FONTSERVER) \
	  perl code/bigfont.pl -fn "$(FONTSPEC)-$*" > $@

$(TT_BDF): code/x11fonts
	code/x11fonts

code/x11fonts: code/x11font.c code/exp-gfx.c
	$(CC) $(CFLAGS) -o $@ $<
