[FFmpeg-cvslog] Merge commit '92db5083077a8b0f8e1050507671b456fd155125'

James Almer git at videolan.org
Fri May 5 02:05:52 EEST 2017


ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Thu May  4 19:59:30 2017 -0300| [6fdd35a3126f6ecbe4ebab12bdf8867e4f544958] | committer: James Almer

Merge commit '92db5083077a8b0f8e1050507671b456fd155125'

* commit '92db5083077a8b0f8e1050507671b456fd155125':
  build: Generate pkg-config files from Make and not from configure
  build: Store library version numbers in .version files

Includes cherry-picked commits 8a34f3659371680ca523aecfd9098c28f0f809eb and
ee164727dd64c199b87118917e674b17c25e0da3 to fix issues.

Changes were also made to retain support for raise_major and build_suffix.

Reviewed-by: ubitux
Merged-by: James Almer <jamrial at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=6fdd35a3126f6ecbe4ebab12bdf8867e4f544958
---

 Makefile                      |  7 +++-
 configure                     | 94 +++++++++++--------------------------------
 ffbuild/.gitignore            |  1 +
 ffbuild/common.mak            |  4 +-
 ffbuild/library.mak           | 12 +++++-
 ffbuild/libversion.sh         | 15 +++++++
 ffbuild/pkgconfig_generate.sh | 62 ++++++++++++++++++++++++++++
 libavcodec/Makefile           |  3 +-
 libavdevice/Makefile          |  3 +-
 libavfilter/Makefile          |  3 +-
 libavformat/Makefile          |  3 +-
 libavresample/Makefile        |  1 +
 libavutil/Makefile            |  3 +-
 libpostproc/Makefile          |  3 +-
 libswresample/Makefile        |  3 +-
 libswscale/Makefile           |  3 +-
 16 files changed, 129 insertions(+), 91 deletions(-)

diff --git a/Makefile b/Makefile
index 8731d3b6ba..0122e1628f 100644
--- a/Makefile
+++ b/Makefile
@@ -87,7 +87,6 @@ tools/target_dec_%_fuzzer$(EXESUF): $(FF_DEP_LIBS)
 
 CONFIGURABLE_COMPONENTS =                                           \
     $(wildcard $(FFLIBS:%=$(SRC_PATH)/lib%/all*.c))                 \
-    $(wildcard $(FFLIBS:%=$(SRC_PATH)/lib%/version.h))              \
     $(SRC_PATH)/libavcodec/bitstream_filters.c                      \
     $(SRC_PATH)/libavformat/protocols.c                             \
 
@@ -109,6 +108,12 @@ $(1) :=
 $(1)-yes :=
 endef
 
+ifdef CONFIG_RAISE_MAJOR
+RAISE_MAJOR = 100
+else
+RAISE_MAJOR = 0
+endif
+
 define DOSUBDIR
 $(foreach V,$(SUBDIR_VARS),$(eval $(call RESET,$(V))))
 SUBDIR := $(1)/
diff --git a/configure b/configure
index 804b0ce347..96a5e98330 100755
--- a/configure
+++ b/configure
@@ -6756,20 +6756,6 @@ NOREDZONE_FLAGS=$noredzone_flags
 LIBFUZZER_PATH=$libfuzzer_path
 EOF
 
