From 7afed092865906695ecaa04eb1535cf2373ae2a3 Mon Sep 17 00:00:00 2001 From: theraven Date: Thu, 13 Dec 2012 16:30:50 +0000 Subject: [PATCH] Change how installation location is detected, as per Quentin's suggestion. --- CMakeLists.txt | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 00414db..6458cd4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -188,31 +188,35 @@ endif () # -set(GNUSTEP_LOCAL_ROOT "$ENV{GNUSTEP_LOCAL_ROOT}") -set(GNUSTEP_SYSTEM_ROOT "$ENV{GNUSTEP_SYSTEM_ROOT}") +EXEC_PROGRAM(gnustep-config + ARGS "--installation-domain-for=libobjc2" + OUTPUT_VARIABLE DEFAULT_INSTALL_TYPE) + + # If we have GNUstep environment variables, then default to installing in the # GNUstep local environment. -if (GNUSTEP_LOCAL_ROOT) - set(DEFAULT_INSTALL_TYPE "Local") +if (DEFAULT_INSTALL_TYPE) else () - set(DEFAULT_INSTALL_TYPE "None") + set(DEFAULT_INSTALL_TYPE "NONE") endif () set(GNUSTEP_INSTALL_TYPE ${DEFAULT_INSTALL_TYPE} CACHE STRING - "GNUstep installation type. Options are None, System or Local.") - -if (${GNUSTEP_INSTALL_TYPE} STREQUAL "System") - SET(LIB_INSTALL_PATH "${GNUSTEP_SYSTEM_ROOT}/Library/Libraries") - SET(HEADER_INSTALL_PATH "${GNUSTEP_SYSTEM_ROOT}/Library/Headers/objc") -elseif (${GNUSTEP_INSTALL_TYPE} STREQUAL "Local") - SET(LIB_INSTALL_PATH "${GNUSTEP_LOCAL_ROOT}/Library/Libraries") - SET(HEADER_INSTALL_PATH "${GNUSTEP_LOCAL_ROOT}/Library/Headers/objc") -else () + "GNUstep installation type. Options are NONE, SYSTEM, NETWORK or LOCAL.") + +if (${GNUSTEP_INSTALL_TYPE} STREQUAL "NONE") SET(LIB_INSTALL_PATH lib) - SET(HEADER_INSTALL_PATH "include/objc") + SET(HEADER_INSTALL_PATH "include") +else () + EXEC_PROGRAM(gnustep-config + ARGS "--variable=GNUSTEP_${GNUSTEP_INSTALL_TYPE}_LIBRARIES" + OUTPUT_VARIABLE LIB_INSTALL_PATH) + EXEC_PROGRAM(gnustep-config + ARGS "--variable=GNUSTEP_${GNUSTEP_INSTALL_TYPE}_HEADERS" + OUTPUT_VARIABLE HEADER_INSTALL_PATH) +else () elseif (${GNUSTEP_INSTALL_TYPE} EQUAL "Local") endif () install(TARGETS objc LIBRARY DESTINATION ${LIB_INSTALL_PATH} ARCHIVE DESTINATION ${LIB_INSTALL_PATH} - PUBLIC_HEADER DESTINATION ${HEADER_INSTALL_PATH}) + PUBLIC_HEADER DESTINATION "${HEADER_INSTALL_PATH}/objc")