Skip to content

Commit

Permalink
Install libraries as per GNU Coding Standards
Browse files Browse the repository at this point in the history
Includes GNUInstallDirs and uses LIBDIR (instead of hardcoded lib)
to install libraries.

Fixes packaging on aarch64 systems where LIBDIR=lib64 (not lib).

Signed-off-by: Damian Wrobel <dwrobel@ertelnet.rybnik.pl>
  • Loading branch information
dwrobel committed Sep 14, 2020
1 parent f73fca0 commit 9f2ba8c
Show file tree
Hide file tree
Showing 22 changed files with 27 additions and 25 deletions.
4 changes: 3 additions & 1 deletion CMakeLists.txt
Expand Up @@ -8,6 +8,8 @@ SET(PROJECT_VER_PATCH 0)
SET(PROJECT_VER "${PROJECT_VER_MAJOR}.${PROJECT_VER_MINOR}.${PROJECT_VER_PATCH}")
SET(PROJECT_APIVER "${PROJECT_VER}")

include(GNUInstallDirs)

if(ARM64)
set(BUILD_MMAL FALSE)
set(BUILD_MMAL_APPS FALSE)
Expand Down Expand Up @@ -125,7 +127,7 @@ if(PKG_CONFIG_FOUND)
foreach(PCFILE bcm_host.pc brcmegl.pc brcmglesv2.pc brcmvg.pc vcsm.pc mmal.pc)
configure_file("pkgconfig/${PCFILE}.in" "${PCFILE}" @ONLY)
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${PCFILE}"
DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
DESTINATION "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/pkgconfig")
endforeach()
endif()
# Remove cache entry, if one added by command line
Expand Down
2 changes: 1 addition & 1 deletion containers/CMakeLists.txt
Expand Up @@ -66,7 +66,7 @@ set(packetizers_SRCS ${packetizers_SRCS} ${SOURCE_DIR}/h264/avc1_packetizer.c)

add_library(containers ${LIBRARY_TYPE} ${core_SRCS} ${io_SRCS} ${net_SRCS} ${packetizers_SRCS})
target_link_libraries(containers vcos)
install(TARGETS containers DESTINATION lib)
install(TARGETS containers DESTINATION ${LIBDIR})

