annotate common.mak @ 26278:9912d8f272ae

Add DEPEND_CMD to config.mak (sync with FFmpeg).
author diego
date Mon, 31 Mar 2008 17:27:01 +0000
parents 84e71e0a0546
children a80f0a7d73f4
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
26246
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
5 SRC_DIR = $(SRC_PATH_BARE)/lib$(NAME)
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
6
26185
35f930b141ad sync with FFmpeg r12398
diego
parents: 26155
diff changeset
7 LIBVERSION = $(lib$(NAME)_VERSION)
35f930b141ad sync with FFmpeg r12398
diego
parents: 26155
diff changeset
8 LIBMAJOR = $(lib$(NAME)_VERSION_MAJOR)
35f930b141ad sync with FFmpeg r12398
diego
parents: 26155
diff changeset
9
26246
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
10 vpath %.c $(SRC_DIR)
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
11 vpath %.h $(SRC_DIR)
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
12 vpath %.S $(SRC_DIR)
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
13
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
14 ALLFFLIBS = avcodec avdevice avfilter avformat avutil postproc swscale
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
15
21992
3465873e5c59 Sync with FFmpeg r7699.
diego
parents: 21975
diff changeset
16 CFLAGS += $(CFLAGS-yes)
3465873e5c59 Sync with FFmpeg r7699.
diego
parents: 21975
diff changeset
17 OBJS += $(OBJS-yes)
3465873e5c59 Sync with FFmpeg r7699.
diego
parents: 21975
diff changeset
18 ASM_OBJS += $(ASM_OBJS-yes)
23524
dd0d8b99192b Sync with FFmpeg r9278.
diego
parents: 21992
diff changeset
19 CPP_OBJS += $(CPP_OBJS-yes)
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
20 FFLIBS += $(FFLIBS-yes)
21992
3465873e5c59 Sync with FFmpeg r7699.
diego
parents: 21975
diff changeset
21
20152
0d25074baa1e Sync with FFmpeg r6642.
diego
parents: 20068
diff changeset
22 CFLAGS += -DHAVE_AV_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE \
0d25074baa1e Sync with FFmpeg r6642.
diego
parents: 20068
diff changeset
23 -D_ISOC9X_SOURCE -I$(BUILD_ROOT) -I$(SRC_PATH) \
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
24 $(addprefix -I$(SRC_PATH)/lib,$(ALLFFLIBS)) $(OPTFLAGS)
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
25
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
26 EXTRALIBS := $(addprefix -l,$(addsuffix $(BUILDSUF),$(FFLIBS))) $(EXTRALIBS)
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
27 LDFLAGS := $(addprefix -L$(BUILD_ROOT)/lib,$(FFLIBS)) $(LDFLAGS)
23524
dd0d8b99192b Sync with FFmpeg r9278.
diego
parents: 21992
diff changeset
28
17700
a0c511c2d0bd update config.mak to match ffmpeg's version (fix alpha compilation)
aurel
parents: 17627
diff changeset
29 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
30 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
31
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
32 all: $(LIBNAME) $(SLIBNAME)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
33
24858
ca10b24479ff sync with FFmpeg r10874
diego
parents: 24775
diff changeset
34 $(LIBNAME): $(OBJS)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
35 rm -f $@
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
36 $(AR) rc $@ $^ $(EXTRAOBJS)
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
37 $(RANLIB) $@
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
38
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
39 $(SLIBNAME): $(SLIBNAME_WITH_MAJOR)
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
40 $(LN_S) $^ $@
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
41
24858
ca10b24479ff sync with FFmpeg r10874
diego
parents: 24775
diff changeset
42 $(SLIBNAME_WITH_MAJOR): $(OBJS)
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
43 $(SLIB_CREATE_DEF_CMD)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
44 $(CC) $(SHFLAGS) $(LDFLAGS) -o $@ $^ $(EXTRALIBS) $(EXTRAOBJS)
19375
3f2fc9e40cd4 sync with FFmpeg r5930
diego
parents: 19016
diff changeset
45 $(SLIB_EXTRA_CMD)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
46
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
47 %.o: %.c
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
48 $(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
49
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
50 %.o: %.S
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
51 $(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
52
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
53 %: %.o $(LIBNAME)
20068
e242e2e8fed4 Sync with FFmpeg r6563.
diego
parents: 20016
diff changeset
54 $(CC) $(LDFLAGS) -o $@ $^ $(EXTRALIBS)
e242e2e8fed4 Sync with FFmpeg r6563.
diego
parents: 20016
diff changeset
55
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
56 %.ho: %.h
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
57 $(CC) $(CFLAGS) $(LIBOBJFLAGS) -Wno-unused -c -o $@ -x c $<
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
58
26246
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
59 ALLHEADERS = $(subst $(SRC_DIR)/,,$(wildcard $(SRC_DIR)/*.h))
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
60 checkheaders: $(filter-out %_template.ho,$(ALLHEADERS:.h=.ho))
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
61
26246
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
62 depend dep: .depend
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
63
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
64 .depend: $(SRCS)
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
65 $(DEPEND_CMD) > .depend
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
66
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
67 clean::
23524
dd0d8b99192b Sync with FFmpeg r9278.
diego
parents: 21992
diff changeset
68 rm -f *.o *~ *.a *.lib *.so *.so.* *.dylib *.dll \
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
69 *.def *.dll.a *.exp *.ho *.map $(TESTS)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
70
26246
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
71 distclean:: clean
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
72 rm -f .depend
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
73
24858
ca10b24479ff sync with FFmpeg r10874
diego
parents: 24775
diff changeset
74 INSTALL_TARGETS-$(BUILD_SHARED) += install-lib-shared
ca10b24479ff sync with FFmpeg r10874
diego
parents: 24775
diff changeset
75 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
76
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
77 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
78
24858
ca10b24479ff sync with FFmpeg r10874
diego
parents: 24775
diff changeset
79 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
80
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
81 install-lib-shared: $(SLIBNAME)
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
82 install -d "$(SHLIBDIR)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
83 install -m 755 $(SLIBNAME) "$(SHLIBDIR)/$(SLIBNAME_WITH_VERSION)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
84 $(STRIP) "$(SHLIBDIR)/$(SLIBNAME_WITH_VERSION)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
85 cd "$(SHLIBDIR)" && \
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
86 $(LN_S) $(SLIBNAME_WITH_VERSION) $(SLIBNAME_WITH_MAJOR)
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
87 cd "$(SHLIBDIR)" && \
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
88 $(LN_S) $(SLIBNAME_WITH_VERSION) $(SLIBNAME)
21975
b628a6f19968 Sync with FFmpeg r7634.
diego
parents: 21210
diff changeset
89 $(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
90
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
91 install-lib-static: $(LIBNAME)
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
92 install -d "$(LIBDIR)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
93 install -m 644 $(LIBNAME) "$(LIBDIR)"
20016
091983e8b1eb Sync with FFmpeg r6543.
diego
parents: 19375
diff changeset
94 $(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
95
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
96 INCINSTDIR = $(INCDIR)/lib$(NAME)
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
97
26246
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
98 install-headers::
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
99 install -d "$(INCINSTDIR)"
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
100 install -d "$(LIBDIR)/pkgconfig"
26246
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
101 install -m 644 $(addprefix "$(SRC_DIR)"/,$(HEADERS)) "$(INCINSTDIR)"
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
102 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
103
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
104 uninstall: uninstall-libs uninstall-headers
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
105
26246
84e71e0a0546 sync with FFmpeg r12599
diego
parents: 26185
diff changeset
106 uninstall-libs::
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
107 -rm -f "$(SHLIBDIR)/$(SLIBNAME_WITH_MAJOR)" \
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
108 "$(SHLIBDIR)/$(SLIBNAME)" \
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
109 "$(SHLIBDIR)/$(SLIBNAME_WITH_VERSION)"
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
110 -$(SLIB_UNINSTALL_EXTRA_CMD)
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
111 -rm -f "$(LIBDIR)/$(LIBNAME)"
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
112
23524
dd0d8b99192b Sync with FFmpeg r9278.
diego
parents: 21992
diff changeset
113 uninstall-headers::
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
114 rm -f $(addprefix "$(INCINSTDIR)/",$(HEADERS))
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
115 rm -f "$(LIBDIR)/pkgconfig/lib$(NAME).pc"
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
116
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
117 tests: $(TESTS)
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
118
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
119 %-test$(EXESUF): %.c $(LIBNAME)
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
120 $(CC) $(CFLAGS) $(LDFLAGS) -DTEST -o $@ $^ $(EXTRALIBS)
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
121
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
122 .PHONY: all depend dep clean distclean install* uninstall* tests
20016
091983e8b1eb Sync with FFmpeg r6543.
diego
parents: 19375
diff changeset
123
23524
dd0d8b99192b Sync with FFmpeg r9278.
diego
parents: 21992
diff changeset
124 -include .depend