annotate common.mak @ 29998:0dacb57a3d3e

Filter list of missing source files so that it only contains nonexisting files. Thus those files can be symlinked directly without testing if they exist.
author diego
date Mon, 14 Dec 2009 12:03:02 +0000
parents bc094de7968e
children 0f9c3f446fc6
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
26315
a80f0a7d73f4 Sync with FFmpeg's shiny new non-recursive build system.
diego
parents: 26246
diff changeset
5 all: # make "all" default target
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
6
26317
955f4b8ac094 Merge simplifications from FFmpeg r12764.
diego
parents: 26315
diff changeset
7 ifndef SUBDIR
29136
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
8 vpath %.c $(SRC_DIR)
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
9 vpath %.h $(SRC_DIR)
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
10 vpath %.S $(SRC_DIR)
27868
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
11 vpath %.asm $(SRC_DIR)
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
12
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
13 ifeq ($(SRC_DIR),$(SRC_PATH_BARE))
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
14 BUILD_ROOT_REL = .
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
15 else
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
16 BUILD_ROOT_REL = ..
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
17 endif
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
18
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
19 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
20
29672
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
21 CPPFLAGS := -DHAVE_AV_CONFIG_H -I$(BUILD_ROOT_REL) -I$(SRC_PATH) $(CPPFLAGS)
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
22
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
23 %.o: %.c
29672
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
24 $(CCDEP)
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
25 $(CC) $(CPPFLAGS) $(CFLAGS) $(CC_DEPFLAGS) -c $(CC_O) $<
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
26
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
27 %.o: %.S
29672
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
28 $(ASDEP)
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
29 $(AS) $(CPPFLAGS) $(ASFLAGS) $(AS_DEPFLAGS) -c -o $@ $<
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
30
24775
16f77f3eb187 Sync with FFmpeg r10774.
diego
parents: 23524
diff changeset
31 %.ho: %.h
29672
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
32 $(CC) $(CPPFLAGS) $(CFLAGS) -Wno-unused -c -o $@ -x c $<
27868
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
33
26671
24e6708e030c Sync with latest FFmpeg changes.
diego
parents: 26403
diff changeset
34 %$(EXESUF): %.c
24e6708e030c Sync with latest FFmpeg changes.
diego
parents: 26403
diff changeset
35
27868
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
36 SVN_ENTRIES = $(SRC_PATH_BARE)/.svn/entries
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
37 ifeq ($(wildcard $(SVN_ENTRIES)),$(SVN_ENTRIES))
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
38 $(BUILD_ROOT_REL)/version.h: $(SVN_ENTRIES)
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
39 endif
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
40
29136
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
41 $(BUILD_ROOT_REL)/version.h: $(SRC_PATH_BARE)/version.sh config.mak
28444
bffc31262b0e Sync with latest FFmpeg changes.
diego
parents: 28143
diff changeset
42 $< $(SRC_PATH) $@ $(EXTRA_VERSION)
27868
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
43
17627
24238abbd150 Import common.mak v1.1 from ffmpeg cvs, now it's needed by the building
rtognimp
parents:
diff changeset
44 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
45
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
46 uninstall: uninstall-libs uninstall-headers
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
47
29136
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
48 .PHONY: all depend dep *clean install* uninstall* examples testprogs
26315
a80f0a7d73f4 Sync with FFmpeg's shiny new non-recursive build system.
diego
parents: 26246
diff changeset
49 endif
a80f0a7d73f4 Sync with FFmpeg's shiny new non-recursive build system.
diego
parents: 26246
diff changeset
50
29136
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
51 OBJS-$(HAVE_MMX) += $(MMX-OBJS-yes)
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
52
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
53 CFLAGS += $(CFLAGS-yes)
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
54 OBJS += $(OBJS-yes)
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
55 FFLIBS := $(FFLIBS-yes) $(FFLIBS)
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
56 TESTPROGS += $(TESTPROGS-yes)
26315
a80f0a7d73f4 Sync with FFmpeg's shiny new non-recursive build system.
diego
parents: 26246
diff changeset
57
a80f0a7d73f4 Sync with FFmpeg's shiny new non-recursive build system.
diego
parents: 26246
diff changeset
58 FFEXTRALIBS := $(addprefix -l,$(addsuffix $(BUILDSUF),$(FFLIBS))) $(EXTRALIBS)
29136
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
59 FFLDFLAGS := $(addprefix -L$(BUILD_ROOT)/lib,$(ALLFFLIBS)) $(LDFLAGS)
26315
a80f0a7d73f4 Sync with FFmpeg's shiny new non-recursive build system.
diego
parents: 26246
diff changeset
60
29136
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
61 EXAMPLES := $(addprefix $(SUBDIR),$(addsuffix -example$(EXESUF),$(EXAMPLES)))
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
62 OBJS := $(addprefix $(SUBDIR),$(OBJS))
cfdba9b5abba Sync with latest FFmpeg changes.
diego
parents: 28444
diff changeset
63 TESTPROGS := $(addprefix $(SUBDIR),$(addsuffix -test$(EXESUF),$(TESTPROGS)))
26315
a80f0a7d73f4 Sync with FFmpeg's shiny new non-recursive build system.
diego
parents: 26246
diff changeset
64
29672
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
65 DEP_LIBS := $(foreach NAME,$(FFLIBS),$(BUILD_ROOT_REL)/lib$(NAME)/$($(CONFIG_SHARED:yes=S)LIBNAME))
26403
c7c1cc069961 Sync with latest FFmpeg changes.
diego
parents: 26317
diff changeset
66
28444
bffc31262b0e Sync with latest FFmpeg changes.
diego
parents: 28143
diff changeset
67 ALLHEADERS := $(subst $(SRC_DIR)/,$(SUBDIR),$(wildcard $(SRC_DIR)/*.h $(SRC_DIR)/$(ARCH)/*.h))
29672
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
68 SKIPHEADERS = $(addprefix $(SUBDIR),$(SKIPHEADERS-))
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
69 checkheaders: $(filter-out $(SKIPHEADERS:.h=.ho),$(ALLHEADERS:.h=.ho))
19016
837e543350b3 sync with FFmpeg r5718
diego
parents: 18311
diff changeset
70
26403
c7c1cc069961 Sync with latest FFmpeg changes.
diego
parents: 26317
diff changeset
71 DEPS := $(OBJS:.o=.d)
c7c1cc069961 Sync with latest FFmpeg changes.
diego
parents: 26317
diff changeset
72 depend dep: $(DEPS)
26315
a80f0a7d73f4 Sync with FFmpeg's shiny new non-recursive build system.
diego
parents: 26246
diff changeset
73
29672
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
74 CLEANSUFFIXES = *.o *~ *.ho *.map
27868
c4913507c4ba Sync with latest FFmpeg changes.
diego
parents: 26671
diff changeset
75 DISTCLEANSUFFIXES = *.d *.pc
29672
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
76 LIBSUFFIXES = *.a *.lib *.so *.so.* *.dylib *.dll *.def *.dll.a *.exp
26155
ba3e34112e47 sync with FFmpeg r12354
diego
parents: 24858
diff changeset
77
29672
bc094de7968e Sync with current FFmpeg HEAD.
diego
parents: 29136
diff changeset
78 -include $(wildcard $(DEPS))