https://bugs.winehq.org/show_bug.cgi?id=48161
--- Comment #29 from Rosanne DiMesio dimesio@earthlink.net --- (In reply to Zebediah Figura from comment #28)
Based on https://build.opensuse.org/public/build/Emulators:Wine:Debian/xUbuntu_19.10/ i586/wine-devel/_log we're correctly passing -fno-stack-protector (and not passing -fstack-protector-strong), but the compiled binaries still have stack protection code touching %gs. Paul says it's baked into gcc. What can we do about this?
If my current iteration isn't working (only in 19.10; see below), I don't have a clue. Suggestions are welcome, but note they need to be doable on the OBS, which is not a standard Debian build server.
Note that the Debian builds still have -fstack-protector-strong appended, probably from the CFLAGS: https://build.opensuse.org/public/build/Emulators:Wine:Debian/Debian_10/ i586/wine-devel/_log. Based on the ".diff.gz" files (which may be the wrong ones; I'm not familiar with Debian packaging), I see the line
+export DEB_CFLAGS_MAINT_STRIP = -fstack-protector-strong
present in the Ubuntu file but not the Debian one.
Originally I had one debian.tar.xz for all Debian/Ubuntu versions, which is how things are meant to work on the OBS. I had to create a separate one for Ubuntu 19.10 when I added -fcf-protection=none, because that caused build failures on some of the older distro versions. The DEB_CFLAGS_MAINT_STRIP line is currently only in the Ubuntu 19.10 rules file because that's where I've been testing attempts to try to strip out the default -fstack-protector-strong. My plan is to eventually add it to the rules file for other Debian/Ubuntu versions, but I need confirmation that it's actually working first.