common.cmake: fixed erroneous search path for os-release
[apps/app-templates.git] / cmake / common.cmake
index c6853ea..f553ae0 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,9 @@ foreach(file ${system_cmakefiles} ${home_cmakefiles} ${project_cmakefiles})
        include(${file})
 endforeach()
 
+set_install_prefix()
+prevent_in_source_build()
+
 if(DEFINED PROJECT_SRC_DIR_PATTERN)
        project_subdirs_add(${PROJECT_SRC_DIR_PATTERN})
 else()