diff options
-rw-r--r-- | Makefile | 3 | ||||
-rw-r--r-- | avbuild/.gitignore | 1 | ||||
-rw-r--r-- | avbuild/library.mak | 7 | ||||
-rwxr-xr-x | avbuild/pkgconfig_generate.sh | 50 | ||||
-rwxr-xr-x | configure | 67 | ||||
-rw-r--r-- | libavcodec/Makefile | 1 | ||||
-rw-r--r-- | libavdevice/Makefile | 1 | ||||
-rw-r--r-- | libavfilter/Makefile | 1 | ||||
-rw-r--r-- | libavformat/Makefile | 1 | ||||
-rw-r--r-- | libavresample/Makefile | 1 | ||||
-rw-r--r-- | libavutil/Makefile | 1 | ||||
-rw-r--r-- | libswscale/Makefile | 1 |
12 files changed, 86 insertions, 49 deletions
@@ -67,7 +67,7 @@ COMPILE_HOSTC = $(call COMPILE,HOSTCC) %.h.c: $(Q)echo '#include "$*.h"' >$@ -%.c %.h %.ver %.version: TAG = GEN +%.c %.h %.pc %.ver %.version: TAG = GEN AVPROGS-$(CONFIG_AVCONV) += avconv AVPROGS-$(CONFIG_AVPLAY) += avplay @@ -125,7 +125,6 @@ tools/cws2fws$(EXESUF): ELIBS = $(ZLIB) 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 \ diff --git a/avbuild/.gitignore b/avbuild/.gitignore index 693b7aa..38ed170 100644 --- a/avbuild/.gitignore +++ b/avbuild/.gitignore @@ -2,3 +2,4 @@ /config.fate /config.log /config.mak +/config.sh diff --git a/avbuild/library.mak b/avbuild/library.mak index 45152be..e5f6d7d 100644 --- a/avbuild/library.mak +++ b/avbuild/library.mak @@ -9,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=.i): CPPFLAGS += -DHAVE_AV_CONFIG_H @@ -35,6 +35,9 @@ $(TESTPROGS) $(TOOLS): %$(EXESUF): %.o $(SUBDIR)lib$(NAME).version: $(SUBDIR)version.h | $(SUBDIR) $$(M) $$(SRC_PATH)/avbuild/libversion.sh $(NAME) $$< > $$@ +$(SUBDIR)lib$(NAME).pc: $(SUBDIR)version.h | $(SUBDIR) + $$(M) $$(SRC_PATH)/avbuild/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/avbuild/pkgconfig_generate.sh b/avbuild/pkgconfig_generate.sh new file mode 100755 index 0000000..33e188f --- /dev/null +++ b/avbuild/pkgconfig_generate.sh @@ -0,0 +1,50 @@ +#!/bin/sh + +. avbuild/config.sh + +if test "$shared" = "yes"; then + shared=true +else + shared=false +fi + +shortname=$1 +name=lib${shortname} +comment=$2 +libs=$(eval echo \$extralibs_${shortname}) +requires=$(eval echo \$requires_${shortname}) +requires=${requires%, } + +version=$(grep ${name}_VERSION= $name/${name}.version | cut -d= -f2) + +cat <<EOF > $name/$name.pc +prefix=$prefix +exec_prefix=\${prefix} +libdir=$libdir +includedir=$incdir + +Name: $name +Description: $comment +Version: $version +Requires: $($shared || echo $requires) +Requires.private: $($shared && echo $requires) +Conflicts: +Libs: -L\${libdir} -l${shortname} $($shared || echo $libs) +Libs.private: $($shared && echo $libs) +Cflags: -I\${includedir} +EOF + +cat <<EOF > $name/$name-uninstalled.pc +prefix= +exec_prefix= +libdir=\${pcfiledir} +includedir=${source_path} + +Name: $name +Description: $comment +Version: $version +Requires: $requires +Conflicts: +Libs: \${libdir}/${LIBPREF}${shortname}${LIBSUF} $libs +Cflags: -I\${includedir} +EOF @@ -5402,52 +5402,29 @@ lib_version(){ eval printf "\"lib${1} >= \$LIB$(toupper ${1})_VERSION, \"" } -pkgconfig_generate(){ - name=$1 - shortname=${name#lib} - 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.pc +cat > avbuild/config.sh <<EOF +# Automatically generated by configure - do not modify! +shared=$shared 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} -l${shortname} $(enabled shared || echo $libs) -Libs.private: $(enabled shared && echo $libs) -Cflags: -I\${includedir} +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_swscale="$LIBM" EOF - cat <<EOF > $name/$name-uninstalled.pc -prefix= -exec_prefix= -libdir=\${pcfiledir} -includedir=${source_path} - -Name: $name -Description: $comment -Version: $version -Requires: $requires -Conflicts: -Libs: \${libdir}/${LIBPREF}${shortname}${LIBSUF} $libs -Cflags: -I\${includedir} -EOF -} - -pkgconfig_generate libavutil "Libav utility library" "$LIBAVUTIL_VERSION" "$LIBRT $LIBM" -pkgconfig_generate libavcodec "Libav codec library" "$LIBAVCODEC_VERSION" "$extralibs" -pkgconfig_generate libavformat "Libav container format library" "$LIBAVFORMAT_VERSION" "$extralibs" -pkgconfig_generate libavdevice "Libav device handling library" "$LIBAVDEVICE_VERSION" "$extralibs" -pkgconfig_generate libavfilter "Libav video filtering library" "$LIBAVFILTER_VERSION" "$extralibs" -pkgconfig_generate libavresample "Libav audio resampling library" "$LIBAVRESAMPLE_VERSION" "$LIBM" -pkgconfig_generate libswscale "Libav image rescaling library" "$LIBSWSCALE_VERSION" "$LIBM" diff --git a/libavcodec/Makefile b/libavcodec/Makefile index 239a4c0..b3cee1d 100644 --- a/libavcodec/Makefile +++ b/libavcodec/Makefile @@ -1,4 +1,5 @@ NAME = avcodec +DESC = Libav codec library HEADERS = avcodec.h \ avfft.h \ diff --git a/libavdevice/Makefile b/libavdevice/Makefile index 664fa0f..ab8931c 100644 --- a/libavdevice/Makefile +++ b/libavdevice/Makefile @@ -1,4 +1,5 @@ NAME = avdevice +DESC = Libav device handling library HEADERS = avdevice.h \ version.h \ diff --git a/libavfilter/Makefile b/libavfilter/Makefile index 646a5b5..c8d1515 100644 --- a/libavfilter/Makefile +++ b/libavfilter/Makefile @@ -1,4 +1,5 @@ NAME = avfilter +DESC = Libav video filtering library HEADERS = avfilter.h \ avfiltergraph.h \ diff --git a/libavformat/Makefile b/libavformat/Makefile index 6146cbe..f363955 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -1,4 +1,5 @@ NAME = avformat +DESC = Libav container format library HEADERS = avformat.h \ avio.h \ diff --git a/libavresample/Makefile b/libavresample/Makefile index b9ca491..928b721 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 f34c799..60e180c 100644 --- a/libavutil/Makefile +++ b/libavutil/Makefile @@ -1,4 +1,5 @@ NAME = avutil +DESC = Libav utility library HEADERS = adler32.h \ aes.h \ diff --git a/libswscale/Makefile b/libswscale/Makefile index c9b2fc9..a9502f6 100644 --- a/libswscale/Makefile +++ b/libswscale/Makefile @@ -1,4 +1,5 @@ NAME = swscale +DESC = Libav image rescaling library HEADERS = swscale.h \ version.h \ |