]> OCCT Git - occt-wok.git/commitdiff
0024227: Enable SS2 instructions for OCCT building
authorbugmaster <bugmaster@opencascade.com>
Tue, 8 Oct 2013 07:53:35 +0000 (11:53 +0400)
committerbugmaster <bugmaster@opencascade.com>
Tue, 8 Oct 2013 07:53:35 +0000 (11:53 +0400)
Update WOK compiler options defaults.
Update VS2008 project files generation.
Update Code::Blocks files geenration.
Correct codeblocks.sh for Linux compatibility
Update VS2010/VS2012 project files generation.
Update automake building procedure.

12 files changed:
src/WOKBuilderDef/CSF_LIN.edl
src/WOKBuilderDef/CSF_MAC.edl
src/WOKBuilderDef/CSF_WNT.edl
src/WOKTclLib/osutils.tcl
src/WOKTclLib/templates/codeblocks.sh
src/WOKTclLib/templates/template.ac
src/WOKTclLib/templates/template.vc10
src/WOKTclLib/templates/template.vc10x
src/WOKTclLib/templates/template.vc11
src/WOKTclLib/templates/template.vc11x
src/WOKTclLib/templates/template.vc9
src/WOKTclLib/templates/template.vc9x

index 757d9f9408b9b603d80c3aae7d85586913636d4d..ec58b5c8e89bc8351b1d3d3fce2fc7ed086283e9 100644 (file)
@@ -12,7 +12,7 @@
   -- gcc tools should be available in PATH
   -- C++ compiler
   @set %CSF_CXX_COMPILER   = "g++ ";
-  @set %CSF_CXX_SysOptions = " -fPIC -DPIC -Wall";
+  @set %CSF_CXX_SysOptions = " -fPIC -DPIC -mmmx -msse -msse2 -mfpmath=sse -Wall";
   @string %CSF_CXX_Options = " -DLIN -DLININTEL -DOCC_CONVERT_SIGNALS -D_GNU_SOURCE=1 " %CSF_PRODUCTS_DEFINES " ";
   @set %CSF_CXX_ModeOpt    = " -O3 -DNDEBUG -DNo_Exception ";
   @set %CSF_CXX_ModeOptDeb = " -g -O0 -DDEB -D_DEBUG ";
@@ -20,7 +20,7 @@
   -- C compiler
   @set %CSF_C_COMPILER = "gcc ";
   @string %CSF_C_INCLUDE +=  "";
-  @set %CSF_C_SysOptions = " -fPIC -DPIC -Wall";
+  @set %CSF_C_SysOptions = " -fPIC -DPIC -mmmx -msse -msse2 -mfpmath=sse -Wall";
   @set %CSF_C_Options    = " -DLIN -DLININTEL -D_GNU_SOURCE=1 -fexceptions";
   @set %CSF_C_ModeOpt    = " -O3 -DNDEBUG -DNo_Exception ";
   @set %CSF_C_ModeOptDeb = " -O0 -g -DDEB -D_DEBUG ";
index 9a1d0d1d9e684d2ebf466bd95d27cd01b08e9040..9d5447944ebcc9579e84590914e254cfcad47674 100755 (executable)
@@ -14,7 +14,7 @@
 
   @set %CSF_CXX_COMPILER = "g++ ";
 
-  @set %CSF_CXX_SysOptions = " -fPIC -funsigned-char -Wall -fmessage-length=0";
+  @set %CSF_CXX_SysOptions = " -fPIC -funsigned-char -mmmx -msse -msse2 -mfpmath=sse -Wall -fmessage-length=0";
   @string %CSF_CXX_Options = " -DOCC_CONVERT_SIGNALS " %CSF_PRODUCTS_DEFINES " ";
   @if (%MACOSX_USE_GLX == "true") then
     @string %CSF_CXX_Options += "-DMACOSX_USE_GLX ";
@@ -25,7 +25,7 @@
   @set %CSF_C_COMPILER = "gcc ";
   @string %CSF_C_INCLUDE +=  "";
 
-  @set %CSF_C_SysOptions = " -fPIC -funsigned-char -Wall";
+  @set %CSF_C_SysOptions = " -fPIC -funsigned-char -mmmx -msse -msse2 -mfpmath=sse -Wall";
   @set %CSF_C_Options    = " -fexceptions";
   @set %CSF_C_ModeOpt    = " -O3 -DNDEBUG -DNo_Exception ";
   @set %CSF_C_ModeOptDeb = " -gdwarf-2 -O0 -DDEB -D_DEBUG ";
