added photo Meissner library.

This commit is contained in:
suter_a 2018-05-06 16:52:54 +02:00
parent 5384da49e1
commit 5248ad5cf8
4 changed files with 85 additions and 1 deletions

View File

@ -1,8 +1,8 @@
if (ASlibs)
add_subdirectory(Nonlocal)
add_subdirectory(MagProximity)
#[==[
add_subdirectory(libPhotoMeissner)
#[==[
add_subdirectory(libSpinValve)
#]==]
endif (ASlibs)

View File

@ -0,0 +1 @@
add_subdirectory(classes)

View File

@ -0,0 +1,73 @@
# - Photo Meissner library ----------------------------------------------------
#--- generate necessary dictionaries ------------------------------------------
set(MUSRFIT_INC ${CMAKE_SOURCE_DIR}/src/include)
root_generate_dictionary(
PPhotoMeissnerDict
-I${FFTW3_INCLUDE_DIR}
-I${MUSRFIT_INC}
-I${CMAKE_CURRENT_SOURCE_DIR}/../include
PPhotoMeissner.h
LINKDEF ${CMAKE_CURRENT_SOURCE_DIR}/../include/PPhotoMeissnerLinkDef.h
)
root_generate_dictionary(
PStartupHandler_PMDict
-I${CMAKE_CURRENT_SOURCE_DIR}/../include
PStartupHandler_PM.h
LINKDEF ${CMAKE_CURRENT_SOURCE_DIR}/../include/PStartupHandler_PMLinkDef.h
)
#--- create pkg-config info ---------------------------------------------------
set(prefix "${CMAKE_INSTALL_PREFIX}")
set(exec_prefix "\$\{prefix\}")
set(libdir "\$\{exec_prefix\}/lib")
set(includedir "\$\{prefix\}/include")
set(P_PHOTO_MEISSNER_VERSION "1.0.0")
set(P_PHOTO_MEISSNER_LIBRARY_NAME "PPhotoMeissner")
configure_file("PPhotoMeissner.pc.in" "PPhotoMeissner.pc" @ONLY)
#--- lib creation -------------------------------------------------------------
add_library(PPhotoMeissner SHARED
PPhotoMeissner.cpp
PPhotoMeissnerDict.cxx
PStartupHandler_PM.cpp
PStartupHandler_PMDict.cxx
)
#--- make sure that the include directory is found ----------------------------
target_include_directories(
PPhotoMeissner BEFORE PRIVATE
$<BUILD_INTERFACE:${FFTW3_INCLUDE_DIR}>
$<BUILD_INTERFACE:${MUSRFIT_INC}>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include>
)
#--- add library dependencies -------------------------------------------------
target_link_libraries(PPhotoMeissner ${FFTW3_LIBRARY} ${ROOT_LIBRARIES} PUserFcnBase)
#--- install PPhotoMeissner solib ---------------------------------------------
install(TARGETS PPhotoMeissner DESTINATION lib)
#--- install root pcm's and rootmaps ------------------------------------------
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/libPPhotoMeissnerDict_rdict.pcm
${CMAKE_CURRENT_BINARY_DIR}/libPPhotoMeissnerDict.rootmap
${CMAKE_CURRENT_BINARY_DIR}/libPStartupHandler_PMDict_rdict.pcm
${CMAKE_CURRENT_BINARY_DIR}/libPStartupHandler_PMDict.rootmap
DESTINATION lib
)
#--- install PPhotoMeissner header --------------------------------------------
install(
FILES
${CMAKE_CURRENT_SOURCE_DIR}/../include/PPhotoMeissner.h
${CMAKE_CURRENT_SOURCE_DIR}/../include/PStartupHandler_PM.h
DESTINATION
include
)
#--- install pkg-config info --------------------------------------------------
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/PPhotoMeissner.pc
DESTINATION lib/pkgconfig
)

View File

@ -0,0 +1,10 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
Name: PPhotoMeissner
Description: C++ shared library providing the photo Meissner fitter class
Version: @P_PHOTO_MEISSNER_VERSION@
Libs: -L${libdir} -l@P_PHOTO_MEISSNER_LIBRARY_NAME@
Cflags: -I${includedir}