| @@ -655,6 +655,15 @@ prepend(){ · 654 unmodified lines |
| 655 | eval "$var=\"$* \$$var\"" | 655 | eval "$var=\"$* \$$var\"" |
| 656 | } | 656 | } |
| 657 | | 657 | |
| | 658 | unique(){ |
| | 659 | var=$1 |
| | 660 | uniq_list="" |
| | 661 | for tok in $(eval echo \$$var); do |
| | 662 | uniq_list="$(filter_out $tok $uniq_list) $tok" |
| | 663 | done |
| | 664 | eval "$var=\"${uniq_list}\"" |
| | 665 | } |
| | 666 | |
| 658 | add_cppflags(){ | 667 | add_cppflags(){ |
| 659 | append CPPFLAGS "$@" | 668 | append CPPFLAGS "$@" |
| 660 | } | 669 | } |
| @@ -2110,11 +2119,11 @@ metadata_example_deps="avformat avutil" · 1449 unmodified lines |
| 2110 | output_example_deps="avcodec avformat avutil swscale" | 2119 | output_example_deps="avcodec avformat avutil swscale" |
| 2111 | transcode_aac_example_deps="avcodec avformat avresample" | 2120 | transcode_aac_example_deps="avcodec avformat avresample" |
| 2112 | | 2121 | |
| 2113 | # libraries | 2122 | # libraries, in linking order |
| 2114 | avcodec_deps="avutil" | 2123 | avcodec_deps="avutil" |
| 2115 | avdevice_deps="avutil avcodec avformat" | 2124 | avdevice_deps="avformat avcodec avutil" |
| 2116 | avfilter_deps="avutil" | 2125 | avfilter_deps="avutil" |
| 2117 | avformat_deps="avutil avcodec" | 2126 | avformat_deps="avcodec avutil" |
| 2118 | avresample_deps="avutil" | 2127 | avresample_deps="avutil" |
| 2119 | swscale_deps="avutil" | 2128 | swscale_deps="avutil" |
| 2120 | | 2129 | |
| @@ -4373,6 +4382,20 @@ for thread in $THREADS_LIST; do · 2252 unmodified lines |
| 4373 | fi | 4382 | fi |
| 4374 | done | 4383 | done |
| 4375 | | 4384 | |
| | 4385 | # conditional library dependencies, in linking order |
| | 4386 | enabled movie_filter && prepend avfilter_deps "avformat avcodec" |
| | 4387 | enabled resample_filter && prepend avfilter_deps "avresample" |
| | 4388 | enabled scale_filter && prepend avfilter_deps "swscale" |
| | 4389 | |
| | 4390 | expand_deps(){ |
| | 4391 | lib_deps=${1}_deps |
| | 4392 | eval "deps=\$$lib_deps" |
| | 4393 | append $lib_deps $(map 'eval echo \$${v}_deps' $deps) |
| | 4394 | unique $lib_deps |
| | 4395 | } |
| | 4396 | |
| | 4397 | map 'expand_deps $v' $LIBRARY_LIST |
| | 4398 | |
| 4376 | echo "install prefix $prefix" | 4399 | echo "install prefix $prefix" |
| 4377 | echo "source path $source_path" | 4400 | echo "source path $source_path" |
| 4378 | echo "C compiler $cc" | 4401 | echo "C compiler $cc" |
| @@ -4578,6 +4601,8 @@ get_version(){ · 199 unmodified lines |
| 4578 | | 4601 | |
| 4579 | map 'get_version $v' $LIBRARY_LIST | 4602 | map 'get_version $v' $LIBRARY_LIST |
| 4580 | | 4603 | |
| | 4604 | map 'eval echo "FFLIBS-${v}=\$${v}_deps" >> config.mak' $LIBRARY_LIST |
| | 4605 | |
| 4581 | print_program_libs(){ | 4606 | print_program_libs(){ |
| 4582 | eval "program_libs=\$${1}_libs" | 4607 | eval "program_libs=\$${1}_libs" |
| 4583 | eval echo "LIBS-${1}=${program_libs}" >> config.mak | 4608 | eval echo "LIBS-${1}=${program_libs}" >> config.mak |
| @@ -4639,13 +4664,18 @@ test -n "$WARNINGS" && printf "\n$WARNINGS" · 55 unmodified lines |
| 4639 | | 4664 | |
| 4640 | # build pkg-config files | 4665 | # build pkg-config files |
| 4641 | | 4666 | |
| | 4667 | lib_version(){ |
| | 4668 | eval printf "\"lib${1} >= \$LIB$(toupper ${1})_VERSION, \"" |
| | 4669 | } |
| | 4670 | |
| 4642 | pkgconfig_generate(){ | 4671 | pkgconfig_generate(){ |
| 4643 | name=$1 | 4672 | name=$1 |
| 4644 | shortname=${name#lib}${build_suffix} | 4673 | shortname=${name#lib}${build_suffix} |
| 4645 | comment=$2 | 4674 | comment=$2 |
| 4646 | version=$3 | 4675 | version=$3 |
| 4647 | libs=$4 | 4676 | libs=$4 |
| 4648 | requires=$5 | 4677 | requires=$(map 'lib_version $v' $(eval echo \$${name#lib}_deps)) |
| | 4678 | requires=${requires%, } |
| 4649 | enabled ${name#lib} || return 0 | 4679 | enabled ${name#lib} || return 0 |
| 4650 | mkdir -p $name | 4680 | mkdir -p $name |
| 4651 | cat <<EOF > $name/$name.pc | 4681 | cat <<EOF > $name/$name.pc |
| @@ -4680,15 +4710,10 @@ Cflags: -I\${includedir} · 28 unmodified lines |
| 4680 | EOF | 4710 | EOF |
| 4681 | } | 4711 | } |
| 4682 | | 4712 | |
| 4683 | lavfi_libs="libavutil = $LIBAVUTIL_VERSION" | | |
| 4684 | enabled movie_filter && prepend lavfi_libs "libavformat >= $LIBAVFORMAT_VERSION, libavcodec >= $LIBAVCODEC_VERSION," | | |
| 4685 | enabled resample_filter && prepend lavfi_libs "libavresample >= $LIBAVRESAMPLE_VERSION," | | |
| 4686 | enabled scale_filter && prepend lavfi_libs "libswscale >= $LIBSWSCALE_VERSION," | | |
| 4687 | | | |
| 4688 | pkgconfig_generate libavutil "Libav utility library" "$LIBAVUTIL_VERSION" "$LIBM" | 4713 | pkgconfig_generate libavutil "Libav utility library" "$LIBAVUTIL_VERSION" "$LIBM" |
| 4689 | pkgconfig_generate libavcodec "Libav codec library" "$LIBAVCODEC_VERSION" "$extralibs" "libavutil = $LIBAVUTIL_VERSION" | 4714 | pkgconfig_generate libavcodec "Libav codec library" "$LIBAVCODEC_VERSION" "$extralibs" |
| 4690 | pkgconfig_generate libavformat "Libav container format library" "$LIBAVFORMAT_VERSION" "$extralibs" "libavcodec = $LIBAVCODEC_VERSION" | 4715 | pkgconfig_generate libavformat "Libav container format library" "$LIBAVFORMAT_VERSION" "$extralibs" |
| 4691 | pkgconfig_generate libavdevice "Libav device handling library" "$LIBAVDEVICE_VERSION" "$extralibs" "libavformat = $LIBAVFORMAT_VERSION" | 4716 | pkgconfig_generate libavdevice "Libav device handling library" "$LIBAVDEVICE_VERSION" "$extralibs" |
| 4692 | pkgconfig_generate libavfilter "Libav video filtering library" "$LIBAVFILTER_VERSION" "$extralibs" "$lavfi_libs" | 4717 | pkgconfig_generate libavfilter "Libav video filtering library" "$LIBAVFILTER_VERSION" "$extralibs" |
| 4693 | pkgconfig_generate libavresample "Libav audio resampling library" "$LIBAVRESAMPLE_VERSION" "$extralibs" "libavutil = $LIBAVUTIL_VERSION" | 4718 | pkgconfig_generate libavresample "Libav audio resampling library" "$LIBAVRESAMPLE_VERSION" "$extralibs" |
| 4694 | pkgconfig_generate libswscale "Libav image rescaling library" "$LIBSWSCALE_VERSION" "$LIBM" "libavutil = $LIBAVUTIL_VERSION" | 4719 | pkgconfig_generate libswscale "Libav image rescaling library" "$LIBSWSCALE_VERSION" "$LIBM" |