2 ## =====================
3 ## == Get source code ==
4 ## =====================
6 file(GLOB_RECURSE _base_src "${CMAKE_CURRENT_SOURCE_DIR}/Base/*.cxx")
7 file(GLOB_RECURSE _base_hdr "${CMAKE_CURRENT_SOURCE_DIR}/Base/*.h")
8 file(GLOB_RECURSE _base_hrc "${CMAKE_CURRENT_SOURCE_DIR}/Base/*.hxx")
9 file(GLOB_RECURSE _image_src "${CMAKE_CURRENT_SOURCE_DIR}/Image/*.cxx")
10 file(GLOB_RECURSE _image_hdr "${CMAKE_CURRENT_SOURCE_DIR}/Image/*.h")
11 file(GLOB_RECURSE _image_hrc "${CMAKE_CURRENT_SOURCE_DIR}/Image/*.hxx")
13 set(_src ${_base_src} ${_image_src})
14 set(_hdr ${_base_hdr} ${_image_hdr})
15 set(_hrc ${_base_hrc} ${_image_hrc})
17 ## =====================
18 ## == Compile library ==
19 ## =====================
21 add_library(fpa SHARED ${_src} ${_hdr} ${_hrc})
22 generate_export_header(fpa)
23 set_property(TARGET fpa PROPERTY VERSION ${prj_VERSION})
24 set_property(TARGET fpa PROPERTY SOVERSION ${prj_SHORT_VERSION})
26 TARGET fpa PROPERTY INTERFACE_fpa_MAJOR_VERSION ${prj_MAJ_VERSION}
29 TARGET fpa APPEND PROPERTY COMPATIBLE_INTERFACE_STRING ${prj_MAJ_VERSION}
31 target_link_libraries(fpa PUBLIC ${VTK_LIBRARIES} ${ITK_LIBRARIES})
33 ## ========================
34 ## == Installation rules ==
35 ## ========================
39 EXPORT "${targets_export_name}"
40 LIBRARY DESTINATION "lib"
41 ARCHIVE DESTINATION "lib"
42 RUNTIME DESTINATION "bin"
43 INCLUDES DESTINATION "${include_install_dir}"
46 DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
47 DESTINATION "${include_install_dir}"
48 FILES_MATCHING PATTERN "*.h"
51 DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
52 DESTINATION "${include_install_dir}"
53 FILES_MATCHING PATTERN "*.hxx"
56 FILES "${CMAKE_CURRENT_BINARY_DIR}/fpa_export.h"
57 DESTINATION "${include_install_dir}/fpa"