]>
Commit | Line | Data |
---|---|---|
511242b5 JB |
1 | --- libbpg-0.9.5/Makefile.orig 2015-01-11 17:17:07.000000000 +0100 |
2 | +++ libbpg-0.9.5/Makefile 2015-01-13 21:41:19.791296623 +0100 | |
3 | @@ -18,6 +18,9 @@ | |
4 | #CONFIG_APPLE=y | |
5 | # Installation prefix | |
6 | prefix=/usr/local | |
7 | +bindir=$(prefix)/bin | |
8 | +libdir=$(prefix)/lib | |
9 | +includedir=$(prefix)/include | |
10 | ||
11 | ||
12 | ################################# | |
13 | @@ -38,7 +41,7 @@ | |
14 | ||
15 | PWD:=$(shell pwd) | |
16 | ||
17 | -CFLAGS:=-Os -Wall -MMD -fno-asynchronous-unwind-tables -fdata-sections -ffunction-sections -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -fomit-frame-pointer | |
18 | +CFLAGS:=$(OPTFLAGS) -Wall -MMD -fno-asynchronous-unwind-tables -fdata-sections -ffunction-sections -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -fomit-frame-pointer | |
19 | CFLAGS+=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_REENTRANT | |
20 | CFLAGS+=-I. | |
21 | CFLAGS+=-DCONFIG_BPG_VERSION=\"$(shell cat VERSION)\" | |
22 | @@ -53,7 +56,7 @@ | |
23 | EMLDFLAGS+=-O3 --memory-init-file 0 --closure 1 --post-js post.js | |
24 | EMCFLAGS:=$(CFLAGS) | |
25 | ||
26 | -LDFLAGS=-g | |
27 | +LDFLAGS=-Wl,--as-needed -Wl,--no-copy-dt-needed-entries -Wl,-z,relro -Wl,-z,combreloc | |
28 | ifdef CONFIG_APPLE | |
29 | LDFLAGS+=-Wl,-dead_strip | |
30 | else | |
31 | @@ -85,7 +88,7 @@ | |
32 | ||
33 | LIBBPG_JS8A_OBJS:=$(patsubst %.o, %.js8a.o, $(LIBBPG_OBJS)) tmalloc.js8a.o | |
34 | ||
35 | -$(LIBBPG_OBJS): CFLAGS+=-D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DHAVE_AV_CONFIG_H -std=c99 -D_GNU_SOURCE=1 -DUSE_VAR_BIT_DEPTH -DUSE_PRED | |
36 | +$(LIBBPG_OBJS) $(LIBBPG_OBJS:.o=.lo): CFLAGS+=-D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DHAVE_AV_CONFIG_H -std=c99 -D_GNU_SOURCE=1 -DUSE_VAR_BIT_DEPTH -DUSE_PRED | |
37 | ||
38 | $(LIBBPG_JS_OBJS): EMCFLAGS+=-D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DHAVE_AV_CONFIG_H -std=c99 -D_GNU_SOURCE=1 -DUSE_VAR_BIT_DEPTH | |
39 | ||
40 | @@ -155,17 +158,17 @@ | |
41 | ||
42 | bpgenc.o: CFLAGS+=-Wno-unused-but-set-variable | |
43 | ||
44 | -libbpg.a: $(LIBBPG_OBJS) | |
45 | - $(AR) rcs $@ $^ | |
46 | +libbpg.la: $(LIBBPG_OBJS:.o=.lo) | |
47 | + libtool --mode=link --tag=CC $(CC) $(LDFLAGS) -o $@ $^ -rpath $(libdir) | |
48 | ||
49 | -bpgdec$(EXE): bpgdec.o libbpg.a | |
50 | - $(CC) $(LDFLAGS) -o $@ $^ $(BPGDEC_LIBS) | |
51 | +bpgdec$(EXE): bpgdec.o libbpg.la | |
52 | + libtool --mode=link --tag=CC $(CC) $(LDFLAGS) -o $@ $^ $(BPGDEC_LIBS) | |
53 | ||
54 | bpgenc$(EXE): $(BPGENC_OBJS) | |
55 | $(CXX) $(LDFLAGS) -o $@ $^ $(BPGENC_LIBS) | |
56 | ||
57 | -bpgview$(EXE): bpgview.o libbpg.a | |
58 | - $(CC) $(LDFLAGS) -o $@ $^ $(BPGVIEW_LIBS) | |
59 | +bpgview$(EXE): bpgview.o libbpg.la | |
60 | + libtool --mode=link --tag=CC $(CC) $(LDFLAGS) -o $@ $^ $(BPGVIEW_LIBS) | |
61 | ||
62 | bpgdec.js: $(LIBBPG_JS_OBJS) post.js | |
63 | $(EMCC) $(EMLDFLAGS) -s TOTAL_MEMORY=33554432 -o $@ $(LIBBPG_JS_OBJS) | |
64 | @@ -177,12 +180,17 @@ | |
65 | $(EMCC) $(EMLDFLAGS) -s TOTAL_MEMORY=16777216 -o $@ $(LIBBPG_JS8A_OBJS) | |
66 | ||
67 | size: | |
68 | - strip bpgdec | |
69 | size bpgdec libbpg.o libavcodec/*.o libavutil/*.o | sort -n | |
70 | gzip < bpgdec | wc | |
71 | ||
72 | +install-lib: libbpg.la | |
73 | + install -d $(DESTDIR)$(libdir) $(DESTDIR)$(includedir) | |
74 | + libtool --mode=install install libbpg.la $(DESTDIR)$(libdir) | |
75 | + install -m 644 bpgenc.h libbpg.h $(DESTDIR)$(includedir) | |
76 | + | |
77 | install: bpgenc bpgdec | |
78 | - install -s -m 755 $^ $(prefix)/bin | |
79 | + install -d $(DESTDIR)$(bindir) | |
80 | + install -m 755 $^ $(DESTDIR)$(bindir) | |
81 | ||
82 | CLEAN_DIRS=doc html libavcodec libavutil \ | |
83 | jctvc jctvc/TLibEncoder jctvc/TLibVideoIO jctvc/TLibCommon jctvc/libmd5 | |
84 | @@ -198,6 +206,12 @@ | |
85 | %.o: %.cpp | |
86 | $(CXX) $(CXXFLAGS) -c -o $@ $< | |
87 | ||
88 | +%.lo: %.c | |
89 | + libtool --mode=compile --tag=CC $(CC) $(CFLAGS) -c -o $@ $< | |
90 | + | |
91 | +%.lo: %.cpp | |
92 | + libtool --mode=compile --tag=CXX $(CXX) $(CXXFLAGS) -c -o $@ $< | |
93 | + | |
94 | %.js.o: %.c | |
95 | $(EMCC) $(EMCFLAGS) -c -o $@ $< | |
96 |