Compare commits

..

7 Commits

Author SHA1 Message Date
2982f37522 PIP_FREERTOS -> PIP_MICRO 2025-10-18 08:17:08 +03:00
f74a38900f fix get_system() 2025-07-17 16:16:53 +03:00
da13c52c51 get_system() in deploy now check if "*release" file exists 2025-07-09 12:43:37 +03:00
698d24e831 new cmake 2025-04-29 21:50:48 +03:00
558034bbdb fix shstk_find_header 2025-01-08 17:35:05 +03:00
7784497165 set <T>_BUILDTYPE in several places for 100% coverage 2024-12-19 21:22:57 +03:00
0d3b2ded8e add Buildtype field, support for debug deploy 2024-12-03 11:18:22 +03:00
5 changed files with 34 additions and 21 deletions

View File

@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.0)
cmake_minimum_required(VERSION 3.13)
project(cmake LANGUAGES NONE)
file(GLOB CMAKES "*.cmake" "*.in" "*.keystore")
if(INSTALL_DIR)

View File

@@ -169,7 +169,7 @@ if (POLICY CMP0053)
cmake_policy(SET CMP0053 NEW)
endif()
if (NOT _dep_exists AND NOT PIP_FREERTOS)
if (NOT _dep_exists AND NOT PIP_MICRO)
set(_dep_exists 1)
add_custom_target(deploy COMMENT "Deploy")
endif()
@@ -377,7 +377,7 @@ macro(get_system _OS _ARCH)
endforeach()
endif()
find_file(_release_file NAMES os-release lsb-release PATHS ${_paths} NO_DEFAULT_PATH)
if (NOT "x${_release_file}" STREQUAL "x")
if (_release_file)
file(STRINGS "${_release_file}" _lines)
foreach(_l ${_lines})
if ("${_l}" MATCHES "VERSION_ID=.*")
@@ -390,9 +390,11 @@ macro(get_system _OS _ARCH)
#message("ID ${_os_id}")
endif()
endforeach()
endif()
string(TOLOWER "${_os_id}${_os_ver}" ${_OS})
if ("x${${_OS}}" STREQUAL "x")
string(TOLOWER "${_os_id}${_os_ver}" ${_OS})
if ("x${${_OS}}" STREQUAL "x")
set(${_OS} "linux")
endif()
else()
set(${_OS} "linux")
endif()
set(${_ARCH} "${MY_ARCH}")
@@ -428,7 +430,12 @@ macro(deploy_target _T)
set(_LIBS_FILES)
set(_VERB)
set(_WVERB 1> NUL)
set(_DEBUG_SUFFIX)
set(_OPTIONS "--strip;${CMAKE_STRIP}")
if (CMAKE_BUILD_TYPE MATCHES Debug)
list(APPEND _OPTIONS "--no-strip")
set(_DEBUG_SUFFIX "_debug")
endif()
set(_ZIP_DMG 1)
set(_DEB_OPT 1)
set(_DEB_SERVICE 0)
@@ -492,6 +499,7 @@ macro(deploy_target _T)
set(_TARGET_BUILD "${${_T}_VERSION_BUILD}")
set(_TARGET_COMPANY "${${_T}_COMPANY}")
set(_TARGET_INFO "${${_T}_INFO}")
set(_TARGET_BUILDTYPE "${${_T}_BUILDTYPE}")
set(_TARGET_OS "???")
set(_TARGET_ARCH "???")
set(_TARGET_PACKAGE "???")
@@ -603,7 +611,7 @@ macro(deploy_target _T)
set(_dt_opts -L "${CMAKE_READELF}" --dpkg-workdir "${CMAKE_DPKG_WORKDIR}" -s "${_dt_searchdirs}")
endif()
list(APPEND _dt_opts -q "${Qt${_Qt_}_ROOT}" --qt-conf-dir "${_bin_path}" --qt-plugins-dir "${_pli_path}" --rpath)
set(_deb_name "${_TV}_${_TARGET_OS}_${_DEB_ARCH}.deb")
set(_deb_name "${_TV}_${_TARGET_OS}_${_DEB_ARCH}${_DEBUG_SUFFIX}.deb")
set(_TARGET_PACKAGE "${_deb_name}")
#message("VER = \"${_DEBVERSION}\"")
#message("DEB = \"${_deb_name}\"")
@@ -670,7 +678,7 @@ macro(deploy_target _T)
set(_CMD_ ${_CMD_} COMMAND chmod 0755 ${_VERB} "${_AGD}/DEBIAN/${_f}")
endforeach()
set(_deb_name "${_TV}-service_${_TARGET_OS}_${_DEB_ARCH}.deb")
set(_deb_name "${_TV}-service_${_TARGET_OS}_${_DEB_ARCH}${_DEBUG_SUFFIX}.deb")
#message("VER = \"${_DEBVERSION}\"")
#message("DEB = \"${_deb_name}\"")
list(APPEND _CMD_ COMMAND echo "Package: ${_DEBNAME}-service" ${_C_echof})
@@ -716,7 +724,7 @@ macro(deploy_target _T)
__make_copy(_CMD_ _PLUG_DIRS _PLUG_FILES "${_AGD}")
__make_copy(_CMD_ _FILE_DIRS _FILE_FILES "${_AGD}")
__make_copy(_CMD_ _LIBS_DIRS _LIBS_FILES "${_AGD}")
set(_zip_name "${_TV}_${_TARGET_OS}_${_TARGET_ARCH}.zip")
set(_zip_name "${_TV}_${_TARGET_OS}_${_TARGET_ARCH}${_DEBUG_SUFFIX}.zip")
set(_TARGET_PACKAGE "${_zip_name}")
set(_search_path "")
foreach (_c ${CMAKE_PREFIX_PATH})
@@ -765,7 +773,7 @@ macro(deploy_target _T)
if (NOT CMAKE_PREFIX_PATH)
set(CMAKE_PREFIX_PATH "/usr/local")
endif()
set(_dmg_name "${_TV}_${_TARGET_OS}_${_TARGET_ARCH}.dmg")
set(_dmg_name "${_TV}_${_TARGET_OS}_${_TARGET_ARCH}${_DEBUG_SUFFIX}.dmg")
set(_TARGET_PACKAGE "${_dmg_name}")
set(_cmd_gen_dmg COMMAND genisoimage -quiet -V "${MACOSX_BUNDLE_BUNDLE_NAME}" -D -R -apple -no-pad -o "${_DESTINATION}/${_dmg_name}" "${_DMG}")
if (__mac_host)
@@ -929,7 +937,7 @@ macro(deploy_target _T)
set(_CMD_ ${_CMD_} COMMAND "${Qt${_Qt_}_BIN}/androiddeployqt" --aux-mode --android-platform ${ANDROID_PLATFORM} --output "\"${_AGD}\"" --input "\"${_out_json}\"")
set(_CMD_ ${_CMD_} COMMAND "${_AGD}/gradlew" ${_gradle_home} --no-daemon -p "\"${_AGD}\"" assembleDebug)
set(_CMD_ ${_CMD_} COMMAND "${_AGD}/gradlew" ${_gradle_home} --no-daemon -p "\"${_AGD}\"" bundleRelease)
set(_base_name "${_TV}_${_TARGET_OS}_${_TARGET_ARCH}")
set(_base_name "${_TV}_${_TARGET_OS}_${_TARGET_ARCH}${_DEBUG_SUFFIX}")
set(_TARGET_PACKAGE "${_base_name}.apk")
set(_CMD_ ${_CMD_} COMMAND "${CMAKE_COMMAND}" -E copy "${_AGD}/build/outputs/apk/debug/${_T}.android-debug.apk" "${_DESTINATION}/${_base_name}.apk")
if (ANDROID_STORE_FILE)