-get_version(){
-    lcname=lib${1}
-    name=$(toupper $lcname)
-    file=$source_path/$lcname/version.h
-    eval $(awk "/#define ${name}_VERSION_M/ { print \$2 \"=\" \$3 }" "$file")
-    enabled raise_major && eval ${name}_VERSION_MAJOR=$((${name}_VERSION_MAJOR+100))
-    eval ${name}_VERSION=\$${name}_VERSION_MAJOR.\$${name}_VERSION_MINOR.\$${name}_VERSION_MICRO
-    eval echo "${lcname}_VERSION=\$${name}_VERSION"             >> ffbuild/config.mak
-    eval echo "${lcname}_VERSION_MAJOR=\$${name}_VERSION_MAJOR" >> ffbuild/config.mak
-    eval echo "${lcname}_VERSION_MINOR=\$${name}_VERSION_MINOR" >> ffbuild/config.mak
-}
-
-map 'get_version $v' $LIBRARY_LIST
-
 map 'eval echo "${v}_FFLIBS=\$${v}_deps" >> ffbuild/config.mak' $LIBRARY_LIST
 
 print_program_extralibs(){
@@ -6866,64 +6852,32 @@ if test -n "$WARNINGS"; then
     enabled fatal_warnings && exit 1
 fi
 
-# build pkg-config files
+# Settings for pkg-config files
 
-lib_version(){
-    eval printf "\"lib${1}${build_suffix} >= \$LIB$(toupper ${1})_VERSION, \""
-}
-
-pkgconfig_generate(){
-    name=$1
-    shortname=${name#lib}${build_suffix}
-    comment=$2
-    version=$3
-    libs=$4
-    requires=$(map 'lib_version $v' $(eval echo \$${name#lib}_deps))
-    requires=${requires%, }
-    enabled ${name#lib} || return 0
-    mkdir -p $name
-    cat <<EOF > $name/$name${build_suffix}.pc
+cat > ffbuild/config.sh <<EOF
+# Automatically generated by configure - do not modify!
+shared=$shared
+build_suffix=$build_suffix
 prefix=$prefix
-exec_prefix=\${prefix}
 libdir=$libdir
-includedir=$incdir
-
-Name: $name
-Description: $comment
-Version: $version
-Requires: $(enabled shared || echo $requires)
-Requires.private: $(enabled shared && echo $requires)
-Conflicts:
-Libs: -L\${libdir} $(enabled rpath && echo "-Wl,-rpath,\${libdir}") -l${shortname} $(enabled shared || echo $libs)
-Libs.private: $(enabled shared && echo $libs)
-Cflags: -I\${includedir}
+incdir=$incdir
+rpath=$(enabled rpath && echo "-Wl,-rpath,\${libdir}")
+source_path=${source_path}
+LIBPREF=${LIBPREF}
+LIBSUF=${LIBSUF}
+
+extralibs_avutil="$LIBRT $LIBM"
+extralibs_avcodec="$extralibs"
+extralibs_avformat="$extralibs"
+extralibs_avdevice="$extralibs"
+extralibs_avfilter="$extralibs"
+extralibs_avresample="$LIBM"
+extralibs_postproc=""
+extralibs_swscale="$LIBM"
+extralibs_swresample="$LIBM $LIBSOXR"
 EOF
 
-mkdir -p doc/examples/pc-uninstalled
-includedir=${source_path}
-[ "$includedir" = . ] && includedir="\${pcfiledir}/../../.."
-    cat <<EOF > doc/examples/pc-uninstalled/${name}-uninstalled.pc
-prefix=
-exec_prefix=
-libdir=\${pcfiledir}/../../../$name
-includedir=${includedir}
-
-Name: $name
-Description: $comment
-Version: $version
-Requires: $requires
-Conflicts:
-Libs: -L\${libdir} -Wl,-rpath,\${libdir} -l${shortname} $(enabled shared || echo $libs)
-Cflags: -I\${includedir}
-EOF
-}
-
-pkgconfig_generate libavutil     "FFmpeg utility library"               "$LIBAVUTIL_VERSION"     "$LIBRT $LIBM"
-pkgconfig_generate libavcodec    "FFmpeg codec library"                 "$LIBAVCODEC_VERSION"    "$extralibs"
-pkgconfig_generate libavformat   "FFmpeg container format library"      "$LIBAVFORMAT_VERSION"   "$extralibs"
-pkgconfig_generate libavdevice   "FFmpeg device handling library"       "$LIBAVDEVICE_VERSION"   "$extralibs"
-pkgconfig_generate libavfilter   "FFmpeg audio/video filtering library" "$LIBAVFILTER_VERSION"   "$extralibs"
-pkgconfig_generate libpostproc   "FFmpeg postprocessing library"        "$LIBPOSTPROC_VERSION"   ""
-pkgconfig_generate libavresample "Libav audio resampling library"       "$LIBAVRESAMPLE_VERSION" "$LIBM"
-pkgconfig_generate libswscale    "FFmpeg image rescaling library"       "$LIBSWSCALE_VERSION"    "$LIBM"
-pkgconfig_generate libswresample "FFmpeg audio resampling library"      "$LIBSWRESAMPLE_VERSION" "$LIBM $LIBSOXR"
+for lib in $LIBRARY_LIST; do
+    lib_deps="$(eval echo \$${lib}_deps)"
+    echo ${lib}_deps=\"$lib_deps\" >> ffbuild/config.sh
+done
diff --git a/ffbuild/.gitignore b/ffbuild/.gitignore
index 693b7aa0d3..38ed170752 100644
--- a/ffbuild/.gitignore
+++ b/ffbuild/.gitignore
@@ -2,3 +2,4 @@
 /config.fate
 /config.log
 /config.mak
+/config.sh
diff --git a/ffbuild/common.mak b/ffbuild/common.mak
index 195737028a..e61f853ebb 100644
--- a/ffbuild/common.mak
+++ b/ffbuild/common.mak
@@ -89,7 +89,7 @@ COMPILE_HOSTC = $(call COMPILE,HOSTCC)
 %.h.c:
 	$(Q)echo '#include "$*.h"' >$@
 
-%.c %.h %.ver: TAG = GEN
+%.c %.h %.pc %.ver %.version: TAG = GEN
 
 # Dummy rule to stop make trying to rebuild removed or renamed headers
 %.h:
@@ -154,7 +154,7 @@ $(TOOLOBJS): | tools
 
 OBJDIRS := $(OBJDIRS) $(dir $(OBJS) $(HOBJS) $(HOSTOBJS) $(SLIBOBJS) $(TESTOBJS))
 
-CLEANSUFFIXES     = *.d *.o *~ *.h.c *.gcda *.gcno *.map *.ver *.ho *$(DEFAULT_YASMD).asm
+CLEANSUFFIXES     = *.d *.o *~ *.h.c *.gcda *.gcno *.map *.ver *.version *.ho *$(DEFAULT_YASMD).asm
 DISTCLEANSUFFIXES = *.pc
 LIBSUFFIXES       = *.a *.lib *.so *.so.* *.dylib *.dll *.def *.dll.a
 
diff --git a/ffbuild/library.mak b/ffbuild/library.mak
index 5e576d18cd..addc945168 100644
--- a/ffbuild/library.mak
+++ b/ffbuild/library.mak
@@ -1,5 +1,7 @@
 include $(SRC_PATH)/ffbuild/common.mak
 
+-include $(SUBDIR)lib$(NAME).version
+
 LIBVERSION := $(lib$(NAME)_VERSION)
 LIBMAJOR   := $(lib$(NAME)_VERSION_MAJOR)
 LIBMINOR   := $(lib$(NAME)_VERSION_MINOR)
@@ -7,8 +9,8 @@ INCINSTDIR := $(INCDIR)/lib$(NAME)
 
 INSTHEADERS := $(INSTHEADERS) $(HEADERS:%=$(SUBDIR)%)
 
-all-$(CONFIG_STATIC): $(SUBDIR)$(LIBNAME)
-all-$(CONFIG_SHARED): $(SUBDIR)$(SLIBNAME)
+all-$(CONFIG_STATIC): $(SUBDIR)$(LIBNAME)  $(SUBDIR)lib$(NAME).pc
+all-$(CONFIG_SHARED): $(SUBDIR)$(SLIBNAME) $(SUBDIR)lib$(NAME).pc
 
 LIBOBJS := $(OBJS) $(SUBDIR)%.h.o $(TESTOBJS)
 $(LIBOBJS) $(LIBOBJS:.o=.s) $(LIBOBJS:.o=.i):   CPPFLAGS += -DHAVE_AV_CONFIG_H
@@ -31,6 +33,12 @@ $(TESTPROGS): THISLIB = $(SUBDIR)$(LIBNAME)
 $(TESTPROGS) $(TOOLS): %$(EXESUF): %.o
 	$$(LD) $(LDFLAGS) $(LDEXEFLAGS) $$(LD_O) $$(filter %.o,$$^) $$(THISLIB) $(FFEXTRALIBS) $$(ELIBS)
 
+$(SUBDIR)lib$(NAME).version: $(SUBDIR)version.h | $(SUBDIR)
+	$$(M) $$(SRC_PATH)/ffbuild/libversion.sh $(NAME) $$< $(RAISE_MAJOR) > $$@
+
+$(SUBDIR)lib$(FULLNAME).pc: $(SUBDIR)version.h | $(SUBDIR)
+	$$(M) $$(SRC_PATH)/ffbuild/pkgconfig_generate.sh $(NAME) "$(DESC)"
+
 $(SUBDIR)lib$(NAME).ver: $(SUBDIR)lib$(NAME).v $(OBJS)
 	$$(M)sed 's/MAJOR/$(lib$(NAME)_VERSION_MAJOR)/' $$< | $(VERSION_SCRIPT_POSTPROCESS_CMD) > $$@
 
diff --git a/ffbuild/libversion.sh b/ffbuild/libversion.sh
new file mode 100755
index 0000000000..687adf28bc
--- /dev/null
+++ b/ffbuild/libversion.sh
@@ -0,0 +1,15 @@
+toupper(){
+    echo "$@" | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ
+}
+
+name=lib$1
+ucname=$(toupper ${name})
+file=$2
+raise_major=$3
+
+eval $(awk "/#define ${ucname}_VERSION_M/ { print \$2 \"=\" \$3 }" "$file")
+eval ${ucname}_VERSION_MAJOR=$((${ucname}_VERSION_MAJOR+${raise_major}))
+eval ${ucname}_VERSION=\$${ucname}_VERSION_MAJOR.\$${ucname}_VERSION_MINOR.\$${ucname}_VERSION_MICRO
+eval echo "${name}_VERSION=\$${ucname}_VERSION"
+eval echo "${name}_VERSION_MAJOR=\$${ucname}_VERSION_MAJOR"
+eval echo "${name}_VERSION_MINOR=\$${ucname}_VERSION_MINOR"
diff --git a/ffbuild/pkgconfig_generate.sh b/ffbuild/pkgconfig_generate.sh
new file mode 100755
index 0000000000..e5de6716d2
--- /dev/null
+++ b/ffbuild/pkgconfig_generate.sh
@@ -0,0 +1,62 @@
+#!/bin/sh
+
+. ffbuild/config.sh
+
+if test "$shared" = "yes"; then
+    shared=true
+else
+    shared=false
+fi
+
+shortname=$1
+name=lib${shortname}
+fullname=${name}${build_suffix}
+comment=$2
+libs=$(eval echo \$extralibs_${shortname})
+deps=$(eval echo \$${shortname}_deps)
+
+for dep in $deps; do
+    depname=lib${dep}
+    fulldepname=${depname}${build_suffix}
+    . ${depname}/${depname}.version
+    depversion=$(eval echo \$${depname}_VERSION)
+    requires="$requires ${fulldepname} >= ${depversion}, "
+done
+requires=${requires%, }
+
+version=$(grep ${name}_VERSION= $name/${name}.version | cut -d= -f2)
+
+cat <<EOF > $name/$fullname.pc
+prefix=$prefix
+exec_prefix=\${prefix}
+libdir=$libdir
+includedir=$incdir
+
+Name: $fullname
+Description: $comment
+Version: $version
+Requires: $($shared || echo $requires)
+Requires.private: $($shared && echo $requires)
+Conflicts:
+Libs: -L\${libdir} $rpath -l${fullname#lib} $($shared || echo $libs)
+Libs.private: $($shared && echo $libs)
+Cflags: -I\${includedir}
+EOF
+
+mkdir -p doc/examples/pc-uninstalled
+includedir=${source_path}
+[ "$includedir" = . ] && includedir="\${pcfiledir}/../../.."
+    cat <<EOF > doc/examples/pc-uninstalled/${name}-uninstalled.pc
+prefix=
+exec_prefix=
+libdir=\${pcfiledir}/../../../$name
+includedir=${source_path}
+
+Name: $fullname
+Description: $comment
+Version: $version
+Requires: $requires
+Conflicts:
+Libs: -L\${libdir} -Wl,-rpath,\${libdir} -l${fullname#lib} $($shared || echo $libs)
+Cflags: -I\${includedir}
+EOF
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 66d7587fb0..e3221184d1 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -1,6 +1,5 @@
-include $(SUBDIR)../ffbuild/config.mak
-
 NAME = avcodec
+DESC = FFmpeg codec library
 
 HEADERS = avcodec.h                                                     \
           avdct.h                                                       \
diff --git a/libavdevice/Makefile b/libavdevice/Makefile
index fb7623f713..c055d6718d 100644
--- a/libavdevice/Makefile
+++ b/libavdevice/Makefile
@@ -1,6 +1,5 @@
-include $(SUBDIR)../ffbuild/config.mak
-
 NAME    = avdevice
+DESC    = FFmpeg device handling library
 
 HEADERS = avdevice.h                                                    \
           version.h                                                     \
diff --git a/libavfilter/Makefile b/libavfilter/Makefile
index d19c555c91..0f990866e8 100644
--- a/libavfilter/Makefile
+++ b/libavfilter/Makefile
@@ -1,6 +1,5 @@
-include $(SUBDIR)../ffbuild/config.mak
-
 NAME = avfilter
+DESC = FFmpeg audio/video filtering library
 
 HEADERS = avfilter.h                                                    \
           avfiltergraph.h                                               \
diff --git a/libavformat/Makefile b/libavformat/Makefile
index d82639d123..4e169fdce5 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -1,6 +1,5 @@
-include $(SUBDIR)../ffbuild/config.mak
-
 NAME = avformat
+DESC = FFmpeg container format library
 
 HEADERS = avformat.h                                                    \
           avio.h                                                        \
diff --git a/libavresample/Makefile b/libavresample/Makefile
index 7d857a0e36..90f025a9f9 100644
--- a/libavresample/Makefile
+++ b/libavresample/Makefile
@@ -1,4 +1,5 @@
 NAME = avresample
+DESC = Libav audio resampling library
 
 HEADERS = avresample.h                                                  \
           version.h                                                     \
diff --git a/libavutil/Makefile b/libavutil/Makefile
index 0239c499f3..1fd8dca54b 100644
--- a/libavutil/Makefile
+++ b/libavutil/Makefile
@@ -1,6 +1,5 @@
-include $(SUBDIR)../ffbuild/config.mak
-
 NAME = avutil
+DESC = FFmpeg utility library
 
 HEADERS = adler32.h                                                     \
           aes.h                                                         \
diff --git a/libpostproc/Makefile b/libpostproc/Makefile
index 3c21f00a21..34317193a8 100644
--- a/libpostproc/Makefile
+++ b/libpostproc/Makefile
@@ -1,6 +1,5 @@
-include $(SUBDIR)../ffbuild/config.mak
-
 NAME = postproc
+DESC = FFmpeg postprocessing library
 FFLIBS = avutil
 
 HEADERS = postprocess.h        \
diff --git a/libswresample/Makefile b/libswresample/Makefile
index f50ee0d5a0..42666e4dd2 100644
--- a/libswresample/Makefile
+++ b/libswresample/Makefile
@@ -1,6 +1,5 @@
-include $(SUBDIR)../ffbuild/config.mak
-
 NAME = swresample
+DESC = FFmpeg audio resampling library
 FFLIBS = avutil
 
 HEADERS = swresample.h                       \
diff --git a/libswscale/Makefile b/libswscale/Makefile
index 19182b370e..5e03e6fa0a 100644
--- a/libswscale/Makefile
+++ b/libswscale/Makefile
@@ -1,6 +1,5 @@
-include $(SUBDIR)../ffbuild/config.mak
-
 NAME = swscale
+DESC = FFmpeg image rescaling library
 
 HEADERS = swscale.h                                                     \
           version.h                                                     \


======================================================================

diff --cc Makefile
index 8731d3b6ba,a9f5f9a8e9..0122e1628f
--- a/Makefile
+++ b/Makefile
@@@ -109,6 -145,6 +108,12 @@@ $(1) :
  $(1)-yes :=
  endef
  
++ifdef CONFIG_RAISE_MAJOR
++RAISE_MAJOR = 100
++else
++RAISE_MAJOR = 0
++endif
++
  define DOSUBDIR
  $(foreach V,$(SUBDIR_VARS),$(eval $(call RESET,$(V))))
  SUBDIR := $(1)/
diff --cc configure
index 804b0ce347,8e402383d8..96a5e98330
--- a/configure
+++ b/configure
@@@ -6751,26 -5315,10 +6751,12 @@@ SLIB_INSTALL_LINKS=${SLIB_INSTALL_LINKS
  SLIB_INSTALL_EXTRA_LIB=${SLIB_INSTALL_EXTRA_LIB}
  SLIB_INSTALL_EXTRA_SHLIB=${SLIB_INSTALL_EXTRA_SHLIB}
  VERSION_SCRIPT_POSTPROCESS_CMD=${VERSION_SCRIPT_POSTPROCESS_CMD}
 -SAMPLES:=${samples:-\$(LIBAV_SAMPLES)}
 +SAMPLES:=${samples:-\$(FATE_SAMPLES)}
 +NOREDZONE_FLAGS=$noredzone_flags
 +LIBFUZZER_PATH=$libfuzzer_path
  EOF
  
- get_version(){
-     lcname=lib${1}
-     name=$(toupper $lcname)
-     file=$source_path/$lcname/version.h
-     eval $(awk "/#define ${name}_VERSION_M/ { print \$2 \"=\" \$3 }" "$file")
-     enabled raise_major && eval ${name}_VERSION_MAJOR=$((${name}_VERSION_MAJOR+100))
-     eval ${name}_VERSION=\$${name}_VERSION_MAJOR.\$${name}_VERSION_MINOR.\$${name}_VERSION_MICRO
-     eval echo "${lcname}_VERSION=\$${name}_VERSION"             >> ffbuild/config.mak
-     eval echo "${lcname}_VERSION_MAJOR=\$${name}_VERSION_MAJOR" >> ffbuild/config.mak
-     eval echo "${lcname}_VERSION_MINOR=\$${name}_VERSION_MINOR" >> ffbuild/config.mak
- }
- 
- map 'get_version $v' $LIBRARY_LIST
- 
 -map 'eval echo "${v}_FFLIBS=\$${v}_deps" >> avbuild/config.mak' $LIBRARY_LIST
 +map 'eval echo "${v}_FFLIBS=\$${v}_deps" >> ffbuild/config.mak' $LIBRARY_LIST
  
  print_program_extralibs(){
      eval "program_extralibs=\$${1}_extralibs"
@@@ -6861,69 -5394,37 +6847,37 @@@ print_enabled_components()
  print_enabled_components libavcodec/bsf_list.c AVBitStreamFilter bitstream_filters $BSF_LIST
  print_enabled_components libavformat/protocol_list.c URLProtocol url_protocols $PROTOCOL_LIST
  
 -test -n "$WARNINGS" && printf "\n$WARNINGS"
 -
 -# build pkg-config files
 +if test -n "$WARNINGS"; then
 +    printf "\n%s%s$WARNINGS%s" "$warn_color" "$bold_color" "$reset_color"
 +    enabled fatal_warnings && exit 1
 +fi
  
- # build pkg-config files
 -lib_version(){
 -    eval printf "\"lib${1} >= \$LIB$(toupper ${1})_VERSION, \""
 -}
++# Settings for pkg-config files
  
- lib_version(){
-     eval printf "\"lib${1}${build_suffix} >= \$LIB$(toupper ${1})_VERSION, \""
- }
- 
- pkgconfig_generate(){
-     name=$1
-     shortname=${name#lib}${build_suffix}
-     comment=$2
-     version=$3
-     libs=$4
-     requires=$(map 'lib_version $v' $(eval echo \$${name#lib}_deps))
-     requires=${requires%, }
-     enabled ${name#lib} || return 0
-     mkdir -p $name
-     cat <<EOF > $name/$name${build_suffix}.pc
 -cat > avbuild/config.sh <<EOF
++cat > ffbuild/config.sh <<EOF
+ # Automatically generated by configure - do not modify!
+ shared=$shared
++build_suffix=$build_suffix
  prefix=$prefix
- exec_prefix=\${prefix}
  libdir=$libdir
--includedir=$incdir
- 
- Name: $name
- Description: $comment
- Version: $version
- Requires: $(enabled shared || echo $requires)
- Requires.private: $(enabled shared && echo $requires)
- Conflicts:
- Libs: -L\${libdir} $(enabled rpath && echo "-Wl,-rpath,\${libdir}") -l${shortname} $(enabled shared || echo $libs)
- Libs.private: $(enabled shared && echo $libs)
- Cflags: -I\${includedir}
++incdir=$incdir
++rpath=$(enabled rpath && echo "-Wl,-rpath,\${libdir}")
+ source_path=${source_path}
+ LIBPREF=${LIBPREF}
+ LIBSUF=${LIBSUF}
+ 
 -requires_avutil="$(map 'lib_version $v' $(echo $avutil_deps))"
 -requires_avcodec="$(map 'lib_version $v' $(echo $avcodec_deps))"
 -requires_avformat="$(map 'lib_version $v' $(echo $avformat_deps))"
 -requires_avdevice="$(map 'lib_version $v' $(echo $avdevice_deps))"
 -requires_avfilter="$(map 'lib_version $v' $(echo $avfilter_deps))"
 -requires_avresample="$(map 'lib_version $v' $(echo $avresample_deps))"
 -requires_swscale="$(map 'lib_version $v' $(echo $swscale_deps))"
 -
+ extralibs_avutil="$LIBRT $LIBM"
+ extralibs_avcodec="$extralibs"
+ extralibs_avformat="$extralibs"
+ extralibs_avdevice="$extralibs"
+ extralibs_avfilter="$extralibs"
+ extralibs_avresample="$LIBM"
++extralibs_postproc=""
+ extralibs_swscale="$LIBM"
++extralibs_swresample="$LIBM $LIBSOXR"
  EOF
 +
- mkdir -p doc/examples/pc-uninstalled
- includedir=${source_path}
- [ "$includedir" = . ] && includedir="\${pcfiledir}/../../.."
-     cat <<EOF > doc/examples/pc-uninstalled/${name}-uninstalled.pc
- prefix=
- exec_prefix=
- libdir=\${pcfiledir}/../../../$name
- includedir=${includedir}
- 
- Name: $name
- Description: $comment
- Version: $version
- Requires: $requires
- Conflicts:
- Libs: -L\${libdir} -Wl,-rpath,\${libdir} -l${shortname} $(enabled shared || echo $libs)
- Cflags: -I\${includedir}
- EOF
- }
- 
- pkgconfig_generate libavutil     "FFmpeg utility library"               "$LIBAVUTIL_VERSION"     "$LIBRT $LIBM"
- pkgconfig_generate libavcodec    "FFmpeg codec library"                 "$LIBAVCODEC_VERSION"    "$extralibs"
- pkgconfig_generate libavformat   "FFmpeg container format library"      "$LIBAVFORMAT_VERSION"   "$extralibs"
- pkgconfig_generate libavdevice   "FFmpeg device handling library"       "$LIBAVDEVICE_VERSION"   "$extralibs"
- pkgconfig_generate libavfilter   "FFmpeg audio/video filtering library" "$LIBAVFILTER_VERSION"   "$extralibs"
- pkgconfig_generate libpostproc   "FFmpeg postprocessing library"        "$LIBPOSTPROC_VERSION"   ""
- pkgconfig_generate libavresample "Libav audio resampling library"       "$LIBAVRESAMPLE_VERSION" "$LIBM"
- pkgconfig_generate libswscale    "FFmpeg image rescaling library"       "$LIBSWSCALE_VERSION"    "$LIBM"
- pkgconfig_generate libswresample "FFmpeg audio resampling library"      "$LIBSWRESAMPLE_VERSION" "$LIBM $LIBSOXR"
++for lib in $LIBRARY_LIST; do
++    lib_deps="$(eval echo \$${lib}_deps)"
++    echo ${lib}_deps=\"$lib_deps\" >> ffbuild/config.sh
++done
diff --cc ffbuild/common.mak
index 195737028a,0000000000..e61f853ebb
mode 100644,000000..100644
--- a/ffbuild/common.mak
+++ b/ffbuild/common.mak
@@@ -1,168 -1,0 +1,168 @@@
 +#
 +# common bits used by all libraries
 +#
 +
 +DEFAULT_YASMD=.dbg
 +
 +ifeq ($(DBG),1)
 +YASMD=$(DEFAULT_YASMD)
 +else
 +YASMD=
 +endif
 +
 +ifndef SUBDIR
 +
 +ifndef V
 +Q      = @
 +ECHO   = printf "$(1)\t%s\n" $(2)
 +BRIEF  = CC CXX OBJCC HOSTCC HOSTLD AS YASM AR LD STRIP CP WINDRES
 +SILENT = DEPCC DEPHOSTCC DEPAS DEPYASM RANLIB RM
 +
 +MSG    = $@
 +M      = @$(call ECHO,$(TAG),$@);
 +$(foreach VAR,$(BRIEF), \
 +    $(eval override $(VAR) = @$$(call ECHO,$(VAR),$$(MSG)); $($(VAR))))
 +$(foreach VAR,$(SILENT),$(eval override $(VAR) = @$($(VAR))))
 +$(eval INSTALL = @$(call ECHO,INSTALL,$$(^:$(SRC_DIR)/%=%)); $(INSTALL))
 +endif
 +
 +ALLFFLIBS = avcodec avdevice avfilter avformat avresample avutil postproc swscale swresample
 +
 +# NASM requires -I path terminated with /
 +IFLAGS     := -I. -I$(SRC_LINK)/
 +CPPFLAGS   := $(IFLAGS) $(CPPFLAGS)
 +CFLAGS     += $(ECFLAGS)
 +CCFLAGS     = $(CPPFLAGS) $(CFLAGS)
 +OBJCFLAGS  += $(EOBJCFLAGS)
 +OBJCCFLAGS  = $(CPPFLAGS) $(CFLAGS) $(OBJCFLAGS)
 +ASFLAGS    := $(CPPFLAGS) $(ASFLAGS)
 +CXXFLAGS   := $(CPPFLAGS) $(CFLAGS) $(CXXFLAGS)
 +YASMFLAGS  += $(IFLAGS:%=%/) -Pconfig.asm
 +
 +HOSTCCFLAGS = $(IFLAGS) $(HOSTCPPFLAGS) $(HOSTCFLAGS)
 +LDFLAGS    := $(ALLFFLIBS:%=$(LD_PATH)lib%) $(LDFLAGS)
 +
 +define COMPILE
 +       $(call $(1)DEP,$(1))
 +       $($(1)) $($(1)FLAGS) $($(1)_DEPFLAGS) $($(1)_C) $($(1)_O) $(patsubst $(SRC_PATH)/%,$(SRC_LINK)/%,$<)
 +endef
 +
 +COMPILE_C = $(call COMPILE,CC)
 +COMPILE_CXX = $(call COMPILE,CXX)
 +COMPILE_S = $(call COMPILE,AS)
 +COMPILE_M = $(call COMPILE,OBJCC)
 +COMPILE_HOSTC = $(call COMPILE,HOSTCC)
 +
 +%.o: %.c
 +	$(COMPILE_C)
 +
 +%.o: %.cpp
 +	$(COMPILE_CXX)
 +
 +%.o: %.m
 +	$(COMPILE_M)
 +
 +%.s: %.c
 +	$(CC) $(CCFLAGS) -S -o $@ $<
 +
 +%.o: %.S
 +	$(COMPILE_S)
 +
 +%_host.o: %.c
 +	$(COMPILE_HOSTC)
 +
 +%$(DEFAULT_YASMD).asm: %.asm
 +	$(DEPYASM) $(YASMFLAGS) -I $(<D)/ -M -o $@ $< > $(@:.asm=.d)
 +	$(YASM) $(YASMFLAGS) -I $(<D)/ -e $< | sed '/^%/d;/^$$/d;' > $@
 +
 +%.o: %.asm
 +	$(DEPYASM) $(YASMFLAGS) -I $(<D)/ -M -o $@ $< > $(@:.o=.d)
 +	$(YASM) $(YASMFLAGS) -I $(<D)/ -o $@ $(patsubst $(SRC_PATH)/%,$(SRC_LINK)/%,$<)
 +	-$(if $(ASMSTRIPFLAGS), $(STRIP) $(ASMSTRIPFLAGS) $@)
 +
 +%.o: %.rc
 +	$(WINDRES) $(IFLAGS) --preprocessor "$(DEPWINDRES) -E -xc-header -DRC_INVOKED $(CC_DEPFLAGS)" -o $@ $<
 +
 +%.i: %.c
 +	$(CC) $(CCFLAGS) $(CC_E) $<
 +
 +%.h.c:
 +	$(Q)echo '#include "$*.h"' >$@
 +
- %.c %.h %.ver: TAG = GEN
++%.c %.h %.pc %.ver %.version: TAG = GEN
 +
 +# Dummy rule to stop make trying to rebuild removed or renamed headers
 +%.h:
 +	@:
 +
 +# Disable suffix rules.  Most of the builtin rules are suffix rules,
 +# so this saves some time on slow systems.
 +.SUFFIXES:
 +
 +# Do not delete intermediate files from chains of implicit rules
 +$(OBJS):
 +endif
 +
 +include $(SRC_PATH)/ffbuild/arch.mak
 +
 +OBJS      += $(OBJS-yes)
 +SLIBOBJS  += $(SLIBOBJS-yes)
 +FFLIBS    := $($(NAME)_FFLIBS) $(FFLIBS-yes) $(FFLIBS)
 +TESTPROGS += $(TESTPROGS-yes)
 +
 +LDLIBS       = $(FFLIBS:%=%$(BUILDSUF))
 +FFEXTRALIBS := $(LDLIBS:%=$(LD_LIB)) $(EXTRALIBS)
 +
 +OBJS      := $(sort $(OBJS:%=$(SUBDIR)%))
 +SLIBOBJS  := $(sort $(SLIBOBJS:%=$(SUBDIR)%))
 +TESTOBJS  := $(TESTOBJS:%=$(SUBDIR)tests/%) $(TESTPROGS:%=$(SUBDIR)tests/%.o)
 +TESTPROGS := $(TESTPROGS:%=$(SUBDIR)tests/%$(EXESUF))
 +HOSTOBJS  := $(HOSTPROGS:%=$(SUBDIR)%.o)
 +HOSTPROGS := $(HOSTPROGS:%=$(SUBDIR)%$(HOSTEXESUF))
 +TOOLS     += $(TOOLS-yes)
 +TOOLOBJS  := $(TOOLS:%=tools/%.o)
 +TOOLS     := $(TOOLS:%=tools/%$(EXESUF))
 +HEADERS   += $(HEADERS-yes)
 +
 +PATH_LIBNAME = $(foreach NAME,$(1),lib$(NAME)/$($(2)LIBNAME))
 +DEP_LIBS := $(foreach lib,$(FFLIBS),$(call PATH_LIBNAME,$(lib),$(CONFIG_SHARED:yes=S)))
 +STATIC_DEP_LIBS := $(foreach lib,$(FFLIBS),$(call PATH_LIBNAME,$(lib)))
 +
 +SRC_DIR    := $(SRC_PATH)/lib$(NAME)
 +ALLHEADERS := $(subst $(SRC_DIR)/,$(SUBDIR),$(wildcard $(SRC_DIR)/*.h $(SRC_DIR)/$(ARCH)/*.h))
 +SKIPHEADERS += $(ARCH_HEADERS:%=$(ARCH)/%) $(SKIPHEADERS-)
 +SKIPHEADERS := $(SKIPHEADERS:%=$(SUBDIR)%)
 +HOBJS        = $(filter-out $(SKIPHEADERS:.h=.h.o),$(ALLHEADERS:.h=.h.o))
 +$(HOBJS):     CCFLAGS += $(CFLAGS_HEADERS)
 +checkheaders: $(HOBJS)
 +.SECONDARY:   $(HOBJS:.o=.c)
 +
 +alltools: $(TOOLS)
 +
 +$(HOSTOBJS): %.o: %.c
 +	$(COMPILE_HOSTC)
 +
 +$(HOSTPROGS): %$(HOSTEXESUF): %.o
 +	$(HOSTLD) $(HOSTLDFLAGS) $(HOSTLD_O) $^ $(HOSTEXTRALIBS)
 +
 +$(OBJS):     | $(sort $(dir $(OBJS)))
 +$(HOBJS):    | $(sort $(dir $(HOBJS)))
 +$(HOSTOBJS): | $(sort $(dir $(HOSTOBJS)))
 +$(SLIBOBJS): | $(sort $(dir $(SLIBOBJS)))
 +$(TESTOBJS): | $(sort $(dir $(TESTOBJS)))
 +$(TOOLOBJS): | tools
 +
 +OBJDIRS := $(OBJDIRS) $(dir $(OBJS) $(HOBJS) $(HOSTOBJS) $(SLIBOBJS) $(TESTOBJS))
 +
- CLEANSUFFIXES     = *.d *.o *~ *.h.c *.gcda *.gcno *.map *.ver *.ho *$(DEFAULT_YASMD).asm
++CLEANSUFFIXES     = *.d *.o *~ *.h.c *.gcda *.gcno *.map *.ver *.version *.ho *$(DEFAULT_YASMD).asm
 +DISTCLEANSUFFIXES = *.pc
 +LIBSUFFIXES       = *.a *.lib *.so *.so.* *.dylib *.dll *.def *.dll.a
 +
 +define RULES
 +clean::
 +	$(RM) $(HOSTPROGS) $(TESTPROGS) $(TOOLS)
 +endef
 +
 +$(eval $(RULES))
 +
 +-include $(wildcard $(OBJS:.o=.d) $(HOSTOBJS:.o=.d) $(TESTOBJS:.o=.d) $(HOBJS:.o=.d) $(SLIBOBJS:.o=.d)) $(OBJS:.o=$(DEFAULT_YASMD).d)
diff --cc ffbuild/library.mak
index 5e576d18cd,0000000000..addc945168
mode 100644,000000..100644
--- a/ffbuild/library.mak
+++ b/ffbuild/library.mak
@@@ -1,98 -1,0 +1,106 @@@
 +include $(SRC_PATH)/ffbuild/common.mak
 +
++-include $(SUBDIR)lib$(NAME).version
++
 +LIBVERSION := $(lib$(NAME)_VERSION)
 +LIBMAJOR   := $(lib$(NAME)_VERSION_MAJOR)
 +LIBMINOR   := $(lib$(NAME)_VERSION_MINOR)
 +INCINSTDIR := $(INCDIR)/lib$(NAME)
 +
 +INSTHEADERS := $(INSTHEADERS) $(HEADERS:%=$(SUBDIR)%)
 +
- all-$(CONFIG_STATIC): $(SUBDIR)$(LIBNAME)
- all-$(CONFIG_SHARED): $(SUBDIR)$(SLIBNAME)
++all-$(CONFIG_STATIC): $(SUBDIR)$(LIBNAME)  $(SUBDIR)lib$(NAME).pc
++all-$(CONFIG_SHARED): $(SUBDIR)$(SLIBNAME) $(SUBDIR)lib$(NAME).pc
 +
 +LIBOBJS := $(OBJS) $(SUBDIR)%.h.o $(TESTOBJS)
 +$(LIBOBJS) $(LIBOBJS:.o=.s) $(LIBOBJS:.o=.i):   CPPFLAGS += -DHAVE_AV_CONFIG_H
 +$(TESTOBJS) $(TESTOBJS:.o=.i): CFLAGS += -Umain
 +
 +$(SUBDIR)$(LIBNAME): $(OBJS)
 +	$(RM) $@
 +	$(AR) $(ARFLAGS) $(AR_O) $^
 +	$(RANLIB) $@
 +
 +install-headers: install-lib$(NAME)-headers install-lib$(NAME)-pkgconfig
 +
 +install-libs-$(CONFIG_STATIC): install-lib$(NAME)-static
 +install-libs-$(CONFIG_SHARED): install-lib$(NAME)-shared
 +
 +define RULES
 +$(TOOLS):     THISLIB = $(FULLNAME:%=$(LD_LIB))
 +$(TESTPROGS): THISLIB = $(SUBDIR)$(LIBNAME)
 +
 +$(TESTPROGS) $(TOOLS): %$(EXESUF): %.o
 +	$$(LD) $(LDFLAGS) $(LDEXEFLAGS) $$(LD_O) $$(filter %.o,$$^) $$(THISLIB) $(FFEXTRALIBS) $$(ELIBS)
 +
++$(SUBDIR)lib$(NAME).version: $(SUBDIR)version.h | $(SUBDIR)
++	$$(M) $$(SRC_PATH)/ffbuild/libversion.sh $(NAME) $$< $(RAISE_MAJOR) > $$@
++
++$(SUBDIR)lib$(FULLNAME).pc: $(SUBDIR)version.h | $(SUBDIR)
++	$$(M) $$(SRC_PATH)/ffbuild/pkgconfig_generate.sh $(NAME) "$(DESC)"
++
 +$(SUBDIR)lib$(NAME).ver: $(SUBDIR)lib$(NAME).v $(OBJS)
 +	$$(M)sed 's/MAJOR/$(lib$(NAME)_VERSION_MAJOR)/' $$< | $(VERSION_SCRIPT_POSTPROCESS_CMD) > $$@
 +
 +$(SUBDIR)$(SLIBNAME): $(SUBDIR)$(SLIBNAME_WITH_MAJOR)
 +	$(Q)cd ./$(SUBDIR) && $(LN_S) $(SLIBNAME_WITH_MAJOR) $(SLIBNAME)
 +
 +$(SUBDIR)$(SLIBNAME_WITH_MAJOR): $(OBJS) $(SLIBOBJS) $(SUBDIR)lib$(NAME).ver
 +	$(SLIB_CREATE_DEF_CMD)
 +	$$(LD) $(SHFLAGS) $(LDFLAGS) $(LDLIBFLAGS) $$(LD_O) $$(filter %.o,$$^) $(FFEXTRALIBS)
 +	$(SLIB_EXTRA_CMD)
 +
 +ifdef SUBDIR
 +$(SUBDIR)$(SLIBNAME_WITH_MAJOR): $(DEP_LIBS)
 +endif
 +
 +clean::
 +	$(RM) $(addprefix $(SUBDIR),$(CLEANFILES) $(CLEANSUFFIXES) $(LIBSUFFIXES)) \
 +	    $(CLEANSUFFIXES:%=$(SUBDIR)$(ARCH)/%) $(CLEANSUFFIXES:%=$(SUBDIR)tests/%)
 + 
 +distclean:: clean
 +	$(RM) $(DISTCLEANSUFFIXES:%=$(SUBDIR)%) $(DISTCLEANSUFFIXES:%=$(SUBDIR)$(ARCH)/%) \
 +            $(DISTCLEANSUFFIXES:%=$(SUBDIR)tests/%)
 +
 +install-lib$(NAME)-shared: $(SUBDIR)$(SLIBNAME)
 +	$(Q)mkdir -p "$(SHLIBDIR)"
 +	$$(INSTALL) -m 755 $$< "$(SHLIBDIR)/$(SLIB_INSTALL_NAME)"
 +	$$(STRIP) "$(SHLIBDIR)/$(SLIB_INSTALL_NAME)"
 +	$(Q)$(foreach F,$(SLIB_INSTALL_LINKS),(cd "$(SHLIBDIR)" && $(LN_S) $(SLIB_INSTALL_NAME) $(F));)
 +	$(if $(SLIB_INSTALL_EXTRA_SHLIB),$$(INSTALL) -m 644 $(SLIB_INSTALL_EXTRA_SHLIB:%=$(SUBDIR)%) "$(SHLIBDIR)")
 +	$(if $(SLIB_INSTALL_EXTRA_LIB),$(Q)mkdir -p "$(LIBDIR)")
 +	$(if $(SLIB_INSTALL_EXTRA_LIB),$$(INSTALL) -m 644 $(SLIB_INSTALL_EXTRA_LIB:%=$(SUBDIR)%) "$(LIBDIR)")
 +
 +install-lib$(NAME)-static: $(SUBDIR)$(LIBNAME)
 +	$(Q)mkdir -p "$(LIBDIR)"
 +	$$(INSTALL) -m 644 $$< "$(LIBDIR)"
 +	$(LIB_INSTALL_EXTRA_CMD)
 +
 +install-lib$(NAME)-headers: $(addprefix $(SUBDIR),$(HEADERS) $(BUILT_HEADERS))
 +	$(Q)mkdir -p "$(INCINSTDIR)"
 +	$$(INSTALL) -m 644 $$^ "$(INCINSTDIR)"
 +
 +install-lib$(NAME)-pkgconfig: $(SUBDIR)lib$(FULLNAME).pc
 +	$(Q)mkdir -p "$(PKGCONFIGDIR)"
 +	$$(INSTALL) -m 644 $$^ "$(PKGCONFIGDIR)"
 +
 +uninstall-libs::
 +	-$(RM) "$(SHLIBDIR)/$(SLIBNAME_WITH_MAJOR)" \
 +	       "$(SHLIBDIR)/$(SLIBNAME)"            \
 +	       "$(SHLIBDIR)/$(SLIBNAME_WITH_VERSION)"
 +	-$(RM)  $(SLIB_INSTALL_EXTRA_SHLIB:%="$(SHLIBDIR)/%")
 +	-$(RM)  $(SLIB_INSTALL_EXTRA_LIB:%="$(LIBDIR)/%")
 +	-$(RM) "$(LIBDIR)/$(LIBNAME)"
 +
 +uninstall-headers::
 +	$(RM) $(addprefix "$(INCINSTDIR)/",$(HEADERS) $(BUILT_HEADERS))
 +	$(RM) "$(PKGCONFIGDIR)/lib$(FULLNAME).pc"
 +	-rmdir "$(INCINSTDIR)"
 +endef
 +
 +$(eval $(RULES))
 +
 +$(TOOLS):     $(DEP_LIBS) $(SUBDIR)$($(CONFIG_SHARED:yes=S)LIBNAME)
 +$(TESTPROGS): $(DEP_LIBS) $(SUBDIR)$(LIBNAME)
 +
 +testprogs: $(TESTPROGS)
diff --cc ffbuild/libversion.sh
index 0000000000,0000000000..687adf28bc
new file mode 100755
--- /dev/null
+++ b/ffbuild/libversion.sh
@@@ -1,0 -1,0 +1,15 @@@
++toupper(){
++    echo "$@" | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ
++}
++
++name=lib$1
++ucname=$(toupper ${name})
++file=$2
++raise_major=$3
++
++eval $(awk "/#define ${ucname}_VERSION_M/ { print \$2 \"=\" \$3 }" "$file")
++eval ${ucname}_VERSION_MAJOR=$((${ucname}_VERSION_MAJOR+${raise_major}))
++eval ${ucname}_VERSION=\$${ucname}_VERSION_MAJOR.\$${ucname}_VERSION_MINOR.\$${ucname}_VERSION_MICRO
++eval echo "${name}_VERSION=\$${ucname}_VERSION"
++eval echo "${name}_VERSION_MAJOR=\$${ucname}_VERSION_MAJOR"
++eval echo "${name}_VERSION_MINOR=\$${ucname}_VERSION_MINOR"
diff --cc ffbuild/pkgconfig_generate.sh
index 0000000000,0000000000..e5de6716d2
new file mode 100755
--- /dev/null
+++ b/ffbuild/pkgconfig_generate.sh
@@@ -1,0 -1,0 +1,62 @@@
++#!/bin/sh
++
++. ffbuild/config.sh
++
++if test "$shared" = "yes"; then
++    shared=true
++else
++    shared=false
++fi
++
++shortname=$1
++name=lib${shortname}
++fullname=${name}${build_suffix}
++comment=$2
++libs=$(eval echo \$extralibs_${shortname})
++deps=$(eval echo \$${shortname}_deps)
++
++for dep in $deps; do
++    depname=lib${dep}
++    fulldepname=${depname}${build_suffix}
++    . ${depname}/${depname}.version
++    depversion=$(eval echo \$${depname}_VERSION)
++    requires="$requires ${fulldepname} >= ${depversion}, "
++done
++requires=${requires%, }
++
++version=$(grep ${name}_VERSION= $name/${name}.version | cut -d= -f2)
++
++cat <<EOF > $name/$fullname.pc
++prefix=$prefix
++exec_prefix=\${prefix}
++libdir=$libdir
++includedir=$incdir
++
++Name: $fullname
++Description: $comment
++Version: $version
++Requires: $($shared || echo $requires)
++Requires.private: $($shared && echo $requires)
++Conflicts:
++Libs: -L\${libdir} $rpath -l${fullname#lib} $($shared || echo $libs)
++Libs.private: $($shared && echo $libs)
++Cflags: -I\${includedir}
++EOF
++
++mkdir -p doc/examples/pc-uninstalled
++includedir=${source_path}
++[ "$includedir" = . ] && includedir="\${pcfiledir}/../../.."
++    cat <<EOF > doc/examples/pc-uninstalled/${name}-uninstalled.pc
++prefix=
++exec_prefix=
++libdir=\${pcfiledir}/../../../$name
++includedir=${source_path}
++
++Name: $fullname
++Description: $comment
++Version: $version
++Requires: $requires
++Conflicts:
++Libs: -L\${libdir} -Wl,-rpath,\${libdir} -l${fullname#lib} $($shared || echo $libs)
++Cflags: -I\${includedir}
++EOF
diff --cc libavcodec/Makefile
index 66d7587fb0,b3cee1d0ca..e3221184d1
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@@ -1,9 -1,7 +1,8 @@@
- include $(SUBDIR)../ffbuild/config.mak
- 
  NAME = avcodec
 -DESC = Libav codec library
++DESC = FFmpeg codec library
  
  HEADERS = avcodec.h                                                     \
 +          avdct.h                                                       \
            avfft.h                                                       \
            d3d11va.h                                                     \
            dirac.h                                                       \
diff --cc libavdevice/Makefile
index fb7623f713,ab8931c639..c055d6718d
--- a/libavdevice/Makefile
+++ b/libavdevice/Makefile
@@@ -1,6 -1,5 +1,5 @@@
- include $(SUBDIR)../ffbuild/config.mak
- 
  NAME    = avdevice
 -DESC    = Libav device handling library
++DESC    = FFmpeg device handling library
  
  HEADERS = avdevice.h                                                    \
            version.h                                                     \
diff --cc libavfilter/Makefile
index d19c555c91,c8d1515d2c..0f990866e8
--- a/libavfilter/Makefile
+++ b/libavfilter/Makefile
@@@ -1,6 -1,5 +1,5 @@@
- include $(SUBDIR)../ffbuild/config.mak
- 
  NAME = avfilter
 -DESC = Libav video filtering library
++DESC = FFmpeg audio/video filtering library
  
  HEADERS = avfilter.h                                                    \
            avfiltergraph.h                                               \
diff --cc libavformat/Makefile
index d82639d123,f363955e0e..4e169fdce5
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@@ -1,6 -1,5 +1,5 @@@
- include $(SUBDIR)../ffbuild/config.mak
- 
  NAME = avformat
 -DESC = Libav container format library
++DESC = FFmpeg container format library
  
  HEADERS = avformat.h                                                    \
            avio.h                                                        \
diff --cc libavutil/Makefile
index 0239c499f3,60e180c79d..1fd8dca54b
--- a/libavutil/Makefile
+++ b/libavutil/Makefile
@@@ -1,6 -1,5 +1,5 @@@
- include $(SUBDIR)../ffbuild/config.mak
- 
  NAME = avutil
 -DESC = Libav utility library
++DESC = FFmpeg utility library
  
  HEADERS = adler32.h                                                     \
            aes.h                                                         \
diff --cc libpostproc/Makefile
index 3c21f00a21,0000000000..34317193a8
mode 100644,000000..100644
--- a/libpostproc/Makefile
+++ b/libpostproc/Makefile
@@@ -1,12 -1,0 +1,11 @@@
- include $(SUBDIR)../ffbuild/config.mak
- 
 +NAME = postproc
++DESC = FFmpeg postprocessing library
 +FFLIBS = avutil
 +
 +HEADERS = postprocess.h        \
 +          version.h            \
 +
 +OBJS = postprocess.o
 +
 +# Windows resource file
 +SLIBOBJS-$(HAVE_GNU_WINDRES) += postprocres.o
diff --cc libswresample/Makefile
index f50ee0d5a0,0000000000..42666e4dd2
mode 100644,000000..100644
--- a/libswresample/Makefile
+++ b/libswresample/Makefile
@@@ -1,24 -1,0 +1,23 @@@
- include $(SUBDIR)../ffbuild/config.mak
- 
 +NAME = swresample
++DESC = FFmpeg audio resampling library
 +FFLIBS = avutil
 +
 +HEADERS = swresample.h                       \
 +          version.h                          \
 +
 +OBJS = audioconvert.o                        \
 +       dither.o                              \
 +       options.o                             \
 +       rematrix.o                            \
 +       resample.o                            \
 +       resample_dsp.o                        \
 +       swresample.o                          \
 +       swresample_frame.o                    \
 +
 +OBJS-$(CONFIG_LIBSOXR) += soxr_resample.o
 +OBJS-$(CONFIG_SHARED)  += log2_tab.o
 +
 +# Windows resource file
 +SLIBOBJS-$(HAVE_GNU_WINDRES) += swresampleres.o
 +
 +TESTPROGS = swresample
diff --cc libswscale/Makefile
index 19182b370e,a9502f6f29..5e03e6fa0a
--- a/libswscale/Makefile
+++ b/libswscale/Makefile
@@@ -1,6 -1,5 +1,5 @@@
- include $(SUBDIR)../ffbuild/config.mak
- 
  NAME = swscale
 -DESC = Libav image rescaling library
++DESC = FFmpeg image rescaling library
  
  HEADERS = swscale.h                                                     \
            version.h                                                     \



More information about the ffmpeg-cvslog mailing list