]>
Commit | Line | Data |
---|---|---|
88b07041 ER |
1 | --- libmatroska-1.0.0/make/linux/Makefile~ 2010-08-05 23:37:39.000000000 +0300 |
2 | +++ libmatroska-1.0.0/make/linux/Makefile 2010-08-05 23:38:53.361903703 +0300 | |
b33caf87 | 3 | @@ -28,6 +28,7 @@ |
b57b5cf5 JB |
4 | INSTALL_OPTS = -m 644 |
5 | INSTALL_OPTS_LIB = -m 644 | |
6 | INSTALL_DIR_OPTS = -m 755 | |
7 | +LIBTOOL = libtool | |
8 | ||
b33caf87 JB |
9 | ifneq (,$(shell $(CXX) -v 2>&1 | tail -n 1 | grep -i mingw)) |
10 | $(error Please use the Makefile in ../mingw32) | |
11 | @@ -36,8 +37,8 @@ | |
a2b44dd0 | 12 | CWD=$(shell pwd) |
13 | ||
14 | # Options | |
298a82c1 | 15 | -LIBEBML_INCLUDE_DIR=$(CWD)/../../../libebml |
a2b44dd0 | 16 | -LIBEBML_LIB_DIR=$(CWD)/../../../libebml/make/linux |
b33caf87 JB |
17 | +LIBEBML_INCLUDE_DIR= |
18 | +LIBEBML_LIB_DIR= | |
a2b44dd0 | 19 | EXTENSION=.cpp |
20 | ||
298a82c1 | 21 | ifeq (yes,$(DEBUG)) |
88b07041 | 22 | @@ -50,12 +50,10 @@ |
b57b5cf5 | 23 | # Librarires |
298a82c1 | 24 | INCLUDE=-I$(CWD)/../.. -I$(LIBEBML_INCLUDE_DIR) |
b57b5cf5 JB |
25 | LIBS= |
26 | -MUX_LIBS=-lmatroska -lebml $(LIBICONV) | |
27 | +MUX_LIBS=libmatroska.la -lebml $(LIBICONV) | |
a2b44dd0 | 28 | |
29 | # Names | |
30 | -LIBRARY=libmatroska.a | |
eb78eecf | 31 | -LIBRARY_SO=libmatroska.so |
7b9ae7ae | 32 | -LIBRARY_SO_VER=libmatroska.so.3 |
b57b5cf5 | 33 | +LIBRARY=libmatroska.la |
a2b44dd0 | 34 | |
35 | # source-files | |
36 | sources:=$(wildcard ${SRC_DIR}*$(EXTENSION)) | |
eb78eecf | 37 | @@ -65,10 +64,8 @@ |
b33caf87 JB |
38 | # header files; replace .cxx extension with .h |
39 | headers:=$(patsubst %$(EXTENSION),%.h,$(sources)) | |
b57b5cf5 JB |
40 | |
41 | -# object files; replace .cxx extension with .o | |
42 | -objects:=$(patsubst %$(EXTENSION),%.o,$(sources)) | |
eb78eecf JB |
43 | - |
44 | -objects_so:=$(patsubst %$(EXTENSION),%.lo,$(sources)) | |
b57b5cf5 JB |
45 | +# object files; replace .cxx extension with .lo |
46 | +objects:=$(patsubst %$(EXTENSION),%.lo,$(sources)) | |
a2b44dd0 | 47 | |
a2e87a09 MC |
48 | WARNINGFLAGS=-Wall -Wno-unknown-pragmas -ansi -fno-gnu-keywords -D_GNU_SOURCE \ |
49 | -Wshadow | |
88b07041 | 50 | @@ -75,32 +73,19 @@ |
127ac958 JB |
51 | ifeq (Darwin,$(shell uname -s)) |
52 | all: staticlib | |
53 | else | |
eb78eecf | 54 | -all: staticlib sharedlib |
127ac958 JB |
55 | +all: $(LIBRARY) |
56 | endif | |
57 | ||
eb78eecf JB |
58 | -staticlib: $(LIBRARY) |
59 | - | |
60 | -sharedlib: $(LIBRARY_SO) | |
127ac958 | 61 | - |
eb78eecf JB |
62 | lib: |
63 | @echo "Use the 'staticlib', 'sharedlib' or 'all' targets." | |
64 | @false | |
a2b44dd0 | 65 | |
b57b5cf5 JB |
66 | # Build rules |
67 | -%.o: %$(EXTENSION) | |
a2e87a09 | 68 | - $(CXX) -c $(COMPILEFLAGS) -o $@ $< |
eb78eecf JB |
69 | - |
70 | %.lo: %$(EXTENSION) | |
71 | - $(CXX) -c $(COMPILEFLAGS) -fPIC -o $@ $< | |
7a27e1a8 | 72 | + $(LIBTOOL) --mode=compile --tag=CC $(CXX) -c $(COMPILEFLAGS) -o $@ $< |
a2b44dd0 | 73 | |
74 | $(LIBRARY): $(objects) | |
88b07041 | 75 | - $(AR) rcvu $@ $(objects) |
a2b44dd0 | 76 | - $(RANLIB) $@ |
eb78eecf JB |
77 | - |
78 | -$(LIBRARY_SO): $(objects_so) | |
79 | - $(CXX) -shared -Wl,-soname,$(LIBRARY_SO_VER) -o $(LIBRARY_SO_VER) $(objects_so) -lebml | |
6b3c9be1 | 80 | - rm -f $(LIBRARY_SO) |
eb78eecf | 81 | - ln -s $(LIBRARY_SO_VER) $(LIBRARY_SO) |
7b9ae7ae | 82 | + $(LIBTOOL) --mode=link --tag=CC $(LD) $(LDFLAGS) -version-info 3:0:0 -o $@ $^ $(LIBS) -lebml -rpath $(libdir) |
a2b44dd0 | 83 | |
84 | clean: cleantest | |
eb78eecf | 85 | rm -f $(objects) $(objects_so) |
6b3c9be1 | 86 | @@ -132,19 +116,19 @@ |
b33caf87 | 87 | test: test6 test9 |
b57b5cf5 | 88 | |
eb78eecf | 89 | test6: test6.o $(LIBRARY) $(LIBRARY_SO) |
a2e87a09 | 90 | - $(LD) -o $@ $(LINKFLAGS) $< $(MUX_LIBS) |
7a27e1a8 | 91 | + $(LIBTOOL) --mode=link --tag=CC $(LD) -o $@ $(LINKFLAGS) $< $(MUX_LIBS) |
b57b5cf5 JB |
92 | |
93 | test6.o: $(MUX_SRC_DIR)test6.cpp | |
a2e87a09 | 94 | $(CXX) -c $(COMPILEFLAGS) -o $@ $< |
b57b5cf5 | 95 | |
eb78eecf | 96 | test8: test8.o $(LIBRARY) $(LIBRARY_SO) |
a2e87a09 | 97 | - $(LD) -o $@ $(LINKFLAGS) $< $(MUX_LIBS) |
7a27e1a8 | 98 | + $(LIBTOOL) --mode=link --tag=CC $(LD) -o $@ $(LINKFLAGS) $< $(MUX_LIBS) |
b57b5cf5 JB |
99 | |
100 | test8.o: $(MUX_SRC_DIR)test8.cpp | |
a2e87a09 | 101 | $(CXX) -c $(COMPILEFLAGS) -o $@ $< |
a2b44dd0 | 102 | |
eb78eecf | 103 | test9: test9.o $(LIBRARY) $(LIBRARY_SO) |
a2e87a09 | 104 | - $(LD) -o $@ $(LINKFLAGS) $< $(MUX_LIBS) |
7a27e1a8 | 105 | + $(LIBTOOL) --mode=link --tag=CC $(LD) -o $@ $(LINKFLAGS) $< $(MUX_LIBS) |
298a82c1 | 106 | |
107 | test9.o: $(TAG_SRC_DIR)test9.cpp | |
a2e87a09 | 108 | $(CXX) -c $(COMPILEFLAGS) -o $@ $< |
6b3c9be1 | 109 | @@ -152,27 +136,22 @@ |
127ac958 JB |
110 | ifeq (Darwin,$(shell uname -s)) |
111 | install: install_staticlib install_headers | |
112 | else | |
eb78eecf JB |
113 | -install: install_staticlib install_sharedlib install_headers |
114 | +install: install_lib install_headers | |
127ac958 | 115 | endif |
eb78eecf JB |
116 | |
117 | install_headers: | |
b57b5cf5 | 118 | - $(INSTALL) $(INSTALL_DIR_OPTS) -d $(includedir) |
b57b5cf5 | 119 | + $(INSTALL) $(INSTALL_DIR_OPTS) -d $(DESTDIR)$(includedir) |
298a82c1 | 120 | for i in $(INCLUDE_DIR)/*.h; do \ |
b57b5cf5 JB |
121 | - $(INSTALL) $(INSTALL_OPTS) $$i $(includedir) ; \ |
122 | + $(INSTALL) $(INSTALL_OPTS) $$i $(DESTDIR)$(includedir) ; \ | |
123 | done | |
298a82c1 | 124 | - $(INSTALL) $(INSTALL_DIR_OPTS) -d $(includedir)/c |
125 | + $(INSTALL) $(INSTALL_DIR_OPTS) -d $(DESTDIR)$(includedir)/c | |
126 | for i in $(INCLUDE_DIR)/c/*.h; do \ | |
127 | - $(INSTALL) $(INSTALL_OPTS) $$i $(includedir)/c ; \ | |
128 | + $(INSTALL) $(INSTALL_OPTS) $$i $(DESTDIR)$(includedir)/c ; \ | |
b57b5cf5 JB |
129 | done |
130 | ||
eb78eecf JB |
131 | -install_staticlib: $(LIBRARY) |
132 | - $(INSTALL) $(INSTALL_DIR_OPTS) -d $(libdir) | |
133 | - $(INSTALL) $(INSTALL_OPTS_LIB) $(LIBRARY) $(libdir) | |
134 | - | |
135 | -install_sharedlib: $(LIBRARY_SO) | |
136 | - $(INSTALL) $(INSTALL_DIR_OPTS) -d $(libdir) | |
137 | - $(INSTALL) $(INSTALL_OPTS_LIB) $(LIBRARY_SO_VER) $(libdir) | |
6b3c9be1 | 138 | - ln -fs $(LIBRARY_SO_VER) $(libdir)/$(LIBRARY_SO) |
eb78eecf JB |
139 | +install_lib: $(LIBRARY) |
140 | + $(INSTALL) $(INSTALL_DIR_OPTS) -d $(DESTDIR)$(libdir) | |
141 | + $(LIBTOOL) --mode=install $(INSTALL) $(LIBRARY) $(DESTDIR)$(libdir) | |
142 | ||
b33caf87 | 143 | ifneq ($(wildcard .depend),) |
eb78eecf | 144 | include .depend |