configure-with-threadsafe-mmgc has landed. I've added a patch, 'unmerged-edits-to-mmgc-threadsafe' that fixes warnings I introduced in 'mmgc-threadsafe' that would break the Adobe build system.
authorjorendorff@mozilla.com
Tue, 18 Dec 2007 17:22:44 -0600
changeset 25 bc21193f2b1c59a00100551290b22248e035408d
parent 24 7b177201b469fd969817e2461a2cfe93cef9a883
child 27 c1c4660628af8aa4c7fc87bf645d8afb9f3eca55
child 31 e76f410f999ee1bc9091c760b98aa49841226c3f
push id1
push userbsmedberg@mozilla.com
push dateMon, 21 Apr 2008 01:54:18 +0000
configure-with-threadsafe-mmgc has landed. I've added a patch, 'unmerged-edits-to-mmgc-threadsafe' that fixes warnings I introduced in 'mmgc-threadsafe' that would break the Adobe build system.
configure-with-threadsafe-mmgc
series
unmerged-edits-to-mmgc-threadsafe
deleted file mode 100644
--- a/configure-with-threadsafe-mmgc
+++ /dev/null
@@ -1,89 +0,0 @@
-diff --git a/configure b/configure
---- a/configure
-+++ b/configure
-@@ -35,5 +35,12 @@
- #
- # ***** END LICENSE BLOCK *****
- 
--echo "running $PYTHON $0.py --ignore-unknown-flags $@"
--exec $PYTHON $0.py --ignore-unknown-flags $@
-+args=''
-+while [ $# -ge 1 ]; do
-+    args="$args '$1'"
-+    shift
-+done
-+
-+echo "running $PYTHON $0.py --ignore-unknown-flags $args"
-+
-+eval "'$PYTHON' '$0.py' --ignore-unknown-flags $args"
-diff --git a/configure.py b/configure.py
---- a/configure.py
-+++ b/configure.py
-@@ -75,10 +75,13 @@ DEBUG_CXXFLAGS = ""
- DEBUG_CXXFLAGS = ""
- DEBUG_LDFLAGS = ""
- OS_LIBS = []
-+OS_LDFLAGS = ""
- MMGC_CPPFLAGS = ""
- AVMSHELL_CPPFLAGS = ""
- AVMSHELL_LDFLAGS = ""
- MMGC_DEFINES = {'SOFT_ASSERTS': None}
-+NSPR_INCLUDES = ""
-+NSPR_LDOPTS = ""
- 
- MMGC_INTERIOR_PTRS = o.getBoolArg('mmgc-interior-pointers', True)
- if MMGC_INTERIOR_PTRS:
-@@ -88,6 +91,16 @@ if MMGC_DYNAMIC:
- if MMGC_DYNAMIC:
-     MMGC_DEFINES['MMGC_DLL'] = None
-     MMGC_CPPFLAGS += "-DMMGC_IMPL "
-+
-+MMGC_THREADSAFE = o.getBoolArg('threadsafe-mmgc', False)
-+if MMGC_THREADSAFE:
-+    MMGC_DEFINES['MMGC_THREADSAFE'] = None
-+    NSPR_INCLUDES = o.getStringArg('nspr-includes')
-+    MMGC_CPPFLAGS += NSPR_INCLUDES + " "
-+    APP_CPPFLAGS += NSPR_INCLUDES + " "
-+
-+    NSPR_LDOPTS = o.getStringArg('nspr-ldopts')
-+    OS_LDFLAGS += " " + NSPR_LDOPTS
- 
- if config.COMPILER_IS_GCC:
-     APP_CXXFLAGS = "-fno-exceptions -Werror -Wall -Wno-reorder -Wno-switch -Wno-invalid-offsetof -Wno-uninitialized -Wno-strict-aliasing -fmessage-length=0 -finline-functions -finline-limit=65536 "
-@@ -188,6 +201,7 @@ config.subst("DEBUG_CXXFLAGS", DEBUG_CXX
- config.subst("DEBUG_CXXFLAGS", DEBUG_CXXFLAGS)
- config.subst("DEBUG_LDFLAGS", DEBUG_LDFLAGS)
- config.subst("OS_LIBS", " ".join(OS_LIBS))
-+config.subst("OS_LDFLAGS", OS_LDFLAGS)
- config.subst("MMGC_CPPFLAGS", MMGC_CPPFLAGS)
- config.subst("AVMSHELL_CPPFLAGS", AVMSHELL_CPPFLAGS)
- config.subst("AVMSHELL_LDFLAGS", AVMSHELL_LDFLAGS)
-diff --git a/pcre/config.h b/pcre/config.h
---- a/pcre/config.h
-+++ b/pcre/config.h
-@@ -40,7 +40,9 @@ them both to 0; an emulation function wi
- #define HAVE_LIMITS_H 1
- 
- /* Define to 1 if the system has the type `long long'. */
-+#ifndef HAVE_LONG_LONG
- #define HAVE_LONG_LONG 1
-+#endif
- 
- /* Define to 1 if you have the `memmove' function. */
- #define HAVE_MEMMOVE 1
-diff --git a/shell/avmshell.h b/shell/avmshell.h
---- a/shell/avmshell.h
-+++ b/shell/avmshell.h
-@@ -48,6 +48,12 @@
- // #define AVMPLUS_INTERACTIVE
- 
- using namespace avmplus;
-+
-+// avmplus and NSPR both typedef some basic types: we must disambiguate
-+using avmplus::uint64;
-+using avmplus::uint32;
-+using avmplus::uint16;
-+using avmplus::uint8;
- 
- namespace avmshell
- {
--- a/series
+++ b/series
@@ -1,7 +1,7 @@
 tweak-esc-main.sh
-configure-with-threadsafe-mmgc
 mmgc-threadsafe
+unmerged-edits-to-mmgc-threadsafe
 mmgc-threadsafe-gctests
 mmgc-maybegc
 mmgc-graphviz
 mmgc-bit-checks
new file mode 100644
--- /dev/null
+++ b/unmerged-edits-to-mmgc-threadsafe
@@ -0,0 +1,12 @@
+diff --git a/MMgc/GC.cpp b/MMgc/GC.cpp
+--- a/MMgc/GC.cpp
++++ b/MMgc/GC.cpp
+@@ -424,6 +424,8 @@ namespace MMgc
+ 		GCAssert(callerHasActiveRequest == GCThread::GetCurrentThread()->IsInActiveRequest());
+ #endif
+ #else
++		(void) callerHoldsLock;
++		(void) callerHasActiveRequest;
+ 		CheckThread();
+ #endif
+