2 # common bits used by all libraries
5 all: # make "all" default target
11 vpath
%.asm
$(SRC_DIR
)
14 ifeq ($(SRC_DIR
),$(SRC_PATH_BARE
))
20 ALLFFLIBS
= avcodec avdevice avfilter avformat avutil postproc swscale
22 CPPFLAGS
:= -DHAVE_AV_CONFIG_H
-I
$(BUILD_ROOT_REL
) -I
$(SRC_PATH
) $(CPPFLAGS
)
26 $(CC
) $(CPPFLAGS
) $(CFLAGS
) $(CC_DEPFLAGS
) -c
$(CC_O
) $<
30 $(AS
) $(CPPFLAGS
) $(ASFLAGS
) $(AS_DEPFLAGS
) -c
-o
$@
$<
33 $(CC
) $(CPPFLAGS
) $(CFLAGS
) -Wno-unused
-c
-o
$@
-x c
$<
38 sed
's/$$MAJOR/$($(basename $(@F))_VERSION_MAJOR)/' $^
> $@
40 SVN_ENTRIES
= $(SRC_PATH_BARE
)/.svn
/entries
41 ifeq ($(wildcard $(SVN_ENTRIES
)),$(SVN_ENTRIES
))
42 $(BUILD_ROOT_REL
)/version.h
: $(SVN_ENTRIES
)
45 $(BUILD_ROOT_REL
)/version.h
: $(SRC_PATH_BARE
)/version.sh config.mak
46 $< $(SRC_PATH
) $@
$(EXTRA_VERSION
)
48 install: install-libs install-headers
50 uninstall: uninstall-libs uninstall-headers
52 .PHONY
: all depend dep
*clean install* uninstall* examples testprogs
55 OBJS-
$(HAVE_MMX
) += $(MMX-OBJS-yes
)
57 CFLAGS
+= $(CFLAGS-yes
)
59 FFLIBS
:= $(FFLIBS-yes
) $(FFLIBS
)
60 TESTPROGS
+= $(TESTPROGS-yes
)
62 FFEXTRALIBS
:= $(addprefix -l
,$(addsuffix $(BUILDSUF
),$(FFLIBS
))) $(EXTRALIBS
)
63 FFLDFLAGS
:= $(addprefix -L
$(BUILD_ROOT
)/lib
,$(ALLFFLIBS
)) $(LDFLAGS
)
65 EXAMPLES
:= $(addprefix $(SUBDIR
),$(addsuffix -example
$(EXESUF
),$(EXAMPLES
)))
66 OBJS
:= $(addprefix $(SUBDIR
),$(OBJS
))
67 TESTPROGS
:= $(addprefix $(SUBDIR
),$(addsuffix -test$(EXESUF
),$(TESTPROGS
)))
68 HOSTOBJS
:= $(addprefix $(SUBDIR
),$(addsuffix .o
,$(HOSTPROGS
)))
69 HOSTPROGS
:= $(addprefix $(SUBDIR
),$(addsuffix $(HOSTEXESUF
),$(HOSTPROGS
)))
71 DEP_LIBS
:= $(foreach NAME
,$(FFLIBS
),$(BUILD_ROOT_REL
)/lib
$(NAME
)/$($(CONFIG_SHARED
:yes
=S
)LIBNAME
))
73 ALLHEADERS
:= $(subst $(SRC_DIR
)/,$(SUBDIR
),$(wildcard $(SRC_DIR
)/*.h
$(SRC_DIR
)/$(ARCH
)/*.h
))
74 SKIPHEADERS
= $(addprefix $(SUBDIR
),$(SKIPHEADERS-
))
75 checkheaders
: $(filter-out $(SKIPHEADERS
:.h
=.ho
),$(ALLHEADERS
:.h
=.ho
))
78 $(HOSTCC
) $(HOSTCFLAGS
) -c
-o
$@
$<
80 $(HOSTPROGS
): %$(HOSTEXESUF
): %.o
81 $(HOSTCC
) $(HOSTLDFLAGS
) -o
$@
$< $(HOSTLIBS
)
86 CLEANSUFFIXES
= *.d
*.o
*~
*.ho
*.map
*.ver
87 DISTCLEANSUFFIXES
= *.
pc
88 LIBSUFFIXES
= *.a
*.lib
*.so
*.so.
* *.dylib
*.dll
*.def
*.dll.a
*.exp
90 -include $(wildcard $(DEPS
))