1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
|
LIBS = -lc
LIB = libbogl.a
DEVLINK = libbogl.so
SONAME = libbogl.so.0
SHARED_LIB = libbogl.so.0.1
CFLAGS ?= -O2 -g
WARNCFLAGS += -Wall -D_GNU_SOURCE
ALLCFLAGS = $(CFLAGS) $(WARNCFLAGS) $(FBCFLAGS) $(CPPFLAGS)
architecture := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU)
os := $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
LIBOBJECTS = $(LIBBOGLOBJECTS) $(LIBBOMLOBJECTS) $(LIBBOWLOBJECTS) \
$(LIBRSRCOBJECTS)
LIBBOGLOBJECTS = bogl.o bogl-font.o
LIBBOMLOBJECTS = arrow.o boml.o
LIBBOWLOBJECTS = bowl.o symbol.o
LIBRSRCOBJECTS = helvB10.o helvB12.o helvR10.o timBI18.o tux75.o
SOURCES_DEP = arrow.c bdftobogl.c bogl-cfb.c bogl-cfb.h bogl-cfb8.c \
bogl-cfb8.h bogl-font.c bogl-font.h \
bogl-test.c bogl.h boglP.h boml.c \
boml.h bowl.c bowl.h boglinfo.c
ifeq ($(os),linux)
SOURCES_DEP += pngtobogl.c bogl-pcfb.c bogl-pcfb.h bogl-tcfb.c bogl-tcfb.h bowl-boxes.c bogl.c
ifeq (,)
FBCFLAGS += -DBOGL_CFB_FB=1
LIBBOGLOBJECTS += bogl-cfb.o bogl-pcfb.o bogl-tcfb.o
endif
ifneq (,$(filter i386 ia64 amd64,$(architecture)))
FBCFLAGS += -DBOGL_VGA16_FB=1
LIBBOGLOBJECTS += bogl-vga16.o
SOURCES_DEP += bogl-vga16.c bogl-vga16.h
endif
endif
OBJECTS = $(LIBOBJECTS) bowl-boxes.o
GENERATED = helvB10.c helvB12.c helvR10.c timBI18.c tux75.c
# libutf8/libutf8_plug.so unifont-reduced.bgf
all: depend
ifeq ($(os),linux)
all: $(SHARED_LIB) $(LIB) bterm bdftobogl pngtobogl boglinfo
endif
all: reduce-font
%.lo: %.c
$(CC) $(ALLCFLAGS) -o $@ -fPIC -c $<
%.o: %.c
$(CC) $(ALLCFLAGS) -o $@ -c $<
$(SHARED_LIB): $(OBJECTS:%.o=%.lo)
$(CC) -shared -Wl,-soname,$(SONAME) -o $(SHARED_LIB) $(OBJECTS:%.o=%.lo) $(LDFLAGS)
# unifont-reduced.bgf: bdftobogl unifont-reduced.bdf
# ./bdftobogl -b unifont-reduced.bdf > unifont-reduced.bgf
# unifont-reduced.bdf: ../bf-utf/unifont.bdf ../all.utf libutf8/libutf8_plug.so reduce-font
# LD_PRELOAD=./libutf8/libutf8_plug.so LC_CTYPE=C.UTF-8 ./reduce-font $< < ../all.utf > $@
# ../all.utf: ../po.utf ../rn.utf $(xml_files)
# cat $^ > $@
# ../po.utf:
# $(MAKE) -C ../dbootstrap/po all-po-utf
# cat ../dbootstrap/po/utf/*.po > $@
# ../rn.utf:
# $(MAKE) RN_TARGET_DIR=. -C ../../scripts/rootdisk/messages install-utf
# cat ../../scripts/rootdisk/messages/release_notes.* > $@
reduce-font: reduce-font.c
$(LIB): $(OBJECTS)
rm -f $(LIB)
ar rcs $(LIB) $(OBJECTS)
bogl-test: $(LIB) bogl-test.c tux75.o
$(CC) $(ALLCFLAGS) -o bogl-test bogl-test.c tux75.o $(LIB) $(LDFLAGS)
bowl-boxes: $(LIB)
$(CC) -DSTANDALONE_TEST $(ALLCFLAGS) bowl-boxes.c $(LIBOBJECTS) -o bowl-boxes $(LDFLAGS)
bterm: $(LIB) bterm.o bogl-term.o bogl-bgf.o
$(CC) $+ $(LIB) -o bterm $(LDFLAGS)
bdftobogl: $(LIBBOGLOBJECTS)
%.c: %.bdf bdftobogl
./bdftobogl $< > $@
pngtobogl: pngtobogl.o
$(CC) $(ALLCFLAGS) -o pngtobogl pngtobogl.o -lgd $(LDFLAGS)
%.c: %.png pngtobogl
./pngtobogl $< > $@
boglinfo: boglinfo.o bogl-bgf.o
$(CC) $(ALLCFLAGS) -o boglinfo boglinfo.o bogl-bgf.o -lgd $(LDFLAGS)
depend: .depend
.depend: $(SOURCES_DEP)
$(CPP) $(ALLCFLAGS) -M $(SOURCES_DEP) > .depend
clean:
rm -rf reduce-font bterm bdftobogl pngtobogl *.o $(GENERATED) *-test lang.h tmp.*.c bowl-boxes $(LIB) unifont-reduced.bgf unifont-reduced.bdf boglinfo
rm -f $(OBJECTS:%.o=%.lo) $(SHARED_LIB)
rm -f .depend
distclean: clean
rm -f $(LIB) .depend *~ .nfs*
force:
ifeq (.depend,$(wildcard .depend))
include .depend
endif
install: all
install -d $(DESTDIR)/usr/bin
ifeq ($(os),linux)
install -d $(DESTDIR)/usr/lib $(DESTDIR)/usr/include/bogl
install -m644 $(SHARED_LIB) $(DESTDIR)/usr/lib/$(SHARED_LIB)
ln -s $(SHARED_LIB) $(DESTDIR)/usr/lib/$(DEVLINK)
ln -s $(SHARED_LIB) $(DESTDIR)/usr/lib/$(SONAME)
install -m644 $(LIB) $(DESTDIR)/usr/lib/$(LIB)
install -m644 *.h $(DESTDIR)/usr/include/bogl
install -m755 bdftobogl bterm pngtobogl boglinfo $(DESTDIR)/usr/bin
install -d $(DESTDIR)/usr/share/terminfo
tic -o$(DESTDIR)/usr/share/terminfo bterm.ti
endif
install -m755 mergebdf reduce-font $(DESTDIR)/usr/bin
|