#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8 FATAL_ERROR)
PROJECT(SalomeNETGENPLUGIN C CXX)
MESSAGE(FATAL_ERROR "We absolutely need a Salome SMESH with GUI, please set SALOME_BUILD_GUI=ON in SMESH module")
ENDIF(NOT SALOME_SMESH_BUILD_GUI)
ENDIF(SALOME_BUILD_GUI)
- IF(SALOME_BUILD_DOC)
- IF(NOT SALOME_SMESH_BUILD_DOC)
- MESSAGE(FATAL_ERROR "We absolutely need a Salome SMESH documentation to build NETGENPLUGIN documentation. "
- "So, you should either set SALOME_BUILD_DOC=OFF in NETGENPLUGIN or set SALOME_BUILD_DOC=ON in SMESH module.")
- ENDIF(NOT SALOME_SMESH_BUILD_DOC)
- ENDIF(SALOME_BUILD_DOC)
ELSE(EXISTS ${SMESH_ROOT_DIR})
MESSAGE(FATAL_ERROR "We absolutely need a Salome SMESH, please define SMESH_ROOT_DIR")
ENDIF(EXISTS ${SMESH_ROOT_DIR})
# Specific to NETGENPLUGIN:
SET(SALOME_NETGENPLUGIN_INSTALL_RES_DATA "${SALOME_INSTALL_RES}/netgenplugin" CACHE PATH
"Install path: SALOME NETGENPLUGIN specific data")
+SET(SALOME_NETGENPLUGIN_INSTALL_TESTS "${SALOME_INSTALL_BINS}/test")
MARK_AS_ADVANCED(SALOME_INSTALL_BINS SALOME_INSTALL_LIBS SALOME_INSTALL_IDLS SALOME_INSTALL_HEADERS)
MARK_AS_ADVANCED(SALOME_INSTALL_SCRIPT_SCRIPTS SALOME_INSTALL_SCRIPT_DATA SALOME_INSTALL_SCRIPT_PYTHON)
MARK_AS_ADVANCED(SALOME_INSTALL_APPLISKEL_SCRIPTS SALOME_INSTALL_APPLISKEL_PYTHON SALOME_INSTALL_CMAKE_LOCAL SALOME_INSTALL_RES)
MARK_AS_ADVANCED(SALOME_INSTALL_PYTHON SALOME_INSTALL_PYTHON_SHARED)
MARK_AS_ADVANCED(SALOME_INSTALL_AMCONFIG_LOCAL SALOME_INSTALL_DOC)
-MARK_AS_ADVANCED(SALOME_NETGENPLUGIN_INSTALL_RES_DATA)
+MARK_AS_ADVANCED(SALOME_NETGENPLUGIN_INSTALL_RES_DATA SALOME_NETGENPLUGIN_INSTALL_TESTS)
# Accumulate environment variables for NETGENPLUGIN module
SALOME_ACCUMULATE_ENVIRONMENT(PYTHONPATH NOCHECK ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_BINS}
ADD_SUBDIRECTORY(resources)
ADD_SUBDIRECTORY(src)
ADD_SUBDIRECTORY(bin)
-IF(SALOME_BUILD_DOC)
- ADD_SUBDIRECTORY(doc)
-ENDIF(SALOME_BUILD_DOC)
+ADD_SUBDIRECTORY(doc)
# Header configuration
# ====================
# Install the export set for use with the install-tree
INSTALL(EXPORT ${PROJECT_NAME}TargetGroup DESTINATION "${SALOME_INSTALL_CMAKE_LOCAL}"
FILE ${PROJECT_NAME}Targets.cmake)
+
+IF(SALOME_BUILD_TESTS)
+ CONFIGURE_FILE(CTestTestfileInstall.cmake
+ ${CMAKE_CURRENT_BINARY_DIR}/CTestTestfileInstall.cmake
+ @ONLY)
+ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/CTestTestfileInstall.cmake
+ DESTINATION ${SALOME_NETGENPLUGIN_INSTALL_TESTS}
+ RENAME CTestTestfile.cmake)
+ENDIF()
--- /dev/null
+# Copyright (C) 2012-2020 CEA/DEN, EDF R&D, OPEN CASCADE
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+
+SET(TESTS_DIR "$ENV{NETGENPLUGIN_ROOT_DIR}/@SALOME_INSTALL_DOC@/examples/NETGENPLUGIN")
+
+INCLUDE(examples.set)
+
+SET(COMPONENT_NAME NETGENPLUGIN)
+SET(SALOME_TEST_DRIVER "$ENV{KERNEL_ROOT_DIR}/bin/salome/appliskel/salome_test_driver.py")
+SET(TIMEOUT 300)
+
+FOREACH(tfile ${EXAMPLE_SCRIPTS})
+ GET_FILENAME_COMPONENT(TEST_NAME ${tfile} NAME_WE)
+ SET(TEST_NAME "${COMPONENT_NAME}_${TEST_NAME}")
+ ADD_TEST(${TEST_NAME} python ${SALOME_TEST_DRIVER} ${TIMEOUT} ${TESTS_DIR}/${tfile})
+ SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES LABELS "${COMPONENT_NAME}")
+ENDFOREACH()
#
ADD_SUBDIRECTORY(examples)
-ADD_SUBDIRECTORY(gui)
\ No newline at end of file
+IF(SALOME_BUILD_DOC)
+ ADD_SUBDIRECTORY(gui)
+ENDIF()
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-FILE(GLOB files "${CMAKE_CURRENT_SOURCE_DIR}/*.py")
-INSTALL(FILES ${files} DESTINATION ${SALOME_INSTALL_DOC}/examples/NETGENPLUGIN)
+INCLUDE(examples.set)
+
+# Install examples
+
+INSTALL(FILES ${EXAMPLE_SCRIPTS} DESTINATION ${SALOME_INSTALL_DOC}/examples/NETGENPLUGIN)
+
+# Tests
+
+IF(SALOME_BUILD_TESTS)
+ # make test
+
+ SALOME_GENERATE_TESTS_ENVIRONMENT(tests_env)
+ SET(TEST_HELPER ${KERNEL_ROOT_DIR}/bin/salome/test_helper.py)
+
+ FOREACH(tfile ${EXAMPLE_SCRIPTS})
+ GET_FILENAME_COMPONENT(TEST_NAME ${tfile} NAME_WE)
+ ADD_TEST(NAME ${TEST_NAME}
+ COMMAND ${PYTHON_EXECUTABLE} -B ${TEST_HELPER} ${CMAKE_CURRENT_SOURCE_DIR}/${tfile})
+ SET_TESTS_PROPERTIES(${TEST_NAME} PROPERTIES ENVIRONMENT "${tests_env}")
+ ENDFOREACH()
+
+ # salome test
+
+ INSTALL(FILES examples.set DESTINATION ${SALOME_NETGENPLUGIN_INSTALL_TESTS})
+ENDIF()
--- /dev/null
+# Copyright (C) 2013-2020 CEA/DEN, EDF R&D, OPEN CASCADE
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+#
+
+SET(EXAMPLE_SCRIPTS
+ netgendemo.py
+)