The wine-staging-7.17 ebuild pulls in this package. I had the same error already some time ago when the proton USE flag showed up on virtual/wine and I tried to replace wine-staging by wine-proton but didn't have the time to report it, back then. === configuring in mingw-w64-libraries/libmangle (/var/tmp/portage/dev-util/mingw64-toolchain-10.0.0_p1/work/m ingw64_libraries32-build/mingw-w64-libraries/libmangle) configure: running /bin/sh /var/tmp/portage/dev-util/mingw64-toolchain-10.0.0_p1/work/mingw64/mingw-w64-librar ies/libmangle/configure --disable-option-checking '--prefix=/usr/lib/mingw64-toolchain/x86_64-w64-mingw32' '- -build=x86_64-pc-linux-gnu' '--target=x86_64-w64-mingw32' '--docdir=/.skip' '--infodir=/.skip' '--mandir=/.ski p' '--host=x86_64-w64-mingw32' '--with-sysroot=no' '--without-crt' '--without-headers' '--disable-shared' '--l ibdir=/usr/lib/mingw64-toolchain/x86_64-w64-mingw32/lib32' '--with-libraries' 'CC=x86_64-w64-mingw32-gcc -m32' 'RCFLAGS=--target=pe-i386 ' 'build_alias=x86_64-pc-linux-gnu' 'host_alias=x86_64-w64-mingw32' 'target_alias=x 86_64-w64-mingw32' --cache-file=/dev/null --srcdir=/var/tmp/portage/dev-util/mingw64-toolchain-10.0.0_p1/work/ mingw64/mingw-w64-libraries/libmangle checking for a BSD-compatible install... /usr/lib/portage/python3.10/ebuild-helpers/xattr/install -c checking whether build environment is sane... yes checking for x86_64-w64-mingw32-strip... x86_64-w64-mingw32-strip checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether to enable maintainer-specific portions of Makefiles... no checking for x86_64-w64-mingw32-gcc... x86_64-w64-mingw32-gcc -m32 checking whether the C compiler works... no configure: error: in `/var/tmp/portage/dev-util/mingw64-toolchain-10.0.0_p1/work/mingw64_libraries32-build/mingw-w64-libraries/libmangle': configure: error: C compiler cannot create executables See `config.log' for more details configure: error: /var/tmp/portage/dev-util/mingw64-toolchain-10.0.0_p1/work/mingw64/mingw-w64-libraries/libmangle/configure failed for mingw-w64-libraries/libmangle * ERROR: dev-util/mingw64-toolchain-10.0.0_p1::gentoo failed (compile phase): I see to provide a config.log file as well. Reproducible: Always $ emerge --info mingw64-toolchain Portage 3.0.36 (python 3.10.7-final-0, default/linux/amd64/17.1/systemd, gcc-11.3.1, glibc-2.35-r8, 5.19.8-gentoo-0 x86_64) ================================================================= System Settings ================================================================= System uname: Linux-5.19.8-gentoo-0-x86_64-AMD_Ryzen_7_3800X_8-Core_Processor-with-glibc2.35 KiB Mem: 32822700 total, 11667108 free KiB Swap: 33554428 total, 29353252 free Head commit of repository guru: 6cdb10f922d9a8e0132a0fdbd0ebce321e36f1a7 Timestamp of repository steam-overlay: Wed, 07 Sep 2022 08:26:00 +0000 Head commit of repository steam-overlay: 78208ca83614c4cc031ca8f8ec9b023a5c9c3b1e Head commit of repository qt: 943f1f45e69cee8a1c159244f91d822042f35b2d Head commit of repository science: 070f86d184cddd2d2fb02fe2f8930a29dba4ee7d Head commit of repository gentoo-git: 831a36599efb4c85f996e0b42767c064ddce96a6 Head commit of repository waebbl: 7886a666096237e29d5df7a2eab1fd91b9130c24 Timestamp of repository gentoo: Wed, 14 Sep 2022 06:31:49 +0000 Head commit of repository gentoo: edc687c13956fa0ebce8891ce02c7664148a0f45 sh bash 5.1_p16-r2 ld GNU ld (Gentoo 2.39 p4) 2.39.0 app-misc/pax-utils: 1.3.5::gentoo app-shells/bash: 5.1_p16-r2::gentoo dev-java/java-config: 2.3.1::gentoo dev-lang/perl: 5.36.0::gentoo dev-lang/python: 3.10.7::gentoo, 3.11.0_rc1_p2::gentoo dev-lang/rust: 1.62.1::gentoo dev-util/cmake: 3.24.1::gentoo dev-util/meson: 0.63.2::gentoo sys-apps/baselayout: 2.8-r2::gentoo sys-apps/sandbox: 2.29::gentoo sys-apps/systemd: 251.4::gentoo sys-devel/autoconf: 2.13-r2::gentoo, 2.71-r2::gentoo sys-devel/automake: 1.16.5::gentoo sys-devel/binutils: 2.39-r2::gentoo sys-devel/binutils-config: 5.4.1::gentoo sys-devel/clang: 13.0.1::gentoo, 14.0.6-r1::gentoo, 15.0.0::gentoo sys-devel/gcc: 11.3.1_p20220909::gentoo, 12.2.0::gentoo sys-devel/gcc-config: 2.5-r1::gentoo sys-devel/libtool: 2.4.7::gentoo sys-devel/lld: 15.0.0::gentoo sys-devel/llvm: 13.0.1::gentoo, 14.0.6-r2::gentoo, 15.0.0::gentoo sys-devel/make: 4.3::gentoo sys-kernel/linux-headers: 5.19::gentoo (virtual/os-headers) sys-libs/glibc: 2.35-r8::gentoo sys-libs/libselinux: 3.4::gentoo Repositories: guru location: /mnt/data/code/github/portage-overlays/guru sync-type: git sync-uri: git@git.gentoo.org:repo/proj/guru.git masters: gentoo priority: -1000 steam-overlay location: /var/db/repos/steam-overlay sync-type: git sync-uri: https://github.com/gentoo-mirror/steam-overlay.git masters: gentoo qt location: /mnt/data/code/github/portage-overlays/qt sync-type: git sync-uri: https://github.com/gentoo-mirror/qt.git masters: gentoo priority: 60 science location: /mnt/data/code/github/portage-overlays/sci sync-type: git sync-uri: git://github.com/waebbl/sci.git masters: gentoo priority: 60 gentoo-git location: /mnt/data/code/github/portage-overlays/gentoo-git sync-type: git sync-uri: https://github.com/waebbl/gentoo.git masters: gentoo priority: 99 waebbl location: /mnt/data/code/github/portage-overlays/waebbl sync-type: git sync-uri: https://github.com/waebbl/waebbl-gentoo.git masters: gentoo priority: 99 gentoo location: /var/db/repos/gentoo sync-type: git sync-uri: https://github.com/gentoo-mirror/gentoo.git priority: 100 Installed sets: @3D, @Qt6, @admin-tools, @desktop, @dev-tools, @docs, @esteam, @fonts, @games, @net-tools, @science ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="@FREE" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -march=znver2 -frecord-gcc-switches -fstack-protector-strong -fstack-check" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-O2 -pipe -march=znver2 -frecord-gcc-switches -fstack-protector-strong -fstack-check" DISTDIR="/var/cache/distfiles" EMERGE_DEFAULT_OPTS="--complete-graph --keep-going --fail-clean --usepkg --buildpkg --buildpkg-exclude='x11-drivers/nvidia-drivers virtual/* acct-user/* acct-group/* app-eselect/* dev-util/nvidia-cuda-toolkit' --autounmask=n --binpkg-respect-use=y --binpkg-changed-deps=y" ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR" FCFLAGS="-O2 -pipe -march=znver2 -frecord-gcc-switches -fstack-protector-strong -fstack-check" FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg buildpkg-live buildsyspkg cgroup clean-logs config-protect-if-modified distlocks downgrade-backup ebuild-locks fail-clean fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms sign split-elog split-log strict strict-keepdir unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe -march=znver2 -frecord-gcc-switches -fstack-protector-strong -fstack-check" GENTOO_MIRRORS="https://ftp.fau.de/gentoo/ https://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/ https://ftp.halifax.rwth-aachen.de/gentoo/" INSTALL_MASK="/usr/share/locale -/usr/share/locale/de* -/usr/share/locale/en*" LANG="en_US.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0" MAKEOPTS="-j4" PKGDIR="/var/cache/binpkgs" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" SHELL="/bin/bash" USE="X acl alsa amd64 branding bzip2 cli crypt dbus dri egl emacs fortran gdbm gif gnome gtk-doc iconv ipv6 jpeg jpeg2k kde lcms libglvnd libinput libtirpc man multilib ncurses networkmanager nls nptl offensive ogg opengl openmp pam pcre pic png policykit pulseaudio python qml qt5 readline seccomp sound split-usr ssl svg systemd tga theora threads tiff udev unicode vorbis webp wifi x264 x265 xattr xpm zlib zstd" ABI_X86="64" ADA_TARGET="gnat_2020" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="pc multiboot qemu" INPUT_DEVICES="libinput wacom" KERNEL="linux" L10N="de de-DE en en-GB en-US" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="nlpsolver" LLVM_TARGETS="NVPTX WebAssembly" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-4 php8-0" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_10" PYTHON_TARGETS="python3_10" RUBY_TARGETS="ruby31" STEAMGAMES="witcher2" USERLAND="GNU" VIDEO_CARDS="dummy fbdev nvidia vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, LC_ALL, LD, LEX, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
Created attachment 805150 [details] mingw64-toolchain-10.0.0_p1:20220914-161231.log.xz build log
Seems caused by one of the -fstack flags, surprised it's not getting stripped by strip-unsupported-flags. I'll look into this, but for now it should build if you remove them. Trying same flags I got this in the config.log: <snip>: undefined reference to `__stack_chk_fail' collect2: error: ld returned 1 exit status
Hm, it can build mingw crt with it (so not auto-stripped) but then everything fails regardless of the flags because crt now always needs ssp symbols (which is not re-implemented by mingw). Tried to use gcc's libssp in stage2 but then stage3's libstdc++ breaks instead. Think I'll just filter -fstack-protector* when cross-compiling (will still be used for the compiler itself), or at least for now.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=26b669479490ec1d679bdbd38b836d6782f1e6c0 commit 26b669479490ec1d679bdbd38b836d6782f1e6c0 Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2022-09-14 19:34:40 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2022-09-14 19:38:37 +0000 dev-util/mingw64-toolchain: filter ssp for cross mingw Closes: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> dev-util/mingw64-toolchain/mingw64-toolchain-10.0.0-r1.ebuild | 1 + dev-util/mingw64-toolchain/mingw64-toolchain-10.0.0_p1.ebuild | 1 + 2 files changed, 2 insertions(+)
Hm, think not entirely fixed -- builds but still issues with wine.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d06a9cf2f29ca13694007493173a9ebe304005de commit d06a9cf2f29ca13694007493173a9ebe304005de Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2022-09-14 21:08:46 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2022-09-14 21:12:16 +0000 Revert "dev-util/mingw64-toolchain: filter ssp for cross mingw" This reverts commit 26b669479490ec1d679bdbd38b836d6782f1e6c0. Will try to get libssp to work, better reverted+failing for now given this can create a unusable build if used ssp. Could filter further to include gcc but will also need to filter on about every mingw packages. For those just wanting this to work meanwhile, just don't enable ssp on neither this nor wine. Bug: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> dev-util/mingw64-toolchain/mingw64-toolchain-10.0.0-r1.ebuild | 1 - dev-util/mingw64-toolchain/mingw64-toolchain-10.0.0_p1.ebuild | 1 - 2 files changed, 2 deletions(-)
It doesn't help that libssp is notoriously brittle. When we were discussing if we should use it for musl ages ago, the response from the musl community was emphatically "please don't". Its effectiveness is doubtful as well. Also, of course, note that if using GCC as system compiler, no need to explicitly set -fstack-protector-strong anyway (it's default). -fstack-check is something different and also considered obsolete. -fstack-clash-protection is its replacement (which hardened profiles set at least, not normal yet IIRC).
Yeah, more I look I this I think I may just slap filter for every mingw ebuilds.
Created attachment 805201 [details] config.log I can confirm the __stack_chk_fail error in config.log. Also removing the -fstack-protector-strong and -fstack-check builds the package.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6087ef400265ab5a85bff365e0ba370a55da8e47 commit 6087ef400265ab5a85bff365e0ba370a55da8e47 Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2022-09-14 22:22:19 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2022-09-14 23:10:16 +0000 Revert "Revert "dev-util/mingw64-toolchain: filter ssp for cross mingw"" This reverts commit d06a9cf2f29ca13694007493173a9ebe304005de. This turned out to be fine, was misled that it may have leaked to gcc's own libraries rather than just mingw's crt. Still require filtering ssp on every mingw packages though, strip-unsupported-flags can't pickup that this will fail with a basic `int main(void) { return 0; }` compiler test. Closes: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> dev-util/mingw64-toolchain/mingw64-toolchain-10.0.0-r1.ebuild | 1 + dev-util/mingw64-toolchain/mingw64-toolchain-10.0.0_p1.ebuild | 1 + 2 files changed, 2 insertions(+) Additionally, it has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b737b60cb2aea0ce025a04b07247a702396b93b commit 9b737b60cb2aea0ce025a04b07247a702396b93b Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2022-09-14 22:29:54 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2022-09-14 23:10:18 +0000 app-emulation/vkd3d-proton: filter ssp for mingw Bug: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> app-emulation/vkd3d-proton/vkd3d-proton-2.6.ebuild | 1 + app-emulation/vkd3d-proton/vkd3d-proton-9999.ebuild | 1 + 2 files changed, 2 insertions(+) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c9f015f0066f268d52929b99f0054d754e50dfa4 commit c9f015f0066f268d52929b99f0054d754e50dfa4 Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2022-09-14 22:29:45 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2022-09-14 23:10:17 +0000 app-emulation/dxvk: filter ssp for mingw Bug: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> app-emulation/dxvk/dxvk-1.10.1.ebuild | 1 + app-emulation/dxvk/dxvk-1.10.2.ebuild | 1 + app-emulation/dxvk/dxvk-1.10.3.ebuild | 1 + app-emulation/dxvk/dxvk-9999.ebuild | 1 + 4 files changed, 4 insertions(+) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7151cb7165bc6e22ae5b1eb968e626cdd734e30e commit 7151cb7165bc6e22ae5b1eb968e626cdd734e30e Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2022-09-14 22:29:36 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2022-09-14 23:10:17 +0000 app-emulation/wine-proton: filter ssp for mingw Bug: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> app-emulation/wine-proton/wine-proton-7.0.4.ebuild | 4 +++- app-emulation/wine-proton/wine-proton-7.0.9999.ebuild | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dbc7d52d0a8d8559d11eb3b9f708775c7c6eaec0 commit dbc7d52d0a8d8559d11eb3b9f708775c7c6eaec0 Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2022-09-14 22:29:30 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2022-09-14 23:10:17 +0000 app-emulation/wine-staging: filter ssp for mingw Bug: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> app-emulation/wine-staging/wine-staging-7.17.ebuild | 4 +++- app-emulation/wine-staging/wine-staging-9999.ebuild | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a6f1340476d5f95c8cbd7980226296e60a39d567 commit a6f1340476d5f95c8cbd7980226296e60a39d567 Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2022-09-14 22:29:24 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2022-09-14 23:10:17 +0000 app-emulation/wine-vanilla: filter ssp for mingw Bug: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> app-emulation/wine-vanilla/wine-vanilla-7.0-r2.ebuild | 4 +++- app-emulation/wine-vanilla/wine-vanilla-7.0-r3.ebuild | 4 +++- app-emulation/wine-vanilla/wine-vanilla-7.17.ebuild | 4 +++- app-emulation/wine-vanilla/wine-vanilla-9999.ebuild | 4 +++- 4 files changed, 12 insertions(+), 4 deletions(-)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c115ecb8b22853eec7abade52a3790ccffeeb4b0 commit c115ecb8b22853eec7abade52a3790ccffeeb4b0 Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2022-09-14 23:20:36 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2022-09-14 23:23:42 +0000 dev-util/mingw64-runtime: filter ssp for cross-compilation bits Less likely to be an issue here given the whole crossdev involvement which may or may not have working libssp, but it seems reasonable to add and there's a way to override if needed. Bug: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> dev-util/mingw64-runtime/mingw64-runtime-10.0.0-r1.ebuild | 1 + dev-util/mingw64-runtime/mingw64-runtime-8.0.0-r3.ebuild | 1 + dev-util/mingw64-runtime/mingw64-runtime-9.0.0-r2.ebuild | 1 + 3 files changed, 3 insertions(+)
(In reply to Sam James from comment #7) > Also, of course, note that if using GCC as system compiler, no need to > explicitly set -fstack-protector-strong anyway (it's default). -fstack-check > is something different and also considered obsolete. > -fstack-clash-protection is its replacement (which hardened profiles set at > least, not normal yet IIRC). Thanks for this info Sam. The info pages for gcc-12 has no info regarding -fstack-check being obsolete. It even says, that -fstack-clash-protection may provide limited protection for static stack allocation if the target supports -fstack-check=specific. If I read this correct, -fstack-clash-protection might even use -fstack-check=specific internally.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=527d13170d519590c4fa3fd320d0c6a3bd5d88fc commit 527d13170d519590c4fa3fd320d0c6a3bd5d88fc Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2023-04-29 09:14:28 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2023-04-29 09:42:39 +0000 app-emulation/vkd3d-proton: update flags filters * -fstack-clash-protection (bug #758914): ICE was fixed, if still run into this then updating gcc to a newer _p* snapshot should sort it (alternatively, use released >=gcc-13.1.0) * -fstack-protector* (bug #870136): mingw64-runtime-11.0.0 adds its own (partial) ssp support, allowing -D_FORTIFY_SOURCE=3 and -fstack-protector-strong without libssp. Using these to build Wine currently still leads to failure, but we can allow it here. Bug: https://bugs.gentoo.org/758914 Bug: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> app-emulation/vkd3d-proton/vkd3d-proton-2.6.ebuild | 10 +++++++--- app-emulation/vkd3d-proton/vkd3d-proton-2.8.ebuild | 10 +++++++--- app-emulation/vkd3d-proton/vkd3d-proton-2.8_p20230207.ebuild | 8 ++++++-- app-emulation/vkd3d-proton/vkd3d-proton-9999.ebuild | 10 +++++++--- 4 files changed, 27 insertions(+), 11 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fca841ad33dbb0e5c6cd29950331b30ab2364d8d commit fca841ad33dbb0e5c6cd29950331b30ab2364d8d Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2023-04-29 09:02:52 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2023-04-29 09:42:39 +0000 app-emulation/dxvk: update flags filters * -fstack-clash-protection (bug #758914): ICE was fixed, if still run into this then updating gcc to a newer _p* snapshot should sort it (alternatively, use released >=gcc-13.1.0) * -fstack-protector* (bug #870136): mingw64-runtime-11.0.0 adds its own (partial) ssp support, allowing -D_FORTIFY_SOURCE=3 and -fstack-protector-strong without libssp. Using these to build Wine currently still leads to failure, but we can allow it here. Bug: https://bugs.gentoo.org/758914 Bug: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> app-emulation/dxvk/dxvk-1.10.3.ebuild | 8 ++++++-- app-emulation/dxvk/dxvk-2.0.ebuild | 8 ++++++-- app-emulation/dxvk/dxvk-2.1.ebuild | 8 ++++++-- app-emulation/dxvk/dxvk-2.1_p20230207.ebuild | 8 ++++++-- app-emulation/dxvk/dxvk-9999.ebuild | 8 ++++++-- 5 files changed, 30 insertions(+), 10 deletions(-) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=97613a229fa10fd2589e122e64bae6156133987f commit 97613a229fa10fd2589e122e64bae6156133987f Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2023-04-29 08:03:41 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2023-04-29 09:42:39 +0000 dev-util/mingw64-toolchain: add 11.0.0 Also remove two obsolete flags filters: * -fstack-clash-protection (bug #758914): ICE was fixed, if still run into this then updating gcc to a newer _p* snapshot should sort it (alternatively, use released >=gcc-13.1.0) * -fstack-protector* (bug #870136): mingw64-runtime-11.0.0 adds its own (partial) ssp support, allowing -D_FORTIFY_SOURCE=3 and -fstack-protector-strong without libssp. Using these to build Wine currently still leads to failure, but we can allow it here. Bug: https://bugs.gentoo.org/758914 Bug: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> dev-util/mingw64-toolchain/Manifest | 1 + .../mingw64-toolchain-11.0.0.ebuild | 317 +++++++++++++++++++++ 2 files changed, 318 insertions(+) https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2779aaf2710bab9bedbd6d66501c04b1552b54ad commit 2779aaf2710bab9bedbd6d66501c04b1552b54ad Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2023-04-29 04:24:51 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2023-04-29 09:42:39 +0000 dev-util/mingw64-runtime: add 11.0.0 Tentatively remove the ssp patch. Bootstrapping using USE=ssp seems to work both with and without libssp. The libscrypt reproducer from the patch's old link also builds fine with this version. Also remove two obsolete flags filters: * -fstack-clash-protection (bug #758914): ICE was fixed, if still run into this then updating gcc to a newer _p* snapshot should sort it (alternatively, use released >=gcc-13.1.0) * -fstack-protector* (bug #870136): mingw64-runtime-11.0.0 adds its own (partial) ssp support, allowing -D_FORTIFY_SOURCE=3 and -fstack-protector-strong without libssp. Using these to build Wine currently still leads to failure, but we can allow it here. Bug: https://bugs.gentoo.org/758914 Bug: https://bugs.gentoo.org/870136 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> dev-util/mingw64-runtime/Manifest | 1 + .../mingw64-runtime/mingw64-runtime-11.0.0.ebuild | 141 +++++++++++++++++++++ 2 files changed, 142 insertions(+)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4778d9cbaca208869cb80f606db24d857c75aa3f commit 4778d9cbaca208869cb80f606db24d857c75aa3f Author: Ionen Wolkens <ionen@gentoo.org> AuthorDate: 2024-05-10 02:36:23 +0000 Commit: Ionen Wolkens <ionen@gentoo.org> CommitDate: 2024-05-10 03:00:43 +0000 dev-util/mingw64-toolchain: filter -fstack-protector* again Used to be done because it was straight up broken (couldn't build), but now it's successfully causing problems and it's not obvious for upstreams to fix these issues with mingw. There may be real issues in dxvk & others, but support for this is new in mingw (also only partial), and believe using this can be considered too experimental/early "here". Still allowing it with USE=custom-cflags for those that really want it and don't mind if it breaks some components they don't use. Skipping revbump given it's an unusual configuration given users normally don't pass this in *FLAGS but rather rely on the toolchain's defaults. mingw64-toolchain-11.0.1 will also be keyworded in not that long for rebuilds. Only needed for mingw runtime, so the toolchain itself is still using it through the system-wide defaults. May revisit eventually. Not doing this for crossdev+mingw64-runtime main package again, these are for more expert use in the first place. Bug: https://bugs.gentoo.org/870136 Closes: https://bugs.gentoo.org/931512 Signed-off-by: Ionen Wolkens <ionen@gentoo.org> dev-util/mingw64-toolchain/mingw64-toolchain-11.0.0_p2.ebuild | 6 ++++++ dev-util/mingw64-toolchain/mingw64-toolchain-11.0.1.ebuild | 6 ++++++ 2 files changed, 12 insertions(+)