On Tue, 9 Jan 2018, Jan Engelhardt wrote:
On Tuesday 2018-01-09 10:36, Richard Biener wrote:
On Tue, 9 Jan 2018, Jan Engelhardt wrote:
Maybe we should just, short of symversioning, do
libgthread_2_0_la_LDFLAGS = $(GLIB_LINK_FLAGS) \ + -release $(PACKAGE_VERSION) \ $(gthread_win32_res_ldflag) \ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ -export-dynamic $(no_undefined) $(export_symbols)
then those dependency-satisfied-but-unrunnable situations can't happen.
Not sure, IMHO all such issues need to be resolved upstream in the build machinery like by "fixing" the set of exported symbols by extracting them and feeding them back via a versioning script.
Yes but since they don't do this standard solution, and as a result causes issus for us, I think we are in a position to workaround it our way.
Anyway, IIRC rpm only extracts symvers for a specific set of libs
Link to source?
/usr/lib/rpm/find-provides has # # --- Library sonames and weak symbol versions (from glibc). for f in "${solist[@]}"; do soname=$(objdump -p "$f" | awk '/SONAME/ {print $2}') ... objdump -p "$f" | awk ' BEGIN { START=0 ; } /Version definitions:/ { START=1; } /^[0-9]/ && (START==1) { print $4; } /^$/ { START=0; } ' | \ while read symbol ; do echo "$soname($symbol)$slib64" done so it's only in the comments. Might be that they are still not copied to the repository metadata. The rpms seem to have requires like libz.so.1(ZLIB_1.2.0)(64bit) at least. Richard. -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org