File: Makefile

package info (click to toggle)
jbigkit 2.1-6.1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 1,204 kB
  • sloc: ansic: 5,662; makefile: 340; perl: 82; sh: 3
file content (62 lines) | stat: -rw-r--r-- 1,691 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
# Unix makefile for the JBIG-KIT library

# Select an ANSI/ISO C compiler here, GNU gcc is recommended
CC ?= gcc

# Options for the compiler: A high optimization level is suggested
CFLAGS ?= -g -O -W -Wall -ansi -pedantic # --coverage
CFLAGS_PIC ?= -fPIC

all: libjbig.a libjbig.so libjbig85.a tstcodec tstcodec85

tstcodec: tstcodec.o jbig.o jbig_ar.o
	$(CC) $(CFLAGS) -o tstcodec tstcodec.o jbig.o jbig_ar.o $(LDFLAGS)

tstcodec85: tstcodec85.o jbig85.o jbig_ar.o
	$(CC) $(CFLAGS) -o tstcodec85 tstcodec85.o jbig85.o jbig_ar.o $(LDFLAGS)

libjbig.a: jbig.o jbig_ar.o
	rm -f libjbig.a
	$(AR) rcs $@ jbig.o jbig_ar.o

libjbig.so: jbig.pic.o jbig_ar.pic.o jbig85.pic.o
	$(CC) -shared -Wl,-soname,libjbig.so.0 -o libjbig.so.0 $+ $(LDFLAGS)
	ln -sf libjbig.so.0 libjbig.so

libjbig85.a: jbig85.o jbig_ar.o
	rm -f libjbig85.a
	$(AR) rcs $@ jbig85.o jbig_ar.o

jbig.o jbig.pic.o: jbig.c jbig.h jbig_ar.h
jbig85.o jbig85.pic.o: jbig85.c jbig85.h jbig_ar.h
jbig_ar.o jbig_ar.pic.o: jbig_ar.c jbig_ar.h
tstcodec.o: tstcodec.c jbig.h
tstcodec85.o: tstcodec85.c jbig85.h

update-po: jbig.c jbig85.c Makefile
	xgettext -ojbig.pot -k_ \
	  --copyright-holder='Markus Kuhn' \
	  --msgid-bugs-address='http://www.cl.cam.ac.uk/~mgk25/jbigkit/' \
	  --package-name jbigkit \
	jbig.c jbig85.c
	cd po && for po in *.po ; do \
	  msgmerge --update $$po ../jbig.pot ; done

analyze:
	clang --analyze *.c

test: tstcodec tstcodec85
	./tstcodec
	./tstcodec85

t82test.pbm: tstcodec
	./tstcodec $@

clean:
	rm -f *.o *.gcda *.gcno *.gcov *.plist *~ core gmon.out dbg_d\=??.pbm
	rm -f *.so* *.a *.la
	rm -f t82test.pbm
	rm -f tstcodec tstcodec85

%.pic.o : %.c
	$(CC) -c $(CFLAGS) $(CFLAGS_PIC) $< -o $@ $(LDFLAGS)