File qcdloop-soversion.patch of Package qcdloop
Index: qcdloop-2.0.9/CMakeLists.txt
===================================================================
--- qcdloop-2.0.9.orig/CMakeLists.txt
+++ qcdloop-2.0.9/CMakeLists.txt
@@ -14,19 +14,22 @@ if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CO
"MinSizeRel" "RelWithDebInfo")
endif()
-project(qcdloop)
+project(qcdloop VERSION 2.0.9)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
-set(VERSION "\"2.0.9\"")
+set(VERSION "\"${PROJECT_VERSION}\"")
set(CMAKE_CXX_FLAGS "-Wall -Wextra -march=nocona -mtune=haswell -fvisibility-inlines-hidden -fmessage-length=0 -ftree-vectorize -fPIC -fstack-protector-strong -O2 -pipe -fext-numeric-literals")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fsanitize=address -fPIC ${CMAKE_CXX_FLAGS}" CACHE STRING "debug compile flags" FORCE)
set(CMAKE_EXE_LINKER_FLAGS_DEBUG "-fsanitize=address" CACHE STRING "debug linker flags" FORCE)
+
+include(GNUInstallDirs)
+
set(prefix ${CMAKE_INSTALL_PREFIX})
set(exec_prefix "${prefix}")
set(includedir "${prefix}/include")
-set(libdir "${prefix}/lib")
+set(libdir ${CMAKE_INSTALL_FULL_LIBDIR})
configure_file(
"${PROJECT_SOURCE_DIR}/src/qcdloop/config.h.in"
@@ -87,12 +90,14 @@ add_library(qcdloop SHARED src/box.cc
)
target_link_libraries(qcdloop quadmath)
+set_target_properties(qcdloop PROPERTIES VERSION ${PROJECT_VERSION})
+set_target_properties(qcdloop PROPERTIES SOVERSION ${PROJECT_VERSION_MAJOR})
install(FILES ${CMAKE_BINARY_DIR}/src/qcdloop-config
DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ
GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
-install(FILES ${PROJECT_SOURCE_DIR}/src/qcdloop.pc DESTINATION lib/pkgconfig)
+install(FILES ${PROJECT_SOURCE_DIR}/src/qcdloop.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
install(DIRECTORY src/qcdloop DESTINATION include)
-install(TARGETS qcdloop DESTINATION lib)
+install(TARGETS qcdloop LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
# enable disable fortran/wrapper (to avoid name conflicts with ql1.x)
option(ENABLE_FORTRAN_WRAPPER "Enable fortran wrapper" ON)
Index: qcdloop-2.0.9/src/qcdloop.pc.in
===================================================================
--- qcdloop-2.0.9.orig/src/qcdloop.pc.in
+++ qcdloop-2.0.9/src/qcdloop.pc.in
@@ -5,6 +5,6 @@ libdir=@libdir@
Name: nnpdf
Description: The qcdloop library
-Version: @VERSION@
+Version: @PROJECT_VERSION@
Cflags: -I@includedir@ -std=c++11
Libs: -L@libdir@ -lqcdloop