Mailing List Archive

[PATCH 5/8] profiles/use.desc: Make USE=lto global
Add a global USE=lto flag. The flag is used semi-consistently in 31
packages, with a few adding extra information. That said, probably
many of these uses are invalid, as they are equivalent to adding
`-flto` to CFLAGS.

Signed-off-by: Micha? Górny <mgorny@gentoo.org>
---
app-admin/clsync/metadata.xml | 1 -
app-admin/sysstat/metadata.xml | 1 -
app-containers/lxc/metadata.xml | 1 -
app-editors/neovim/metadata.xml | 1 -
app-mobilephone/scrcpy/metadata.xml | 3 ---
app-text/crengine-ng/metadata.xml | 1 -
dev-cpp/benchmark/metadata.xml | 3 ---
dev-db/mongodb/metadata.xml | 1 -
dev-java/openjdk/metadata.xml | 1 -
dev-lang/R/metadata.xml | 3 ---
dev-lang/gnat-gpl/metadata.xml | 1 -
dev-lang/python/metadata.xml | 3 ---
dev-lang/rust/metadata.xml | 1 -
dev-lang/spidermonkey/metadata.xml | 1 -
dev-libs/pocl/metadata.xml | 1 -
games-action/prismlauncher/metadata.xml | 1 -
mail-client/thunderbird/metadata.xml | 1 -
media-sound/ncmpcpp/metadata.xml | 1 -
net-analyzer/icinga2/metadata.xml | 1 -
net-analyzer/netdata/metadata.xml | 1 -
net-analyzer/wireshark/metadata.xml | 1 -
net-irc/ircii/metadata.xml | 3 ---
net-libs/nodejs/metadata.xml | 1 -
net-misc/networkmanager/metadata.xml | 1 -
profiles/use.desc | 1 +
www-client/firefox/metadata.xml | 1 -
26 files changed, 1 insertion(+), 35 deletions(-)