index 6abc8946734c9271c9755ea0d93f6b755cf56833..391b105d13efac99f0bb7ab0e4b3ea0da9714265 100644 (file)
 
   -- Visual Studio compilers and tools should be set in PATH
   @set %CSF_CXX_COMPILER   = "cl.exe ";
-  @set %CSF_CXX_SysOptions = " -nologo -W3 ";
+  @set %CSF_CXX_SysOptions = " -nologo -arch:SSE2 -W3 ";
   @string %CSF_CXX_Options = " -DWNT -D_WINDOWS -D_CRT_SECURE_NO_DEPRECATE " %CSF_PRODUCTS_DEFINES " ";
   @set %CSF_CXX_ModeOpt    = " -MD  -EHa -O2 -Gy -DNDEBUG -DNo_Exception ";
   @set %CSF_CXX_ModeOptDeb = " -MDd -EHa -Od -Gm -Zi -DDEB -D_DEBUG ";
 
   -- C compiler
   @set %CSF_C_COMPILER   = "cl.exe ";
-  @set %CSF_C_SysOptions = " -nologo -W3 ";
+  @set %CSF_C_SysOptions = " -nologo -arch:SSE2 -W3 ";
   @string %CSF_C_Options = " -DWNT -D_WINDOWS -D_CRT_SECURE_NO_DEPRECATE " %CSF_PRODUCTS_DEFINES " ";
   @set %CSF_C_ModeOpt    = " -MD  -EHa -O2 -Gy -DNDEBUG -DNo_Exception ";
   @set %CSF_C_ModeOptDeb = " -MDd -EHa -Od -Gm -Zi -DDEB -D_DEBUG ";
