--- This is to be squashed into the fine-grained linker deps patch, required to build libavutil/tests/cpu_init, which depends on pthreads.
Makefile | 4 +--- configure | 18 +++++++++++++++--- library.mak | 2 +- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/Makefile b/Makefile index 4e44fe9..c4df103 100644 --- a/Makefile +++ b/Makefile @@ -119,9 +119,7 @@ FF_STATIC_DEP_LIBS := $(STATIC_DEP_LIBS) all: $(AVPROGS) alltools checkheaders examples testprogs $(TOOLS): %$(EXESUF): %.o - $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $^ $(EXTRALIBS) $(ELIBS) - -tools/cws2fws$(EXESUF): ELIBS = $(ZLIB) + $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $^ $(EXTRALIBS-$(@F)) $(EXTRALIBS) $(ELIBS) CONFIGURABLE_COMPONENTS = \ $(wildcard $(FFLIBS:%=$(SRC_PATH)/lib%/all*.c)) \ diff --git a/configure b/configure index 2c56096..3c5a236 100755 --- a/configure +++ b/configure @@ -1238,6 +1238,12 @@ EXAMPLE_LIST=" transcode_aac_example " +# catchall list of things that require external libs to link +EXTRALIBS_LIST=" + cpu_init + cws2fws +" + HWACCEL_LIBRARY_NONFREE_LIST=" cuda libnpp @@ -2618,6 +2624,10 @@ output_example_deps="avcodec avformat avresample avutil swscale" qsvdec_example_deps="avcodec avutil libmfx h264_qsv_decoder" transcode_aac_example_deps="avcodec avformat avresample" +# EXTRALIBS_LIST +cpu_init_extralibs="pthreads_extralibs" +cws2fws_extralibs="zlib_extralibs" + # libraries, in linking order avcodec_deps="avutil" avdevice_deps="avformat avcodec avutil" @@ -2698,6 +2708,9 @@ enable valgrind_backtrace # By default, enable only those hwaccels that have no external dependencies. enable d3d11va dxva2 vda vdpau +# internal components are enabled by default +enable $EXTRALIBS_LIST + # build settings SHFLAGS='-shared -Wl,-soname,$$(@F)' LIBPREF="lib" @@ -5214,7 +5227,7 @@ check_deps $CONFIG_LIST \ $HAVE_LIST \ $ALL_COMPONENTS \ -for linkunit in $LIBRARY_LIST $PROGRAM_LIST; do +for linkunit in $LIBRARY_LIST $PROGRAM_LIST $EXTRALIBS_LIST; do unset dep_lbs set_component_extralibs $linkunit $linkunit eval components=\$$(toupper ${linkunit})_COMPONENTS} @@ -5466,7 +5479,6 @@ TARGET_PATH=$target_path TARGET_SAMPLES=${target_samples:-\$(SAMPLES)} CFLAGS-avplay=$sdl_cflags CFLAGS_HEADERS=$CFLAGS_HEADERS -ZLIB=$($ldflags_filter -lz) LIB_INSTALL_EXTRA_CMD=$LIB_INSTALL_EXTRA_CMD EXTRALIBS=$extralibs COMPAT_OBJS=$compat_objs @@ -5504,7 +5516,7 @@ map 'get_version $v' $LIBRARY_LIST map 'eval echo "${v}_FFLIBS=\$${v}_deps" >> config.mak' $LIBRARY_LIST -for entry in $LIBRARY_LIST $PROGRAM_LIST; do +for entry in $LIBRARY_LIST $PROGRAM_LIST $EXTRALIBS_LIST; do eval echo "EXTRALIBS-${entry}=\$extralibs_${entry}" >> config.mak done diff --git a/library.mak b/library.mak index 7554f81..34ee78a 100644 --- a/library.mak +++ b/library.mak @@ -28,7 +28,7 @@ $(TOOLS): THISLIB = $(NAME:%=$(LD_LIB)) $(TESTPROGS): THISLIB = $(SUBDIR)$(LIBNAME) $(TESTPROGS) $(TOOLS): %$(EXESUF): %.o - $$(LD) $(LDFLAGS) $(LDEXEFLAGS) $$(LD_O) $$(filter %.o,$$^) $$(THISLIB) $(FFEXTRALIBS) $$(ELIBS) + $$(LD) $(LDFLAGS) $(LDEXEFLAGS) $$(LD_O) $$(filter %.o,$$^) $$(THISLIB) $(FFEXTRALIBS) $$(EXTRALIBS-$(?))) $$(ELIBS) $(SUBDIR)lib$(NAME).ver: $(SUBDIR)lib$(NAME).v $(OBJS) $$(M)sed 's/MAJOR/$(lib$(NAME)_VERSION_MAJOR)/' $$< | $(VERSION_SCRIPT_POSTPROCESS_CMD) > $$@ -- 2.1.4 _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel