Ronald Oussoren added the comment:
I've checked and '-fcommon' is default (at least with Xcode 12 beta on x86_64),
and likely not what you'd want: With "-fcommon" the definition a non-static
variable in two different files will get merged:
first.m: int x;
second.m: int x;
Without '-fno
Ronald Oussoren added the comment:
According to [1] common symbols are not allowed in frameworks. I guess that's
why we added '-fno-common' to the linker flags.
[1]
https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/FrameworkBinding.html#//apple_ref/
Ned Deily added the comment:
Sorry, that second patch should have been:
diff -configure.ac
--- a/configure.ac Tue May 05 12:04:35 2015 -0700
+++ b/configure.ac Tue May 05 18:22:39 2015 -0700
@@ -2346,7 +2346,7 @@
Linux*|GNU*) LINKFORSHARED="-Xlinker -export-dynamic";;
#
New submission from Ned Deily:
As noted in msg242635 of issue23911, for some reason configure.ac adds the gcc
-fno-common option for OS X framework builds. Is this still necessary? I'm
guessing it might be vestigial code left over from the Mac toolbox support in
Python 2 that was removed in