CMakeLists.txt 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. SET(language "python")
  2. cmake_minimum_required (VERSION 2.6)
  3. PROJECT(example_${language}_class)
  4. FIND_PACKAGE(SWIG REQUIRED)
  5. INCLUDE(${SWIG_USE_FILE})
  6. IF(${language} MATCHES python)
  7. FIND_PACKAGE(PythonLibs)
  8. INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH})
  9. SET(SWIG_LANG_LIBRARIES ${PYTHON_LIBRARIES})
  10. ENDIF(${language} MATCHES python)
  11. IF(${language} MATCHES perl)
  12. FIND_PACKAGE(PerlLibs)
  13. INCLUDE_DIRECTORIES(${PERL_INCLUDE_PATH})
  14. ADD_DEFINITIONS(${PERL_EXTRA_C_FLAGS})
  15. SET(SWIG_LANG_LIBRARIES ${PERL_LIBRARY})
  16. ENDIF(${language} MATCHES perl)
  17. IF(${language} MATCHES tcl)
  18. FIND_PACKAGE(TCL)
  19. INCLUDE_DIRECTORIES(${TCL_INCLUDE_PATH})
  20. SET(SWIG_LANG_LIBRARIES ${TCL_LIBRARY})
  21. ENDIF(${language} MATCHES tcl)
  22. IF(${language} MATCHES ruby)
  23. FIND_PACKAGE(Ruby)
  24. INCLUDE_DIRECTORIES(${RUBY_INCLUDE_PATH})
  25. SET(SWIG_LANG_LIBRARIES ${RUBY_LIBRARY})
  26. ENDIF(${language} MATCHES ruby)
  27. IF(${language} MATCHES php4)
  28. FIND_PACKAGE(PHP4)
  29. INCLUDE_DIRECTORIES(${PHP4_INCLUDE_PATH})
  30. SET(SWIG_LANG_LIBRARIES ${PHP4_LIBRARY})
  31. ENDIF(${language} MATCHES php4)
  32. IF(${language} MATCHES pike)
  33. FIND_PACKAGE(Pike)
  34. INCLUDE_DIRECTORIES(${PIKE_INCLUDE_PATH})
  35. SET(SWIG_LANG_LIBRARIES ${PIKE_LIBRARY})
  36. ENDIF(${language} MATCHES pike)
  37. INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
  38. SET(CMAKE_SWIG_FLAGS "")
  39. SET_SOURCE_FILES_PROPERTIES(example.i PROPERTIES CPLUSPLUS ON)
  40. SET_SOURCE_FILES_PROPERTIES(example.i PROPERTIES SWIG_FLAGS "-includeall")
  41. SWIG_ADD_MODULE(example "${language}"
  42. example.i example.cxx)
  43. SWIG_LINK_LIBRARIES(example ${SWIG_LANG_LIBRARIES})