View File

@@ -7,5 +7,6 @@
"info": "${_TARGET_INFO}",
"system": "${_TARGET_OS}",
"arch": "${_TARGET_ARCH}",
"buildtype": "${_TARGET_BUILDTYPE}",
"timestamp": "${_TARGET_TIMESTAMP}"
}

View File

@@ -5,7 +5,7 @@ endif()
if (POLICY CMP0053)
cmake_policy(SET CMP0053 NEW)
endif()
set(__prop_names "LABEL;FULLNAME;COMPANY;ICON;INFO")
set(__prop_names "LABEL;FULLNAME;COMPANY;ICON;INFO;BUILDTYPE")
list(APPEND __prop_names "ANDROID_TARGET_SDK;ANDROID_STORE_FILE;ANDROID_STORE_PASSWORD;ANDROID_KEY_PASSWORD;ANDROID_KEY_ALIAS;ANDROID_NEW_LOADER")
set(__version_names "MAJOR;MINOR;REVISION;BUILD;SUFFIX")
@@ -16,7 +16,7 @@ endif()
macro(set_version _T)
set(_VERSION_ 2) # macro version
set(_VERSION_ 3) # macro version
set(_name)
set(_is_name 1)
set(_is_out 0)
@@ -61,6 +61,7 @@ macro(set_version _T)
if ("x${${_T}_VERSION_BUILD}" STREQUAL "x")
set(${_T}_VERSION_BUILD "0")
endif()
set(${_T}_BUILDTYPE "${CMAKE_BUILD_TYPE}")
set(${_T}_VERSION "${${_T}_VERSION_MAJOR}.${${_T}_VERSION_MINOR}.${${_T}_VERSION_REVISION}${${_T}_VERSION_FULLSUFFIX}")
set(_${_T}_VERSION_WB "${${_T}_VERSION}-${${_T}_VERSION_BUILD}")
if (_out)
@@ -88,12 +89,12 @@ macro(set_version _T)
// Project
#define ${_TN}_VERSION_MAJOR ${${_T}_VERSION_MAJOR}
#define ${_TN}_VERSION_MINOR ${${_T}_VERSION_MINOR}
#define ${_TN}_VERSION_REVISION ${${_T}_VERSION_REVISION}
#define ${_TN}_VERSION_BUILD ${${_T}_VERSION_BUILD}
#define ${_TN}_VERSION_SUFFIX \"${${_T}_VERSION_SUFFIX}\"
#define ${_TN}_VERSION_NAME \"${${_T}_VERSION}\"
#define ${_TN}_VERSION_MAJOR ${${_T}_VERSION_MAJOR}
#define ${_TN}_VERSION_MINOR ${${_T}_VERSION_MINOR}
#define ${_TN}_VERSION_REVISION ${${_T}_VERSION_REVISION}
#define ${_TN}_VERSION_BUILD ${${_T}_VERSION_BUILD}
#define ${_TN}_VERSION_SUFFIX \"${${_T}_VERSION_SUFFIX}\"
#define ${_TN}_VERSION_NAME \"${${_T}_VERSION}\"
#define ${_TN}_MAKE_VERSION(major, minor, revision) ((major << 16) | (minor << 8) | revision)
#define ${_TN}_VERSION ${_TN}_MAKE_VERSION(${_TN}_VERSION_MAJOR, ${_TN}_VERSION_MINOR, ${_TN}_VERSION_REVISION)
@@ -103,6 +104,7 @@ macro(set_version _T)
#define ${_TN}_CMAKE_VERSION \"${CMAKE_VERSION}\"
#define ${_TN}_CXX_COMPILER \"${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION}\"
#define ${_TN}_BUILD_DATE \"${_cur_date}\"
#define ${_TN}_BUILD_TYPE \"${${_T}_BUILDTYPE}\"
#define ${_TN}_ARCH \"${MY_ARCH}\"
@@ -123,7 +125,7 @@ endmacro()
macro(import_version _T _F)
if (NOT "x${_T}" STREQUAL "x${_F}")
set(_names "${__version_names};FULLSUFFIX")
set(_names "${__version_names};FULLSUFFIX;BUILDTYPE")
foreach(_i ${_names})
set(${_T}_VERSION_${_i} "${${_F}_VERSION_${_i}}")
endforeach()
@@ -160,6 +162,7 @@ macro(set_deploy_property _T)
set(${_T}_${_name} ${_i})
endif()
endforeach()
set(${_T}_BUILDTYPE "${CMAKE_BUILD_TYPE}")
endmacro()

View File

@@ -59,7 +59,7 @@ macro(shstk_begin_project name)
endif()
shstk_define_option(LOCAL "Local install" OFF)
if (DEFINED ENV{QNX_HOST} OR PIP_FREERTOS)
if (DEFINED ENV{QNX_HOST} OR PIP_MICRO)
set(STATIC_LIB_DEFAULT ON)
else()
set(STATIC_LIB_DEFAULT OFF)
@@ -305,6 +305,7 @@ endmacro()
macro(shstk_find_header name filename add_find_info)
string(TOUPPER "${name}" ${name}_uppercase)
if(NOT ${name}_VERSION)
find_file(${name}_H_INCLUDE "${filename}" HINTS ${${name}_INCDIR} NO_CMAKE_FIND_ROOT_PATH)
find_file(${name}_H_INCLUDE "${filename}" HINTS ${${name}_INCDIR})
#message("${name}_H_INCLUDE \"${filename}\" HINTS \"${${name}_INCDIR}\" = \"${${name}_H_INCLUDE}\"")
if (NOT ${name}_H_INCLUDE)