[devel] I: LTO in %optflags by default

Vitaly Lipatov lav на altlinux.ru
Ср Авг 25 11:18:16 MSK 2021


Dmitry V. Levin писал 25.8.21 3:04:
> On Tue, Aug 24, 2021 at 09:22:16PM +0300, Dmitry V. Levin wrote:
>> On Tue, Aug 24, 2021 at 09:20:50PM +0300, Dmitry V. Levin wrote:
>> > * 382 пакета перестанут пересобираться с диагностикой следующего вида:
>> > process-lto: ERROR: ./usr/lib64/libtcb.a: contains __gnu_lto_slim only.
>> > Perhaps, you need to %define optflags_lto %optflags_lto -ffat-lto-objects
>> >
>> > С такими пакетами можно поступить одним из двух способов:
>> > - перестать паковать статические библиотеки;
>> > - добавить %define optflags_lto %optflags_lto -ffat-lto-objects
>> >   в спек-файл.
>> 
>> Вот список этих пакетов:
> 
> Из них есть 18 исходных пакетов, из которых собираются -devel-static,
> присутствующие в сборочной среде других пакетов:
> 
> boost	iv sem @qa
> glib2	aris
> gsoap	sin @everybody
> libatomic_ops	sbolshakov @everybody
> libffi	glebfm at
> libsepol	rider sem darktemplar
> llvm12.0	arseny @everybody
> lvm2	shaba vitty rider
> ncurses	george ldv
> newt52	@python @qa
> openssl1.1	glebfm
> postgresql13	taf @pgsql @everybody
> qt5-declarative	zerg
> qt5-tools	zerg
> rocksdb	shaba @everybody
> slang2	asy @everybody
> uchardet	drool @everybody
> wvstreams	cas @everybody

У меня есть впечатление, что не всем этим другим пакетам прям необходимы 
-devel-static.
По крайней мере в одном своём пакете я обнаружил прошло шутку от 
buildreq, притягивающую лишний devel-static.

Вот небольшой обзор использующих -devel-static, порождённые из пакетов 
по списку выше:
(единственное, я не смог найти следов static в пакете lvm2)


boost    iv sem @qa
     boost-devel-static - Boost libraries
           karbowanecwallet 	drool @everybody
           sibcoin 	drool @everybody
           taler 	drool @everybody

glib2    aris
     glib2-devel-static - Static version of GLib libraries
           qemu 	shaba glebfm

gsoap    sin @everybody
     libgsoap-devel-static - Static devel libraries and headers for 
linking with gSOAP generated stubs
           v4l2onvif 	sbolshakov @everybody
           virtualbox 	sin nbr greh

libatomic_ops    sbolshakov @everybody
     libatomic_ops-devel-static - A library for accessing hardware 
provided atomic memory operations
           ggaoed 	sbolshakov @everybody
           libgc 	lav @qa @everybody
           rakudo 	crux @everybody

libffi    glebfm at
     libffi-devel-static - Static library for Foreign Function Interface 
development
           libmozjs78 	aris

libsepol    rider sem darktemplar
     libsepol-devel-static - Static development files for libsepol
           checkpolicy 	rider sem darktemplar
           libselinux 	rider nbr darktemplar
           policycoreutils 	rider zerg darktemplar
           setools 	darktemplar sem led rider @qa

llvm12.0    arseny @everybody
     llvm12.0-devel-static - Static libraries for LLVM
           bcc 	vt @everybody
           bpftrace 	vt @everybody
           castxml 	darktemplar @everybody
           cvise 	lav @everybody
           dolphin-emu 	nenderus @everybody
           ispc 	vt @everybody
           libcxx 	lav @everybody
           libcxxabi 	lav @everybody
           qt-creator 	cas @everybody
           rust 	legion crux @everybody

Can't find for lvm2

ncurses    george ldv
     libncursesxx-devel-static - Static libraries for libncursesxx
ncurses    george ldv
     libncurses++-devel-static - Development static libncurses++ library
ncurses    george ldv
     libncurses-devel-static - Development static ncurses libraries
ncurses    george ldv
     libtinfo-devel-static - A low-level terminfo static library
           lvm2 	shaba vitty rider
           sash 	@core


newt52    @python @qa
     libnewt-devel-static - Newt windowing toolkit development files.
           propagator 	rider boyarsh mike sem

openssl1.1    glebfm
     libssl-devel-static - OpenSSL static libraries
           libwebsockets 	lav @everybody
           xmr-stak 	drool @everybody
           xmrig 	drool @everybody

postgresql13    taf @pgsql @everybody
     postgresql-devel-static - Development static library for 
postgresql-devel
           pg_catcheck 	kondratyuk @everybody
           pg_rman 	darktemplar @everybody
           qt4 	zerg
           qt5-base 	zerg
           repmgr 	shaba @everybody

qt5-declarative    zerg
     qt5-declarative-devel-static - Development files for qt5-declarative
           pythonqt 	darktemplar @everybody
           qt5-tools 	zerg
           qt5-virtualkeyboard 	zerg

qt5-tools    zerg
     qt5-tools-devel-static - Development files for qt5-tools
           CTK 	darktemplar @everybody
           OpenBoard 	antohami @everybody
           freecad 	cas @everybody
           kde5-calendarsupport 	zerg
           kde5-eventviews 	zerg
           kde5-kmail-account-wizard 	zerg
           kde5-korganizer 	zerg
           kde5-libkdepim 	zerg
           kde5-libksieve 	zerg
           kde5-mailcommon 	zerg
           kde5-mailimporter 	zerg
           kde5-messagelib 	zerg
           kde5-pim-apps-libs 	zerg
           kde5-pimcommon 	zerg
           kexi 	zerg
           kf5-kjsembed 	zerg
           kf5-kross 	zerg
           kf5-kwidgetsaddons 	zerg
           klatexformula 	george @everybody
           lightdm-kde-greeter 	darktemplar @everybody
           lmms 	antohami @everybody
           musescore 	lav @qa @everybody
           plasma5-kwin 	zerg
           plasma5-nm 	zerg @everybody
           python3-module-PySide2 	cas @everybody
           pythonqt 	darktemplar @everybody
           qcad 	cas @everybody
           qgis3 	cas @everybody
           qmapshack 	glebfm @qa
           slicer 	darktemplar @everybody
           texstudio 	oddity @everybody
           texworks 	grenka
           trojita 	grenka @everybody
           zint 	underwit @everybody

rocksdb    shaba @everybody
     librocksdb-devel-static - Static library for rocksdb
           clickhouse 	rider darktemplar

slang2    asy @everybody
     libslang2-devel-static - The static library for development using 
S-Lang
           propagator 	rider boyarsh mike sem

uchardet    drool @everybody
     libuchardet-devel-static - Static library for uchardet
           deepin-editor 	lvol @everybody

wvstreams    cas @everybody
     libwvstreams-devel-static - C++ libraries for rapid application 
development
           wvdial 	cas @everybody



-- 
С уважением,
Виталий Липатов,
ALT Linux Team


Подробная информация о списке рассылки Devel