File uvg266-add_library_version.patch of Package uvg266

85
 
1
Index: uvg266-0.4.1/CMakeLists.txt
2
===================================================================
3
--- uvg266-0.4.1.orig/CMakeLists.txt
4
+++ uvg266-0.4.1/CMakeLists.txt
5
@@ -128,9 +128,8 @@ if(MSVC)
6
 endif()
7
 
8
 if(BUILD_SHARED_LIBS)
9
-  list( APPEND CMAKE_INSTALL_RPATH "${UVG266_INSTALL_LIBDIR}" "./" "../lib" )
10
-  set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
11
-  add_library(uvg266 SHARED ${LIB_SOURCES})
12
+  set(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)
13
+  add_library(uvg266-__VERSION__ SHARED ${LIB_SOURCES})
14
 else()
15
   add_library(uvg266 STATIC ${LIB_SOURCES})
16
   if(MSVC) # Fix a linking problem with visual studio when the library is the same name as the binary
17
@@ -139,9 +138,9 @@ else()
18
   
19
 endif()
20
 
21
-target_include_directories(uvg266 PUBLIC src)
22
-target_include_directories(uvg266 PUBLIC src/extras)
23
-target_include_directories(uvg266 PUBLIC src/strategies)
24
+target_include_directories(uvg266-__VERSION__ PUBLIC src)
25
+target_include_directories(uvg266-__VERSION__ PUBLIC src/extras)
26
+target_include_directories(uvg266-__VERSION__ PUBLIC src/strategies)
27
 
28
 file(GLOB LIB_SOURCES_STRATEGIES_AVX2 RELATIVE ${PROJECT_SOURCE_DIR} "src/strategies/avx2/*.c")
29
 file(GLOB LIB_SOURCES_STRATEGIES_SSE41 RELATIVE ${PROJECT_SOURCE_DIR} "src/strategies/sse41/*.c")
30
@@ -162,7 +161,7 @@ endif()
31
 
32
 add_executable(uvg266-bin ${CLI_SOURCES})
33
 
34
-target_link_libraries(uvg266-bin PUBLIC uvg266)
35
+target_link_libraries(uvg266-bin PUBLIC uvg266-__VERSION__)
36
 
37
 set_target_properties(uvg266-bin PROPERTIES OUTPUT_NAME uvg266)
38
 set_target_properties(uvg266-bin PROPERTIES RUNTIME_OUTPUT_NAME uvg266)
39
@@ -179,7 +178,7 @@ else()
40
   endif()
41
   set(THREADS_PREFER_PTHREAD_FLAG ON)
42
   find_package(Threads REQUIRED)
43
-  target_link_libraries(uvg266 PUBLIC Threads::Threads)
44
+  target_link_libraries(uvg266-__VERSION__ PUBLIC Threads::Threads)
45
 
46
   include(CheckLibraryExists)
47
 
48
@@ -189,7 +188,7 @@ else()
49
       set(EXTRA_LIBS ${EXTRA_LIBS} m)
50
   endif (HAVE_LIB_M)
51
 
52
-  target_link_libraries(uvg266 PUBLIC ${EXTRA_LIBS})
53
+  target_link_libraries(uvg266-__VERSION__ PUBLIC ${EXTRA_LIBS})
54
   target_link_libraries(uvg266-bin PUBLIC ${EXTRA_LIBS})
55
 endif()
56
 
57
@@ -239,7 +238,7 @@ source_group( "" FILES ${SOURCE_GROUP_TO
58
 
59
 install(FILES ${PROJECT_SOURCE_DIR}/src/uvg266.pc DESTINATION ${UVG266_INSTALL_LIBDIR}/pkgconfig)
60
 install(TARGETS uvg266-bin DESTINATION ${UVG266_INSTALL_BINDIR})
61
-install(TARGETS uvg266 ARCHIVE DESTINATION "${UVG266_INSTALL_LIBDIR}" LIBRARY DESTINATION "${UVG266_INSTALL_LIBDIR}" RUNTIME DESTINATION "${UVG266_INSTALL_BINDIR}")
62
+install(TARGETS uvg266-__VERSION__ ARCHIVE DESTINATION "${UVG266_INSTALL_LIBDIR}" LIBRARY DESTINATION "${UVG266_INSTALL_LIBDIR}" RUNTIME DESTINATION "${UVG266_INSTALL_BINDIR}")
63
 install(FILES ${PROJECT_SOURCE_DIR}/src/uvg266.h DESTINATION ${UVG266_INSTALL_INCLUDEDIR})
64
 install(FILES ${PROJECT_SOURCE_DIR}/doc/uvg266.1 DESTINATION ${UVG266_INSTALL_MANDIR})
65
 
66
Index: uvg266-0.4.1/src/uvg266.pc.in
67
===================================================================
68
--- uvg266-0.4.1.orig/src/uvg266.pc.in
69
+++ uvg266-0.4.1/src/uvg266.pc.in
70
@@ -1,12 +1,12 @@
71
 prefix=@CMAKE_INSTALL_PREFIX@
72
 exec_prefix=${prefix}
73
-libdir=${prefix}/lib
74
+libdir=${prefix}/lib@LIB_SUFFIX@
75
 incdir=${prefix}/include
76
 
77
 Name: libuvg266
78
 Description: @CMAKE_PROJECT_DESCRIPTION@
79
 URL: @CMAKE_PROJECT_HOMEPAGE_URL@
80
 Version: @PROJECT_VERSION@
81
-Libs: -L${libdir} -luvg266
82
+Libs: -L${libdir} -luvg266-__VERSION__
83
 Libs.private: @LIBS@
84
 Cflags: -I${incdir}
85