File: Makefile

package info (click to toggle)
bogl 0.1.9-2
  • links: PTS
  • area: main
  • in suites: woody
  • size: 568 kB
  • ctags: 632
  • sloc: ansic: 7,163; makefile: 116; perl: 26; sh: 12
file content (120 lines) | stat: -rw-r--r-- 3,515 bytes parent folder | download
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
LIBS = -lc
LIB = libbogl.a
DEVLINK = libbogl.so
SONAME = libbogl.so.0
SHARED_LIB = libbogl.so.0.1

CFLAGS = -O2 -g -D_GNU_SOURCE
WARNCFLAGS += -Wall -D_GNU_SOURCE
ALLCFLAGS = $(CFLAGS) $(WARNCFLAGS) $(FBCFLAGS)

architecture := $(shell dpkg-architecture -qDEB_BUILD_GNU_CPU)

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-pcfb.c bogl-pcfb.h		\
bogl-tcfb.c bogl-tcfb.h bogl-test.c bogl.c bogl.h boglP.h boml.c	\
boml.h bowl-boxes.c bowl.c bowl.h pngtobogl.c

ifeq (,)
	FBCFLAGS += -DBOGL_CFB_FB=1
	LIBBOGLOBJECTS += bogl-cfb.o bogl-pcfb.o bogl-tcfb.o
endif

ifeq ($(architecture), i386)
	FBCFLAGS += -DBOGL_VGA16_FB=1
	LIBBOGLOBJECTS += bogl-vga16.o
	SOURCES_DEP += bogl-vga16.c bogl-vga16.h
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 $(SHARED_LIB) $(LIB) bterm bdftobogl 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)

# 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)

bowl-boxes: $(LIB)
	$(CC) -DSTANDALONE_TEST $(ALLCFLAGS) bowl-boxes.c $(LIBOBJECTS) -o bowl-boxes

bterm: $(LIB) bterm.o bogl-term.o bogl-bgf.o
	$(CC) $+ $(LIB) -o bterm

bdftobogl: $(LIBBOGLOBJECTS)
%.c: %.bdf bdftobogl
	./bdftobogl $< > $@

pngtobogl: pngtobogl.o
	$(CC) $(ALLCFLAGS) -o pngtobogl pngtobogl.o -lgd -lpng -lm
%.c: %.png pngtobogl
	./pngtobogl $< > $@

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
	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/lib $(DESTDIR)/usr/include/bogl $(DESTDIR)/usr/bin
	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 mergebdf bterm pngtobogl reduce-font $(DESTDIR)/usr/bin
	install -d $(DESTDIR)/usr/share/terminfo
	tic -o$(DESTDIR)/usr/share/terminfo bterm.ti