]> git.pld-linux.org Git - packages/taglib.git/blob - pc.patch
noarch examples
[packages/taglib.git] / pc.patch
1 From a27ce770db14fcc4dcb971f2122b9ede64c6298d Mon Sep 17 00:00:00 2001
2 From: Jan Palus <jpalus@fastmail.com>
3 Date: Fri, 29 Sep 2023 21:36:12 +0200
4 Subject: [PATCH] cmake: support both relative and absolute paths for pc files
5
6 cmake supports both absolute and relative to prefix install dirs. #1071
7 effectively mandated relative paths only. check if install dir is
8 relative or absolute and either include ${prefix} in pc file or not
9
10 Fixes #1098
11 ---
12  CMakeLists.txt               | 10 ++++++++++
13  bindings/c/CMakeLists.txt    | 10 ++++++++++
14  bindings/c/taglib_c.pc.cmake |  4 ++--
15  taglib.pc.cmake              |  4 ++--
16  4 files changed, 24 insertions(+), 4 deletions(-)
17
18 diff --git a/CMakeLists.txt b/CMakeLists.txt
19 index b2393290..e330b690 100644
20 --- a/CMakeLists.txt
21 +++ b/CMakeLists.txt
22 @@ -119,6 +119,16 @@ if(WIN32)
23  endif()
24  
25  if(NOT BUILD_FRAMEWORK)
26 +  if (IS_ABSOLUTE ${CMAKE_INSTALL_INCLUDEDIR})
27 +    set(CMAKE_PC_INCLUDEDIR ${CMAKE_INSTALL_INCLUDEDIR})
28 +  else()
29 +    set(CMAKE_PC_INCLUDEDIR "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
30 +  endif()
31 +  if (IS_ABSOLUTE ${CMAKE_INSTALL_LIBDIR})
32 +    set(CMAKE_PC_LIBDIR ${CMAKE_INSTALL_LIBDIR})
33 +  else()
34 +    set(CMAKE_PC_LIBDIR "\${prefix}/${CMAKE_INSTALL_LIBDIR}")
35 +  endif()
36    configure_file("${CMAKE_CURRENT_SOURCE_DIR}/taglib.pc.cmake" "${CMAKE_CURRENT_BINARY_DIR}/taglib.pc" @ONLY)
37    install(FILES "${CMAKE_CURRENT_BINARY_DIR}/taglib.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
38  endif()
39 diff --git a/bindings/c/CMakeLists.txt b/bindings/c/CMakeLists.txt
40 index d947aa4a..b24c9dca 100644
41 --- a/bindings/c/CMakeLists.txt
42 +++ b/bindings/c/CMakeLists.txt
43 @@ -69,6 +69,16 @@ install(TARGETS tag_c
44  )
45  
46  if(NOT BUILD_FRAMEWORK)
47 +       if (IS_ABSOLUTE ${CMAKE_INSTALL_INCLUDEDIR})
48 +               set(CMAKE_PC_INCLUDEDIR ${CMAKE_INSTALL_INCLUDEDIR})
49 +       else()
50 +               set(CMAKE_PC_INCLUDEDIR "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
51 +       endif()
52 +       if (IS_ABSOLUTE ${CMAKE_INSTALL_LIBDIR})
53 +               set(CMAKE_PC_LIBDIR ${CMAKE_INSTALL_LIBDIR})
54 +       else()
55 +               set(CMAKE_PC_LIBDIR "\${prefix}/${CMAKE_INSTALL_LIBDIR}")
56 +       endif()
57         configure_file(${CMAKE_CURRENT_SOURCE_DIR}/taglib_c.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/taglib_c.pc @ONLY)
58         install(FILES ${CMAKE_CURRENT_BINARY_DIR}/taglib_c.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
59  endif()
60 diff --git a/bindings/c/taglib_c.pc.cmake b/bindings/c/taglib_c.pc.cmake
61 index 178f1e50..b3b4b2ac 100644
62 --- a/bindings/c/taglib_c.pc.cmake
63 +++ b/bindings/c/taglib_c.pc.cmake
64 @@ -1,7 +1,7 @@
65  prefix=@CMAKE_INSTALL_PREFIX@
66  exec_prefix=${prefix}
67 -libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
68 -includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
69 +libdir=@CMAKE_PC_LIBDIR@
70 +includedir=@CMAKE_PC_INCLUDEDIR@
71  
72  Name: TagLib C Bindings
73  Description: Audio meta-data library (C bindings)
74 diff --git a/taglib.pc.cmake b/taglib.pc.cmake
75 index 3800f078..1f1c9fdb 100644
76 --- a/taglib.pc.cmake
77 +++ b/taglib.pc.cmake
78 @@ -1,7 +1,7 @@
79  prefix=@CMAKE_INSTALL_PREFIX@
80  exec_prefix=${prefix}
81 -libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
82 -includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
83 +libdir=@CMAKE_PC_LIBDIR@
84 +includedir=@CMAKE_PC_INCLUDEDIR@
85  
86  Name: TagLib
87  Description: Audio meta-data library
88 -- 
89 2.42.0
90
This page took 0.032035 seconds and 3 git commands to generate.