|
@@ -1,93 +0,0 @@
|
|
|
-###########################################################################
|
|
|
-#
|
|
|
-# Library: CTK
|
|
|
-#
|
|
|
-# Copyright (c) Kitware Inc.
|
|
|
-#
|
|
|
-# Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
-# you may not use this file except in compliance with the License.
|
|
|
-# You may obtain a copy of the License at
|
|
|
-#
|
|
|
-# http://www.apache.org/licenses/LICENSE-2.0.txt
|
|
|
-#
|
|
|
-# Unless required by applicable law or agreed to in writing, software
|
|
|
-# distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
-# See the License for the specific language governing permissions and
|
|
|
-# limitations under the License.
|
|
|
-#
|
|
|
-###########################################################################
|
|
|
-
|
|
|
-#
|
|
|
-# ctkScriptWrapPythonQt_Light
|
|
|
-#
|
|
|
-
|
|
|
-#
|
|
|
-# This script should be invoked either as a CUSTOM_COMMAND
|
|
|
-# or from the command line using the following syntax:
|
|
|
-#
|
|
|
-# cmake -DWRAPPING_SCRIPT:FILEPATH=/path/to/ctkWrapPythonQt.py
|
|
|
-# -DWRAPPING_NAMESPACE:STRING=org.commontk -DTARGET:STRING=MyLib
|
|
|
-# -DSOURCES:STRING="file1^^file2"
|
|
|
-# -DOUTPUT_DIR:PATH=/path
|
|
|
-# -DPYTHON_EXECUTABLE:FILEPATH=/path/to/python
|
|
|
-# -DPYTHON_LIBRARY_PATH:PATH=/path/to/pythonlib
|
|
|
-# -P ctkScriptWrapPythonQt_Light.cmake
|
|
|
-#
|
|
|
-
|
|
|
-#
|
|
|
-# LOG FILE:
|
|
|
-# File ctkScriptWrapPythonQt_Light_log.txt will be created in the current directory.
|
|
|
-# It will contain the list of class and the constructor signature that will be wrapped.
|
|
|
-#
|
|
|
-
|
|
|
-# Check for non-defined var
|
|
|
-foreach(var WRAPPING_NAMESPACE TARGET SOURCES)
|
|
|
- if(NOT DEFINED ${var})
|
|
|
- message(FATAL_ERROR "${var} not specified when calling ctkScriptWrapPythonQt")
|
|
|
- endif()
|
|
|
-endforeach()
|
|
|
-
|
|
|
-# Check for non-existing ${var}
|
|
|
-foreach(var WRAPPING_SCRIPT OUTPUT_DIR PYTHON_EXECUTABLE PYTHON_LIBRARY_PATH)
|
|
|
- if(NOT EXISTS ${${var}})
|
|
|
- message(FATAL_ERROR "Failed to find ${var}=\"${${var}}\" when calling ctkScriptWrapPythonQt")
|
|
|
- endif()
|
|
|
-endforeach()
|
|
|
-
|
|
|
-# Convert ^^ separated string to list
|
|
|
-string(REPLACE "^^" ";" SOURCES "${SOURCES}")
|
|
|
-
|
|
|
-if(WIN32)
|
|
|
- set(ENV{PATH} ${PYTHON_LIBRARY_PATH};$ENV{PATH})
|
|
|
-elseif(APPLE)
|
|
|
- set(ENV{DYLD_LIBRARY_PATH} ${PYTHON_LIBRARY_PATH}:$ENV{DYLD_LIBRARY_PATH})
|
|
|
-else()
|
|
|
- set(ENV{LD_LIBRARY_PATH} ${PYTHON_LIBRARY_PATH}:$ENV{LD_LIBRARY_PATH})
|
|
|
-endif()
|
|
|
-
|
|
|
-set(verbose 0)
|
|
|
-
|
|
|
-set(extra_args)
|
|
|
-if(verbose)
|
|
|
- set(extra_args --extra-verbose)
|
|
|
-endif()
|
|
|
-
|
|
|
-execute_process(
|
|
|
- COMMAND ${PYTHON_EXECUTABLE} ${WRAPPING_SCRIPT}
|
|
|
- --target=${TARGET} --namespace=${WRAPPING_NAMESPACE} --output-dir=${OUTPUT_DIR} ${extra_args}
|
|
|
- ${SOURCES}
|
|
|
- RESULT_VARIABLE result
|
|
|
- OUTPUT_VARIABLE output
|
|
|
- ERROR_VARIABLE error
|
|
|
- OUTPUT_STRIP_TRAILING_WHITESPACE
|
|
|
- )
|
|
|
-if(NOT result EQUAL 0)
|
|
|
- message(FATAL_ERROR "Failed to wrap target: ${TARGET}\n${output}\n${error}")
|
|
|
-else()
|
|
|
- if(verbose)
|
|
|
- message(${output})
|
|
|
- endif()
|
|
|
-endif()
|
|
|
-
|
|
|
-
|