[smesh] Initial import (#1097368).
Richard Shaw
hobbes1069 at fedoraproject.org
Sat May 17 13:56:47 UTC 2014
commit e526652c708a740d24036e7cf0f7cdbd40c64fd6
Author: Richard M. Shaw <hobbes1069 at gmail.com>
Date: Sat May 17 08:56:45 2014 -0500
Initial import (#1097368).
.gitignore | 1 +
smesh-5.1.2.2-pi_to_m_pi.patch | 102 +++++++
smesh-5.1.2.2-rm_f2c.patch | 12 +
smesh-OCE_0.13_port.patch | 29 ++
smesh-cmake_fixes.patch | 578 ++++++++++++++++++++++++++++++++++++++++
smesh.patch | 117 ++++++++
smesh.spec | 152 +++++++++++
sources | 1 +
8 files changed, 992 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..03e2274 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/smesh-5.1.2.2.svn55.tar.gz
diff --git a/smesh-5.1.2.2-pi_to_m_pi.patch b/smesh-5.1.2.2-pi_to_m_pi.patch
new file mode 100644
index 0000000..4a19474
--- /dev/null
+++ b/smesh-5.1.2.2-pi_to_m_pi.patch
@@ -0,0 +1,102 @@
+diff -Naur smesh-5.1.2.2.orig/src/Controls/SMESH_Controls.cpp smesh-5.1.2.2/src/Controls/SMESH_Controls.cpp
+--- smesh-5.1.2.2.orig/src/Controls/SMESH_Controls.cpp 2009-12-16 09:01:21.000000000 -0600
++++ smesh-5.1.2.2/src/Controls/SMESH_Controls.cpp 2013-02-15 14:58:28.357147721 -0600
+@@ -64,6 +64,11 @@
+ #include "SMESHDS_Mesh.hxx"
+ #include "SMESHDS_GroupBase.hxx"
+
++#ifndef PI
++# include <math.h>
++# define PI M_PI
++#endif
++
+ /*
+ AUXILIARY METHODS
+ */
+diff -Naur smesh-5.1.2.2.orig/src/SMESH/SMESH_MeshEditor.cpp smesh-5.1.2.2/src/SMESH/SMESH_MeshEditor.cpp
+--- smesh-5.1.2.2.orig/src/SMESH/SMESH_MeshEditor.cpp 2013-02-15 14:42:44.453062739 -0600
++++ smesh-5.1.2.2/src/SMESH/SMESH_MeshEditor.cpp 2013-02-15 14:51:15.754435891 -0600
+@@ -84,6 +84,10 @@
+
+ #define cast2Node(elem) static_cast<const SMDS_MeshNode*>( elem )
+
++#ifndef PI
++# define PI M_PI
++#endif
++
+ using namespace std;
+ using namespace SMESH::Controls;
+
+diff -Naur smesh-5.1.2.2.orig/src/SMESH/SMESH_Pattern.cpp smesh-5.1.2.2/src/SMESH/SMESH_Pattern.cpp
+--- smesh-5.1.2.2.orig/src/SMESH/SMESH_Pattern.cpp 2013-02-15 14:42:44.457062609 -0600
++++ smesh-5.1.2.2/src/SMESH/SMESH_Pattern.cpp 2013-02-15 14:55:31.929960525 -0600
+@@ -75,6 +75,11 @@
+
+ #include "utilities.h"
+
++#ifndef PI
++# include <math.h>
++# define PI M_PI
++#endif
++
+ using namespace std;
+
+ typedef map< const SMDS_MeshElement*, int > TNodePointIDMap;
+diff -Naur smesh-5.1.2.2.orig/src/StdMeshers/StdMeshers_AutomaticLength.cpp smesh-5.1.2.2/src/StdMeshers/StdMeshers_AutomaticLength.cpp
+--- smesh-5.1.2.2.orig/src/StdMeshers/StdMeshers_AutomaticLength.cpp 2009-12-16 09:01:21.000000000 -0600
++++ smesh-5.1.2.2/src/StdMeshers/StdMeshers_AutomaticLength.cpp 2013-02-15 15:00:49.259529380 -0600
+@@ -38,6 +38,11 @@
+ #include <TopoDS.hxx>
+ #include <TopoDS_Edge.hxx>
+
++#ifndef PI
++# include <math.h>
++# define PI M_PI
++#endif
++
+ using namespace std;
+
+ //=============================================================================
+diff -Naur smesh-5.1.2.2.orig/src/StdMeshers/StdMeshers_CompositeHexa_3D.cpp smesh-5.1.2.2/src/StdMeshers/StdMeshers_CompositeHexa_3D.cpp
+--- smesh-5.1.2.2.orig/src/StdMeshers/StdMeshers_CompositeHexa_3D.cpp 2009-12-16 09:01:21.000000000 -0600
++++ smesh-5.1.2.2/src/StdMeshers/StdMeshers_CompositeHexa_3D.cpp 2013-02-15 15:03:10.805901650 -0600
+@@ -57,6 +57,10 @@
+ #include <set>
+ #include <vector>
+
++#ifndef PI
++# include <math.h>
++# define PI M_PI
++#endif
+
+ #ifdef _DEBUG_
+
+diff -Naur smesh-5.1.2.2.orig/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.cpp smesh-5.1.2.2/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.cpp
+--- smesh-5.1.2.2.orig/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.cpp 2009-12-16 09:01:21.000000000 -0600
++++ smesh-5.1.2.2/src/StdMeshers/StdMeshers_QuadToTriaAdaptor.cpp 2013-02-15 15:05:12.937914205 -0600
+@@ -40,6 +40,11 @@
+ #include <gp_Lin.hxx>
+ #include <gp_Pln.hxx>
+
++#ifndef PI
++# include <math.h>
++# define PI M_PI
++#endif
++
+ #ifndef __BORLANDC__
+ #include <NCollection_Array1.hxx>
+ typedef NCollection_Array1<TColStd_SequenceOfInteger> StdMeshers_Array1OfSequenceOfInteger;
+diff -Naur smesh-5.1.2.2.orig/src/StdMeshers/StdMeshers_RadialQuadrangle_1D2D.cpp smesh-5.1.2.2/src/StdMeshers/StdMeshers_RadialQuadrangle_1D2D.cpp
+--- smesh-5.1.2.2.orig/src/StdMeshers/StdMeshers_RadialQuadrangle_1D2D.cpp 2009-12-16 09:01:21.000000000 -0600
++++ smesh-5.1.2.2/src/StdMeshers/StdMeshers_RadialQuadrangle_1D2D.cpp 2013-02-15 15:09:28.717572007 -0600
+@@ -55,6 +55,10 @@
+ #include <TopExp_Explorer.hxx>
+ #include <TopoDS.hxx>
+
++#ifndef PI
++# include <math.h>
++# define PI M_PI
++#endif
+
+ using namespace std;
+
diff --git a/smesh-5.1.2.2-rm_f2c.patch b/smesh-5.1.2.2-rm_f2c.patch
new file mode 100644
index 0000000..5af112a
--- /dev/null
+++ b/smesh-5.1.2.2-rm_f2c.patch
@@ -0,0 +1,12 @@
+diff -Naur smesh-5.1.2.2.orig/CMakeLists.txt smesh-5.1.2.2/CMakeLists.txt
+--- smesh-5.1.2.2.orig/CMakeLists.txt 2012-07-05 10:03:58.241643809 -0500
++++ smesh-5.1.2.2/CMakeLists.txt 2012-07-05 10:04:37.340404971 -0500
+@@ -160,7 +160,7 @@
+ INCLUDE_DIRECTORIES(src/StdMeshers)
+
+ ADD_LIBRARY(StdMeshers SHARED ${StdMeshers_source_files})
+-TARGET_LINK_LIBRARIES(StdMeshers SMESH TKernel TKMath TKAdvTools f2c)
++TARGET_LINK_LIBRARIES(StdMeshers SMESH TKernel TKMath TKAdvTools)
+
+ ###########
+ # INSTALL #
diff --git a/smesh-OCE_0.13_port.patch b/smesh-OCE_0.13_port.patch
new file mode 100644
index 0000000..0bb4582
--- /dev/null
+++ b/smesh-OCE_0.13_port.patch
@@ -0,0 +1,29 @@
+diff -Naur smesh-5.1.2.2.svn55.orig/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp smesh-5.1.2.2.svn55/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp
+--- smesh-5.1.2.2.svn55.orig/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp 2009-12-16 09:01:21.000000000 -0600
++++ smesh-5.1.2.2.svn55/src/StdMeshers/StdMeshers_RadialPrism_3D.cpp 2013-09-22 21:30:43.995137618 -0500
+@@ -46,6 +46,7 @@
+ #include <BRepBuilderAPI_MakeEdge.hxx>
+ #include <BRepTools.hxx>
+ #include <BRep_Tool.hxx>
++#include <BRepClass3d.hxx>
+ #include <TopExp_Explorer.hxx>
+ #include <TopoDS.hxx>
+ #include <TopoDS_Shell.hxx>
+@@ -161,7 +163,7 @@
+
+ // get 2 shells
+ TopoDS_Solid solid = TopoDS::Solid( aShape );
+- TopoDS_Shell outerShell = BRepTools::OuterShell( solid );
++ TopoDS_Shell outerShell = BRepClass3d::OuterShell( solid );
+ TopoDS_Shape innerShell;
+ int nbShells = 0;
+ for ( TopoDS_Iterator It (solid); It.More(); It.Next(), ++nbShells )
+@@ -401,7 +403,7 @@
+ {
+ // get 2 shells
+ TopoDS_Solid solid = TopoDS::Solid( aShape );
+- TopoDS_Shell outerShell = BRepTools::OuterShell( solid );
++ TopoDS_Shell outerShell = BRepClass3d::OuterShell( solid );
+ TopoDS_Shape innerShell;
+ int nbShells = 0;
+ for ( TopoDS_Iterator It (solid); It.More(); It.Next(), ++nbShells )
diff --git a/smesh-cmake_fixes.patch b/smesh-cmake_fixes.patch
new file mode 100644
index 0000000..2e42136
--- /dev/null
+++ b/smesh-cmake_fixes.patch
@@ -0,0 +1,578 @@
+diff -Naur smesh-5.1.2.2.orig/CMakeLists.txt smesh-5.1.2.2/CMakeLists.txt
+--- smesh-5.1.2.2.orig/CMakeLists.txt 2010-01-25 09:01:13.000000000 -0600
++++ smesh-5.1.2.2/CMakeLists.txt 2011-12-27 11:51:18.818641905 -0600
+@@ -8,7 +8,9 @@
+
+ CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+
+-SET(CMAKE_BUILD_TYPE "Release") # By default, build in release mode
++IF(NOT CMAKE_BUILD_TYPE)
++ SET(CMAKE_BUILD_TYPE "Release") # By default, build in release mode
++ENDIF()
+ SET(BUILD_SHARED_LIBS ON)
+ SET(LIBRARY_OUTPUT_PATH cmake-build)
+ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
+@@ -79,6 +81,21 @@
+ ENDIF(WIN32)
+ ENDIF(UNIX)
+
++#
++# Build doxygen API documentation #
++#
++
++FIND_PACKAGE(Doxygen)
++if(DOXYGEN_FOUND)
++ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/doc/src/Doxyfile.in
++ ${CMAKE_CURRENT_SOURCE_DIR}/doc/src/Doxyfile @ONLY)
++ add_custom_target(doc ${DOXYGEN_EXECUTABLE}
++ ${CMAKE_CURRENT_SOURCE_DIR}/doc/src/Doxyfile
++ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/doc/src
++ COMMENT "Generating API documentation with Doxygen" VERBATIM
++ )
++endif(DOXYGEN_FOUND)
++
+ #########
+ # SMDS #
+ #########
+@@ -153,12 +170,23 @@
+ SET(INSTALL_PATH_NAME SMESH-${SMESH_VERSION_MAJOR}.${SMESH_VERSION_MINOR}.${SMESH_VERSION_PATCH}.${SMESH_VERSION_TWEAK})
+
+ IF(UNIX)
++ # Setup install paths
++ IF(NOT LIB_INSTALL_DIR)
++ SET(LIB_INSTALL_DIR /usr/local/lib${LIB_SUFFIX})
++ ENDIF()
++ IF(NOT INCLUDE_INSTALL_DIR)
++ SET(INCLUDE_INSTALL_DIR /usr/local/include)
++ ENDIF()
++ # Set soname version
++ SET_TARGET_PROPERTIES(SMDS Driver DriverSTL DriverDAT DriverUNV
++ SMESHDS SMESH StdMeshers
++ PROPERTIES SOVERSION ${SMESH_VERSION_MAJOR}.${SMESH_VERSION_MINOR})
+ # Libraries are installed by default in /usr/local/lib/SMESH-5.1.2.7
+ INSTALL(TARGETS SMDS Driver DriverSTL DriverDAT DriverUNV
+ SMESHDS SMESH StdMeshers
+- DESTINATION /usr/local/lib/${INSTALL_PATH_NAME})
++ DESTINATION ${LIB_INSTALL_DIR})
+ # Headers are installed by default in /usr/local/include/SMESH-5.1.2.7
+ INSTALL(DIRECTORY inc/
+- DESTINATION /usr/local/include/${INSTALL_PATH_NAME}
++ DESTINATION ${INCLUDE_INSTALL_DIR}
+ FILES_MATCHING PATTERN "*.h*")
+ ENDIF(UNIX)
+diff -Naur smesh-5.1.2.2.orig/doc/src/Doxyfile smesh-5.1.2.2/doc/src/Doxyfile
+--- smesh-5.1.2.2.orig/doc/src/Doxyfile 2008-11-26 01:34:11.000000000 -0600
++++ smesh-5.1.2.2/doc/src/Doxyfile 1969-12-31 18:00:00.000000000 -0600
+@@ -1,254 +0,0 @@
+-# Doxyfile 1.5.7.1
+-
+-#---------------------------------------------------------------------------
+-# Project related configuration options
+-#---------------------------------------------------------------------------
+-DOXYFILE_ENCODING = UTF-8
+-PROJECT_NAME = "SALOME - SMESH"
+-PROJECT_NUMBER =
+-OUTPUT_DIRECTORY = ../
+-CREATE_SUBDIRS = NO
+-OUTPUT_LANGUAGE = English
+-BRIEF_MEMBER_DESC = YES
+-REPEAT_BRIEF = YES
+-ABBREVIATE_BRIEF =
+-ALWAYS_DETAILED_SEC = YES
+-INLINE_INHERITED_MEMB = YES
+-FULL_PATH_NAMES = NO
+-STRIP_FROM_PATH =
+-STRIP_FROM_INC_PATH =
+-SHORT_NAMES = NO
+-JAVADOC_AUTOBRIEF = YES
+-QT_AUTOBRIEF = NO
+-MULTILINE_CPP_IS_BRIEF = YES
+-INHERIT_DOCS = YES
+-SEPARATE_MEMBER_PAGES = NO
+-TAB_SIZE = 5
+-ALIASES =
+-OPTIMIZE_OUTPUT_FOR_C = YES
+-OPTIMIZE_OUTPUT_JAVA = YES
+-OPTIMIZE_FOR_FORTRAN = NO
+-OPTIMIZE_OUTPUT_VHDL = NO
+-BUILTIN_STL_SUPPORT = YES
+-CPP_CLI_SUPPORT = NO
+-SIP_SUPPORT = NO
+-IDL_PROPERTY_SUPPORT = YES
+-DISTRIBUTE_GROUP_DOC = NO
+-SUBGROUPING = YES
+-TYPEDEF_HIDES_STRUCT = NO
+-SYMBOL_CACHE_SIZE = 0
+-#---------------------------------------------------------------------------
+-# Build related configuration options
+-#---------------------------------------------------------------------------
+-EXTRACT_ALL = YES
+-EXTRACT_PRIVATE = YES
+-EXTRACT_STATIC = YES
+-EXTRACT_LOCAL_CLASSES = YES
+-EXTRACT_LOCAL_METHODS = NO
+-EXTRACT_ANON_NSPACES = NO
+-HIDE_UNDOC_MEMBERS = NO
+-HIDE_UNDOC_CLASSES = NO
+-HIDE_FRIEND_COMPOUNDS = NO
+-HIDE_IN_BODY_DOCS = NO
+-INTERNAL_DOCS = YES
+-CASE_SENSE_NAMES = YES
+-HIDE_SCOPE_NAMES = NO
+-SHOW_INCLUDE_FILES = YES
+-INLINE_INFO = YES
+-SORT_MEMBER_DOCS = NO
+-SORT_BRIEF_DOCS = NO
+-SORT_GROUP_NAMES = NO
+-SORT_BY_SCOPE_NAME = NO
+-GENERATE_TODOLIST = YES
+-GENERATE_TESTLIST = YES
+-GENERATE_BUGLIST = YES
+-GENERATE_DEPRECATEDLIST= YES
+-ENABLED_SECTIONS =
+-MAX_INITIALIZER_LINES = 25
+-SHOW_USED_FILES = NO
+-SHOW_DIRECTORIES = NO
+-SHOW_FILES = YES
+-SHOW_NAMESPACES = NO
+-FILE_VERSION_FILTER =
+-LAYOUT_FILE =
+-#---------------------------------------------------------------------------
+-# configuration options related to warning and progress messages
+-#---------------------------------------------------------------------------
+-QUIET = NO
+-WARNINGS = YES
+-WARN_IF_UNDOCUMENTED = YES
+-WARN_IF_DOC_ERROR = YES
+-WARN_NO_PARAMDOC = NO
+-WARN_FORMAT = "$file:$line: $text"
+-WARN_LOGFILE = log.txt
+-#---------------------------------------------------------------------------
+-# configuration options related to the input files
+-#---------------------------------------------------------------------------
+-INPUT = ../../inc
+-INPUT_ENCODING = UTF-8
+-FILE_PATTERNS = *.hxx \
+- *.h
+-RECURSIVE = YES
+-EXCLUDE =
+-EXCLUDE_SYMLINKS = NO
+-EXCLUDE_PATTERNS =
+-EXCLUDE_SYMBOLS =
+-EXAMPLE_PATH =
+-EXAMPLE_PATTERNS =
+-EXAMPLE_RECURSIVE = NO
+-IMAGE_PATH =
+-INPUT_FILTER =
+-FILTER_PATTERNS =
+-FILTER_SOURCE_FILES = YES
+-#---------------------------------------------------------------------------
+-# configuration options related to source browsing
+-#---------------------------------------------------------------------------
+-SOURCE_BROWSER = YES
+-INLINE_SOURCES = NO
+-STRIP_CODE_COMMENTS = YES
+-REFERENCED_BY_RELATION = YES
+-REFERENCES_RELATION = YES
+-REFERENCES_LINK_SOURCE = YES
+-USE_HTAGS = NO
+-VERBATIM_HEADERS = YES
+-#---------------------------------------------------------------------------
+-# configuration options related to the alphabetical class index
+-#---------------------------------------------------------------------------
+-ALPHABETICAL_INDEX = YES
+-COLS_IN_ALPHA_INDEX = 3
+-IGNORE_PREFIX =
+-#---------------------------------------------------------------------------
+-# configuration options related to the HTML output
+-#---------------------------------------------------------------------------
+-GENERATE_HTML = YES
+-HTML_OUTPUT = html
+-HTML_FILE_EXTENSION = .html
+-HTML_HEADER =
+-HTML_FOOTER =
+-HTML_STYLESHEET = doxygen.css
+-HTML_ALIGN_MEMBERS = YES
+-HTML_DYNAMIC_SECTIONS = NO
+-GENERATE_DOCSET = NO
+-DOCSET_FEEDNAME = "Doxygen generated docs"
+-DOCSET_BUNDLE_ID = org.doxygen.Project
+-GENERATE_HTMLHELP = NO
+-CHM_FILE =
+-HHC_LOCATION =
+-GENERATE_CHI = NO
+-CHM_INDEX_ENCODING =
+-BINARY_TOC = YES
+-TOC_EXPAND = YES
+-GENERATE_QHP = NO
+-QCH_FILE =
+-QHP_NAMESPACE = org.doxygen.Project
+-QHP_VIRTUAL_FOLDER = doc
+-QHG_LOCATION =
+-DISABLE_INDEX = NO
+-ENUM_VALUES_PER_LINE = 4
+-GENERATE_TREEVIEW = ALL
+-TREEVIEW_WIDTH = 250
+-FORMULA_FONTSIZE = 10
+-#---------------------------------------------------------------------------
+-# configuration options related to the LaTeX output
+-#---------------------------------------------------------------------------
+-GENERATE_LATEX = NO
+-LATEX_OUTPUT = latex
+-LATEX_CMD_NAME = latex
+-MAKEINDEX_CMD_NAME = makeindex
+-COMPACT_LATEX = NO
+-PAPER_TYPE = a4wide
+-EXTRA_PACKAGES =
+-LATEX_HEADER =
+-PDF_HYPERLINKS = NO
+-USE_PDFLATEX = NO
+-LATEX_BATCHMODE = NO
+-LATEX_HIDE_INDICES = NO
+-#---------------------------------------------------------------------------
+-# configuration options related to the RTF output
+-#---------------------------------------------------------------------------
+-GENERATE_RTF = NO
+-RTF_OUTPUT = rtf
+-COMPACT_RTF = NO
+-RTF_HYPERLINKS = NO
+-RTF_STYLESHEET_FILE =
+-RTF_EXTENSIONS_FILE =
+-#---------------------------------------------------------------------------
+-# configuration options related to the man page output
+-#---------------------------------------------------------------------------
+-GENERATE_MAN = NO
+-MAN_OUTPUT = man
+-MAN_EXTENSION = .3
+-MAN_LINKS = NO
+-#---------------------------------------------------------------------------
+-# configuration options related to the XML output
+-#---------------------------------------------------------------------------
+-GENERATE_XML = NO
+-XML_OUTPUT = xml
+-XML_SCHEMA =
+-XML_DTD =
+-XML_PROGRAMLISTING = YES
+-#---------------------------------------------------------------------------
+-# configuration options for the AutoGen Definitions output
+-#---------------------------------------------------------------------------
+-GENERATE_AUTOGEN_DEF = NO
+-#---------------------------------------------------------------------------
+-# configuration options related to the Perl module output
+-#---------------------------------------------------------------------------
+-GENERATE_PERLMOD = NO
+-PERLMOD_LATEX = NO
+-PERLMOD_PRETTY = YES
+-PERLMOD_MAKEVAR_PREFIX =
+-#---------------------------------------------------------------------------
+-# Configuration options related to the preprocessor
+-#---------------------------------------------------------------------------
+-ENABLE_PREPROCESSING = YES
+-MACRO_EXPANSION = YES
+-EXPAND_ONLY_PREDEF = NO
+-SEARCH_INCLUDES = YES
+-INCLUDE_PATH = $(CASROOT)/inc
+-INCLUDE_FILE_PATTERNS =
+-PREDEFINED =
+-EXPAND_AS_DEFINED =
+-SKIP_FUNCTION_MACROS = NO
+-#---------------------------------------------------------------------------
+-# Configuration::additions related to external references
+-#---------------------------------------------------------------------------
+-TAGFILES =
+-GENERATE_TAGFILE =
+-ALLEXTERNALS = NO
+-EXTERNAL_GROUPS = YES
+-PERL_PATH = /usr/bin/perl
+-#---------------------------------------------------------------------------
+-# Configuration options related to the dot tool
+-#---------------------------------------------------------------------------
+-CLASS_DIAGRAMS = YES
+-MSCGEN_PATH =
+-HIDE_UNDOC_RELATIONS = NO
+-HAVE_DOT = YES
+-DOT_FONTNAME = FreeSans
+-DOT_FONTSIZE = 10
+-DOT_FONTPATH =
+-CLASS_GRAPH = YES
+-COLLABORATION_GRAPH = YES
+-GROUP_GRAPHS = YES
+-UML_LOOK = NO
+-TEMPLATE_RELATIONS = YES
+-INCLUDE_GRAPH = YES
+-INCLUDED_BY_GRAPH = YES
+-CALL_GRAPH = YES
+-CALLER_GRAPH = YES
+-GRAPHICAL_HIERARCHY = YES
+-DIRECTORY_GRAPH = YES
+-DOT_IMAGE_FORMAT = jpg
+-DOT_PATH =
+-DOTFILE_DIRS =
+-DOT_GRAPH_MAX_NODES = 50
+-MAX_DOT_GRAPH_DEPTH = 0
+-DOT_TRANSPARENT = NO
+-DOT_MULTI_TARGETS = NO
+-GENERATE_LEGEND = NO
+-DOT_CLEANUP = YES
+-#---------------------------------------------------------------------------
+-# Configuration::additions related to the search engine
+-#---------------------------------------------------------------------------
+-SEARCHENGINE = YES
+diff -Naur smesh-5.1.2.2.orig/doc/src/Doxyfile.in smesh-5.1.2.2/doc/src/Doxyfile.in
+--- smesh-5.1.2.2.orig/doc/src/Doxyfile.in 1969-12-31 18:00:00.000000000 -0600
++++ smesh-5.1.2.2/doc/src/Doxyfile.in 2011-12-27 11:51:18.773643400 -0600
+@@ -0,0 +1,254 @@
++# Doxyfile 1.5.7.1
++
++#---------------------------------------------------------------------------
++# Project related configuration options
++#---------------------------------------------------------------------------
++DOXYFILE_ENCODING = UTF-8
++PROJECT_NAME = "SALOME - SMESH"
++PROJECT_NUMBER =
++OUTPUT_DIRECTORY = ../
++CREATE_SUBDIRS = NO
++OUTPUT_LANGUAGE = English
++BRIEF_MEMBER_DESC = YES
++REPEAT_BRIEF = YES
++ABBREVIATE_BRIEF =
++ALWAYS_DETAILED_SEC = YES
++INLINE_INHERITED_MEMB = YES
++FULL_PATH_NAMES = NO
++STRIP_FROM_PATH =
++STRIP_FROM_INC_PATH =
++SHORT_NAMES = NO
++JAVADOC_AUTOBRIEF = YES
++QT_AUTOBRIEF = NO
++MULTILINE_CPP_IS_BRIEF = YES
++INHERIT_DOCS = YES
++SEPARATE_MEMBER_PAGES = NO
++TAB_SIZE = 5
++ALIASES =
++OPTIMIZE_OUTPUT_FOR_C = YES
++OPTIMIZE_OUTPUT_JAVA = YES
++OPTIMIZE_FOR_FORTRAN = NO
++OPTIMIZE_OUTPUT_VHDL = NO
++BUILTIN_STL_SUPPORT = YES
++CPP_CLI_SUPPORT = NO
++SIP_SUPPORT = NO
++IDL_PROPERTY_SUPPORT = YES
++DISTRIBUTE_GROUP_DOC = NO
++SUBGROUPING = YES
++TYPEDEF_HIDES_STRUCT = NO
++SYMBOL_CACHE_SIZE = 0
++#---------------------------------------------------------------------------
++# Build related configuration options
++#---------------------------------------------------------------------------
++EXTRACT_ALL = YES
++EXTRACT_PRIVATE = YES
++EXTRACT_STATIC = YES
++EXTRACT_LOCAL_CLASSES = YES
++EXTRACT_LOCAL_METHODS = NO
++EXTRACT_ANON_NSPACES = NO
++HIDE_UNDOC_MEMBERS = NO
++HIDE_UNDOC_CLASSES = NO
++HIDE_FRIEND_COMPOUNDS = NO
++HIDE_IN_BODY_DOCS = NO
++INTERNAL_DOCS = YES
++CASE_SENSE_NAMES = YES
++HIDE_SCOPE_NAMES = NO
++SHOW_INCLUDE_FILES = YES
++INLINE_INFO = YES
++SORT_MEMBER_DOCS = NO
++SORT_BRIEF_DOCS = NO
++SORT_GROUP_NAMES = NO
++SORT_BY_SCOPE_NAME = NO
++GENERATE_TODOLIST = YES
++GENERATE_TESTLIST = YES
++GENERATE_BUGLIST = YES
++GENERATE_DEPRECATEDLIST= YES
++ENABLED_SECTIONS =
++MAX_INITIALIZER_LINES = 25
++SHOW_USED_FILES = NO
++SHOW_DIRECTORIES = NO
++SHOW_FILES = YES
++SHOW_NAMESPACES = NO
++FILE_VERSION_FILTER =
++LAYOUT_FILE =
++#---------------------------------------------------------------------------
++# configuration options related to warning and progress messages
++#---------------------------------------------------------------------------
++QUIET = NO
++WARNINGS = YES
++WARN_IF_UNDOCUMENTED = YES
++WARN_IF_DOC_ERROR = YES
++WARN_NO_PARAMDOC = NO
++WARN_FORMAT = "$file:$line: $text"
++WARN_LOGFILE = log.txt
++#---------------------------------------------------------------------------
++# configuration options related to the input files
++#---------------------------------------------------------------------------
++INPUT = @CMAKE_CURRENT_SOURCE_DIR@/inc
++INPUT_ENCODING = UTF-8
++FILE_PATTERNS = *.hxx \
++ *.h
++RECURSIVE = YES
++EXCLUDE =
++EXCLUDE_SYMLINKS = NO
++EXCLUDE_PATTERNS =
++EXCLUDE_SYMBOLS =
++EXAMPLE_PATH =
++EXAMPLE_PATTERNS =
++EXAMPLE_RECURSIVE = NO
++IMAGE_PATH =
++INPUT_FILTER =
++FILTER_PATTERNS =
++FILTER_SOURCE_FILES = YES
++#---------------------------------------------------------------------------
++# configuration options related to source browsing
++#---------------------------------------------------------------------------
++SOURCE_BROWSER = YES
++INLINE_SOURCES = NO
++STRIP_CODE_COMMENTS = YES
++REFERENCED_BY_RELATION = YES
++REFERENCES_RELATION = YES
++REFERENCES_LINK_SOURCE = YES
++USE_HTAGS = NO
++VERBATIM_HEADERS = YES
++#---------------------------------------------------------------------------
++# configuration options related to the alphabetical class index
++#---------------------------------------------------------------------------
++ALPHABETICAL_INDEX = YES
++COLS_IN_ALPHA_INDEX = 3
++IGNORE_PREFIX =
++#---------------------------------------------------------------------------
++# configuration options related to the HTML output
++#---------------------------------------------------------------------------
++GENERATE_HTML = YES
++HTML_OUTPUT = html
++HTML_FILE_EXTENSION = .html
++HTML_HEADER =
++HTML_FOOTER =
++HTML_STYLESHEET = doxygen.css
++HTML_ALIGN_MEMBERS = YES
++HTML_DYNAMIC_SECTIONS = NO
++GENERATE_DOCSET = NO
++DOCSET_FEEDNAME = "Doxygen generated docs"
++DOCSET_BUNDLE_ID = org.doxygen.Project
++GENERATE_HTMLHELP = NO
++CHM_FILE =
++HHC_LOCATION =
++GENERATE_CHI = NO
++CHM_INDEX_ENCODING =
++BINARY_TOC = YES
++TOC_EXPAND = YES
++GENERATE_QHP = NO
++QCH_FILE =
++QHP_NAMESPACE = org.doxygen.Project
++QHP_VIRTUAL_FOLDER = doc
++QHG_LOCATION =
++DISABLE_INDEX = NO
++ENUM_VALUES_PER_LINE = 4
++GENERATE_TREEVIEW = ALL
++TREEVIEW_WIDTH = 250
++FORMULA_FONTSIZE = 10
++#---------------------------------------------------------------------------
++# configuration options related to the LaTeX output
++#---------------------------------------------------------------------------
++GENERATE_LATEX = NO
++LATEX_OUTPUT = latex
++LATEX_CMD_NAME = latex
++MAKEINDEX_CMD_NAME = makeindex
++COMPACT_LATEX = NO
++PAPER_TYPE = a4wide
++EXTRA_PACKAGES =
++LATEX_HEADER =
++PDF_HYPERLINKS = NO
++USE_PDFLATEX = NO
++LATEX_BATCHMODE = NO
++LATEX_HIDE_INDICES = NO
++#---------------------------------------------------------------------------
++# configuration options related to the RTF output
++#---------------------------------------------------------------------------
++GENERATE_RTF = NO
++RTF_OUTPUT = rtf
++COMPACT_RTF = NO
++RTF_HYPERLINKS = NO
++RTF_STYLESHEET_FILE =
++RTF_EXTENSIONS_FILE =
++#---------------------------------------------------------------------------
++# configuration options related to the man page output
++#---------------------------------------------------------------------------
++GENERATE_MAN = NO
++MAN_OUTPUT = man
++MAN_EXTENSION = .3
++MAN_LINKS = NO
++#---------------------------------------------------------------------------
++# configuration options related to the XML output
++#---------------------------------------------------------------------------
++GENERATE_XML = NO
++XML_OUTPUT = xml
++XML_SCHEMA =
++XML_DTD =
++XML_PROGRAMLISTING = YES
++#---------------------------------------------------------------------------
++# configuration options for the AutoGen Definitions output
++#---------------------------------------------------------------------------
++GENERATE_AUTOGEN_DEF = NO
++#---------------------------------------------------------------------------
++# configuration options related to the Perl module output
++#---------------------------------------------------------------------------
++GENERATE_PERLMOD = NO
++PERLMOD_LATEX = NO
++PERLMOD_PRETTY = YES
++PERLMOD_MAKEVAR_PREFIX =
++#---------------------------------------------------------------------------
++# Configuration options related to the preprocessor
++#---------------------------------------------------------------------------
++ENABLE_PREPROCESSING = YES
++MACRO_EXPANSION = YES
++EXPAND_ONLY_PREDEF = NO
++SEARCH_INCLUDES = YES
++INCLUDE_PATH = $(CASROOT)/inc
++INCLUDE_FILE_PATTERNS =
++PREDEFINED =
++EXPAND_AS_DEFINED =
++SKIP_FUNCTION_MACROS = NO
++#---------------------------------------------------------------------------
++# Configuration::additions related to external references
++#---------------------------------------------------------------------------
++TAGFILES =
++GENERATE_TAGFILE =
++ALLEXTERNALS = NO
++EXTERNAL_GROUPS = YES
++PERL_PATH = /usr/bin/perl
++#---------------------------------------------------------------------------
++# Configuration options related to the dot tool
++#---------------------------------------------------------------------------
++CLASS_DIAGRAMS = YES
++MSCGEN_PATH =
++HIDE_UNDOC_RELATIONS = NO
++HAVE_DOT = YES
++DOT_FONTNAME = FreeSans
++DOT_FONTSIZE = 10
++DOT_FONTPATH =
++CLASS_GRAPH = YES
++COLLABORATION_GRAPH = YES
++GROUP_GRAPHS = YES
++UML_LOOK = NO
++TEMPLATE_RELATIONS = YES
++INCLUDE_GRAPH = YES
++INCLUDED_BY_GRAPH = YES
++CALL_GRAPH = YES
++CALLER_GRAPH = YES
++GRAPHICAL_HIERARCHY = YES
++DIRECTORY_GRAPH = YES
++DOT_IMAGE_FORMAT = jpg
++DOT_PATH =
++DOTFILE_DIRS =
++DOT_GRAPH_MAX_NODES = 50
++MAX_DOT_GRAPH_DEPTH = 0
++DOT_TRANSPARENT = NO
++DOT_MULTI_TARGETS = NO
++GENERATE_LEGEND = NO
++DOT_CLEANUP = YES
++#---------------------------------------------------------------------------
++# Configuration::additions related to the search engine
++#---------------------------------------------------------------------------
++SEARCHENGINE = YES
diff --git a/smesh.patch b/smesh.patch
new file mode 100644
index 0000000..56b3ff9
--- /dev/null
+++ b/smesh.patch
@@ -0,0 +1,117 @@
+diff -Naur smesh-5.1.2.2/inc/SMESHDS_DataMapOfShape.hxx salomesmesh/inc/SMESHDS_DataMapOfShape.hxx
+--- smesh-5.1.2.2/inc/SMESHDS_DataMapOfShape.hxx 2011-09-27 03:33:02.000000000 -0500
++++ salomesmesh/inc/SMESHDS_DataMapOfShape.hxx 2011-12-20 13:31:11.887317557 -0600
+@@ -32,7 +32,7 @@
+ * This method needed for instance NCollection_DataMap with TopoDS_Shape as key
+ */
+
+-inline Standard_Boolean SMESH_IsEqual(const TopoDS_Shape& S1,
++inline Standard_Boolean IsEqual(const TopoDS_Shape& S1,
+ const TopoDS_Shape& S2)
+ {
+ return S1.IsSame(S2);
+diff -Naur smesh-5.1.2.2/inc/SMESH_IndexedMap.hxx salomesmesh/inc/SMESH_IndexedMap.hxx
+--- smesh-5.1.2.2/inc/SMESH_IndexedMap.hxx 2011-09-27 03:33:02.000000000 -0500
++++ salomesmesh/inc/SMESH_IndexedMap.hxx 2011-12-20 13:31:11.819319791 -0600
+@@ -226,7 +226,7 @@
+ pNode = (IndexedMapNode *) myData1[iK1];
+ while (pNode)
+ {
+- if (SMESH_IsEqual (pNode->Key1(), theKey1))
++ if (IsEqual (pNode->Key1(), theKey1))
+ return pNode->Key2();
+ pNode = (IndexedMapNode *) pNode->Next();
+ }
+@@ -249,7 +249,7 @@
+ pNode1 = (IndexedMapNode *) myData1[iK1];
+ while (pNode1)
+ {
+- if (SMESH_IsEqual(pNode1->Key1(), theKey1))
++ if (IsEqual(pNode1->Key1(), theKey1))
+ return Standard_True;
+ pNode1 = (IndexedMapNode *) pNode1->Next();
+ }
+diff -Naur smesh-5.1.2.2/src/MEFISTO2/aptrte.cpp salomesmesh/src/MEFISTO2/aptrte.cpp
+--- smesh-5.1.2.2/src/MEFISTO2/aptrte.cpp 2009-12-17 02:32:26.000000000 -0600
++++ salomesmesh/src/MEFISTO2/aptrte.cpp 2011-12-20 13:31:11.641325642 -0600
+@@ -847,3 +847,12 @@
+ MESSAGE(" ");
+ return;
+ }
++
++// Weird workaround needed to solve problem with libf2c
++#if defined(__GNUC__)
++extern "C" {
++int MAIN__( )
++{ return 0;}
++}
++#endif
++
+diff -Naur smesh-5.1.2.2/src/SMESH/SMESH_MeshEditor.cpp salomesmesh/src/SMESH/SMESH_MeshEditor.cpp
+--- smesh-5.1.2.2/src/SMESH/SMESH_MeshEditor.cpp 2011-03-09 12:47:47.000000000 -0600
++++ salomesmesh/src/SMESH/SMESH_MeshEditor.cpp 2011-12-20 13:31:11.755321896 -0600
+@@ -56,6 +56,7 @@
+ #include <Geom_Curve.hxx>
+ #include <Geom_Surface.hxx>
+ #include <Precision.hxx>
++#include <Standard_Version.hxx>
+ #include <TColStd_ListOfInteger.hxx>
+ #include <TopAbs_State.hxx>
+ #include <TopExp.hxx>
+@@ -2205,8 +2206,13 @@
+ if ( projector.IsDone() ) {
+ double u, v, minVal = DBL_MAX;
+ for ( int i = projector.NbExt(); i > 0; i-- )
++#if OCC_VERSION_HEX >= 0x060500
+ if ( projector.SquareDistance( i ) < minVal ) {
+ minVal = projector.SquareDistance( i );
++#else
++ if ( projector.Value( i ) < minVal ) {
++ minVal = projector.Value( i );
++#endif
+ projector.Point( i ).Parameter( u, v );
+ }
+ result.SetCoord( u, v );
+diff -Naur smesh-5.1.2.2/src/SMESH/SMESH_Pattern.cpp salomesmesh/src/SMESH/SMESH_Pattern.cpp
+--- smesh-5.1.2.2/src/SMESH/SMESH_Pattern.cpp 2011-03-09 12:47:47.000000000 -0600
++++ salomesmesh/src/SMESH/SMESH_Pattern.cpp 2011-12-20 13:31:11.766321534 -0600
+@@ -39,6 +39,7 @@
+ #include <GeomAdaptor_Surface.hxx>
+ #include <Geom_Curve.hxx>
+ #include <Geom_Surface.hxx>
++#include <Standard_Version.hxx>
+ #include <TopAbs_ShapeEnum.hxx>
+ #include <TopExp.hxx>
+ #include <TopExp_Explorer.hxx>
+@@ -436,8 +437,13 @@
+ }
+ double u, v, minVal = DBL_MAX;
+ for ( int i = theProjectorPS.NbExt(); i > 0; i-- )
++#if OCC_VERSION_HEX >= 0x060500
+ if ( theProjectorPS.SquareDistance( i ) < minVal ) {
+ minVal = theProjectorPS.SquareDistance( i );
++#else
++ if ( theProjectorPS.Value( i ) < minVal ) {
++ minVal = theProjectorPS.Value( i );
++#endif
+ theProjectorPS.Point( i ).Parameter( u, v );
+ }
+ return gp_XY( u, v );
+diff -Naur smesh-5.1.2.2/src/SMESHDS/SMESHDS_Mesh.cpp salomesmesh/src/SMESHDS/SMESHDS_Mesh.cpp
+--- smesh-5.1.2.2/src/SMESHDS/SMESHDS_Mesh.cpp 2011-09-27 03:33:02.000000000 -0500
++++ salomesmesh/src/SMESHDS/SMESHDS_Mesh.cpp 2011-12-20 13:31:11.619326365 -0600
+@@ -42,10 +42,10 @@
+
+ using namespace std;
+
+-Standard_Boolean IsEqual( const TopoDS_Shape& S1, const TopoDS_Shape& S2 )
+-{
+- return S1.IsSame( S2 );
+-}
++/*Standard_Boolean IsEqual( const TopoDS_Shape& S1, const TopoDS_Shape& S2 )
++ {
++ return S1.IsSame( S2 );
++ }*/
+
+ //=======================================================================
+ //function : Create
diff --git a/smesh.spec b/smesh.spec
new file mode 100644
index 0000000..d8411bb
--- /dev/null
+++ b/smesh.spec
@@ -0,0 +1,152 @@
+# Use a newer version of cmake on EL 6.
+%if 0%{?rhel} && 0%{?rhel} <= 6
+%global cmake %cmake28
+%endif
+
+%global svnrev 55
+
+Name: smesh
+Version: 5.1.2.2
+Release: 10.svn%{svnrev}%{?dist}
+Summary: OpenCascade based MESH framework
+
+License: LGPLv2
+URL: https://sourceforge.net/projects/salomesmesh
+
+# Source is svn checkout since the last release is too old:
+# https://salomesmesh.svn.sourceforge.net/svnroot/salomesmesh/trunk
+# svn export <svnroot> %%{name}-%%{version}.svn%%{svnrev}
+# tar acf %%{name}-%%{version}.svn%%{svnrev}.tar.gz \
+# %%{name}-%%{version}.svn%%{svnrev}
+Source0: %{name}-%{version}.svn%{svnrev}.tar.gz
+
+# Patch emailed upstream to Fotios Sioutis <sfotis at gmail.com>
+# on 12/21/11.
+Patch0: smesh.patch
+Patch1: smesh-cmake_fixes.patch
+Patch2: smesh-5.1.2.2-rm_f2c.patch
+Patch3: smesh-5.1.2.2-pi_to_m_pi.patch
+# http://tracker.dev.opencascade.org/view.php?id=23487
+Patch4: smesh-OCE_0.13_port.patch
+
+%if 0%{?rhel} && 0%{?rhel} <= 6
+BuildRequires: cmake28
+%else
+BuildRequires: cmake
+%endif
+BuildRequires: doxygen graphviz
+BuildRequires: OCE-devel
+BuildRequires: boost-devel
+BuildRequires: gcc-gfortran
+# Optional dependency not needed by any current users of smesh.
+#BuildRequires: f2c f2c-devel
+BuildRequires: dos2unix
+
+
+%description
+A complete OpenCascade based MESH framework.
+
+NOTE: Fortran support (f2c) has been disabled. If it is needed please open a
+bug against the smesh component at: http://bugzilla.redhat.com
+
+
+%package doc
+Summary: Development documentation for %{name}
+Requires: %{name} = %{version}-%{release}
+BuildArch: noarch
+
+%description doc
+Development documentation for %{name}.
+
+
+%package devel
+Summary: Development files for %{name}
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description devel
+Development files and headers for %{name}.
+
+
+%prep
+%setup -q -n %{name}-%{version}.svn%{svnrev}
+%patch0 -p1
+%patch1 -p1 -b .cmakefix
+%patch2 -p1 -b .f2c
+%patch3 -p1 -b .pi
+%patch4 -p1 -b .oce-0.13
+
+dos2unix -k LICENCE.lgpl.txt
+
+
+%build
+rm -rf build && mkdir build && pushd build
+LDFLAGS='-Wl,--as-needed'; export LDFLAGS
+%cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DOCC_INCLUDE_PATH=%{_includedir}/oce \
+ ..
+
+make %{?_smp_mflags}
+
+# Build documentation
+make doc
+popd
+
+# Remove install script since we don't need it.
+rm -f doc/html/installdox
+
+
+%install
+pushd build
+make install DESTDIR=%{buildroot}
+
+
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+
+%files
+%doc LICENCE.lgpl.txt
+%{_libdir}/*.so.*
+
+%files doc
+%doc doc/html
+
+%files devel
+%{_includedir}/*
+%{_libdir}/*.so
+
+
+%changelog
+* Thu May 15 2014 Richard Shaw <hobbes1069 at gmail.com> - 5.1.2.2-10.svn55
+- Fix license reference in spec file.
+
+* Fri Feb 14 2014 Richard Shaw <hobbes1069 at gmail.com> - 5.1.2.2-9.svn55
+- Bump revision to update package license reference.
+
+* Thu Oct 10 2013 Richard Shaw <hobbes1069 at gmail.com> - 5.1.2.2-8.svn55
+- Rebuild for OCE-0.13.
+
+* Mon Jul 15 2013 Richard Shaw <hobbes1069 at gmail.com> - 5.1.2.2-7.svn55
+- Rebuild for updated OCE.
+
+* Fri Jun 21 2013 Richard Shaw <hobbes1069 at gmail.com> - 5.1.2.2-6.svn55
+- Rebuild for OCE 0.12.
+
+* Fri Feb 15 2013 Richard Shaw <hobbes1069 at gmail.com> - 5.1.2.2-1.svn55
+- Update for compatibility with new OCE.
+
+* Mon Oct 22 2012 Richard Shaw <hobbes1069 at gmail.com> - 5.1.2.2-5.svn54
+- Remove build requirement for fortran (f2c).
+- Initial packaging for EPEL 6.
+
+* Wed Sep 26 2012 Richard Shaw <hobbes1069 at gmail.com> - 5.1.2.2-4.svn54
+- Rebuild due to package not being signed in F-18 repo.
+
+* Thu Mar 08 2012 Nicolas Chauvet <kwizart at gmail.com> - 5.1.2.2-3.svn54
+- Rebuilt for c++ ABI breakage
+
+* Thu Jan 19 2012 Richard Shaw <hobbes1069 at gmail.com> - 5.1.2.2-2.svn54
+- Minor updates to spec file.
+
+* Tue Dec 20 2011 Richard Shaw <hobbes1069 at gmail.com> - 5.1.2.2-1.svn54
+- Initial release.
diff --git a/sources b/sources
index e69de29..80c4ac1 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+2b8ae645c029715737265561ccfa3551 smesh-5.1.2.2.svn55.tar.gz
More information about the scm-commits
mailing list