diff --git a/app-admin/clsync/metadata.xml b/app-admin/clsync/metadata.xml
index 84cf8e321890..b72376271f95 100644
--- a/app-admin/clsync/metadata.xml
+++ b/app-admin/clsync/metadata.xml
@@ -24,7 +24,6 @@
<flag name="extra-hardened">Enable extra security checks. This will hurt performance.</flag>
<flag name="gio">Enable GIO for FS monitoring (glib based alternative to inotify interface, not recommended; if both are compiled, may be selected at runtime).</flag>
<flag name="highload-locks">Allows to use spinlocks for short delays instead of mutexes, but only on SMP systems.</flag>
- <flag name="lto">Build with link time optimization (LTO).</flag>
<flag name="namespaces">Enable namespaces isolation.</flag>
<flag name="socket-library">Build the control and monitoring socket library: libclsync.</flag>
</use>
diff --git a/app-admin/sysstat/metadata.xml b/app-admin/sysstat/metadata.xml
index 6e1b41958fce..e4acfbefca13 100644
--- a/app-admin/sysstat/metadata.xml
+++ b/app-admin/sysstat/metadata.xml
@@ -14,6 +14,5 @@
</upstream>
<use>
<flag name="dcron">Adjust cronjobs to work properly under <pkg>sys-process/dcron</pkg></flag>
- <flag name="lto">Build using Link Time Optimizations (LTO)</flag>
</use>
</pkgmetadata>
diff --git a/app-containers/lxc/metadata.xml b/app-containers/lxc/metadata.xml
index a2d77654dbe8..7c423aeaca6f 100644
--- a/app-containers/lxc/metadata.xml
+++ b/app-containers/lxc/metadata.xml
@@ -11,7 +11,6 @@
</maintainer>
<use>
<flag name="io-uring">Enable io_uring support, and use io_uring instead of epoll</flag>
- <flag name="lto">Enable Link Time Optimization (LTO)</flag>
<flag name="tools">Build and install additional command line tools</flag>
</use>
<upstream>
diff --git a/app-editors/neovim/metadata.xml b/app-editors/neovim/metadata.xml
index 28259891cdc2..5c58332c3ce4 100644
--- a/app-editors/neovim/metadata.xml
+++ b/app-editors/neovim/metadata.xml
@@ -14,7 +14,6 @@
<name>Proxy Maintainers</name>
</maintainer>
<use>
- <flag name="lto">Build with Link Time Optimization (LTO)</flag>
<flag name="nvimpager">Install nvimpager symlink to less.sh macro</flag>
</use>
<upstream>
diff --git a/app-mobilephone/scrcpy/metadata.xml b/app-mobilephone/scrcpy/metadata.xml
index 6d3156f41a83..b3504f704818 100644
--- a/app-mobilephone/scrcpy/metadata.xml
+++ b/app-mobilephone/scrcpy/metadata.xml
@@ -5,9 +5,6 @@
<email>voyageur@gentoo.org</email>
<name>Bernard Cafarelli</name>
</maintainer>
- <use>
- <flag name="lto">Build with Link Time Optimization (LTO)</flag>
- </use>
<upstream>
<remote-id type="github">Genymobile/scrcpy</remote-id>
</upstream>
diff --git a/app-text/crengine-ng/metadata.xml b/app-text/crengine-ng/metadata.xml
index 6e310c98f9eb..8fec2108c8d1 100644
--- a/app-text/crengine-ng/metadata.xml
+++ b/app-text/crengine-ng/metadata.xml
@@ -20,7 +20,6 @@
<flag name="libunibreak">Use <pkg>dev-libs/libunibreak</pkg> for hyphenation</flag>
<flag name="fribidi">Support bidirectional text by <pkg>dev-libs/fribidi</pkg></flag>
<flag name="libutf8proc">Use <pkg>dev-libs/libutf8proc</pkg> for manipulating unicode strings</flag>
- <flag name="lto">Use link time optimization</flag>
</use>
<upstream>
<remote-id type="gitlab">coolreader-ng/crengine-ng</remote-id>
diff --git a/dev-cpp/benchmark/metadata.xml b/dev-cpp/benchmark/metadata.xml
index 1a6a996e42c9..ac75eeab418b 100644
--- a/dev-cpp/benchmark/metadata.xml
+++ b/dev-cpp/benchmark/metadata.xml
@@ -10,7 +10,4 @@
<doc lang="en">https://github.com/google/benchmark/tree/master/docs/</doc>
<remote-id type="github">google/benchmark</remote-id>
</upstream>
- <use>
- <flag name="lto">Optimize the build using Link Time Optimization (LTO)</flag>
- </use>
</pkgmetadata>
diff --git a/dev-db/mongodb/metadata.xml b/dev-db/mongodb/metadata.xml
index 4209dc659524..f8c3c65fba50 100644
--- a/dev-db/mongodb/metadata.xml
+++ b/dev-db/mongodb/metadata.xml
@@ -14,7 +14,6 @@
and powerful queries).
</longdescription>
<use>
- <flag name="lto">Adds support for link time optimization</flag>
<flag name="mongosh">Install the MongoDB shell from <pkg>app-admin/mongosh-bin</pkg></flag>
<flag name="tools">Install the MongoDB tools (mongoimport, mongodump...) from <pkg>app-admin/mongo-tools</pkg></flag>
</use>
diff --git a/dev-java/openjdk/metadata.xml b/dev-java/openjdk/metadata.xml
index 201e1fe75f50..367d2eb36d3e 100644
--- a/dev-java/openjdk/metadata.xml
+++ b/dev-java/openjdk/metadata.xml
@@ -23,7 +23,6 @@
<flag name="javafx" restrict="&lt;=dev-java/openjdk-9">Provide JavaFX support via <pkg>dev-java/openjfx</pkg></flag>
<flag name="javafx" restrict="&gt;=dev-java/openjdk-11">Import OpenJFX modules at build time, via <pkg>dev-java/openjfx</pkg></flag>
<flag name="jbootstrap">Build OpenJDK twice, the second time using the result of the first</flag>
- <flag name="lto">Enable Link Time Optimization (LTO)</flag>
<flag name="source">Install JVM sources</flag>
<flag name="system-bootstrap">Bootstrap using installed openjdk</flag>
<flag name="systemtap" restrict="&gt;=dev-java/openjdk-11">Enable SystemTAP/DTrace tracing</flag>
diff --git a/dev-lang/R/metadata.xml b/dev-lang/R/metadata.xml
index a1ef08b1f6c4..c5ab836c4412 100644
--- a/dev-lang/R/metadata.xml
+++ b/dev-lang/R/metadata.xml
@@ -5,9 +5,6 @@
<email>sci-mathematics@gentoo.org</email>
<name>Gentoo Mathematics Project</name>
</maintainer>
- <use>
- <flag name="lto">Use link-time optimization for R and its recommended packages.</flag>
- </use>
<longdescription lang="en">
R is GNU S, a system for statistical computation and graphics. It
consists of a language plus a run-time environment with graphics, a
diff --git a/dev-lang/gnat-gpl/metadata.xml b/dev-lang/gnat-gpl/metadata.xml
index 2f5323748c2c..9d754256f541 100644
--- a/dev-lang/gnat-gpl/metadata.xml
+++ b/dev-lang/gnat-gpl/metadata.xml
@@ -20,7 +20,6 @@
<flag name="libssp">Build SSP support into a dedicated library rather
than use the code in the C library (DO NOT ENABLE THIS IF YOU DON'T
KNOW WHAT IT DOES)</flag>
- <flag name="lto">Build using Link Time Optimizations (LTO)</flag>
<flag name="nptl">Enable support for Native POSIX Threads Library, the new threading module (requires linux-2.6 or better usually)</flag>
<flag name="objc">Build support for the Objective C code language
</flag>
diff --git a/dev-lang/python/metadata.xml b/dev-lang/python/metadata.xml
index 66d5aec84c7a..1d85e227b848 100644
--- a/dev-lang/python/metadata.xml
+++ b/dev-lang/python/metadata.xml
@@ -23,9 +23,6 @@
by running Python's test suite and collecting statistics
based on its performance. This will take longer to build.
</flag>
- <flag name="lto">
- Optimize the build using Link Time Optimization (LTO)
- </flag>
<flag name="valgrind">
Disable pymalloc when running under
<pkg>dev-util/valgrind</pkg> is detected (may incur minor
diff --git a/dev-lang/rust/metadata.xml b/dev-lang/rust/metadata.xml
index d67d2777f5ae..e28f62701eb3 100644
--- a/dev-lang/rust/metadata.xml
+++ b/dev-lang/rust/metadata.xml
@@ -12,7 +12,6 @@
<use>
<flag name="clippy">Install clippy, Rust code linter</flag>
<flag name="dist">Install dist tarballs (used for bootstrapping)</flag>
- <flag name="lto">Optimize the build using Link Time Optimization (LTO)</flag>
<flag name="miri">Install miri, an interpreter for Rust's mid-level intermediate representation (requires USE=nightly, sometimes is broken)</flag>
<flag name="nightly">Enable nightly (UNSTABLE) features (NOTE: it does not install nightly version, just enables features marked as nightly at time of release)</flag>
<flag name="parallel-compiler">Build a multi-threaded rustc (experimental, not tested by upstream)</flag>
diff --git a/dev-lang/spidermonkey/metadata.xml b/dev-lang/spidermonkey/metadata.xml
index eb50caaedbf8..451d64839c6f 100644
--- a/dev-lang/spidermonkey/metadata.xml
+++ b/dev-lang/spidermonkey/metadata.xml
@@ -8,6 +8,5 @@
<use>
<flag name="clang">Use Clang compiler instead of GCC</flag>
<flag name="debug">Enable assertions to allow for easier debugging of programs that link to spidermonkey -- note this will often crash software on regular end-user systems</flag>
- <flag name="lto">Enable Link Time Optimization (LTO)</flag>
</use>
</pkgmetadata>
diff --git a/dev-libs/pocl/metadata.xml b/dev-libs/pocl/metadata.xml
index a08bc6bb7825..a4227dd06f59 100644
--- a/dev-libs/pocl/metadata.xml
+++ b/dev-libs/pocl/metadata.xml
@@ -13,7 +13,6 @@
<!--<flag name="hsa">Enable the HSA base profile runtime device driver</flag>-->
<flag name="hwloc">Enable hwloc support</flag>
<flag name="memmanager">Enables custom memory manager. Except for special circumstances, this should be disabled</flag>
- <flag name="lto">Adds support for link time optimization</flag>
</use>
<upstream>
<remote-id type="github">pocl/pocl</remote-id>
diff --git a/games-action/prismlauncher/metadata.xml b/games-action/prismlauncher/metadata.xml
index f54dc7d44a8d..04368a2b7323 100644
--- a/games-action/prismlauncher/metadata.xml
+++ b/games-action/prismlauncher/metadata.xml
@@ -20,7 +20,6 @@
</upstream>
<longdescription>Prism Launcher is a multi-instance Minecraft launcher focused on user freedom, redistributability, and simplicity.</longdescription>
<use>
- <flag name="lto">Enable link-time optimization</flag>
<flag name="qt6">Build with Qt6 support instead of the default Qt5</flag>
</use>
</pkgmetadata>
diff --git a/mail-client/thunderbird/metadata.xml b/mail-client/thunderbird/metadata.xml
index 15c5d959f38e..51a24c64cf6b 100644
--- a/mail-client/thunderbird/metadata.xml
+++ b/mail-client/thunderbird/metadata.xml
@@ -10,7 +10,6 @@
<flag name="eme-free">Disable EME (DRM plugin) capability at build time</flag>
<flag name="hwaccel">Force-enable hardware-accelerated rendering (Mozilla bug 594876)</flag>
<flag name="libproxy">Enable libproxy support</flag>
- <flag name="lto">Enable Link Time Optimization (LTO)</flag>
<flag name="openh264">Use <pkg>media-libs/openh264</pkg> for H.264 support
instead of downloading binary blob from Mozilla at runtime</flag>
<flag name="pgo">Add support for profile-guided optimization using gcc-4.5,
diff --git a/media-sound/ncmpcpp/metadata.xml b/media-sound/ncmpcpp/metadata.xml
index 8487c821da85..9f24a3207164 100644
--- a/media-sound/ncmpcpp/metadata.xml
+++ b/media-sound/ncmpcpp/metadata.xml
@@ -11,7 +11,6 @@
</maintainer>
<use>
<flag name="clock">Enable clock screen</flag>
- <flag name="lto">Build with link-time optimisation</flag>
<flag name="outputs">Enable outputs screen</flag>
<flag name="visualizer">Enable visualizer screen with sound wave/frequency spectrum modes</flag>
</use>
diff --git a/net-analyzer/icinga2/metadata.xml b/net-analyzer/icinga2/metadata.xml
index 092644b84488..7a4547f2335d 100644
--- a/net-analyzer/icinga2/metadata.xml
+++ b/net-analyzer/icinga2/metadata.xml
@@ -7,7 +7,6 @@
</maintainer>
<use>
<flag name="console">Adds support for line-editing in the console</flag>
- <flag name="lto">Adds support for link time optimization</flag>
<flag name="jumbo-build">Combine source files to speed up build process, requires more memory</flag>
<flag name="mail">Allows for mailing of alerts</flag>
<flag name="mariadb">Enable support for the mariadb database backend</flag>
diff --git a/net-analyzer/netdata/metadata.xml b/net-analyzer/netdata/metadata.xml
index 17119a893259..f1324e58552f 100644
--- a/net-analyzer/netdata/metadata.xml
+++ b/net-analyzer/netdata/metadata.xml
@@ -11,7 +11,6 @@
<flag name="dbengine">Enable the Netdata database engine</flag>
<flag name="ipmi">Install <pkg>sys-apps/ipmitool</pkg> required for monitoring IPMI sensors.</flag>
<flag name="jsonc">Enable optimization of JSON using <pkg>dev-libs/json-c</pkg></flag>
- <flag name="lto">Build with Link Time Optimization (LTO)</flag>
<flag name="mongodb">Enable support for the mongodb backend</flag>
<flag name="nfacct">Enable the nfacct plugin</flag>
<flag name="nodejs">Enable use of nodejs (which some plugins use)</flag>
diff --git a/net-analyzer/wireshark/metadata.xml b/net-analyzer/wireshark/metadata.xml
index 719a99791357..89ac9190ba3b 100644
--- a/net-analyzer/wireshark/metadata.xml
+++ b/net-analyzer/wireshark/metadata.xml
@@ -39,7 +39,6 @@
<flag name="http2">Use <pkg>net-libs/nghttp2</pkg> for HTTP/2 support</flag>
<flag name="ilbc">Build with iLBC support in RTP Player using <pkg>media-libs/libilbc</pkg></flag>
<flag name="libxml2">Use <pkg>dev-libs/libxml2</pkg> for handling XML configuration in dissectors</flag>
- <flag name="lto">Enable link time optimization</flag>
<flag name="maxminddb">Use <pkg>dev-libs/libmaxminddb</pkg> for IP address geolocation</flag>
<flag name="mergecap">Install mergecap, to merge two or more capture files into one</flag>
<flag name="minizip">Build with zip file compression support</flag>
diff --git a/net-irc/ircii/metadata.xml b/net-irc/ircii/metadata.xml
index 0cdf261be819..aa20bff17b1d 100644
--- a/net-irc/ircii/metadata.xml
+++ b/net-irc/ircii/metadata.xml
@@ -5,7 +5,4 @@
<email>bkohler@gentoo.org</email>
<name>Ben Kohler</name>
</maintainer>
- <use>
- <flag name="lto">Build using Link Time Optimizations (LTO)</flag>
- </use>
</pkgmetadata>
diff --git a/net-libs/nodejs/metadata.xml b/net-libs/nodejs/metadata.xml
index 4d8e1010ced8..a81beb28246a 100644
--- a/net-libs/nodejs/metadata.xml
+++ b/net-libs/nodejs/metadata.xml
@@ -8,7 +8,6 @@
<use>
<flag name="corepack">Enable the experimental corepack package management tool</flag>
<flag name="inspector">Enable V8 inspector</flag>
- <flag name="lto">Build with link-time optimisation</flag>
<flag name="npm">Enable NPM package manager</flag>
<flag name="pax-kernel">Enable building under a PaX enabled kernel</flag>
<flag name="snapshot">Enable snapshot creation for faster startup</flag>
diff --git a/net-misc/networkmanager/metadata.xml b/net-misc/networkmanager/metadata.xml
index cc9b634fb71d..b052b568a851 100644
--- a/net-misc/networkmanager/metadata.xml
+++ b/net-misc/networkmanager/metadata.xml
@@ -14,7 +14,6 @@
<flag name="iptables">Use <pkg>net-firewall/iptables</pkg> for connection sharing</flag>
<flag name="iwd">Use <pkg>net-wireless/iwd</pkg> instead of <pkg>net-wireless/wpa_supplicant</pkg> for wifi support by default</flag>
<flag name="psl">Use public suffix list via <pkg>net-libs/libpsl</pkg></flag>
- <flag name="lto">Build using Link Time Optimizations (LTO)</flag>
<flag name="modemmanager">Enable support for mobile broadband devices using <pkg>net-misc/modemmanager</pkg></flag>
<flag name="nftables">Use <pkg>net-firewall/nftables</pkg> for connection sharing</flag>
<flag name="nss">Use <pkg>dev-libs/nss</pkg> for cryptography</flag>
diff --git a/profiles/use.desc b/profiles/use.desc
index 4d72d3ca42eb..ee61c317ccae 100644
--- a/profiles/use.desc
+++ b/profiles/use.desc
@@ -174,6 +174,7 @@ lirc - Add support for lirc (Linux's Infra-Red Remote Control)
livecd - !!internal use only!! DO NOT SET THIS FLAG YOURSELF!, used during livecd building
llvm-libunwind - Use sys-libs/llvm-libunwind instead of sys-libs/libunwind
lm-sensors - Add linux lm-sensors (hardware sensors) support
+lto - Enable Link-Time Optimization (LTO) to optimize the build
lua - Enable Lua scripting support
lz4 - Enable support for lz4 compression (as implemented in app-arch/lz4)
lzip - Enable support for lzip compression
diff --git a/www-client/firefox/metadata.xml b/www-client/firefox/metadata.xml
index 6215c1eac1fe..b0a1758bd35a 100644
--- a/www-client/firefox/metadata.xml
+++ b/www-client/firefox/metadata.xml
@@ -14,7 +14,6 @@
<flag name="hwaccel">Force-enable hardware-accelerated rendering (Mozilla bug 594876)</flag>
<flag name="jumbo-build">Enable unified build - combines source files to speed up build process, but requires more memory</flag>
<flag name="libproxy">Enable libproxy support</flag>
- <flag name="lto">Enable Link Time Optimization (LTO)</flag>
<flag name="openh264">Use <pkg>media-libs/openh264</pkg> for H264 support
instead of downloading binary blob from Mozilla at runtime</flag>
<flag name="pgo">Add support for profile-guided optimization for faster binaries - this
--
2.43.0