From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 5EF3815813A for ; Fri, 10 Jan 2025 01:04:36 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 94BDFE070D; Fri, 10 Jan 2025 01:04:35 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 75551E070D for ; Fri, 10 Jan 2025 01:04:35 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 6EEC7335D21 for ; Fri, 10 Jan 2025 01:04:34 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id CCD2011B5 for ; Fri, 10 Jan 2025 01:04:32 +0000 (UTC) From: "Eli Schwartz" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Eli Schwartz" Message-ID: <1736470987.b3c6fd47bbecf0af3d9da44555bd04ba28f76ef6.eschwartz@gentoo> Subject: [gentoo-commits] proj/binhost:master commit in: builders/dola/kde-23/portage/package.env/, builders/dola/server-23/portage/, ... X-VCS-Repository: proj/binhost X-VCS-Files: builders/dola/gnome-23/portage/env/lto.conf builders/dola/gnome-23/portage/env/nolto.conf builders/dola/gnome-23/portage/make.conf builders/dola/gnome-23/portage/package.env/lto builders/dola/kde-23/portage/env/lto.conf builders/dola/kde-23/portage/env/nolto.conf builders/dola/kde-23/portage/make.conf builders/dola/kde-23/portage/package.env/lto builders/dola/server-23/portage/env/lto.conf builders/dola/server-23/portage/env/nolto.conf builders/dola/server-23/portage/make.conf builders/dola/server-23/portage/package.env/lto X-VCS-Directories: builders/dola/gnome-23/portage/package.env/ builders/dola/server-23/portage/ builders/dola/kde-23/portage/package.env/ builders/dola/gnome-23/portage/env/ builders/dola/gnome-23/portage/ builders/dola/kde-23/portage/env/ builders/dola/server-23/portage/env/ builders/dola/kde-23/portage/ builders/dola/server-23/portage/package.env/ X-VCS-Committer: eschwartz X-VCS-Committer-Name: Eli Schwartz X-VCS-Revision: b3c6fd47bbecf0af3d9da44555bd04ba28f76ef6 X-VCS-Branch: master Date: Fri, 10 Jan 2025 01:04:32 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: c5e8add9-790f-4ff5-a849-4c1ddbaeda0a X-Archives-Hash: 7066e6daccbc5787a272de76e96e63f5 commit: b3c6fd47bbecf0af3d9da44555bd04ba28f76ef6 Author: Eli Schwartz gentoo org> AuthorDate: Fri Jan 10 01:03:03 2025 +0000 Commit: Eli Schwartz gentoo org> CommitDate: Fri Jan 10 01:03:07 2025 +0000 URL: https://gitweb.gentoo.org/proj/binhost.git/commit/?id=b3c6fd47 dola: enable LTO builds Again like milou, we build with USE="lto pgo" on gnome, and semi-selectively inject -flto into *FLAGS. Signed-off-by: Eli Schwartz gentoo.org> builders/dola/gnome-23/portage/env/lto.conf | 5 +++++ builders/dola/gnome-23/portage/env/nolto.conf | 5 +++++ builders/dola/gnome-23/portage/make.conf | 10 +++++++--- builders/dola/gnome-23/portage/package.env/lto | 8 ++++++++ builders/dola/kde-23/portage/env/lto.conf | 5 +++++ builders/dola/kde-23/portage/env/nolto.conf | 5 +++++ builders/dola/kde-23/portage/make.conf | 8 ++++++-- builders/dola/kde-23/portage/package.env/lto | 8 ++++++++ builders/dola/server-23/portage/env/lto.conf | 5 +++++ builders/dola/server-23/portage/env/nolto.conf | 5 +++++ builders/dola/server-23/portage/make.conf | 8 ++++++-- builders/dola/server-23/portage/package.env/lto | 8 ++++++++ 12 files changed, 73 insertions(+), 7 deletions(-) diff --git a/builders/dola/gnome-23/portage/env/lto.conf b/builders/dola/gnome-23/portage/env/lto.conf new file mode 100644 index 0000000..37647dd --- /dev/null +++ b/builders/dola/gnome-23/portage/env/lto.conf @@ -0,0 +1,5 @@ +CFLAGS="${CFLAGS} -flto" +CXXFLAGS="${CXXFLAGS} -flto" +FCFLAGS="${FCFLAGS} -flto" +FFLAGS="${FFLAGS} -flto" +LDFLAGS="${LDFLAGS} -flto" diff --git a/builders/dola/gnome-23/portage/env/nolto.conf b/builders/dola/gnome-23/portage/env/nolto.conf new file mode 100644 index 0000000..4f1f356 --- /dev/null +++ b/builders/dola/gnome-23/portage/env/nolto.conf @@ -0,0 +1,5 @@ +CFLAGS="${CFLAGS} -fno-lto" +CXXFLAGS="${CXXFLAGS} -fno-lto" +FCFLAGS="${FCFLAGS} -fno-lto" +FFLAGS="${FFLAGS} -fno-lto" +LDFLAGS="${LDFLAGS} -fno-lto" diff --git a/builders/dola/gnome-23/portage/make.conf b/builders/dola/gnome-23/portage/make.conf index 3f97c6b..affe604 100644 --- a/builders/dola/gnome-23/portage/make.conf +++ b/builders/dola/gnome-23/portage/make.conf @@ -2,12 +2,17 @@ # built this stage. # Please consult /usr/share/portage/config/make.conf.example for a more # detailed example. -COMMON_FLAGS="-O2 -pipe" + +# For now, we enforce LTO warnings but only enable LTO for certain packages. +LTOFLAGS="-Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing" +COMMON_FLAGS="-O2 -pipe ${LTOFLAGS}" CFLAGS="${COMMON_FLAGS}" CXXFLAGS="${COMMON_FLAGS}" FCFLAGS="${COMMON_FLAGS}" FFLAGS="${COMMON_FLAGS}" +LDFLAGS="${LDFLAGS} ${LTOFLAGS}" + # NOTE: This stage was built with the bindist Use flag enabled PORTDIR="/var/db/repos/gentoo" DISTDIR="/var/cache/distfiles" @@ -26,11 +31,10 @@ FEATURES="binpkg-multi-instance buildpkg compress-index -network-sandbox" BINPKG_FORMAT="gpkg" BINPKG_COMPRESS="xz" -USE="bindist" +USE="bindist lto pgo" ACCEPT_RESTRICT="* -bindist" ACCEPT_LICENSE="@FREE MPEG-4" LC_ALL="en_US.utf8" - diff --git a/builders/dola/gnome-23/portage/package.env/lto b/builders/dola/gnome-23/portage/package.env/lto new file mode 100644 index 0000000..f10b0f4 --- /dev/null +++ b/builders/dola/gnome-23/portage/package.env/lto @@ -0,0 +1,8 @@ +dev-lang/python lto.conf +sys-devel/* lto.conf +www-client/firefox lto.conf + +# These packages distribute static archives. +# https://bugs.gentoo.org/926120 +dev-util/sysprof-capture nolto.conf +sys-devel/flex nolto.conf diff --git a/builders/dola/kde-23/portage/env/lto.conf b/builders/dola/kde-23/portage/env/lto.conf new file mode 100644 index 0000000..37647dd --- /dev/null +++ b/builders/dola/kde-23/portage/env/lto.conf @@ -0,0 +1,5 @@ +CFLAGS="${CFLAGS} -flto" +CXXFLAGS="${CXXFLAGS} -flto" +FCFLAGS="${FCFLAGS} -flto" +FFLAGS="${FFLAGS} -flto" +LDFLAGS="${LDFLAGS} -flto" diff --git a/builders/dola/kde-23/portage/env/nolto.conf b/builders/dola/kde-23/portage/env/nolto.conf new file mode 100644 index 0000000..4f1f356 --- /dev/null +++ b/builders/dola/kde-23/portage/env/nolto.conf @@ -0,0 +1,5 @@ +CFLAGS="${CFLAGS} -fno-lto" +CXXFLAGS="${CXXFLAGS} -fno-lto" +FCFLAGS="${FCFLAGS} -fno-lto" +FFLAGS="${FFLAGS} -fno-lto" +LDFLAGS="${LDFLAGS} -fno-lto" diff --git a/builders/dola/kde-23/portage/make.conf b/builders/dola/kde-23/portage/make.conf index 3f97c6b..2b52511 100644 --- a/builders/dola/kde-23/portage/make.conf +++ b/builders/dola/kde-23/portage/make.conf @@ -2,12 +2,17 @@ # built this stage. # Please consult /usr/share/portage/config/make.conf.example for a more # detailed example. -COMMON_FLAGS="-O2 -pipe" + +# For now, we enforce LTO warnings but only enable LTO for certain packages. +LTOFLAGS="-Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing" +COMMON_FLAGS="-O2 -pipe ${LTOFLAGS}" CFLAGS="${COMMON_FLAGS}" CXXFLAGS="${COMMON_FLAGS}" FCFLAGS="${COMMON_FLAGS}" FFLAGS="${COMMON_FLAGS}" +LDFLAGS="${LDFLAGS} ${LTOFLAGS}" + # NOTE: This stage was built with the bindist Use flag enabled PORTDIR="/var/db/repos/gentoo" DISTDIR="/var/cache/distfiles" @@ -33,4 +38,3 @@ ACCEPT_RESTRICT="* -bindist" ACCEPT_LICENSE="@FREE MPEG-4" LC_ALL="en_US.utf8" - diff --git a/builders/dola/kde-23/portage/package.env/lto b/builders/dola/kde-23/portage/package.env/lto new file mode 100644 index 0000000..f10b0f4 --- /dev/null +++ b/builders/dola/kde-23/portage/package.env/lto @@ -0,0 +1,8 @@ +dev-lang/python lto.conf +sys-devel/* lto.conf +www-client/firefox lto.conf + +# These packages distribute static archives. +# https://bugs.gentoo.org/926120 +dev-util/sysprof-capture nolto.conf +sys-devel/flex nolto.conf diff --git a/builders/dola/server-23/portage/env/lto.conf b/builders/dola/server-23/portage/env/lto.conf new file mode 100644 index 0000000..37647dd --- /dev/null +++ b/builders/dola/server-23/portage/env/lto.conf @@ -0,0 +1,5 @@ +CFLAGS="${CFLAGS} -flto" +CXXFLAGS="${CXXFLAGS} -flto" +FCFLAGS="${FCFLAGS} -flto" +FFLAGS="${FFLAGS} -flto" +LDFLAGS="${LDFLAGS} -flto" diff --git a/builders/dola/server-23/portage/env/nolto.conf b/builders/dola/server-23/portage/env/nolto.conf new file mode 100644 index 0000000..4f1f356 --- /dev/null +++ b/builders/dola/server-23/portage/env/nolto.conf @@ -0,0 +1,5 @@ +CFLAGS="${CFLAGS} -fno-lto" +CXXFLAGS="${CXXFLAGS} -fno-lto" +FCFLAGS="${FCFLAGS} -fno-lto" +FFLAGS="${FFLAGS} -fno-lto" +LDFLAGS="${LDFLAGS} -fno-lto" diff --git a/builders/dola/server-23/portage/make.conf b/builders/dola/server-23/portage/make.conf index 3f97c6b..2b52511 100644 --- a/builders/dola/server-23/portage/make.conf +++ b/builders/dola/server-23/portage/make.conf @@ -2,12 +2,17 @@ # built this stage. # Please consult /usr/share/portage/config/make.conf.example for a more # detailed example. -COMMON_FLAGS="-O2 -pipe" + +# For now, we enforce LTO warnings but only enable LTO for certain packages. +LTOFLAGS="-Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing" +COMMON_FLAGS="-O2 -pipe ${LTOFLAGS}" CFLAGS="${COMMON_FLAGS}" CXXFLAGS="${COMMON_FLAGS}" FCFLAGS="${COMMON_FLAGS}" FFLAGS="${COMMON_FLAGS}" +LDFLAGS="${LDFLAGS} ${LTOFLAGS}" + # NOTE: This stage was built with the bindist Use flag enabled PORTDIR="/var/db/repos/gentoo" DISTDIR="/var/cache/distfiles" @@ -33,4 +38,3 @@ ACCEPT_RESTRICT="* -bindist" ACCEPT_LICENSE="@FREE MPEG-4" LC_ALL="en_US.utf8" - diff --git a/builders/dola/server-23/portage/package.env/lto b/builders/dola/server-23/portage/package.env/lto new file mode 100644 index 0000000..f10b0f4 --- /dev/null +++ b/builders/dola/server-23/portage/package.env/lto @@ -0,0 +1,8 @@ +dev-lang/python lto.conf +sys-devel/* lto.conf +www-client/firefox lto.conf + +# These packages distribute static archives. +# https://bugs.gentoo.org/926120 +dev-util/sysprof-capture nolto.conf +sys-devel/flex nolto.conf