aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt12
-rw-r--r--src/app/CMakeLists.txt18
-rw-r--r--src/plugins/General/kdenotify/CMakeLists.txt4
-rw-r--r--src/plugins/Ui/skinned/CMakeLists.txt2
-rw-r--r--src/qmmp/CMakeLists.txt17
-rw-r--r--src/qmmp/qmmp.pc.in2
-rw-r--r--src/qmmpui/CMakeLists.txt17
-rw-r--r--src/qmmpui/qmmpui.pc.in2
8 files changed, 35 insertions, 39 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index aad515c96..3807d00be 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -20,6 +20,9 @@ ENDIF()
#Qt5 modules
SET(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} /opt/qt56/lib/cmake)
+#installation paths
+include(GNUInstallDirs)
+
#extract version from qmmp.h
FILE(STRINGS "${CMAKE_CURRENT_SOURCE_DIR}/src/qmmp/qmmp.h"
QMMP_VERSION_DATA REGEX "^#define[ \t]+QMMP_VERSION_[A-Z]+[ \t]+[0-9]+.*$")
@@ -81,14 +84,7 @@ ENDIF(SVN_VERSION)
get_target_property(QT_LIBRARY_DIR Qt5::Core LOCATION)
get_filename_component(QT_LIBRARY_DIR ${QT_LIBRARY_DIR} PATH)
-IF(NOT LIB_SUFFIX)
-IF("${QT_LIBRARY_DIR}" MATCHES lib64)
-set(LIB_SUFFIX 64)
-ENDIF("${QT_LIBRARY_DIR}" MATCHES lib64)
-ENDIF(NOT LIB_SUFFIX)
-
-SET(LIB_DIR "lib${LIB_SUFFIX}" CACHE STRING "library path")
-SET(PLUGIN_DIR "${LIB_DIR}/qmmp-${QMMP_VERSION_MAJOR}.${QMMP_VERSION_MINOR}" CACHE STRING "plugin path")
+SET(PLUGIN_DIR "${CMAKE_INSTALL_LIBDIR}/qmmp-${QMMP_VERSION_MAJOR}.${QMMP_VERSION_MINOR}" CACHE STRING "plugin path")
SET(USE_SKINNED TRUE CACHE BOOL "enable/disable standard skinned user interface")
SET(USE_DIR_ASSOC TRUE CACHE BOOL "enable/disable inode/directory mime type association")
#SET(APP_NAME_SUFFIX "-1")
diff --git a/src/app/CMakeLists.txt b/src/app/CMakeLists.txt
index f752e2483..bebe9779d 100644
--- a/src/app/CMakeLists.txt
+++ b/src/app/CMakeLists.txt
@@ -35,15 +35,15 @@ target_link_libraries(qmmp Qt5::Widgets libqmmp libqmmpui)
SET_TARGET_PROPERTIES(qmmp PROPERTIES OUTPUT_NAME qmmp${APP_NAME_SUFFIX})
add_dependencies(qmmp libqmmpui libqmmp)
-install(TARGETS qmmp DESTINATION bin)
-install(FILES qmmp.desktop DESTINATION share/applications)
-install(FILES qmmp${APP_NAME_SUFFIX}.desktop DESTINATION share/applications)
-install(FILES images/16x16/qmmp${APP_NAME_SUFFIX}.png DESTINATION share/icons/hicolor/16x16/apps)
-install(FILES images/32x32/qmmp${APP_NAME_SUFFIX}.png DESTINATION share/icons/hicolor/32x32/apps)
-install(FILES images/48x48/qmmp${APP_NAME_SUFFIX}.png DESTINATION share/icons/hicolor/48x48/apps)
-install(FILES images/scalable/qmmp${APP_NAME_SUFFIX}.svgz images/scalable/qmmp-simple${APP_NAME_SUFFIX}.svgz DESTINATION share/icons/hicolor/scalable/apps)
+install(TARGETS qmmp DESTINATION ${CMAKE_INSTALL_BINDIR})
+install(FILES qmmp.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
+install(FILES qmmp${APP_NAME_SUFFIX}.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
+install(FILES images/16x16/qmmp${APP_NAME_SUFFIX}.png DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/16x16/apps)
+install(FILES images/32x32/qmmp${APP_NAME_SUFFIX}.png DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/32x32/apps)
+install(FILES images/48x48/qmmp${APP_NAME_SUFFIX}.png DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/48x48/apps)
+install(FILES images/scalable/qmmp${APP_NAME_SUFFIX}.svgz images/scalable/qmmp-simple${APP_NAME_SUFFIX}.svgz DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/scalable/apps)
IF(USE_DIR_ASSOC)
- install(FILES qmmp-enqueue${APP_NAME_SUFFIX}.desktop DESTINATION share/applications)
- install(FILES qmmp-dir${APP_NAME_SUFFIX}.desktop DESTINATION share/applications)
+ install(FILES qmmp-enqueue${APP_NAME_SUFFIX}.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
+ install(FILES qmmp-dir${APP_NAME_SUFFIX}.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
ENDIF(USE_DIR_ASSOC)
diff --git a/src/plugins/General/kdenotify/CMakeLists.txt b/src/plugins/General/kdenotify/CMakeLists.txt
index c61cb35cc..7aa9e20df 100644
--- a/src/plugins/General/kdenotify/CMakeLists.txt
+++ b/src/plugins/General/kdenotify/CMakeLists.txt
@@ -36,5 +36,5 @@ SET_TARGET_PROPERTIES(kdenotify PROPERTIES COMPILE_DEFINITIONS "${libkdenotify_D
add_dependencies(kdenotify libqmmpui)
target_link_libraries(kdenotify Qt5::Widgets Qt5::DBus libqmmpui libqmmp)
install(TARGETS kdenotify DESTINATION ${PLUGIN_DIR}/General)
-install(FILES images/empty_cover.png DESTINATION share/qmmp${APP_NAME_SUFFIX}/images)
-install(FILES images/app_icon.png DESTINATION share/qmmp${APP_NAME_SUFFIX}/images)
+install(FILES images/empty_cover.png DESTINATION ${CMAKE_INSTALL_DATADIR}/qmmp${APP_NAME_SUFFIX}/images)
+install(FILES images/app_icon.png DESTINATION ${CMAKE_INSTALL_DATADIR}/qmmp${APP_NAME_SUFFIX}/images)
diff --git a/src/plugins/Ui/skinned/CMakeLists.txt b/src/plugins/Ui/skinned/CMakeLists.txt
index 176d8c198..fe0756103 100644
--- a/src/plugins/Ui/skinned/CMakeLists.txt
+++ b/src/plugins/Ui/skinned/CMakeLists.txt
@@ -103,5 +103,5 @@ SET_TARGET_PROPERTIES(skinned PROPERTIES COMPILE_DEFINITIONS "${libskinned_DEFIN
add_dependencies(skinned libqmmpui libqmmp)
target_link_libraries(skinned Qt5::Widgets Qt5::X11Extras libqmmpui libqmmp ${X11_LDFLAGS})
install(TARGETS skinned DESTINATION ${PLUGIN_DIR}/Ui)
-install(FILES scripts/kwin.sh DESTINATION share/qmmp${APP_NAME_SUFFIX}/scripts)
+install(FILES scripts/kwin.sh DESTINATION ${CMAKE_INSTALL_DATADIR}/qmmp${APP_NAME_SUFFIX}/scripts)
ENDIF(X11_FOUND)
diff --git a/src/qmmp/CMakeLists.txt b/src/qmmp/CMakeLists.txt
index 3e868ce18..0c5fb1cc6 100644
--- a/src/qmmp/CMakeLists.txt
+++ b/src/qmmp/CMakeLists.txt
@@ -135,18 +135,17 @@ ADD_LIBRARY(libqmmp SHARED ${libqmmp_SRCS} ${libqmmp_HDRS})
target_link_libraries(libqmmp Qt5::Widgets)
SET_TARGET_PROPERTIES(libqmmp PROPERTIES VERSION ${QMMP_VERSION} SOVERSION ${QMMP_SOVERSION} OUTPUT_NAME qmmp${APP_NAME_SUFFIX})
target_compile_definitions(libqmmp PRIVATE ${libqmmp_DEFINES})
-install(TARGETS libqmmp LIBRARY DESTINATION ${LIB_DIR}
- RUNTIME DESTINATION bin
- ARCHIVE DESTINATION ${LIB_DIR})
-install(FILES ${libqmmp_DEVEL_HDRS} DESTINATION include/qmmp)
+install(TARGETS libqmmp LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
IF(APP_NAME_SUFFIX)
- install(FILES ${libqmmp_DEVEL_HDRS} DESTINATION include/qmmp${APP_NAME_SUFFIX}/qmmp)
- SET(QMMP_INCLUDE_DIR ${CMAKE_INSTALL_PREFIX}/include/qmmp${APP_NAME_SUFFIX})
+ install(FILES ${libqmmp_DEVEL_HDRS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/qmmp${APP_NAME_SUFFIX}/qmmp)
+ SET(QMMP_INCLUDE_DIR ${CMAKE_INSTALL_FULL_INCLUDEDIR}/qmmp${APP_NAME_SUFFIX})
ELSE()
- install(FILES ${libqmmp_DEVEL_HDRS} DESTINATION include/qmmp)
- SET(QMMP_INCLUDE_DIR ${CMAKE_INSTALL_PREFIX}/include)
+ install(FILES ${libqmmp_DEVEL_HDRS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/qmmp)
+ SET(QMMP_INCLUDE_DIR ${CMAKE_INSTALL_FULL_INCLUDEDIR})
ENDIF()
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/qmmp.pc.in ${CMAKE_CURRENT_BINARY_DIR}/qmmp${APP_NAME_SUFFIX}.pc @ONLY)
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/qmmp${APP_NAME_SUFFIX}.pc DESTINATION ${LIB_DIR}/pkgconfig)
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/qmmp${APP_NAME_SUFFIX}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
diff --git a/src/qmmp/qmmp.pc.in b/src/qmmp/qmmp.pc.in
index be11ca7e3..ae8e1af12 100644
--- a/src/qmmp/qmmp.pc.in
+++ b/src/qmmp/qmmp.pc.in
@@ -1,6 +1,6 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=@CMAKE_INSTALL_PREFIX@
-libdir=@CMAKE_INSTALL_PREFIX@/@LIB_DIR@
+libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@
includedir=@QMMP_INCLUDE_DIR@
Name: qmmp@APP_NAME_SUFFIX@
diff --git a/src/qmmpui/CMakeLists.txt b/src/qmmpui/CMakeLists.txt
index 87e2d5b9a..164d2e8df 100644
--- a/src/qmmpui/CMakeLists.txt
+++ b/src/qmmpui/CMakeLists.txt
@@ -138,17 +138,18 @@ target_link_libraries(libqmmpui Qt5::Widgets Qt5::Network libqmmp)
add_dependencies(libqmmpui libqmmp)
SET_TARGET_PROPERTIES(libqmmpui PROPERTIES VERSION ${QMMP_VERSION} SOVERSION ${QMMP_SOVERSION} OUTPUT_NAME qmmpui${APP_NAME_SUFFIX})
SET_TARGET_PROPERTIES(libqmmpui PROPERTIES COMPILE_DEFINITIONS "${libqmmpui_DEFINES}")
-install(TARGETS libqmmpui LIBRARY DESTINATION ${LIB_DIR}
- RUNTIME DESTINATION bin
- ARCHIVE DESTINATION ${LIB_DIR})
+install(TARGETS libqmmpui LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
IF(APP_NAME_SUFFIX)
- install(FILES ${libqmmpui_DEVEL_HDRS} DESTINATION include/qmmp${APP_NAME_SUFFIX}/qmmpui)
- SET(QMMP_INCLUDE_DIR ${CMAKE_INSTALL_PREFIX}/include/qmmp${APP_NAME_SUFFIX})
+ install(FILES ${libqmmpui_DEVEL_HDRS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/qmmp${APP_NAME_SUFFIX}/qmmpui)
+ SET(QMMP_INCLUDE_DIR ${CMAKE_INSTALL_FULL_INCLUDEDIR}/qmmp${APP_NAME_SUFFIX})
ELSE()
- install(FILES ${libqmmpui_DEVEL_HDRS} DESTINATION include/qmmpui)
- SET(QMMP_INCLUDE_DIR ${CMAKE_INSTALL_PREFIX}/include)
+ install(FILES ${libqmmpui_DEVEL_HDRS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/qmmpui)
+ SET(QMMP_INCLUDE_DIR ${CMAKE_INSTALL_FULL_INCLUDEDIR})
ENDIF()
+
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/qmmpui.pc.in ${CMAKE_CURRENT_BINARY_DIR}/qmmpui${APP_NAME_SUFFIX}.pc @ONLY)
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/qmmpui${APP_NAME_SUFFIX}.pc DESTINATION ${LIB_DIR}/pkgconfig)
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/qmmpui${APP_NAME_SUFFIX}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
diff --git a/src/qmmpui/qmmpui.pc.in b/src/qmmpui/qmmpui.pc.in
index af1902f71..f4e9e4d0e 100644
--- a/src/qmmpui/qmmpui.pc.in
+++ b/src/qmmpui/qmmpui.pc.in
@@ -1,6 +1,6 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=@CMAKE_INSTALL_PREFIX@
-libdir=@CMAKE_INSTALL_PREFIX@/@LIB_DIR@
+libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@
includedir=@QMMP_INCLUDE_DIR@
Name: qmmpui@APP_NAME_SUFFIX@