summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwtc <devnull@localhost>1998-05-07 19:19:25 +0000
committerwtc <devnull@localhost>1998-05-07 19:19:25 +0000
commit6f8d39fed2f7d680567abf0c8987679c2a729fba (patch)
treee10e6597a780542cad1dbc661cb8f462965aa662
parent6802ea0abffcfd243bfa9cc22036a6394066b23d (diff)
downloadnspr-hg-6f8d39fed2f7d680567abf0c8987679c2a729fba.tar.gz
Matt Waston <mwatson@apple.com> taught me what common symbols areNORMANDY_BASE
and to compile with -fno-common.
-rw-r--r--config/Rhapsody.mk12
1 files changed, 11 insertions, 1 deletions
diff --git a/config/Rhapsody.mk b/config/Rhapsody.mk
index 3436b8ae..3a9c3dba 100644
--- a/config/Rhapsody.mk
+++ b/config/Rhapsody.mk
@@ -31,7 +31,17 @@ CPU_ARCH = ppc
#OS_REL_CFLAGS = -mno-486 -Di386
#CPU_ARCH = x86
-OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -pipe -DRHAPSODY -DHAVE_STRERROR -DHAVE_BSD_FLOCK
+# "Commons" are tentative definitions in a global scope, like this:
+# int x;
+# The meaning of a common is ambiguous. It may be a true definition:
+# int x = 0;
+# or it may be a declaration of a symbol defined in another file:
+# extern int x;
+# Use the -fno-common option to force all commons to become true
+# definitions so that the linker can catch multiply-defined symbols.
+# Also, common symbols are not allowed with Rhapsody dynamic libraries.
+
+OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -fno-common -pipe -DRHAPSODY -DHAVE_STRERROR -DHAVE_BSD_FLOCK
DEFINES += -D_PR_LOCAL_THREADS_ONLY -D_PR_NEED_FAKE_POLL