Add gitlab issue/merge request templates
[apps/app-templates.git] / cmake / common.cmake
index 191ef9e..77ecd3f 100644 (file)
@@ -47,19 +47,27 @@ if(EXISTS ${OS_RELEASE_PATH})
        )
 
        if (NOT TMP_OSRELEASE STREQUAL "")
-               string(REGEX REPLACE ".*=\"?([0-9a-z\._-]*)\"?\n" "\\1" OSRELEASE ${TMP_OSRELEASE})
+               string(REGEX REPLACE ".*=\"?([0-9a-z\._ -]*)\"?\n" "\\1" OSDETECTED ${TMP_OSRELEASE})
+               string(REPLACE " " ";" OSRELEASE ${OSDETECTED})
        else()
                set(OSRELEASE "NOT COMPATIBLE !")
        endif()
-
+elseif("${BUILD_ENV_SYSROOT}" STREQUAL "$ENV{PKG_CONFIG_SYSROOT_DIR}")
+       set(OSRELEASE "yocto-build")
 else()
        set(OSRELEASE "NOT COMPATIBLE ! Missing ${OS_RELEASE_PATH} file.")
 endif()
-message(STATUS "Distribution used ${OSRELEASE}")
+message(STATUS "Distribution detected (separated by ';' choose one of them) ${OSRELEASE}")
 
 file(GLOB project_cmakefiles ${PROJECT_APP_TEMPLATES_DIR}/cmake/cmake.d/[0-9][0-9]-*.cmake)
-file(GLOB distro_cmakefiles ${PROJECT_APP_TEMPLATES_DIR}/../cmake/[0-9][0-9]-${OSRELEASE}*.cmake ${PROJECT_APP_TEMPLATES_DIR}/../cmake/[0-9][0-9]-common*.cmake)
+foreach(OS IN LISTS OSRELEASE)
+       list(APPEND PATTERN "${PROJECT_APP_TEMPLATES_DIR}/../cmake/[0-9][0-9]-${OS}*.cmake")
+endforeach()
+list(APPEND PATTERN "${PROJECT_APP_TEMPLATES_DIR}/../cmake/[0-9][0-9]-common*.cmake")
+
+file(GLOB distro_cmakefiles ${PATTERN})
 list(SORT distro_cmakefiles)
+
 if(NOT distro_cmakefiles)
        file(GLOB distro_cmakefiles ${PROJECT_APP_TEMPLATES_DIR}/../cmake/[0-9][0-9]-default*.cmake)
 endif()
@@ -77,6 +85,11 @@ foreach(file ${system_cmakefiles} ${home_cmakefiles} ${project_cmakefiles})
        include(${file})
 endforeach()
 
+message(STATUS "${Red}You are using the submodule version of app-templates. This version will not be update in the future and you should migrate to the CMake module version. It could be found here: https://gerrit.automotivelinux.org/gerrit/#/admin/projects/src/cmake-apps-module. Using latest SDK with a version > FF include it by default. To migrate deinit the existing app-templates submodule, it could be then be deleted. To finish, replace the last line of your config.cmake file with 'include(CMakeAfbTemplates)'. If you directly want to use it, only take the config.sample.cmake file from the CMake module and edit to fit your needs.${ColourReset}")
+
+set_install_prefix()
+prevent_in_source_build()
+
 if(DEFINED PROJECT_SRC_DIR_PATTERN)
        project_subdirs_add(${PROJECT_SRC_DIR_PATTERN})
 else()
@@ -87,6 +100,7 @@ configure_files_in_dir(${PROJECT_APP_TEMPLATES_DIR}/${ENTRY_POINT}/template.d)
 configure_files_in_dir($ENV{HOME}/.config/app-templates/scripts)
 configure_files_in_dir(/etc/app-templates/scripts)
 
+check_version()
 project_targets_populate()
 remote_targets_populate()
 project_package_build()