set(container_readers)
set(container_writers)
Expand Down
2 changes: 1 addition & 1 deletion helpers/dtoverlay/CMakeLists.txt
Expand Up @@ -22,4 +22,4 @@ add_library (dtovl ${SHARED}

target_link_libraries(dtovl fdt)

install (TARGETS dtovl DESTINATION lib)
install (TARGETS dtovl DESTINATION ${LIBDIR})
2 changes: 1 addition & 1 deletion host_applications/linux/libs/bcm_host/CMakeLists.txt
Expand Up @@ -19,5 +19,5 @@ add_library(bcm_host ${SHARED} bcm_host.c)

target_link_libraries(bcm_host vcos vchostif)

install(TARGETS bcm_host DESTINATION lib)
install(TARGETS bcm_host DESTINATION ${LIBDIR})

4 changes: 2 additions & 2 deletions host_applications/linux/libs/debug_sym/CMakeLists.txt
Expand Up @@ -11,6 +11,6 @@ include_directories (
add_library(debug_sym ${SHARED} debug_sym.c)
add_library(debug_sym_static STATIC debug_sym.c)

install(TARGETS debug_sym DESTINATION lib)
install(TARGETS debug_sym_static DESTINATION lib)
install(TARGETS debug_sym DESTINATION ${LIBDIR})
install(TARGETS debug_sym_static DESTINATION ${LIBDIR})
install(FILES debug_sym.h DESTINATION include/interface/debug_sym)
2 changes: 1 addition & 1 deletion host_applications/linux/libs/sm/CMakeLists.txt
Expand Up @@ -14,5 +14,5 @@ add_library(vcsm ${SHARED} user-vcsm.c)

target_link_libraries(vcsm vcos)

install(TARGETS vcsm DESTINATION lib)
install(TARGETS vcsm DESTINATION ${LIBDIR})
install(FILES user-vcsm.h DESTINATION include/interface/vcsm)
6 changes: 3 additions & 3 deletions interface/khronos/CMakeLists.txt
Expand Up @@ -78,8 +78,8 @@ target_link_libraries(GLESv2 EGL khrn_client vcos)
target_link_libraries(WFC EGL)
target_link_libraries(OpenVG EGL)

install(TARGETS EGL GLESv2 OpenVG WFC khrn_client DESTINATION lib)
install(TARGETS EGL_static GLESv2_static khrn_static DESTINATION lib)
install(TARGETS EGL GLESv2 OpenVG WFC khrn_client DESTINATION ${LIBDIR})
install(TARGETS EGL_static GLESv2_static khrn_static DESTINATION ${LIBDIR})

# recommended names to use to avoid conflicts with mesa libs
add_library(brcmEGL ${SHARED} ${EGL_SOURCE})
Expand All @@ -92,4 +92,4 @@ target_link_libraries(brcmGLESv2 brcmEGL khrn_client vcos)
target_link_libraries(brcmWFC brcmEGL)
target_link_libraries(brcmOpenVG brcmEGL)

install(TARGETS brcmEGL brcmGLESv2 brcmOpenVG brcmWFC DESTINATION lib)
install(TARGETS brcmEGL brcmGLESv2 brcmOpenVG brcmWFC DESTINATION ${LIBDIR})
2 changes: 1 addition & 1 deletion interface/mmal/CMakeLists.txt
Expand Up @@ -16,7 +16,7 @@ add_subdirectory(client)

target_link_libraries(mmal mmal_core mmal_util mmal_vc_client vcos mmal_components)

install(TARGETS mmal DESTINATION lib)
install(TARGETS mmal DESTINATION ${LIBDIR})
install(FILES
mmal.h
mmal_buffer.h
Expand Down
2 changes: 1 addition & 1 deletion interface/mmal/components/CMakeLists.txt
Expand Up @@ -30,5 +30,5 @@ set(container_libs ${container_libs} containers)
target_link_libraries(mmal_components ${container_libs} mmal_util)
target_link_libraries(mmal_components mmal_core)

install(TARGETS mmal_components DESTINATION lib)
install(TARGETS mmal_components DESTINATION ${LIBDIR})

2 changes: 1 addition & 1 deletion interface/mmal/core/CMakeLists.txt
Expand Up @@ -13,7 +13,7 @@ add_library (mmal_core ${LIBRARY_TYPE}

target_link_libraries (mmal_core vcos)

install(TARGETS mmal_core DESTINATION lib)
install(TARGETS mmal_core DESTINATION ${LIBDIR})
install(FILES
mmal_buffer_private.h
mmal_clock_private.h
Expand Down
2 changes: 1 addition & 1 deletion interface/mmal/util/CMakeLists.txt
Expand Up @@ -12,7 +12,7 @@ add_library (mmal_util ${LIBRARY_TYPE}

target_link_libraries (mmal_util vcos)

install(TARGETS mmal_util DESTINATION lib)
install(TARGETS mmal_util DESTINATION ${LIBDIR})
install(FILES
mmal_component_wrapper.h
mmal_connection.h
Expand Down
2 changes: 1 addition & 1 deletion interface/mmal/vc/CMakeLists.txt
Expand Up @@ -13,7 +13,7 @@ endif(BUILD_MMAL_APPS)

include_directories ( ../../../host_applications/linux/libs/sm )

install(TARGETS mmal_vc_client DESTINATION lib)
install(TARGETS mmal_vc_client DESTINATION ${LIBDIR})
install(FILES
mmal_vc_api.h
mmal_vc_api_drm.h
Expand Down
2 changes: 1 addition & 1 deletion interface/vchiq_arm/CMakeLists.txt
Expand Up @@ -5,7 +5,7 @@ add_library(vchiq_arm SHARED
# pull in VCHI cond variable emulation
target_link_libraries(vchiq_arm vcos)

install(TARGETS vchiq_arm DESTINATION lib)
install(TARGETS vchiq_arm DESTINATION ${LIBDIR})
#install(FILES etc/10-vchiq.rules DESTINATION /etc/udev/rules.d)

include_directories(../..)
Expand Down
2 changes: 1 addition & 1 deletion interface/vcos/pthreads/CMakeLists.txt
Expand Up @@ -43,4 +43,4 @@ endif ()


#install(FILES ${HEADERS} DESTINATION include)
install(TARGETS vcos DESTINATION lib)
install(TARGETS vcos DESTINATION ${LIBDIR})
2 changes: 1 addition & 1 deletion interface/vmcs_host/CMakeLists.txt
Expand Up @@ -32,5 +32,5 @@ target_link_libraries(vchostif vchiq_arm vcos)

#target_link_libraries(bufman WFC)

install(TARGETS ${INSTALL_TARGETS} DESTINATION lib)
install(TARGETS ${INSTALL_TARGETS} DESTINATION ${LIBDIR})

2 changes: 1 addition & 1 deletion middleware/openmaxil/CMakeLists.txt
Expand Up @@ -49,4 +49,4 @@ else ()

endif ()

install (TARGETS openmaxil DESTINATION lib)
install (TARGETS openmaxil DESTINATION ${LIBDIR})
2 changes: 1 addition & 1 deletion pkgconfig/bcm_host.pc.in
@@ -1,6 +1,6 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
includedir=${prefix}/include

Name: bcm_host
Expand Down
2 changes: 1 addition & 1 deletion pkgconfig/brcmegl.pc.in
@@ -1,6 +1,6 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
includedir=${prefix}/include

Name: brcmEGL
Expand Down
2 changes: 1 addition & 1 deletion pkgconfig/brcmglesv2.pc.in
@@ -1,6 +1,6 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
includedir=${prefix}/include

Name: brcmGLESv2
Expand Down
2 changes: 1 addition & 1 deletion pkgconfig/brcmvg.pc.in
@@ -1,6 +1,6 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
includedir=${prefix}/include

Name: brcmOpenVG
Expand Down
2 changes: 1 addition & 1 deletion pkgconfig/mmal.pc.in
@@ -1,6 +1,6 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
includedir=${prefix}/include

Name: MMAL
Expand Down
2 changes: 1 addition & 1 deletion pkgconfig/vcsm.pc.in
@@ -1,6 +1,6 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
includedir=${prefix}/include

Name: VCSM
Expand Down

0 comments on commit 9f2ba8c

Please sign in to comment.