]> Creatis software - FrontAlgorithms.git/blobdiff - lib/fpa/CMakeLists.txt
...
[FrontAlgorithms.git] / lib / fpa / CMakeLists.txt
diff --git a/lib/fpa/CMakeLists.txt b/lib/fpa/CMakeLists.txt
new file mode 100644 (file)
index 0000000..bb03ddd
--- /dev/null
@@ -0,0 +1,78 @@
+## =========================================================================
+## @author Leonardo Florez Valencia
+## @email florez-l@javeriana.edu.co
+## =========================================================================
+
+configure_file(Version.cxx.in "${CMAKE_CURRENT_BINARY_DIR}/Version.cxx" @ONLY)
+configure_file(Config.h.in "${CMAKE_CURRENT_BINARY_DIR}/Config.h" @ONLY)
+file(GLOB_RECURSE _common_src "${CMAKE_CURRENT_SOURCE_DIR}/Common/*.cxx")
+file(GLOB_RECURSE _filters_src "${CMAKE_CURRENT_SOURCE_DIR}/Filters/*.cxx")
+file(GLOB_RECURSE _functors_src "${CMAKE_CURRENT_SOURCE_DIR}/Functors/*.cxx")
+file(GLOB_RECURSE _common_hdr "${CMAKE_CURRENT_SOURCE_DIR}/Common/*.h")
+file(GLOB_RECURSE _filters_hdr "${CMAKE_CURRENT_SOURCE_DIR}/Filters/*.h")
+file(GLOB_RECURSE _functors_hdr "${CMAKE_CURRENT_SOURCE_DIR}/Functors/*.h")
+file(GLOB_RECURSE _common_hrc "${CMAKE_CURRENT_SOURCE_DIR}/Common/*.hxx")
+file(GLOB_RECURSE _filters_hrc "${CMAKE_CURRENT_SOURCE_DIR}/Filters/*.hxx")
+file(GLOB_RECURSE _functors_hrc "${CMAKE_CURRENT_SOURCE_DIR}/Functors/*.hxx")
+if(VTK_FOUND)
+  file(GLOB_RECURSE _vtk_src "${CMAKE_CURRENT_SOURCE_DIR}/VTK/*.cxx")
+  file(GLOB_RECURSE _vtk_hdr "${CMAKE_CURRENT_SOURCE_DIR}/VTK/*.h")
+  file(GLOB_RECURSE _vtk_hrc "${CMAKE_CURRENT_SOURCE_DIR}/VTK/*.hxx")
+endif(VTK_FOUND)
+
+## =====================
+## == Compile library ==
+## =====================
+
+add_library(
+  fpa SHARED
+  "${CMAKE_CURRENT_BINARY_DIR}/Version.cxx"
+  "${CMAKE_CURRENT_BINARY_DIR}/Config.h"
+  ${_common_src}
+  ${_filters_src}
+  ${_functors_src}
+  ${_vtk_src}
+  )
+generate_export_header(fpa)
+set_property(TARGET fpa PROPERTY VERSION ${prj_VERSION})
+set_property(TARGET fpa PROPERTY SOVERSION ${prj_SHORT_VERSION})
+set_property(
+  TARGET fpa PROPERTY INTERFACE_fpa_MAJOR_VERSION ${prj_MAJ_VERSION}
+  )
+set_property(
+  TARGET fpa APPEND PROPERTY COMPATIBLE_INTERFACE_STRING ${prj_MAJ_VERSION}
+  )
+target_link_libraries(fpa PUBLIC ${ITK_LIBRARIES})
+
+## ========================
+## == Installation rules ==
+## ========================
+
+install(
+  TARGETS fpa
+  EXPORT "${targets_export_name}"
+  LIBRARY DESTINATION "lib"
+  ARCHIVE DESTINATION "lib"
+  RUNTIME DESTINATION "bin"
+  INCLUDES DESTINATION "${include_install_dir}"
+  )
+install(
+  DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
+  DESTINATION "${include_install_dir}"
+  FILES_MATCHING PATTERN "*.h"
+  )
+install(
+  DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
+  DESTINATION "${include_install_dir}"
+  FILES_MATCHING PATTERN "*.hxx"
+  )
+install(
+  FILES "${CMAKE_CURRENT_BINARY_DIR}/fpa_export.h"
+  DESTINATION "${include_install_dir}/fpa"
+  )
+install(
+  FILES "${CMAKE_CURRENT_BINARY_DIR}/Config.h"
+  DESTINATION "${include_install_dir}/fpa"
+  )
+
+## eof - $RCSfile$