Bug 36394

Summary: libmozjs52-52.7.3-alt2 builds and provides its own old bundled copy of liblz4
Product: Sisyphus Reporter: Dmitry V. Levin <ldv>
Component: libmozjs52Assignee: cow <cow>
Status: NEW --- QA Contact: qa-sisyphus
Severity: blocker    
Priority: P3    
Version: unstable   
Hardware: all   
OS: Linux   

Description Dmitry V. Levin 2019-03-26 01:13:45 MSK
This is especially bad because an application that does -lmozjs-52 -llz4 will not be linked with liblz4 and will use liblz4 implementation from libmozjs-52 instead.

$ LC_ALL=C comm -12 <(/usr/lib/rpm/provided_symbols /lib64/liblz4.so.1) \
<(/usr/lib/rpm/provided_symbols /usr/lib64/libmozjs-52.so)
LZ4_compress
LZ4_compressBound
LZ4_compress_continue
LZ4_compress_default
LZ4_compress_destSize
LZ4_compress_fast
LZ4_compress_fast_continue
LZ4_compress_fast_extState
LZ4_compress_limitedOutput
LZ4_compress_limitedOutput_continue
LZ4_compress_limitedOutput_withState
LZ4_compress_withState
LZ4_create
LZ4_createStream
LZ4_createStreamDecode
LZ4_decompress_fast
LZ4_decompress_fast_continue
LZ4_decompress_fast_usingDict
LZ4_decompress_fast_withPrefix64k
LZ4_decompress_safe
LZ4_decompress_safe_continue
LZ4_decompress_safe_partial
LZ4_decompress_safe_usingDict
LZ4_decompress_safe_withPrefix64k
LZ4_freeStream
LZ4_freeStreamDecode
LZ4_loadDict
LZ4_resetStream
LZ4_resetStreamState
LZ4_saveDict
LZ4_setStreamDecode
LZ4_sizeofState
LZ4_sizeofStreamState
LZ4_slideInputBuffer
LZ4_uncompress
LZ4_uncompress_unknownOutputSize
LZ4_versionNumber
LZ4_versionString

The offending code is
mfbt/Compression.cpp:21:#include "lz4.c"