Skip to content

Commit 2cfda62

Browse files
authored
Merge pull request #959 from dguglielmi/pkgconfig-support
Add pkg-config support to build with Bento4
2 parents 8365144 + 84d2c72 commit 2cfda62

File tree

2 files changed

+26
-1
lines changed

2 files changed

+26
-1
lines changed

Build/pkgconfig/bento4.pc.in

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
prefix=@CMAKE_INSTALL_PREFIX@
2+
includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
3+
libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
4+
5+
Name: @PROJECT_NAME@
6+
Description: Full-featured MP4 format, MPEG DASH, HLS, CMAF SDK and tools
7+
Version: @BENTO4_VERSION@
8+
Libs: -L${libdir} -lap4
9+
Cflags: -I${includedir}/bento4

CMakeLists.txt

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,12 @@ file(GLOB AP4_HEADERS
7171
${SOURCE_METADATA}/*.h
7272
)
7373

74-
add_library(ap4 STATIC ${AP4_SOURCES})
74+
option(BUILD_SHARED_LIBRARY "Build as a shared library" OFF)
75+
if(BUILD_SHARED_LIBRARY)
76+
add_library(ap4 SHARED ${AP4_SOURCES})
77+
else()
78+
add_library(ap4 STATIC ${AP4_SOURCES})
79+
endif()
7580
target_include_directories(ap4 PUBLIC
7681
${AP4_INCLUDE_DIRS}
7782
)
@@ -119,6 +124,12 @@ configure_package_config_file(
119124
INSTALL_DESTINATION "${config_install_dir}"
120125
)
121126

127+
configure_file(
128+
"Build/pkgconfig/bento4.pc.in"
129+
"${generated_dir}/bento4.pc"
130+
@ONLY
131+
)
132+
122133
install(
123134
TARGETS ap4 ${BENTO4_APPS_LOWERCASE}
124135
EXPORT "${TARGETS_EXPORT_NAME}"
@@ -138,6 +149,11 @@ install(
138149
DESTINATION "${config_install_dir}"
139150
)
140151

152+
install(
153+
FILES "${generated_dir}/bento4.pc"
154+
DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig"
155+
)
156+
141157
install(
142158
EXPORT "${TARGETS_EXPORT_NAME}"
143159
NAMESPACE "${namespace}"

0 commit comments

Comments
 (0)