Skip to content

Commit

Permalink
Merge pull request #49 from bbc/philipn-mingw64-pkgconf
Browse files Browse the repository at this point in the history
cmake: use gnuinstalldirs and don't limit pkg-config generation
  • Loading branch information
philipnbbc authored Dec 7, 2023
2 parents ffb8098 + aa03608 commit 4f0a5d0
Show file tree
Hide file tree
Showing 15 changed files with 28 additions and 31 deletions.
2 changes: 1 addition & 1 deletion apps/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,4 @@ target_link_libraries(bmxtimecode PRIVATE
include("${PROJECT_SOURCE_DIR}/cmake/source_filename.cmake")
set_source_filename(bmxtimecode "${CMAKE_CURRENT_LIST_DIR}" "bmx")

install(TARGETS bmxtimecode DESTINATION bin)
install(TARGETS bmxtimecode DESTINATION ${CMAKE_INSTALL_BINDIR})
2 changes: 1 addition & 1 deletion apps/bmxparse/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@ target_link_libraries(bmxparse PRIVATE
include("${PROJECT_SOURCE_DIR}/cmake/source_filename.cmake")
set_source_filename(bmxparse "${CMAKE_CURRENT_LIST_DIR}" "bmx")

install(TARGETS bmxparse DESTINATION bin)
install(TARGETS bmxparse DESTINATION ${CMAKE_INSTALL_BINDIR})
2 changes: 1 addition & 1 deletion apps/bmxtranswrap/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,4 @@ target_link_libraries(bmxtranswrap PRIVATE
include("${PROJECT_SOURCE_DIR}/cmake/source_filename.cmake")
set_source_filename(bmxtranswrap "${CMAKE_CURRENT_LIST_DIR}" "bmx")

install(TARGETS bmxtranswrap DESTINATION bin)
install(TARGETS bmxtranswrap DESTINATION ${CMAKE_INSTALL_BINDIR})
2 changes: 1 addition & 1 deletion apps/mxf2raw/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,4 @@ target_link_libraries(mxf2raw PRIVATE
include("${PROJECT_SOURCE_DIR}/cmake/source_filename.cmake")
set_source_filename(mxf2raw "${CMAKE_CURRENT_LIST_DIR}" "bmx")

install(TARGETS mxf2raw DESTINATION bin)
install(TARGETS mxf2raw DESTINATION ${CMAKE_INSTALL_BINDIR})
2 changes: 1 addition & 1 deletion apps/raw2bmx/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,4 @@ target_link_libraries(raw2bmx PRIVATE
include("${PROJECT_SOURCE_DIR}/cmake/source_filename.cmake")
set_source_filename(raw2bmx "${CMAKE_CURRENT_LIST_DIR}" "bmx")

install(TARGETS raw2bmx DESTINATION bin)
install(TARGETS raw2bmx DESTINATION ${CMAKE_INSTALL_BINDIR})
4 changes: 2 additions & 2 deletions bmx.pc.in
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix="${prefix}"
libdir="${prefix}/lib"
includedir="${prefix}/include"
libdir="${prefix}/@CMAKE_INSTALL_LIBDIR@"
includedir="${prefix}/@CMAKE_INSTALL_INCLUDEDIR@"

Name: @PROJECT_NAME@
Description: @CMAKE_PROJECT_DESCRIPTION@
Expand Down
1 change: 1 addition & 0 deletions deps/libMXFpp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ project(libMXF++
LANGUAGES CXX
)

include(GNUInstallDirs) # provides access to ${CMAKE_INSTALL_BINDIR} etc.
include("${CMAKE_CURRENT_LIST_DIR}/cmake/options.cmake")

if(MSVC AND CMP0091_value STREQUAL NEW)
Expand Down
2 changes: 1 addition & 1 deletion deps/libMXFpp/examples/Common/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,4 @@ target_link_libraries(libmxfpp_examples_common PUBLIC
include("${PROJECT_SOURCE_DIR}/cmake/source_filename.cmake")
set_source_filename(libmxfpp_examples_common "${CMAKE_CURRENT_LIST_DIR}" "libMXF++")

install(FILES ${libmxfpp_examples_common_headers} DESTINATION include/libMXF++/examples/Common)
install(FILES ${libmxfpp_examples_common_headers} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libMXF++/examples/Common)
6 changes: 3 additions & 3 deletions deps/libMXFpp/examples/D10MXFOP1AWriter/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,10 @@ include("${PROJECT_SOURCE_DIR}/cmake/source_filename.cmake")
set_source_filename(d10mxfop1awriter "${CMAKE_CURRENT_LIST_DIR}" "libMXF++")

install(TARGETS d10mxfop1awriter
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
install(FILES ${d10mxfop1awriter_headers} DESTINATION include/libMXF++/examples/D10MXFOP1AWriter)
install(FILES ${d10mxfop1awriter_headers} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libMXF++/examples/D10MXFOP1AWriter)


add_executable(test_d10mxfop1awriter
Expand Down
6 changes: 3 additions & 3 deletions deps/libMXFpp/examples/OPAtomReader/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,10 @@ include("${PROJECT_SOURCE_DIR}/cmake/source_filename.cmake")
set_source_filename(opatomreader "${CMAKE_CURRENT_LIST_DIR}" "libMXF++")

install(TARGETS opatomreader
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
install(FILES ${opatomreader_headers} DESTINATION include/libMXF++/examples/OPAtomReader)
install(FILES ${opatomreader_headers} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libMXF++/examples/OPAtomReader)


add_executable(test_opatomreader
Expand Down
4 changes: 2 additions & 2 deletions deps/libMXFpp/libMXF++.pc.in
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix="${prefix}"
libdir="${prefix}/lib"
includedir="${prefix}/include"
libdir="${prefix}/@CMAKE_INSTALL_LIBDIR@"
includedir="${prefix}/@CMAKE_INSTALL_INCLUDEDIR@"

Name: @PROJECT_NAME@
Description: @PROJECT_DESCRIPTION@
Expand Down
12 changes: 5 additions & 7 deletions deps/libMXFpp/libMXF++/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -83,15 +83,13 @@ include("${PROJECT_SOURCE_DIR}/cmake/source_filename.cmake")
set_source_filename(MXFpp "${CMAKE_CURRENT_LIST_DIR}" "libMXF++")

install(TARGETS MXFpp
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
foreach(include_file ${MXFpp_headers})
get_filename_component(dir ${include_file} DIRECTORY)
install(FILES ${include_file} DESTINATION include/libMXF++/${dir})
install(FILES ${include_file} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libMXF++/${dir})
endforeach()

if(UNIX)
configure_file(../${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION lib/pkgconfig)
endif()
configure_file(../${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
2 changes: 1 addition & 1 deletion include/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@ add_subdirectory(bmx)

foreach(include_file ${bmx_headers})
get_filename_component(dir ${include_file} DIRECTORY)
install(FILES ${include_file} DESTINATION "include/${dir}")
install(FILES ${include_file} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${dir}")
endforeach()
10 changes: 4 additions & 6 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -92,12 +92,10 @@ include("${PROJECT_SOURCE_DIR}/cmake/source_filename.cmake")
set_source_filename(bmx "${CMAKE_CURRENT_LIST_DIR}" "bmx")

install(TARGETS bmx
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
# headers are installed in the include/CMakeLists.txt

if(UNIX)
configure_file(../${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION lib/pkgconfig)
endif()
configure_file(../${PROJECT_NAME}.pc.in ${PROJECT_NAME}.pc @ONLY)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
2 changes: 1 addition & 1 deletion tools/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,5 @@ foreach(tool_source ${tool_sources})
include("${PROJECT_SOURCE_DIR}/cmake/source_filename.cmake")
set_source_filename(${tool_target} "${CMAKE_CURRENT_LIST_DIR}" "bmx")

install(TARGETS ${tool_target} DESTINATION bin)
install(TARGETS ${tool_target} DESTINATION ${CMAKE_INSTALL_BINDIR})
endforeach()

0 comments on commit 4f0a5d0

Please sign in to comment.