diff --git a/etc/settings.csh b/etc/settings.csh
index 139a295870d5b7d6c66ef01ab820cb22511cea1d..530eeb9d8bcdbb6431e419d30e0660f4eb26973c 100644
--- a/etc/settings.csh
+++ b/etc/settings.csh
@@ -230,7 +230,7 @@ endif
 # ~~~~~~~~~~~~~~
 
 set boost_version=boost_1_42_0
-set cgal_version=CGAL-3.5.1
+set cgal_version=CGAL-3.7
 
 setenv BOOST_ARCH_PATH $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$boost_version
 setenv CGAL_ARCH_PATH  $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$cgal_version
diff --git a/etc/settings.sh b/etc/settings.sh
index e401860ef26d9ae15c5e924527cbd06ca1aef3f6..bf96da3a32b1761e0798a685ebe9e0391483db7d 100644
--- a/etc/settings.sh
+++ b/etc/settings.sh
@@ -248,7 +248,7 @@ fi
 # ~~~~~~~~~~~~~~
 
 boost_version=boost_1_42_0
-cgal_version=CGAL-3.5.1
+cgal_version=CGAL-3.7
 
 export BOOST_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$boost_version
 export CGAL_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$cgal_version
diff --git a/wmake/rules/SiCortex64Gcc/c++ b/wmake/rules/SiCortex64Gcc/c++
index 2b4cb4c48ff1e507835d36e59311147425f57451..f6d7be55483ca64bae79af0c0479a564c0f2cc57 100644
--- a/wmake/rules/SiCortex64Gcc/c++
+++ b/wmake/rules/SiCortex64Gcc/c++
@@ -7,7 +7,7 @@ CC          = g++ -mabi=64
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = -G0 $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/SunOS64Gcc/c++ b/wmake/rules/SunOS64Gcc/c++
index 234549805637e57294af751a838d0cd2b23732cd..3ca193e296dc3a739a5eac704b9c442fcb1d1fcb 100644
--- a/wmake/rules/SunOS64Gcc/c++
+++ b/wmake/rules/SunOS64Gcc/c++
@@ -6,7 +6,7 @@ CC          = g++ -m64
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linux64Clang/c++ b/wmake/rules/linux64Clang/c++
index 75da3e4ad2ff0bac5116f6987f9113b7ac2dfc53..11efc0c69bd0235c4b8251f6d8efa2f9b2c533de 100644
--- a/wmake/rules/linux64Clang/c++
+++ b/wmake/rules/linux64Clang/c++
@@ -6,7 +6,7 @@ CC          = clang++ -m64
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linux64Gcc++0x/c++ b/wmake/rules/linux64Gcc++0x/c++
index 4f858ff338c4d4f3e09d279d7168d9a368f05902..ff7cf481fdca99a4c2c276f3dc3c9e54a4bf9c32 100644
--- a/wmake/rules/linux64Gcc++0x/c++
+++ b/wmake/rules/linux64Gcc++0x/c++
@@ -6,7 +6,7 @@ CC          = g++ -m64 -std=c++0x
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linux64Gcc/c++ b/wmake/rules/linux64Gcc/c++
index 7aab76231291ec4fc5ea024e8cc6f774554df91a..520e39c3b1aa0860a94e5cc9c8cf5d6d926d08a4 100644
--- a/wmake/rules/linux64Gcc/c++
+++ b/wmake/rules/linux64Gcc/c++
@@ -6,7 +6,7 @@ CC          = g++ -m64
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linux64Gcc43/c++ b/wmake/rules/linux64Gcc43/c++
index 53455aa74c4568402195441ad552e3c11e2bd50c..3ca193e296dc3a739a5eac704b9c442fcb1d1fcb 100644
--- a/wmake/rules/linux64Gcc43/c++
+++ b/wmake/rules/linux64Gcc43/c++
@@ -6,7 +6,7 @@ CC          = g++ -m64
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-40
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linux64Gcc44/c++ b/wmake/rules/linux64Gcc44/c++
index 234549805637e57294af751a838d0cd2b23732cd..3ca193e296dc3a739a5eac704b9c442fcb1d1fcb 100644
--- a/wmake/rules/linux64Gcc44/c++
+++ b/wmake/rules/linux64Gcc44/c++
@@ -6,7 +6,7 @@ CC          = g++ -m64
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linux64Gcc45/c++ b/wmake/rules/linux64Gcc45/c++
index 234549805637e57294af751a838d0cd2b23732cd..3ca193e296dc3a739a5eac704b9c442fcb1d1fcb 100644
--- a/wmake/rules/linux64Gcc45/c++
+++ b/wmake/rules/linux64Gcc45/c++
@@ -6,7 +6,7 @@ CC          = g++ -m64
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linuxClang/c++ b/wmake/rules/linuxClang/c++
index 2f7a3bde441a8c169bbd0f11da1ae949c2e5f6df..eec5f2c0811fad195094b9bca3c448c2efc12570 100644
--- a/wmake/rules/linuxClang/c++
+++ b/wmake/rules/linuxClang/c++
@@ -6,7 +6,7 @@ CC          = clang++ -m32
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linuxGcc/c++ b/wmake/rules/linuxGcc/c++
index 7cbedb1fd633665b049cb650aa75b6fdcd6b2e96..e862181fc5c293e1dc6b46f06acad3b72522eb41 100644
--- a/wmake/rules/linuxGcc/c++
+++ b/wmake/rules/linuxGcc/c++
@@ -6,7 +6,7 @@ CC          = g++ -m32
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linuxGcc43/c++ b/wmake/rules/linuxGcc43/c++
index 7cbedb1fd633665b049cb650aa75b6fdcd6b2e96..e862181fc5c293e1dc6b46f06acad3b72522eb41 100644
--- a/wmake/rules/linuxGcc43/c++
+++ b/wmake/rules/linuxGcc43/c++
@@ -6,7 +6,7 @@ CC          = g++ -m32
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linuxGcc44/c++ b/wmake/rules/linuxGcc44/c++
index 7cbedb1fd633665b049cb650aa75b6fdcd6b2e96..e862181fc5c293e1dc6b46f06acad3b72522eb41 100644
--- a/wmake/rules/linuxGcc44/c++
+++ b/wmake/rules/linuxGcc44/c++
@@ -6,7 +6,7 @@ CC          = g++ -m32
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linuxGcc45/c++ b/wmake/rules/linuxGcc45/c++
index 7cbedb1fd633665b049cb650aa75b6fdcd6b2e96..e862181fc5c293e1dc6b46f06acad3b72522eb41 100644
--- a/wmake/rules/linuxGcc45/c++
+++ b/wmake/rules/linuxGcc45/c++
@@ -6,7 +6,7 @@ CC          = g++ -m32
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linuxIA64Gcc/c++ b/wmake/rules/linuxIA64Gcc/c++
index dc0992866b54c8045b898687b7b208fcf1c0924c..b258455b2c82dcdc22955c761d6513fe9ab3f3bf 100644
--- a/wmake/rules/linuxIA64Gcc/c++
+++ b/wmake/rules/linuxIA64Gcc/c++
@@ -6,7 +6,7 @@ CC          = g++
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linuxPPC64Gcc/c++ b/wmake/rules/linuxPPC64Gcc/c++
index 532011e6d6fb495b557648ab1a546fb5af4015f4..b8e735a5bcd9e530005765564337c37292562aeb 100644
--- a/wmake/rules/linuxPPC64Gcc/c++
+++ b/wmake/rules/linuxPPC64Gcc/c++
@@ -6,7 +6,7 @@ CC          = g++ -m64 -mcpu=power5+
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC
 
diff --git a/wmake/rules/linuxmingw32/c++ b/wmake/rules/linuxmingw32/c++
index a0812a1cbaf3df9b0d59942231b570459bd418e5..52945c1aa8b497c75b891fab453886eb8e478c60 100644
--- a/wmake/rules/linuxmingw32/c++
+++ b/wmake/rules/linuxmingw32/c++
@@ -6,7 +6,7 @@ CC          = mingw32-g++
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS)
 
diff --git a/wmake/rules/solarisGcc/c++ b/wmake/rules/solarisGcc/c++
index 8f71f615718075a91aee20eb82c37f09d22cc86e..667b00c89457e69eaffda05da2e9954175e846d9 100644
--- a/wmake/rules/solarisGcc/c++
+++ b/wmake/rules/solarisGcc/c++
@@ -6,7 +6,7 @@ CC          = g++
 
 include $(RULES)/c++$(WM_COMPILE_OPTION)
 
-ptFLAGS     = -DNoRepository -ftemplate-depth-60
+ptFLAGS     = -DNoRepository -ftemplate-depth-100
 
 c++FLAGS    = $(GFLAGS) $(c++WARN) $(c++OPT) $(c++DBUG) $(ptFLAGS) $(LIB_HEADER_DIRS) -fPIC