index 337e8977f66c8893688f44ec669453d7cc867a53..5451143d30b612de1340444eec11b06614e96af5 100755 (executable)
@@ -2345,12 +2345,17 @@ proc osutils:cbp { theOutDir theProjName theSrcFiles theLibsList theFrameworks t
   puts $aFile "\t\t\t\t<Compiler>"
   if { "$aWokStation" == "wnt" } {
     puts $aFile "\t\t\t\t\t<Add option=\"-MD\" />"
+    puts $aFile "\t\t\t\t\t<Add option=\"-arch:SSE2\" />"
     puts $aFile "\t\t\t\t\t<Add option=\"-EHsc\" />"
     puts $aFile "\t\t\t\t\t<Add option=\"-O2\" />"
     puts $aFile "\t\t\t\t\t<Add option=\"-W3\" />"
     puts $aFile "\t\t\t\t\t<Add option=\"-MP\" />"
   } else {
     puts $aFile "\t\t\t\t\t<Add option=\"-O2\" />"
+    puts $aFile "\t\t\t\t\t<Add option=\"-mmmx\" />"
+    puts $aFile "\t\t\t\t\t<Add option=\"-msse\" />"
+    puts $aFile "\t\t\t\t\t<Add option=\"-msse2\" />"
+    puts $aFile "\t\t\t\t\t<Add option=\"-mfpmath=sse\" />"
   }
   foreach aMacro $theDefines {
     puts $aFile "\t\t\t\t\t<Add option=\"-D${aMacro}\" />"
@@ -2396,6 +2401,7 @@ proc osutils:cbp { theOutDir theProjName theSrcFiles theLibsList theFrameworks t
   puts $aFile "\t\t\t\t<Compiler>"
   if { "$aWokStation" == "wnt" } {
     puts $aFile "\t\t\t\t\t<Add option=\"-MDd\" />"
+    puts $aFile "\t\t\t\t\t<Add option=\"-arch:SSE2\" />"
     puts $aFile "\t\t\t\t\t<Add option=\"-EHsc\" />"
     puts $aFile "\t\t\t\t\t<Add option=\"-Od\" />"
     puts $aFile "\t\t\t\t\t<Add option=\"-Zi\" />"
@@ -2404,6 +2410,10 @@ proc osutils:cbp { theOutDir theProjName theSrcFiles theLibsList theFrameworks t
   } else {
     puts $aFile "\t\t\t\t\t<Add option=\"-O0\" />"
     puts $aFile "\t\t\t\t\t<Add option=\"-g\" />"
+    puts $aFile "\t\t\t\t\t<Add option=\"-mmmx\" />"
+    puts $aFile "\t\t\t\t\t<Add option=\"-msse\" />"
+    puts $aFile "\t\t\t\t\t<Add option=\"-msse2\" />"
+    puts $aFile "\t\t\t\t\t<Add option=\"-mfpmath=sse\" />"
   }
   foreach aMacro $theDefines {
     puts $aFile "\t\t\t\t\t<Add option=\"-D${aMacro}\" />"
index 92f2ba2e0901acec1cdf569bb5e2ec28261c495d..8e87c86f5ddd244cf9a9d7d1f32ab6c9a6badb66 100755 (executable)
@@ -4,4 +4,8 @@ export TARGET="cbp"
 
 source ./env.sh "$TARGET" "$1"
 
-/Applications/CodeBlocks.app/Contents/MacOS/CodeBlocks ./adm/mac/cbp/OCCT.workspace
+if [ -e "/Applications/CodeBlocks.app/Contents/MacOS/CodeBlocks" ]; then
+  /Applications/CodeBlocks.app/Contents/MacOS/CodeBlocks ./adm/$WOKSTATION/cbp/OCCT.workspace
+else
+  codeblocks ./adm/$WOKSTATION/cbp/OCCT.workspace
+fi
index d67497bdb20a6b3be97ee7b38feac8d4e718d6aa..c1501bdf2e98d71daca431f1dd52ea799ce6fb03 100644 (file)
@@ -143,8 +143,8 @@ CXXFLAGS="$CXXFLAGS -DCSFDB -DOCC_CONVERT_SIGNALS"
 CFLAGS="$CFLAGS -DCSFDB -DOCC_CONVERT_SIGNALS"
 
 case $platform in
-       Linux*) CXXFLAGS="$CXXFLAGS -DLIN -DLININTEL -D_GNU_SOURCE=1 -Wall"
-               CFLAGS="$CFLAGS -DLIN -DLININTEL -fexceptions -Wall"
+       Linux*) CXXFLAGS="$CXXFLAGS -DLIN -DLININTEL -D_GNU_SOURCE=1 -mmmx -msse -msse2 -mfpmath=sse -Wall"
+               CFLAGS="$CFLAGS -DLIN -DLININTEL -fexceptions -mmmx -msse -msse2 -mfpmath=sse -Wall"
                LDFLAGS="$LDFLAGS -lstdc++ -lrt";;
        SunOS*) CXXFLAGS="$CXXFLAGS -Usun -DSOLARIS -instances=static"
                CFLAGS="$CFLAGS -Usun -DSOLARIS -instances=static"
index a52d31a79602862d9112d6742a3b1fae6bd0009f..a09e909e147b26442178976bd2c9ec98fe68a542 100644 (file)
@@ -92,6 +92,7 @@
       <WarningLevel>Level4</WarningLevel>
       <SuppressStartupBanner>true</SuppressStartupBanner>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\..\inc;$(CSF_OPT_INC);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <CompileAs>Default</CompileAs>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\..\inc;$(CSF_OPT_INC);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <WarningLevel>Level4</WarningLevel>
       <SuppressStartupBanner>true</SuppressStartupBanner>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\..\inc;$(CSF_OPT_INC);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <CompileAs>Default</CompileAs>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\..\inc;$(CSF_OPT_INC);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
index 8347dde63835214ca612dd635fcb7906695f3a9a..a6b7269312dcdf5d9ba7fa7d0581703b8a30be0c 100644 (file)
@@ -92,6 +92,7 @@
       <WarningLevel>Level4</WarningLevel>
       <SuppressStartupBanner>true</SuppressStartupBanner>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\..\inc;$(CSF_OPT_INC);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
       <CompileAs>Default</CompileAs>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
     </ClCompile>
     <ResourceCompile>
       <WarningLevel>Level4</WarningLevel>
       <SuppressStartupBanner>true</SuppressStartupBanner>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\..\inc;$(CSF_OPT_INC);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
       <CompileAs>Default</CompileAs>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
     </ClCompile>
     <ResourceCompile>
index dd620f2e7fa103d919ebb964aec1d23861a2f0f6..e8965673a9e33f672a2f870e210ca86cdde8077b 100644 (file)
@@ -96,6 +96,7 @@
       <WarningLevel>Level4</WarningLevel>
       <SuppressStartupBanner>true</SuppressStartupBanner>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\..\inc;$(CSF_OPT_INC);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
       <CompileAs>Default</CompileAs>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
     </ClCompile>
     <ResourceCompile>
       <WarningLevel>Level4</WarningLevel>
       <SuppressStartupBanner>true</SuppressStartupBanner>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\..\inc;$(CSF_OPT_INC);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
       <CompileAs>Default</CompileAs>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
     </ClCompile>
     <ResourceCompile>
index 8ec22d2ce7cb63063e8c3108d4fa477dde2d7cd3..1b8a8d50f46c8c71c057a44baabf25e20be28652 100644 (file)
@@ -96,6 +96,7 @@
       <WarningLevel>Level4</WarningLevel>
       <SuppressStartupBanner>true</SuppressStartupBanner>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\..\inc;$(CSF_OPT_INC);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
       <CompileAs>Default</CompileAs>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
     </ClCompile>
     <ResourceCompile>
       <WarningLevel>Level4</WarningLevel>
       <SuppressStartupBanner>true</SuppressStartupBanner>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\..\inc;$(CSF_OPT_INC);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
       <CompileAs>Default</CompileAs>
       <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
     </ClCompile>
     <ResourceCompile>
index c628aa44b356aaafe3e5e85f460f54da1f2fc241..c7cc47ab5a9d885e62329bef9cb6c669e5e4c6db 100644 (file)
@@ -56,6 +56,7 @@
                                StringPooling="true"
                                ExceptionHandling="2"
                                RuntimeLibrary="2"
+                               EnableEnhancedInstructionSet="2"
                                EnableFunctionLevelLinking="true"
                                PrecompiledHeaderFile=".\..\..\..\win32\vc9\obj\__TKNAM__\__TKNAM__.pch"
                                AssemblerListingLocation=".\..\..\..\win32\vc9\obj\__TKNAM__/"
                                ExceptionHandling="2"
         BasicRuntimeChecks="3"
                                RuntimeLibrary="3"
+                               EnableEnhancedInstructionSet="2"
                                PrecompiledHeaderFile=".\..\..\..\win32\vc9\objd\__TKNAM__\__TKNAM__.pch"
                                AssemblerListingLocation=".\..\..\..\win32\vc9\objd\__TKNAM__/"
                                ObjectFile=".\..\..\..\win32\vc9\objd\__TKNAM__/"
                                StringPooling="true"
                                ExceptionHandling="2"
                                RuntimeLibrary="2"
+                               EnableEnhancedInstructionSet="2"
                                EnableFunctionLevelLinking="true"
                                PrecompiledHeaderFile=".\..\..\..\win64\vc9\obj\__TKNAM__\__TKNAM__.pch"
                                AssemblerListingLocation=".\..\..\..\win64\vc9\obj\__TKNAM__/"
                                ExceptionHandling="2"
         BasicRuntimeChecks="3"
                                RuntimeLibrary="3"
+                               EnableEnhancedInstructionSet="2"
                                PrecompiledHeaderFile=".\..\..\..\win64\vc9\objd\__TKNAM__\__TKNAM__.pch"
                                AssemblerListingLocation=".\..\..\..\win64\vc9\objd\__TKNAM__/"
                                ObjectFile=".\..\..\..\win64\vc9\objd\__TKNAM__/"
index de15892c137ef359cf206dd231f8ee67b1566b59..0bc1556181b19e8d72acb9fae32305406f97107a 100644 (file)
@@ -56,6 +56,7 @@
                                StringPooling="true"
                                ExceptionHandling="2"
                                RuntimeLibrary="2"
+                               EnableEnhancedInstructionSet="2"
                                EnableFunctionLevelLinking="true"
                                AssemblerListingLocation=".\..\..\..\win32\vc9\obj\__XQTNAM__/"
                                ObjectFile=".\..\..\..\win32\vc9\obj\__XQTNAM__/"
                                ExceptionHandling="2"
                                BasicRuntimeChecks="3"
                                RuntimeLibrary="3"
+                               EnableEnhancedInstructionSet="2"
                                AssemblerListingLocation=".\..\..\..\win32\vc9\objd\__XQTNAM__/"
                                ObjectFile=".\..\..\..\win32\vc9\objd\__XQTNAM__/"
                                ProgramDataBaseFileName=".\..\..\..\win32\vc9\objd\__XQTNAM__/"
                                StringPooling="true"
                                ExceptionHandling="2"
                                RuntimeLibrary="2"
+                               EnableEnhancedInstructionSet="2"
                                EnableFunctionLevelLinking="true"
                                AssemblerListingLocation=".\..\..\..\win64\vc9\obj\__XQTNAM__/"
                                ObjectFile=".\..\..\..\win64\vc9\obj\__XQTNAM__/"
                                ExceptionHandling="2"
                                BasicRuntimeChecks="3"
                                RuntimeLibrary="3"
+                               EnableEnhancedInstructionSet="2"
                                AssemblerListingLocation=".\..\..\..\win64\vc9\objd\__XQTNAM__/"
                                ObjectFile=".\..\..\..\win64\vc9\objd\__XQTNAM__/"
                                ProgramDataBaseFileName=".\..\..\..\win64\vc9\objd\__XQTNAM__/"