~ubuntu-branches/debian/sid/simpleitk/sid

« back to all changes in this revision

Viewing changes to Wrapping/Lua/CMakeLists.txt

  • Committer: Package Import Robot
  • Author(s): Ghislain Antony Vaillant
  • Date: 2017-11-02 08:49:18 UTC
  • Revision ID: package-import@ubuntu.com-20171102084918-7hs09ih668xq87ej
Tags: upstream-1.0.1
ImportĀ upstreamĀ versionĀ 1.0.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
cmake_minimum_required ( VERSION 2.8.1 FATAL_ERROR )
 
2
 
 
3
project( SimpleITK_Lua )
 
4
 
 
5
include(../../CMake/sitkProjectLanguageCommon.cmake NO_POLICY_SCOPE)
 
6
 
 
7
 
 
8
 
 
9
find_package ( Lua REQUIRED )
 
10
 
 
11
set( LUA_ADDITIONAL_LIBRARIES "" CACHE STRING "Additional libraries which may be needed for lua executable such as readline.")
 
12
mark_as_advanced( LUA_ADDITIONAL_LIBRARIES )
 
13
 
 
14
include_directories ( ${SimpleITK_INCLUDE_DIRS} )
 
15
 
 
16
set_source_files_properties ( SimpleITK.i PROPERTIES CPLUSPLUS ON )
 
17
 
 
18
# Run swig
 
19
set(CMAKE_SWIG_FLAGS ${CMAKE_SWIG_GLOBAL_FLAGS})
 
20
set(CMAKE_SWIG_OUTDIR ${CMAKE_CURRENT_BINARY_DIR})
 
21
set(SWIG_MODULE_SimpleITKLua_EXTRA_DEPS ${SWIG_EXTRA_DEPS}
 
22
  ${CMAKE_CURRENT_SOURCE_DIR}/Lua.i )
 
23
SWIG_module_initialize ( SimpleITKLua lua )
 
24
SWIG_add_source_to_module ( SimpleITKLua  swig_generated_source SimpleITK.i ${SWIG_EXTRA_DEPS} )
 
25
set_source_files_properties(${swig_generated_file_fullname} PROPERTIES COMPILE_FLAGS "-w" )
 
26
 
 
27
# Create a standalone Lua executable that includes SimpleITK.
 
28
option( SimpleITK_LUA_BUILD_EXECUTABLE "Build a standalone SimpleITK-Lua executable" OFF)
 
29
sitk_legacy_naming(SimpleITK_LUA_BUILD_EXECUTABLE)
 
30
if ( SimpleITK_LUA_BUILD_EXECUTABLE )
 
31
  add_executable ( SimpleITKLua SimpleITKLuaMain.cxx ${swig_generated_file_fullname} )
 
32
  target_link_libraries ( SimpleITKLua ${SimpleITK_LIBRARIES} ${LUA_LIBRARIES} ${LUA_ADDITIONAL_LIBRARIES} )
 
33
  target_include_directories( SimpleITKLua
 
34
    PRIVATE
 
35
      ${LUA_INCLUDE_DIR} )
 
36
  sitk_strip_target( SimpleITKLua )
 
37
endif ()
 
38
 
 
39
# Create a SimpleITK Lua module that can be loaded into any Lua executable.
 
40
SWIG_add_module( SimpleITKLuaModule lua SimpleITK.i )
 
41
target_link_libraries( ${SWIG_MODULE_SimpleITKLuaModule_TARGET_NAME} ${SimpleITK_LIBRARIES} )
 
42
set_target_properties( ${SWIG_MODULE_SimpleITKLuaModule_TARGET_NAME} PROPERTIES PREFIX "" OUTPUT_NAME  "SimpleITK" )
 
43
sitk_target_link_libraries_with_dynamic_lookup( ${SWIG_MODULE_SimpleITKLuaModule_TARGET_NAME} ${LUA_LIBRARIES} )
 
44
target_include_directories( ${SWIG_MODULE_SimpleITKLuaModule_TARGET_NAME}
 
45
    SYSTEM
 
46
    PRIVATE
 
47
      ${LUA_INCLUDE_DIR} )
 
48
set_source_files_properties( ${swig_generated_file_fullname} PROPERTIES COMPILE_FLAGS "-w")
 
49
sitk_strip_target( ${SWIG_MODULE_SimpleITKLuaModule_TARGET_NAME} )
 
50