# Copyright (C) 2012 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. # # 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 # INCLUDE(${VTK_USE_FILE}) INCLUDE_DIRECTORIES( ${CAS_INCLUDE_DIRS} ${QT_INCLUDES} ${QWT_INCLUDE_DIR} ${SIP_INCLUDE_DIR} ${Boost_INCLUDE_DIRS} ${PYTHON_INCLUDE_DIRS} ${PTHREAD_INCLUDE_DIRS} ${KERNEL_ROOT_DIR}/include/salome ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_BINARY_DIR}/idl ${CMAKE_CURRENT_SOURCE_DIR}/../../SUIT ${CMAKE_CURRENT_SOURCE_DIR}/../../CAM ${CMAKE_CURRENT_SOURCE_DIR}/../../STD ${CMAKE_CURRENT_SOURCE_DIR}/../../Qtx ${CMAKE_CURRENT_SOURCE_DIR}/../../Event ${CMAKE_CURRENT_SOURCE_DIR}/../../LogWindow ${CMAKE_CURRENT_SOURCE_DIR}/../../VTKViewer ${CMAKE_CURRENT_SOURCE_DIR}/../../OCCViewer ${CMAKE_CURRENT_SOURCE_DIR}/../../Plot2d ${CMAKE_CURRENT_SOURCE_DIR}/../SALOME_PYQT_GUILight ${CMAKE_CURRENT_SOURCE_DIR}/../../PyInterp ${CMAKE_CURRENT_SOURCE_DIR}/../../LightApp ${CMAKE_CURRENT_SOURCE_DIR}/../../ObjBrowser ${CMAKE_CURRENT_SOURCE_DIR}/../../OBJECT ) SET(COMMON_LIBS ${PYTHON_LIBRARIES} ${SIP_LIBS} ${PYQT_LIBRARIES} ${VTK_LIBRARIES} ${QWT_LIBRARY} ${OPENGL_LIBRARIES} suit CAM std qtx Event LogWindow VTKViewer SalomePyQtGUILight OCCViewer Plot2d ) SET(GUI_HEADERS SalomePyQt.h) QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS}) # extra source files (generated by sip) SET(SIP_SRC sipAPISalomePyQt.h sipSalomePyQtSalomePyQt.cc sipSalomePyQtSALOME_Selection.cc sipSalomePyQtQtxAction.cc sipSalomePyQtQtxActionGroup.cc sipSalomePyQtQtxActionSet.cc sipSalomePyQtcmodule.cc ) # Sip definition file SET(SIP_FILES SalomePyQt.sip ) FOREACH(input ${SIP_FILES}) SET(input ${CMAKE_CURRENT_SOURCE_DIR}/${input}) SET(output) FOREACH(out ${SIP_SRC}) SET(output ${output} ${CMAKE_CURRENT_BINARY_DIR}/${out}) ENDFOREACH(out ${SIP_SRC}) ADD_CUSTOM_COMMAND( OUTPUT ${output} COMMAND ${SIP_EXECUTABLE} ${PYQT_SIPFLAGS} ${input} MAIN_DEPENDENCY ${input} ) ENDFOREACH(input ${SIP_FILES}) SET(SalomePyQt_SOURCES SalomePyQt.cxx) # -DHAVE_CONFIG_H ADD_DEFINITIONS("${QWT_DEFINITIONS} ${QT_DEFINITIONS} ${CAS_DEFINITIONS} ${BOOST_DEFINITIONS} ${PYTHON_DEFINITIONS}") ADD_LIBRARY(SalomePyQt ${SalomePyQt_SOURCES} ${GUI_HEADERS_MOC} ${SIP_SRC}) TARGET_LINK_LIBRARIES(SalomePyQt ${COMMON_LIBS}) INSTALL(TARGETS SalomePyQt DESTINATION ${GUI_salomelib_LIBS}) IF(WINDOWS) IF(CMAKE_BUILD_TYPE STREQUAL Release) INSTALL(FILES ${CMAKE_INSTALL_PREFIX}/${GUI_salomelib_LIBS}/SalomePyQt.dll DESTINATION ${GUI_salomelib_LIBS} RENAME SalomePyQt.pyd) ELSE(CMAKE_BUILD_TYPE STREQUAL Release) INSTALL(FILES ${CMAKE_INSTALL_PREFIX}/${GUI_salomelib_LIBS}/SalomePyQt.dll DESTINATION ${GUI_salomelib_LIBS} RENAME SalomePyQt_d.pyd) ENDIF(CMAKE_BUILD_TYPE STREQUAL Release) ELSE(WINDOWS) INSTALL(CODE "EXECUTE_PROCESS(COMMAND ln -sf libSalomePyQt.so SalomePyQt.so WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}/${GUI_salomelib_LIBS} OUTPUT_VARIABLE ln_res)" ) ENDIF(WINDOWS)