diff --git a/CMakeLists.txt b/CMakeLists.txt index a615b08..80b4fb7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,13 +28,11 @@ set(TITLE_NAME "windvane") set(PACKAGE_CONTACT "Jon Gough") set(PACKAGE "windvane") -project(${PACKAGE}) - set(VERSION_MAJOR "1") set(VERSION_MINOR "0") -set(VERSION_PATCH "16") +set(VERSION_PATCH "17") set(VERSION_TWEAK "0") -set(VERSION_DATE "08/06/2020") +set(VERSION_DATE "12/06/2020") set(OCPN_MIN_VERSION "ov50") set(OCPN_API_VERSION_MAJOR "1") set(OCPN_API_VERSION_MINOR "16") @@ -83,6 +81,8 @@ set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "" "Debug" "Release" "RelWi message(STATUS "${CMLOC}Build type: ${CMAKE_BUILD_TYPE}") +project(${PACKAGE}) + include("cmake/PluginSetup.cmake") set(CMAKE_VERBOSE_MAKEFILE ON) diff --git a/cmake/PluginConfigure.cmake b/cmake/PluginConfigure.cmake index 689422e..20b00e8 100644 --- a/cmake/PluginConfigure.cmake +++ b/cmake/PluginConfigure.cmake @@ -40,23 +40,31 @@ else() WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} OUTPUT_VARIABLE GIT_REPOSITORY_TAG OUTPUT_STRIP_TRAILING_WHITESPACE) execute_process( - COMMAND git remote + COMMAND git status --porcelain=1 -b WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - OUTPUT_VARIABLE GIT_REPOSITORY_REMOTE OUTPUT_STRIP_TRAILING_WHITESPACE) - string(REGEX MATCH ".*[\n\r]" FIRST_LINE ${GIT_REPOSITORY_REMOTE}) - if(NOT ${FIRST_LINE} STREQUAL "") - string(REGEX REPLACE "[\n\r]" "" GIT_REPOSITORY_REMOTE ${FIRST_LINE}) - endif() + OUTPUT_VARIABLE GIT_STATUS OUTPUT_STRIP_TRAILING_WHITESPACE) + string(FIND ${GIT_STATUS} "..." START_TRACKED) + string(FIND ${GIT_STATUS} "/" END_TRACKED) + math(EXPR START_TRACKED "${START_TRACKED}+3") + math(EXPR END_TRACKED "${END_TRACKED}-${START_TRACKED}") + string(SUBSTRING ${GIT_STATUS} ${START_TRACKED} ${END_TRACKED} GIT_REPOSITORY_REMOTE) + message(STATUS "${CMLOC}GIT_REPOSITORY_REMOTE: ${GIT_REPOSITORY_REMOTE}") execute_process( COMMAND git remote get-url ${GIT_REPOSITORY_REMOTE} WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - OUTPUT_VARIABLE GIT_REPOSITORY_URL OUTPUT_STRIP_TRAILING_WHITESPACE) - string(FIND ${GIT_REPOSITORY_URL} ${GIT_REPOSITORY_SERVER} START_URL REVERSE) - string(LENGTH ${GIT_REPOSITORY_SERVER} STRING_LENGTH) - math(EXPR START_URL "${START_URL}+1+${STRING_LENGTH}") - string(LENGTH ${GIT_REPOSITORY_URL} STRING_LENGTH) - message(STATUS "${CMLOC}START_URL: ${START_URL}, STRING_LENGTH: ${STRING_LENGTH}") - string(SUBSTRING ${GIT_REPOSITORY_URL} ${START_URL} ${STRING_LENGTH} GIT_REPOSITORY) + OUTPUT_VARIABLE GIT_REPOSITORY_URL OUTPUT_STRIP_TRAILING_WHITESPACE + ERROR_VARIABLE GIT_REMOTE_ERROR) + if(NOT GIT_REMOTE_ERROR STREQUAL "") + message(STATUS "${CMLOC}Command error: ${GIT_REMOTE_ERROR}") + message(STATUS "${CMLOC}Using default repository") + else() + string(FIND ${GIT_REPOSITORY_URL} ${GIT_REPOSITORY_SERVER} START_URL REVERSE) + string(LENGTH ${GIT_REPOSITORY_SERVER} STRING_LENGTH) + math(EXPR START_URL "${START_URL}+1+${STRING_LENGTH}") + string(LENGTH ${GIT_REPOSITORY_URL} STRING_LENGTH) + message(STATUS "${CMLOC}START_URL: ${START_URL}, STRING_LENGTH: ${STRING_LENGTH}") + string(SUBSTRING ${GIT_REPOSITORY_URL} ${START_URL} ${STRING_LENGTH} GIT_REPOSITORY) + endif() endif() message(STATUS "${CMLOC}GIT_REPOSITORY: ${GIT_REPOSITORY}") message(STATUS "${CMLOC}Git Branch: \"${GIT_REPOSITORY_BRANCH}\"") @@ -110,16 +118,16 @@ if(UNIX) # Generate architecturally uniques names for linux output packages if(ARCH MATCHES "arm64") - set(PKG_TARGET_ARCH "-ARM64") + set(PKG_TARGET_ARCH "-arm64") elseif(ARCH MATCHES "armhf") - set(PKG_TARGET_ARCH "-ARMHF") + set(PKG_TARGET_ARCH "-armhf") elseif(ARCH MATCHES "i386") set(PKG_TARGET_ARCH "-i386") else() set(PKG_TARGET_ARCH "-x86_64") endif() else() - set(PKG_TARGET_ARCH "-${ARCH}") + set(PKG_TARGET_ARCH "") endif() set(PKG_TARGET_FULL "${PKG_TARGET}${PKG_TARGET_GTK}${PKG_TARGET_ARCH}")