detect-install-dirs.cmake 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. # detect-install-dirs.cmake -- Detect install directory parameters
  2. # Copyright (C) 2021 Hans Kristian Rosbach
  3. # Licensed under the Zlib license, see LICENSE.md for details
  4. # Determine installation directory for executables
  5. if (DEFINED BIN_INSTALL_DIR)
  6. set(BIN_INSTALL_DIR "${BIN_INSTALL_DIR}" CACHE PATH "Installation directory for executables (Deprecated)" FORCE)
  7. set(CMAKE_INSTALL_BINDIR "${BIN_INSTALL_DIR}")
  8. elseif (DEFINED INSTALL_BIN_DIR)
  9. set(CMAKE_INSTALL_BINDIR "${INSTALL_BIN_DIR}")
  10. endif()
  11. # Determine installation directory for libraries
  12. if (DEFINED LIB_INSTALL_DIR)
  13. set(LIB_INSTALL_DIR "${LIB_INSTALL_DIR}" CACHE PATH "Installation directory for libraries (Deprecated)" FORCE)
  14. set(CMAKE_INSTALL_LIBDIR "${LIB_INSTALL_DIR}")
  15. elseif (DEFINED INSTALL_LIB_DIR)
  16. set(CMAKE_INSTALL_LIBDIR "${INSTALL_LIB_DIR}")
  17. endif()
  18. # Determine installation directory for include files
  19. if (DEFINED INC_INSTALL_DIR)
  20. set(INC_INSTALL_DIR "${INC_INSTALL_DIR}" CACHE PATH "Installation directory for headers (Deprecated)" FORCE)
  21. set(CMAKE_INSTALL_INCLUDEDIR "${INC_INSTALL_DIR}")
  22. elseif (DEFINED INSTALL_INC_DIR)
  23. set(CMAKE_INSTALL_INCLUDEDIR "${INSTALL_INC_DIR}")
  24. endif()
  25. # Define GNU standard installation directories
  26. include(GNUInstallDirs)
  27. # Determine installation directory for pkgconfig files
  28. if (DEFINED PKGCONFIG_INSTALL_DIR)
  29. set(PKGCONFIG_INSTALL_DIR "${PKGCONFIG_INSTALL_DIR}" CACHE PATH "Installation directory for pkgconfig (.pc) files" FORCE)
  30. elseif (DEFINED INSTALL_PKGCONFIG_DIR)
  31. set(PKGCONFIG_INSTALL_DIR "${INSTALL_PKGCONFIG_DIR}" CACHE PATH "Installation directory for pkgconfig (.pc) files" FORCE)
  32. elseif (DEFINED CMAKE_INSTALL_PKGCONFIGDIR)
  33. set(PKGCONFIG_INSTALL_DIR "${CMAKE_INSTALL_PKGCONFIGDIR}" CACHE PATH "Installation directory for pkgconfig (.pc) files" FORCE)
  34. elseif (DEFINED CMAKE_INSTALL_FULL_PKGCONFIGDIR)
  35. set(PKGCONFIG_INSTALL_DIR "${CMAKE_INSTALL_FULL_PKGCONFIGDIR}" CACHE PATH "Installation directory for pkgconfig (.pc) files" FORCE)
  36. else()
  37. set(PKGCONFIG_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/pkgconfig" CACHE PATH "Installation directory for pkgconfig (.pc) files")
  38. endif()