Update the tool specifications for the SGI MIPSpro tools.
authorstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Thu, 30 Oct 2003 06:10:11 +0000 (06:10 +0000)
committerstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Thu, 30 Oct 2003 06:10:11 +0000 (06:10 +0000)
git-svn-id: http://scons.tigris.org/svn/scons/trunk@833 fdb21ef1-2011-0410-befe-b5e4ea1792b1

bin/files
doc/man/scons.1
src/CHANGES.txt
src/RELEASE.txt
src/engine/MANIFEST.in
src/engine/SCons/Tool/__init__.py
src/engine/SCons/Tool/sgic++.py [new file with mode: 0644]
src/engine/SCons/Tool/sgicc.py
src/engine/SCons/Tool/sgilink.py
test/import.py

index 043eadbae95a716cc0b00132807a7feed6a49d4b..574e17c013b30f4f0b197bae1eeee9443fac41a7 100644 (file)
--- a/bin/files
+++ b/bin/files
@@ -77,6 +77,7 @@
 ./SCons/Tool/qt.py
 ./SCons/Tool/rmic.py
 ./SCons/Tool/sgiar.py
+./SCons/Tool/sgic++.py
 ./SCons/Tool/sgicc.py
 ./SCons/Tool/sgilink.py
 ./SCons/Tool/sunar.py
index 5e1e7b73c678b8718348cf60855e7cd80c7d844b..a37853985d66195b65584899a4e1309ba5328626 100644 (file)
@@ -939,6 +939,7 @@ pdftex
 qt
 rmic
 sgiar
+sgic++
 sgicc
 sgilink
 sunar
index 7b5a93b4cee6f078f2ae0660f9e3d5b94c05cf24..798bacfecc0af37d64e001476227cbf236584d3d 100644 (file)
@@ -19,6 +19,11 @@ RELEASE X.XX - XXX, XX XXX XXXX XX:XX:XX -XXXX
 
   - Fix subclassing the Environment and Scanner classes.
 
+  From Steve Leblanc:
+
+  - SGI fixes:  Fix C++ compilation, add a separate Tool/sgic++.py module,
+    remove '-LANG:std' from the default SGI $CXXFLAGS and $LINKFLAGS.
+
   From Gary Oberbrunner:
 
   - Fix how the man page un-indents after examples in some browsers.
index 6e43f50e7db2ec01751666cb3b4ffa5c212c075c..f13736a77ff52b631ee178f5a4b86e496f7acdd3 100644 (file)
@@ -20,11 +20,17 @@ more effectively, please sign up for the scons-users mailing list at:
 
 
 
-RELEASE 0.93 - Thu, 23 Oct 2003 07:26:55 -0500
+RELEASE X.XX - XXX, XX XXX XXXX XX:XX:XX -XXXX
 
-  This is the fourth beta release of SCons.  Please consult the
+  This is the fifth beta release of SCons.  Please consult the
   CHANGES.txt file for a list of specific changes since last release.
 
+  Please note the following important changes since release 0.93:
+
+  - The '-LANG:std' option has been removed from the default $CXXFLAGS
+    and $LINKFLAGS variables on SGI systems.  SGI users who need that flag
+    for C++ compilation will need to explicitly add it to those variables.
+
   Please note the following important changes since release 0.92:
 
   - Construction variables are now expanded anywhere within a
@@ -41,11 +47,6 @@ RELEASE 0.93 - Thu, 23 Oct 2003 07:26:55 -0500
     of using the env.ParseConfig() method.  The global function will be
     removed in some future release of SCons.
 
-  Please note the following important changes since release 0.91:
-
-  - The Debian package available from the SCons web site now
-    uses Python version 2.2.
-
   SCons is developed with an extensive regression test suite, and a
   rigorous development methodology for continually improving that suite.
   Because of this, SCons is of sufficient quality that you can use it
index 3c71aba3614efc9c3a7b255dea5182dbfd263116..24e3d76005b5f2594e3ad08e2754b9043ebe94f5 100644 (file)
@@ -93,6 +93,7 @@ SCons/Tool/RCS.py
 SCons/Tool/rmic.py
 SCons/Tool/SCCS.py
 SCons/Tool/sgiar.py
+SCons/Tool/sgic++.py
 SCons/Tool/sgicc.py
 SCons/Tool/sgilink.py
 SCons/Tool/sunar.py
