Commit ef27a939 authored by Stephen's avatar Stephen
Browse files

final exports

parent c12936d2
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
"Qt5_DIR": "$env{CONDA_PREFIX}/lib/cmake/qt5", "Qt5_DIR": "$env{CONDA_PREFIX}/lib/cmake/qt5",
"HDF5_ROOT": "$env{CONDA_PREFIX}", "HDF5_ROOT": "$env{CONDA_PREFIX}",
"OpenSSL_ROOT": "$env{CONDA_PREFIX}", "OpenSSL_ROOT": "$env{CONDA_PREFIX}",
"CONDA_BUILD": true,
"CMAKE_BUILD_TYPE": "Debug" "CMAKE_BUILD_TYPE": "Debug"
} }
}, },
......
...@@ -1074,7 +1074,6 @@ generate_mantid_export_header(Algorithms FALSE) ...@@ -1074,7 +1074,6 @@ generate_mantid_export_header(Algorithms FALSE)
# Installation settings # Installation settings
set(TARGET_EXPORT_NAME "MantidAlgorithmsTargets") set(TARGET_EXPORT_NAME "MantidAlgorithmsTargets")
mtd_install_dylib(TARGETS mtd_install_dylib(TARGETS
Algorithms Algorithms
INSTALL_EXPORT_FILE INSTALL_EXPORT_FILE
...@@ -1083,9 +1082,8 @@ mtd_install_dylib(TARGETS ...@@ -1083,9 +1082,8 @@ mtd_install_dylib(TARGETS
${PLUGINS_DIR} ${PLUGINS_DIR}
${WORKBENCH_PLUGINS_DIR}) ${WORKBENCH_PLUGINS_DIR})
# install(EXPORT ${TARGET_EXPORT_NAME} install(EXPORT ${TARGET_EXPORT_NAME}
# FILE ${TARGET_EXPORT_NAME}.cmake FILE ${TARGET_EXPORT_NAME}.cmake
# NAMESPACE Mantid:: NAMESPACE Mantid::
# DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/Mantid DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
# ) )
\ No newline at end of file
...@@ -64,12 +64,18 @@ target_include_directories(Catalog PRIVATE ${JSONCPP_INCLUDE_DIR}) ...@@ -64,12 +64,18 @@ target_include_directories(Catalog PRIVATE ${JSONCPP_INCLUDE_DIR})
add_subdirectory(test) add_subdirectory(test)
# Auto-generate exports header # Auto-generate exports header
target_include_directories(Catalog PUBLIC ${CMAKE_BINARY_DIR}/Framework/Catalog) target_include_directories(Catalog PUBLIC
$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/Framework/Catalog>
$<INSTALL_INTERFACE:include/Mantid>
)
generate_mantid_export_header(Catalog TRUE) generate_mantid_export_header(Catalog TRUE)
# Installation settings # Installation settings
mtd_install_dylib(TARGETS set(TARGET_EXPORT_NAME "MantidCatalogTargets")
Catalog mtd_install_dylib(TARGETS Catalog INSTALL_EXPORT_FILE EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
INSTALL_DIRS
${LIB_DIR} install(EXPORT ${TARGET_EXPORT_NAME}
${WORKBENCH_LIB_DIR}) FILE ${TARGET_EXPORT_NAME}.cmake
NAMESPACE Mantid::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
)
\ No newline at end of file
...@@ -269,16 +269,17 @@ target_link_libraries(Crystal PUBLIC Mantid::API Mantid::Geometry Mantid::Kernel ...@@ -269,16 +269,17 @@ target_link_libraries(Crystal PUBLIC Mantid::API Mantid::Geometry Mantid::Kernel
add_subdirectory(test) add_subdirectory(test)
# Auto-generate exports header # Auto-generate exports header
target_include_directories(Crystal PUBLIC ${CMAKE_BINARY_DIR}/Framework/Crystal)
target_include_directories(Crystal PUBLIC target_include_directories(Crystal PUBLIC
${CMAKE_SOURCE_DIR}/Framework/Geometry/inc/MantidGeometry/Crystal ) $<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/Framework/Crystal>
$<INSTALL_INTERFACE:include/Mantid>
)
generate_mantid_export_header(Crystal FALSE) generate_mantid_export_header(Crystal FALSE)
# Installation settings # Installation settings
set(TARGET_EXPORT_NAME "MantidCrystalTargets")
mtd_install_dylib(TARGETS Crystal INSTALL_EXPORT_FILE EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
mtd_install_dylib(TARGETS install(EXPORT ${TARGET_EXPORT_NAME}
Crystal FILE ${TARGET_EXPORT_NAME}.cmake
INSTALL_DIRS NAMESPACE Mantid::
${PLUGINS_DIR} DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework)
${WORKBENCH_PLUGINS_DIR})
...@@ -6,13 +6,13 @@ ...@@ -6,13 +6,13 @@
// SPDX - License - Identifier: GPL - 3.0 + // SPDX - License - Identifier: GPL - 3.0 +
#pragma once #pragma once
#include "IPeak.h"
#include "MantidAPI/Algorithm.h" #include "MantidAPI/Algorithm.h"
#include "MantidAPI/IPeaksWorkspace.h" #include "MantidAPI/IPeaksWorkspace.h"
#include "MantidCrystal/DllConfig.h" #include "MantidCrystal/DllConfig.h"
#include "MantidDataObjects/LeanElasticPeaksWorkspace.h" #include "MantidDataObjects/LeanElasticPeaksWorkspace.h"
#include "MantidDataObjects/PeaksWorkspace.h" #include "MantidDataObjects/PeaksWorkspace.h"
#include "MantidGeometry/Crystal/HKLFilterWavelength.h" #include "MantidGeometry/Crystal/HKLFilterWavelength.h"
#include "MantidGeometry/Crystal/IPeak.h"
#include "MantidKernel/System.h" #include "MantidKernel/System.h"
namespace Mantid { namespace Mantid {
......
...@@ -529,20 +529,25 @@ endif() ...@@ -529,20 +529,25 @@ endif()
# Add to the 'Framework' group in VS # Add to the 'Framework' group in VS
set_property(TARGET CurveFitting PROPERTY FOLDER "MantidFramework") set_property(TARGET CurveFitting PROPERTY FOLDER "MantidFramework")
include_directories(inc)
target_link_libraries(CurveFitting PUBLIC Mantid::API Mantid::Kernel Mantid::DataObjects PRIVATE Mantid::HistogramData Mantid::Geometry) target_link_libraries(CurveFitting PUBLIC Mantid::API Mantid::Kernel Mantid::DataObjects PRIVATE Mantid::HistogramData Mantid::Geometry)
# Add the unit tests directory # Add the unit tests directory
add_subdirectory(test) add_subdirectory(test)
# Auto-generate exports header # Auto-generate exports header
target_include_directories(CurveFitting PUBLIC ${CMAKE_BINARY_DIR}/Framework/CurveFitting) target_include_directories(CurveFitting PUBLIC
$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/Framework/CurveFitting>
$<INSTALL_INTERFACE:include/Mantid>
)
generate_mantid_export_header(CurveFitting FALSE) generate_mantid_export_header(CurveFitting FALSE)
# Installation settings # Installation settings
set(TARGET_EXPORT_NAME "MantidCurveFittingTargets")
mtd_install_dylib(TARGETS CurveFitting INSTALL_EXPORT_FILE EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
mtd_install_dylib(TARGETS install(EXPORT ${TARGET_EXPORT_NAME}
CurveFitting FILE ${TARGET_EXPORT_NAME}.cmake
INSTALL_DIRS NAMESPACE Mantid::
${PLUGINS_DIR} DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
${WORKBENCH_PLUGINS_DIR}) )
\ No newline at end of file
...@@ -679,7 +679,6 @@ set_property(TARGET DataHandling PROPERTY FOLDER "MantidFramework") ...@@ -679,7 +679,6 @@ set_property(TARGET DataHandling PROPERTY FOLDER "MantidFramework")
target_link_libraries(DataHandling target_link_libraries(DataHandling
PUBLIC PUBLIC
${HDF5_HL_LIBRARIES}
Mantid::Nexus Mantid::Nexus
Mantid::API Mantid::API
Mantid::HistogramData Mantid::HistogramData
...@@ -689,19 +688,23 @@ target_link_libraries(DataHandling ...@@ -689,19 +688,23 @@ target_link_libraries(DataHandling
Mantid::Kernel Mantid::Kernel
Mantid::Indexing Mantid::Indexing
Mantid::Parallel Mantid::Parallel
${HDF5_LIBRARIES}
${HDF5_HL_LIBRARIES}
PRIVATE PRIVATE
Mantid::Json Mantid::Json
Boost::filesystem Boost::filesystem
Mantid::NexusGeometry) Mantid::NexusGeometry)
target_include_directories(DataHandling SYSTEM PUBLIC ${HDF5_INCLUDE_DIRS})
# Lib3mf is technically a public dependency as it is in our public headers.
# We are assuming here that it won't be used.
if(ENABLE_LIB3MF) if(ENABLE_LIB3MF)
target_link_libraries(DataHandling LINK_PRIVATE target_link_libraries(DataHandling PRIVATE
${LIB3MF_LIBRARIES}) ${LIB3MF_LIBRARIES})
if (CONDA_BUILD) if (CONDA_BUILD)
target_include_directories(DataHandling PUBLIC ${LIB3MF_INCLUDE_DIR}) target_include_directories(DataHandling PRIVATE ${LIB3MF_INCLUDE_DIR})
else() else()
target_include_directories(DataHandling PUBLIC ${LIB3MF_INCLUDE_DIR}/lib3mf) target_include_directories(DataHandling PRIVATE ${LIB3MF_INCLUDE_DIR}/lib3mf)
endif() endif()
endif() endif()
...@@ -709,9 +712,11 @@ endif() ...@@ -709,9 +712,11 @@ endif()
add_subdirectory(test) add_subdirectory(test)
# Installation settings # Installation settings
set(TARGET_EXPORT_NAME "MantidDataHandlingTargets")
mtd_install_dylib(TARGETS DataHandling EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
mtd_install_dylib(TARGETS install(EXPORT ${TARGET_EXPORT_NAME}
DataHandling FILE ${TARGET_EXPORT_NAME}.cmake
INSTALL_DIRS NAMESPACE Mantid::
${PLUGINS_DIR} DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
${WORKBENCH_PLUGINS_DIR}) )
\ No newline at end of file
...@@ -38,6 +38,11 @@ if(CXXTEST_FOUND) ...@@ -38,6 +38,11 @@ if(CXXTEST_FOUND)
if(ENABLE_LIB3MF) if(ENABLE_LIB3MF)
target_link_libraries(DataHandlingTest LINK_PRIVATE target_link_libraries(DataHandlingTest LINK_PRIVATE
${LIB3MF_LIBRARIES}) ${LIB3MF_LIBRARIES})
if (CONDA_BUILD)
target_include_directories(DataHandlingTest PRIVATE ${LIB3MF_INCLUDE_DIR})
else()
target_include_directories(DataHandlingTest PRIVATE ${LIB3MF_INCLUDE_DIR}/lib3mf)
endif()
endif() endif()
add_dependencies(DataHandlingTest Algorithms MDAlgorithms) add_dependencies(DataHandlingTest Algorithms MDAlgorithms)
......
...@@ -226,14 +226,13 @@ target_include_directories(DataObjects PUBLIC ...@@ -226,14 +226,13 @@ target_include_directories(DataObjects PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc>
$<INSTALL_INTERFACE:include/Mantid> $<INSTALL_INTERFACE:include/Mantid>
) )
# Set the name of the generated library # Set the name of the generated library
set_target_properties(DataObjects PROPERTIES set_target_properties(DataObjects PROPERTIES
OUTPUT_NAME OUTPUT_NAME
MantidDataObjects MantidDataObjects
COMPILE_DEFINITIONS COMPILE_DEFINITIONS
IN_MANTID_DATAOBJECTS IN_MANTID_DATAOBJECTS)
INTERFACE_INCLUDE_DIRECTORIES
${CMAKE_CURRENT_LIST_DIR}/inc)
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set_target_properties(DataObjects set_target_properties(DataObjects
...@@ -258,9 +257,11 @@ target_link_libraries(DataObjects PUBLIC Mantid::API Mantid::Geometry Mantid::Hi ...@@ -258,9 +257,11 @@ target_link_libraries(DataObjects PUBLIC Mantid::API Mantid::Geometry Mantid::Hi
add_subdirectory(test) add_subdirectory(test)
# Installation settings # Installation settings
set(TARGET_EXPORT_NAME "MantidDataObjectsTargets")
mtd_install_dylib(TARGETS DataObjects EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
mtd_install_dylib(TARGETS install(EXPORT ${TARGET_EXPORT_NAME}
DataObjects FILE ${TARGET_EXPORT_NAME}.cmake
INSTALL_DIRS NAMESPACE Mantid::
${LIB_DIR} DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
${WORKBENCH_LIB_DIR}) )
\ No newline at end of file
...@@ -503,13 +503,13 @@ target_link_libraries(Geometry ...@@ -503,13 +503,13 @@ target_link_libraries(Geometry
if(ENABLE_OPENGL) if(ENABLE_OPENGL)
target_include_directories(Geometry SYSTEM PRIVATE ${OPENGL_INCLUDE_DIR}) target_include_directories(Geometry SYSTEM PRIVATE ${OPENGL_INCLUDE_DIR})
target_link_libraries(Geometry target_link_libraries(Geometry
LINK_PRIVATE PRIVATE
${OPENGL_gl_LIBRARY} ${OPENGL_gl_LIBRARY}
${OPENGL_glu_LIBRARY}) ${OPENGL_glu_LIBRARY})
endif() endif()
if(ENABLE_OPENCASCADE) if(ENABLE_OPENCASCADE)
target_link_libraries(Geometry LINK_PRIVATE ${OPENCASCADE_LIBRARIES}) target_link_libraries(Geometry PRIVATE ${OPENCASCADE_LIBRARIES})
endif() endif()
# Add the unit tests directory # Add the unit tests directory
......
...@@ -106,21 +106,26 @@ endif() ...@@ -106,21 +106,26 @@ endif()
set_property(TARGET ICat PROPERTY FOLDER "MantidFramework") set_property(TARGET ICat PROPERTY FOLDER "MantidFramework")
target_link_libraries(ICat PUBLIC Mantid::Kernel Mantid::API Mantid::DataObjects ${OPENSSL_LIBRARIES} PRIVATE ${JSONCPP_LIBRARIES}) target_link_libraries(ICat PUBLIC Mantid::Kernel Mantid::API Mantid::DataObjects OpenSSL::SSL PRIVATE JsonCPP::jsoncpp )
target_include_directories(ICat PUBLIC ${OPENSSL_INCLUDE_DIR} PRIVATE ${JSONCPP_INCLUDE_DIR})
# Add the unit tests directory # Add the unit tests directory
add_subdirectory(test) add_subdirectory(test)
# Auto-generate exports header # Auto-generate exports header
target_include_directories(ICat PUBLIC ${CMAKE_BINARY_DIR}/Framework/ICat) target_include_directories(ICat PUBLIC
generate_mantid_export_header(ICat TRUE) $<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/Framework/ICat>
$<INSTALL_INTERFACE:include/Mantid>
)
generate_mantid_export_header(ICat True)
# Installation settings # Installation settings
mtd_install_targets(TARGETS set(TARGET_EXPORT_NAME "MantidICatTargets")
ICat mtd_install_dylib(TARGETS ICat INSTALL_EXPORT_FILE EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
INSTALL_DIRS
${PLUGINS_DIR} install(EXPORT ${TARGET_EXPORT_NAME}
${WORKBENCH_PLUGINS_DIR}) FILE ${TARGET_EXPORT_NAME}.cmake
NAMESPACE Mantid::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
)
...@@ -519,9 +519,9 @@ target_link_libraries(Kernel ...@@ -519,9 +519,9 @@ target_link_libraries(Kernel
Poco::Util Poco::Util
Poco::NetSSL Poco::NetSSL
GSL::gsl GSL::gsl
hdf5::hdf5_cpp OpenSSL::SSL
hdf5::hdf5_hl ${HDF5_LIBRARIES}
hdf5::hdf5 ${HDF5_HL_LIBRARIES}
PRIVATE PRIVATE
${NETWORK_LIBRARIES} ${NETWORK_LIBRARIES}
span span
......
...@@ -138,6 +138,7 @@ endif() ...@@ -138,6 +138,7 @@ endif()
set(PRIVATE_LINK_LIBRARIES ${WINSOCK}) set(PRIVATE_LINK_LIBRARIES ${WINSOCK})
if(LIBRDKAFKA_FOUND) if(LIBRDKAFKA_FOUND)
set(PRIVATE_LINK_LIBRARIES ${PRIVATE_LINK_LIBRARIES} ${LibRDKafka_LIBRARIES}) set(PRIVATE_LINK_LIBRARIES ${PRIVATE_LINK_LIBRARIES} ${LibRDKafka_LIBRARIES})
target_include_directories(LiveData PRIVATE ${LibRDKafka_INCLUDE_DIR})
endif() endif()
target_link_libraries(LiveData PUBLIC Mantid::Kernel Mantid::API Mantid::DataObjects Mantid::Geometry Mantid::NexusGeometry PRIVATE ${PRIVATE_LINK_LIBRARIES} Mantid::Indexing) target_link_libraries(LiveData PUBLIC Mantid::Kernel Mantid::API Mantid::DataObjects Mantid::Geometry Mantid::NexusGeometry PRIVATE ${PRIVATE_LINK_LIBRARIES} Mantid::Indexing)
...@@ -145,12 +146,18 @@ target_link_libraries(LiveData PUBLIC Mantid::Kernel Mantid::API Mantid::DataObj ...@@ -145,12 +146,18 @@ target_link_libraries(LiveData PUBLIC Mantid::Kernel Mantid::API Mantid::DataObj
add_subdirectory(test) add_subdirectory(test)
# Auto-generate exports header # Auto-generate exports header
target_include_directories(LiveData PUBLIC ${CMAKE_BINARY_DIR}/Framework/LiveData) target_include_directories(LiveData PUBLIC
$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/Framework/LiveData>
$<INSTALL_INTERFACE:include/Mantid>
)
generate_mantid_export_header(LiveData FALSE) generate_mantid_export_header(LiveData FALSE)
# Installation settings # Installation settings
mtd_install_dylib(TARGETS set(TARGET_EXPORT_NAME "MantidLiveDataTargets")
LiveData mtd_install_dylib(TARGETS LiveData INSTALL_EXPORT_FILE EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
INSTALL_DIRS
${PLUGINS_DIR} install(EXPORT ${TARGET_EXPORT_NAME}
${WORKBENCH_PLUGINS_DIR}) FILE ${TARGET_EXPORT_NAME}.cmake
NAMESPACE Mantid::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
)
\ No newline at end of file
...@@ -108,17 +108,23 @@ endif() ...@@ -108,17 +108,23 @@ endif()
# Add to the 'Framework' group in VS # Add to the 'Framework' group in VS
set_property(TARGET Muon PROPERTY FOLDER "MantidFramework") set_property(TARGET Muon PROPERTY FOLDER "MantidFramework")
target_link_libraries(Muon PUBLIC Mantid::API Mantid::Kernel Mantid::HistogramData Mantid::Geometry PRIVATE Mantid::DataObjects Mantid::Indexing) target_link_libraries(Muon PUBLIC Mantid::API Mantid::Kernel Mantid::Muon Mantid::Geometry PRIVATE Mantid::DataObjects Mantid::Indexing)
# Add the unit tests directory # Add the unit tests directory
add_subdirectory(test) add_subdirectory(test)
# Auto-generate exports header # Auto-generate exports header
target_include_directories(Muon PUBLIC ${CMAKE_BINARY_DIR}/Framework/Muon) target_include_directories(Muon PUBLIC
$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/Framework/Muon>
$<INSTALL_INTERFACE:include/Mantid>
)
generate_mantid_export_header(Muon FALSE) generate_mantid_export_header(Muon FALSE)
# Installation settings # Installation settings
mtd_install_dylib(TARGETS set(TARGET_EXPORT_NAME "MantidMuonTargets")
Muon mtd_install_dylib(TARGETS Muon INSTALL_EXPORT_FILE EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
INSTALL_DIRS
${PLUGINS_DIR} install(EXPORT ${TARGET_EXPORT_NAME}
${WORKBENCH_PLUGINS_DIR}) FILE ${TARGET_EXPORT_NAME}.cmake
NAMESPACE Mantid::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
)
\ No newline at end of file
...@@ -42,11 +42,18 @@ endif() ...@@ -42,11 +42,18 @@ endif()
# Add to the 'Framework' group in VS # Add to the 'Framework' group in VS
set_property(TARGET Nexus PROPERTY FOLDER "MantidFramework") set_property(TARGET Nexus PROPERTY FOLDER "MantidFramework")
target_link_libraries(Nexus PUBLIC Mantid::API Mantid::DataObjects Mantid::Kernel ${NEXUS_C_LIBRARIES} ${NEXUS_LIBRARIES}) target_link_libraries(Nexus PUBLIC Mantid::API Mantid::DataObjects Mantid::Kernel Nexus::nexus Nexus::nexuscpp)
target_include_directories(Nexus PUBLIC ${NEXUS_INCLUDE_DIR})
# Add the unit tests directory # Add the unit tests directory
add_subdirectory(test) add_subdirectory(test)
# Installation settings # Installation settings
mtd_install_dylib(TARGETS Nexus INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR}) # Installation settings
set(TARGET_EXPORT_NAME "MantidNexusTargets")
mtd_install_dylib(TARGETS Nexus EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
install(EXPORT ${TARGET_EXPORT_NAME}
FILE ${TARGET_EXPORT_NAME}.cmake
NAMESPACE Mantid::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
)
\ No newline at end of file
...@@ -79,11 +79,18 @@ target_link_libraries(NexusGeometry PUBLIC Mantid::Geometry Mantid::API ...@@ -79,11 +79,18 @@ target_link_libraries(NexusGeometry PUBLIC Mantid::Geometry Mantid::API
add_subdirectory(test) add_subdirectory(test)
# Auto-generate exports header # Auto-generate exports header
target_include_directories(NexusGeometry PUBLIC ${CMAKE_BINARY_DIR}/Framework/NexusGeometry) target_include_directories(NexusGeometry PUBLIC
generate_mantid_export_header(NexusGeometry TRUE) $<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/Framework/NexusGeometry>
$<INSTALL_INTERFACE:include/Mantid>
)
generate_mantid_export_header(NexusGeometry FALSE)
mtd_install_dylib(TARGETS # Installation settings
NexusGeometry set(TARGET_EXPORT_NAME "MantidNexusGeometryTargets")
INSTALL_DIRS mtd_install_dylib(TARGETS NexusGeometry INSTALL_EXPORT_FILE EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
${LIB_DIR}
${WORKBENCH_LIB_DIR}) install(EXPORT ${TARGET_EXPORT_NAME}
FILE ${TARGET_EXPORT_NAME}.cmake
NAMESPACE Mantid::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
)
\ No newline at end of file
...@@ -110,20 +110,24 @@ endif() ...@@ -110,20 +110,24 @@ endif()
# Add to the 'Framework' group in VS # Add to the 'Framework' group in VS
set_property(TARGET Reflectometry PROPERTY FOLDER "MantidFramework") set_property(TARGET Reflectometry PROPERTY FOLDER "MantidFramework")
# Auto-generate exports header
generate_mantid_export_header(Reflectometry FALSE)
target_include_directories(Reflectometry PUBLIC
${CMAKE_BINARY_DIR}/Framework/Reflectometry)
target_link_libraries(Reflectometry PUBLIC Mantid::Kernel Mantid::API Mantid::Geometry Mantid::DataObjects PRIVATE Mantid::Indexing Mantid::HistogramData) target_link_libraries(Reflectometry PUBLIC Mantid::Kernel Mantid::API Mantid::Geometry Mantid::DataObjects PRIVATE Mantid::Indexing Mantid::HistogramData)
# Add the unit tests directory # Add the unit tests directory
add_subdirectory(test) add_subdirectory(test)
# Auto-generate exports header
target_include_directories(Reflectometry PUBLIC
$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/Framework/Reflectometry>
$<INSTALL_INTERFACE:include/Mantid>
)
generate_mantid_export_header(Reflectometry FALSE)
# Installation settings # Installation settings
mtd_install_dylib(TARGETS set(TARGET_EXPORT_NAME "MantidReflectometryTargets")
Reflectometry mtd_install_dylib(TARGETS Reflectometry INSTALL_EXPORT_FILE EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
INSTALL_DIRS
${PLUGINS_DIR} install(EXPORT ${TARGET_EXPORT_NAME}
${WORKBENCH_PLUGINS_DIR}) FILE ${TARGET_EXPORT_NAME}.cmake
NAMESPACE Mantid::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
)
...@@ -80,8 +80,11 @@ target_link_libraries(RemoteAlgorithms PUBLIC Mantid::API PRIVATE Mantid::Kernel ...@@ -80,8 +80,11 @@ target_link_libraries(RemoteAlgorithms PUBLIC Mantid::API PRIVATE Mantid::Kernel
add_subdirectory(test) # Note: No tests yet for many remote algorithms... add_subdirectory(test) # Note: No tests yet for many remote algorithms...
# Installation settings # Installation settings
mtd_install_dylib(TARGETS set(TARGET_EXPORT_NAME "MantidRemoteAlgorithmsTargets")
RemoteAlgorithms mtd_install_dylib(TARGETS RemoteAlgorithms EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
INSTALL_DIRS
${PLUGINS_DIR} install(EXPORT ${TARGET_EXPORT_NAME}
${WORKBENCH_PLUGINS_DIR}) FILE ${TARGET_EXPORT_NAME}.cmake
NAMESPACE Mantid::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
)
...@@ -57,8 +57,11 @@ target_link_libraries(RemoteJobManagers PUBLIC Mantid::Kernel Mantid::API) ...@@ -57,8 +57,11 @@ target_link_libraries(RemoteJobManagers PUBLIC Mantid::Kernel Mantid::API)
add_subdirectory(test) add_subdirectory(test)
# Installation settings # Installation settings
mtd_install_dylib(TARGETS set(TARGET_EXPORT_NAME "MantidRemoteJobManagersTargets")
RemoteJobManagers mtd_install_dylib(TARGETS RemoteJobManagers EXPORT_NAME ${TARGET_EXPORT_NAME} INSTALL_DIRS ${LIB_DIR} ${WORKBENCH_LIB_DIR})
INSTALL_DIRS
${PLUGINS_DIR} install(EXPORT ${TARGET_EXPORT_NAME}
${WORKBENCH_PLUGINS_DIR}) FILE ${TARGET_EXPORT_NAME}.cmake
NAMESPACE Mantid::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/MantidFramework
)
\ No newline at end of file