Quoting Andreas Cadhalpun (2015-07-22 00:01:09) > On 21.07.2015 23:23, Luca Barbato wrote: > > Checkasm needs to use internal symbols that should not be made public. > > --- > > Makefile | 1 + > > common.mak | 5 +++-- > > tests/checkasm/Makefile | 4 ++-- > > 3 files changed, 6 insertions(+), 4 deletions(-) > > > > diff --git a/Makefile b/Makefile > > index 5807acd..e9a95aa 100644 > > --- a/Makefile > > +++ b/Makefile > > @@ -100,6 +100,7 @@ include $(SRC_PATH)/common.mak > > > > FF_EXTRALIBS := $(FFEXTRALIBS) > > FF_DEP_LIBS := $(DEP_LIBS) > > +FF_STATIC_DEP_LIBS := $(STATIC_DEP_LIBS) > > > > all: $(AVPROGS) > > > > diff --git a/common.mak b/common.mak > > index 9244fd3..adab9d1 100644 > > --- a/common.mak > > +++ b/common.mak > > @@ -24,8 +24,9 @@ TOOLOBJS := $(TOOLS:%=tools/%.o) > > TOOLS := $(TOOLS:%=tools/%$(EXESUF)) > > HEADERS += $(HEADERS-yes) > > > > -PATH_LIBNAME = $(foreach > > NAME,$(1),lib$(NAME)/$($(CONFIG_SHARED:yes=S)LIBNAME)) > > -DEP_LIBS := $(foreach lib,$(FFLIBS),$(call PATH_LIBNAME,$(lib))) > > +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)) > > diff --git a/tests/checkasm/Makefile b/tests/checkasm/Makefile > > index 483ad13..9498ebf 100644 > > --- a/tests/checkasm/Makefile > > +++ b/tests/checkasm/Makefile > > @@ -22,8 +22,8 @@ tests/checkasm/%.o: CFLAGS := > > $(CFLAGS:-Wstrict-prototypes=-Wno-strict-prototype > > > > CHECKASM := tests/checkasm/checkasm$(EXESUF) > > > > -$(CHECKASM): $(EXEOBJS) $(CHECKASMOBJS) $(FF_DEP_LIBS) > > - $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $(CHECKASMOBJS) $(FF_EXTRALIBS) > > +$(CHECKASM): $(EXEOBJS) $(CHECKASMOBJS) $(FF_STATIC_DEP_LIBS) > > + $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $(CHECKASMOBJS) > > $(FF_STATIC_DEP_LIBS) $(EXTRALIBS) > > > > checkasm: $(CHECKASM) > > > > > > This works basically fine and avoids the problems of making > more internal symbols public. > Consider my patch drop in favor of this. > > The only problem I see with this is that it ignores --disable-static.
Well, as this is a test tool very much not intended to be linked dynamically, I'd say it's not a problem. Especially since the alternative is exporting the ever expanding set (as new tests are added) of SIMD functions from libavcodec, which really isn't the way to go. -- Anton Khirnov _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