index 9ddfdf35b681e4ecf629fcac7675ae0be4f7cb7a..b71b08bf744d8729af87138c8a16f9b0ecf5ec08 100644 (file)
@@ -248,7 +248,7 @@ def tool_list(platform, env):
         "prefer MIPSPro on IRIX"
         linkers = ['sgilink', 'gnulink']
         c_compilers = ['sgicc', 'gcc', 'cc']
-        cxx_compilers = ['sgicc', 'g++', 'c++']
+        cxx_compilers = ['sgic++', 'g++', 'c++']
         assemblers = ['as', 'gas']
         fortran_compilers = ['f77', 'g77']
         ars = ['sgiar']
@@ -299,7 +299,7 @@ def tool_list(platform, env):
         ar = None
     else:
         # Don't use g++ if the C compiler has built-in C++ support:
-        if c_compiler in ('msvc', 'icc', 'sgicc'):
+        if c_compiler in ('msvc', 'icc'):
             cxx_compiler = None
         else:
             cxx_compiler = FindTool(cxx_compilers, env) or cxx_compilers[0]
diff --git a/src/engine/SCons/Tool/sgic++.py b/src/engine/SCons/Tool/sgic++.py
new file mode 100644 (file)
index 0000000..a818d39
--- /dev/null
@@ -0,0 +1,28 @@
+"""SCons.Tool.sgic++
+
+Tool-specific initialization for MIPSpro C++ on SGI.
+
+There normally shouldn't be any need to import this module directly.
+It will usually be imported through the generic SCons.Tool.Tool()
+selection method.
+
+"""
+__revision__ = ""
+
+import os.path
+import string
+
+cplusplus = __import__('c++', globals(), locals(), [])
+
+def generate(env):
+    """Add Builders and construction variables for SGI MIPS C++ to an Environment."""
+
+    cplusplus.generate(env)
+
+    env['CXX'] = 'CC'
+    env['SHCXX'] = 'CC'
+    env['SHOBJSUFFIX'] = '.o'
+    env['STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME'] = 1
+    
+def exists(env):
+    return env.Detect('CC')
index cc285e704ea455849078b54b9c8aeba4dbafc66b..da2c26d90c082da519419b784b638de7387c2970 100644 (file)
@@ -1,6 +1,6 @@
 """SCons.Tool.sgicc
 
-Tool-specific initialization for MIPSPro CC and cc.
+Tool-specific initialization for MIPSPro cc on SGI.
 
 There normally shouldn't be any need to import this module directly.
 It will usually be imported through the generic SCons.Tool.Tool()
@@ -38,11 +38,10 @@ import cc
 def generate(env):
     """Add Builders and construction variables for gcc to an Environment."""
     cc.generate(env)
-        
+
     env['CXX']        = 'CC'
-    env['CXXFLAGS']   = ['$CCFLAGS', '-LANG:std']
     env['SHOBJSUFFIX'] = '.o'
     env['STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME'] = 1
 
 def exists(env):
-    return env.Detect('CC')
+    return env.Detect('cc')
index aba06cfe481fb63dcadb8e542f57afba3bd6849a..5643c088f14417b8d53dac2464e6013fca0f6c2a 100644 (file)
@@ -1,6 +1,6 @@
 """SCons.Tool.sgilink
 
-Tool-specific initialization for the SGI MIPSPro linker.
+Tool-specific initialization for the SGI MIPSPro linker on SGI.
 
 There normally shouldn't be any need to import this module directly.
 It will usually be imported through the generic SCons.Tool.Tool()
@@ -41,8 +41,8 @@ def generate(env):
     """Add Builders and construction variables for MIPSPro to an Environment."""
     link.generate(env)
     
-    env['LINK']        = env.Detect(linkers) or 'cc'
-    env['LINKFLAGS']   = '-LANG:std'
+    env['LINK'] = env.Detect(linkers) or 'cc'
+    env['SHLINKFLAGS'] = '$LINKFLAGS -shared'
 
 def exists(env):
     return env.Detect(linkers)
index 48c17be4b44aea22c6f1fc37b92aaa2c21c74f18..d30328b1b73de019765caf0a7d1d01b523eb1dd5 100644 (file)
@@ -96,6 +96,7 @@ tools = [
     'rmic',
     'SCCS',
     'sgiar',
+    'sgic++',
     'sgicc',
     'sgilink',
     'Subversion',