On Tue, Jan 28, 2020 at 11:45:39AM -0800, Dylan Baker wrote: > Quoting Ian Romanick (2020-01-21 09:50:47) > > On 1/20/20 6:41 AM, Stefan Dirsch wrote: > > > Hi > > > > > > Starting from the upcoming GCC release 10, the default of -fcommon option > > > will > > > change to -fno-common. Due to this we're going to see a lot of build > > > failures > > > > It seems like many of the places where this would occur in Mesa are > > likely to be fine... but it would be easy enough to fix by sprinkling > > 'extern' around (if my understanding of the GCC docs is correct). It > > also seems unlikely that GCC will be able to apply any hypothetical > > optimizations to the uses in Mesa. I think most places where a global > > is intended to be isolated, we already decorate it with static. > > > > See also > > https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html#index-fcommon > > > > We definitely should decide which behavior we want, and we should start > > enforcing it sooner rather than later. > > > > > in Mesa drivers like > > > > > > multiple definition of `syncobj_handle'; > > > src/amd/vulkan/9198681@@vulkan_radeon@sha/meson-generated_.._radv_entrypoints.c.o > > > (symbol from plugin):(.text+0x0): first defined here > > > [ 213s] > > > /usr/lib64/gcc/x86_64-suse-linux/9/../../../../x86_64-suse-linux/bin/ld: > > > src/amd/vulkan/9198681@@vulkan_radeon@sha/radv_wsi_wayland.c.o (symbol > > > from > > > plugin): in function > > > `radv_GetPhysicalDeviceWaylandPresentationSupportKHR': > > > > > > I'm wondering if there is already anybody working on fixing these issues > > > or is > > > it recommended to workaround it by setting -fcommon manually somehow? How > > > can > > > the latter be done when using meson/ninja as build tool? > > > > I know you can do it with buildtype=plain, but that may be overkill for > > anything other than testing. > > meson -Dc_args=-fcommon -Dcpp_args=-fcommon <other args> > > will do what you want.
Thanks a lot for the hint! > I agree that we should probably either add -fcommon or -fno-common to the > meson/scons/android build files, so that we don't get cases of "but this works > on my dev machine with $complier!" I agree on that. Thanks, Stefan Public Key available ------------------------------------------------------ Stefan Dirsch (Res. & Dev.) SUSE Software Solutions Germany GmbH Tel: 0911-740 53 0 Maxfeldstraße 5 FAX: 0911-740 53 479 D-90409 Nürnberg http://www.suse.de Germany ---------------------------------------------------------------- (HRB 36809, AG Nürnberg) Geschäftsführer: Felix Imendörffer ---------------------------------------------------------------- _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev