annotate common.mak @ 25648:2438052a176e

Another small simplification. Slightly worse performance in the case where a buffer underrun happens, but this really should not matter.
author reimar
date Fri, 11 Jan 2008 20:36:33 +0000
parents ca10b24479ff
children ba3e34112e47
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
1 #
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
2 # common bits used by all libraries
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
3 #
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
4
21210
39a0f240f3d7 Sync with FFmpeg r7167.
diego
parents: 20227
diff changeset
5 VPATH = $(SRC_PATH_BARE)/lib$(NAME)
39a0f240f3d7 Sync with FFmpeg r7167.
diego
parents: 20227
diff changeset
6 SRC_DIR = "$(VPATH)"
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
7
21992
3465873e5c59 Sync with FFmpeg r7699.
diego
parents: 21975
diff changeset
8 CFLAGS += $(CFLAGS-yes)
3465873e5c59 Sync with FFmpeg r7699.
diego
parents: 21975
diff changeset
9 OBJS += $(OBJS-yes)
3465873e5c59 Sync with FFmpeg r7699.
diego
parents: 21975
diff changeset
10 ASM_OBJS += $(ASM_OBJS-yes)
23524
dd0d8b99192b Sync with FFmpeg r9278.
diego
parents: 21992
diff changeset
11 CPP_OBJS += $(CPP_OBJS-yes)
21992
3465873e5c59 Sync with FFmpeg r7699.
diego
parents: 21975
diff changeset
12
20152
0d25074baa1e Sync with FFmpeg r6642.
diego
parents: 20068
diff changeset
13 CFLAGS += -DHAVE_AV_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE \
0d25074baa1e Sync with FFmpeg r6642.
diego
parents: 20068
diff changeset
14 -D_ISOC9X_SOURCE -I$(BUILD_ROOT) -I$(SRC_PATH) \
0d25074baa1e Sync with FFmpeg r6642.
diego
parents: 20068
diff changeset
15 -I$(SRC_PATH)/libavutil $(OPTFLAGS)
23524
dd0d8b99192b Sync with FFmpeg r9278.
diego
parents: 21992
diff changeset
16
17700
a0c511c2d0bd update config.mak to match ffmpeg's version (fix alpha compilation)
aurel
parents: 17627
diff changeset
17 SRCS := $(OBJS:.o=.c) $(ASM_OBJS:.o=.S) $(CPPOBJS:.o=.cpp)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
18 OBJS := $(OBJS) $(ASM_OBJS) $(CPPOBJS)
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
19
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
20 all: $(LIBNAME) $(SLIBNAME)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
21
24858
ca10b24479ff sync with FFmpeg r10874
diego
parents: 24775
diff changeset
22 $(LIBNAME): $(OBJS)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
23 rm -f $@
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
24 $(AR) rc $@ $^ $(EXTRAOBJS)
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
25 $(RANLIB) $@
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
26
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
27 $(SLIBNAME): $(SLIBNAME_WITH_MAJOR)
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
28 $(LN_S) $^ $@
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
29
24858
ca10b24479ff sync with FFmpeg r10874
diego
parents: 24775
diff changeset
30 $(SLIBNAME_WITH_MAJOR): $(OBJS)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
31 $(CC) $(SHFLAGS) $(LDFLAGS) -o $@ $^ $(EXTRALIBS) $(EXTRAOBJS)
19375
3f2fc9e40cd4 sync with FFmpeg r5930
diego
parents: 19016
diff changeset
32 $(SLIB_EXTRA_CMD)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
33
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
34 %.o: %.c
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
35 $(CC) $(CFLAGS) $(LIBOBJFLAGS) -c -o $@ $<
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
36
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
37 %.o: %.S
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
38 $(CC) $(CFLAGS) $(LIBOBJFLAGS) -c -o $@ $<
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
39
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
40 %: %.o $(LIBNAME)
20068
e242e2e8fed4 Sync with FFmpeg r6563.
diego
parents: 20016
diff changeset
41 $(CC) $(LDFLAGS) -o $@ $^ $(EXTRALIBS)
e242e2e8fed4 Sync with FFmpeg r6563.
diego
parents: 20016
diff changeset
42
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
43 %.ho: %.h
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
44 $(CC) $(CFLAGS) $(LIBOBJFLAGS) -Wno-unused -c -o $@ -x c $<
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
45
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
46 ALLHEADERS = $(subst $(VPATH)/,,$(wildcard $(VPATH)/*.h))
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
47 checkheaders: $(filter-out %_template.ho,$(ALLHEADERS:.h=.ho))
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
48
20016
091983e8b1eb Sync with FFmpeg r6543.
diego
parents: 19375
diff changeset
49 depend dep: $(SRCS)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
50 $(CC) -MM $(CFLAGS) $^ 1>.depend
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
51
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
52 clean::
23524
dd0d8b99192b Sync with FFmpeg r9278.
diego
parents: 21992
diff changeset
53 rm -f *.o *~ *.a *.lib *.so *.so.* *.dylib *.dll \
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
54 *.def *.dll.a *.exp *.ho
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
55
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
56 distclean: clean
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
57 rm -f .depend
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
58
24858
ca10b24479ff sync with FFmpeg r10874
diego
parents: 24775
diff changeset
59 INSTALL_TARGETS-$(BUILD_SHARED) += install-lib-shared
ca10b24479ff sync with FFmpeg r10874
diego
parents: 24775
diff changeset
60 INSTALL_TARGETS-$(BUILD_STATIC) += install-lib-static
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
61
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
62 install: install-libs install-headers
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
63
24858
ca10b24479ff sync with FFmpeg r10874
diego
parents: 24775
diff changeset
64 install-libs: $(INSTALL_TARGETS-yes)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
65
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
66 install-lib-shared: $(SLIBNAME)
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
67 install -d "$(SHLIBDIR)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
68 install -m 755 $(SLIBNAME) "$(SHLIBDIR)/$(SLIBNAME_WITH_VERSION)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
69 $(STRIP) "$(SHLIBDIR)/$(SLIBNAME_WITH_VERSION)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
70 cd "$(SHLIBDIR)" && \
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
71 $(LN_S) $(SLIBNAME_WITH_VERSION) $(SLIBNAME_WITH_MAJOR)
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
72 cd "$(SHLIBDIR)" && \
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
73 $(LN_S) $(SLIBNAME_WITH_VERSION) $(SLIBNAME)
21975
b628a6f19968 Sync with FFmpeg r7634.
diego
parents: 21210
diff changeset
74 $(SLIB_INSTALL_EXTRA_CMD)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
75
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
76 install-lib-static: $(LIBNAME)
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
77 install -d "$(LIBDIR)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
78 install -m 644 $(LIBNAME) "$(LIBDIR)"
20016
091983e8b1eb Sync with FFmpeg r6543.
diego
parents: 19375
diff changeset
79 $(LIB_INSTALL_EXTRA_CMD)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
80
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
81 install-headers:
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
82 install -d "$(INCDIR)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
83 install -d "$(LIBDIR)/pkgconfig"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
84 install -m 644 $(addprefix $(SRC_DIR)/,$(HEADERS)) "$(INCDIR)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
85 install -m 644 $(BUILD_ROOT)/lib$(NAME).pc "$(LIBDIR)/pkgconfig"
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
86
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
87 uninstall: uninstall-libs uninstall-headers
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
88
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
89 uninstall-libs:
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
90 -rm -f "$(SHLIBDIR)/$(SLIBNAME_WITH_MAJOR)" \
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
91 "$(SHLIBDIR)/$(SLIBNAME)" \
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
92 "$(SHLIBDIR)/$(SLIBNAME_WITH_VERSION)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
93 -$(SLIB_UNINSTALL_EXTRA_CMD)
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
94 -rm -f "$(LIBDIR)/$(LIBNAME)"
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
95
23524
dd0d8b99192b Sync with FFmpeg r9278.
diego
parents: 21992
diff changeset
96 uninstall-headers::
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
97 rm -f $(addprefix "$(INCDIR)/",$(HEADERS))
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
98 rm -f "$(LIBDIR)/pkgconfig/lib$(NAME).pc"
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
99
20016
091983e8b1eb Sync with FFmpeg r6543.
diego
parents: 19375
diff changeset
100 .PHONY: all depend dep clean distclean install* uninstall*
091983e8b1eb Sync with FFmpeg r6543.
diego
parents: 19375
diff changeset
101
23524
dd0d8b99192b Sync with FFmpeg r9278.
diego
parents: 21992
diff changeset
102 -include .depend