X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=cmake%2Fcmake.d%2F03-macros.cmake;h=89b93f631c7920f3b67f93d06cbb816f9ed504dd;hb=e9a682f1c694eec242c3cebccc09380f621ade0b;hp=77b4bd2a1b6ca8f962abc2090b1674937fec5810;hpb=fcc49c7b95fb9a29013340a0c6ce910c0e95e5de;p=staging%2Fxdg-launcher.git diff --git a/cmake/cmake.d/03-macros.cmake b/cmake/cmake.d/03-macros.cmake index 77b4bd2..89b93f6 100644 --- a/cmake/cmake.d/03-macros.cmake +++ b/cmake/cmake.d/03-macros.cmake @@ -121,28 +121,22 @@ macro(configure_files_in_dir dir) endforeach() endmacro(configure_files_in_dir) -macro(add_required_module PKG_CONFIG) - string(REGEX REPLACE "[<>]?=.*$" "" XPREFIX ${PKG_CONFIG}) - PKG_CHECK_MODULES(${XPREFIX} REQUIRED ${PKG_CONFIG}) - - INCLUDE_DIRECTORIES(${${XPREFIX}_INCLUDE_DIRS}) - list(APPEND link_libraries ${${XPREFIX}_LDFLAGS}) - add_compile_options (${${XPREFIX}_CFLAGS}) -endmacro(add_required_module) - # Create custom target dedicated for HTML5 and DATA AGL target type macro(add_input_files INPUT_FILES) if(NOT DEFINED XML_FILES) + set(ext_reg "xml$") set(XML_LIST ${INPUT_FILES}) - list_filter(XML_LIST "xml$") + list_filter(XML_LIST ext_reg) endif() if(NOT DEFINED LUA_LIST) + set(ext_reg "lua$") set(LUA_LIST ${INPUT_FILES}) - list_filter(LUA_LIST "lua$") + list_filter(LUA_LIST ext_reg) endif() if(NOT DEFINED JSON_FILES) + set(ext_reg "json$") set(JSON_LIST ${INPUT_FILES}) - list_filter(JSON_LIST "json$") + list_filter(JSON_LIST ext_reg) endif() # These are v3.6 subcommand. Not used as default for now as @@ -151,7 +145,7 @@ macro(add_input_files INPUT_FILES) #list(FILTER LUA_LIST INCLUDE REGEX "lua$") #list(FILTER JSON_LIST INCLUDE REGEX "json$") - add_custom_target(${TARGET_NAME} + add_custom_target(${TARGET_NAME} ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_NAME} ) @@ -305,6 +299,22 @@ macro(project_targets_populate) ) add_dependencies(populate ${POPULE_PACKAGE_TARGET}) add_dependencies(${POPULE_PACKAGE_TARGET} ${TARGET}) + elseif(${T} STREQUAL "BINDING-CONFIG") + # Generate list of output files instead of just one output directory + get_target_property(SF ${TARGET} SOURCES) + foreach(file ${SF}) + get_filename_component(JUST_FILENAME ${file} NAME) + list(APPEND OUTPUT_FILES ${PACKAGE_ETCDIR}/${JUST_FILENAME}) + endforeach() + add_custom_target(${POPULE_PACKAGE_TARGET}) + add_custom_command(TARGET ${POPULE_PACKAGE_TARGET} + POST_BUILD + COMMAND mkdir -p ${PACKAGE_ETCDIR} + COMMAND touch ${PACKAGE_ETCDIR} + COMMAND cp -r ${BD}/${TARGET}/* ${PACKAGE_ETCDIR} + ) + add_dependencies(populate ${POPULE_PACKAGE_TARGET}) + add_dependencies(${POPULE_PACKAGE_TARGET} ${TARGET}) endif(${T} STREQUAL "BINDING") elseif(${CMAKE_BUILD_TYPE} MATCHES "[Dd][Ee][Bb][Uu][Gg]") MESSAGE("${Yellow}.. Warning: ${TARGET} ignored when packaging.${ColourReset}") @@ -352,8 +362,13 @@ macro(remote_targets_populate) add_custom_target(remote-target-populate COMMAND chmod +x ${CMAKE_CURRENT_BINARY_DIR}/target/*.sh COMMAND rsync -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --archive --delete ${PROJECT_PKG_BUILD_DIR}/ ${RSYNC_TARGET}:${RSYNC_PREFIX}/${PROJECT_NAME} - COMMENT "${REMOTE_LAUNCH}" ) + + add_custom_command(TARGET remote-target-populate + POST_BUILD + COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green --bold ${REMOTE_LAUNCH} + ) + add_dependencies(remote-target-populate populate) endif() endmacro(remote_targets_populate) @@ -454,17 +469,17 @@ macro(deb_package_build) endmacro(deb_package_build) macro(project_package_build) - if(EXISTS ${TEMPLATE_DIR}) - rpm_package_build() - endif() +# if(EXISTS ${TEMPLATE_DIR}) +# rpm_package_build() +# endif() if(EXISTS ${TEMPLATE_DIR}) wgt_package_build() endif() - if(EXISTS ${TEMPLATE_DIR}) - deb_package_build() - endif() +# if(EXISTS ${TEMPLATE_DIR}) +# deb_package_build() +# endif() endmacro(project_package_build) macro(project_subdirs_add) @@ -492,7 +507,7 @@ macro(project_closing_msg) add_custom_target(${PROJECT_NAME}_build_done ALL COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --cyan "++ ${CLOSING_MESSAGE}" ) - add_dependencies(${PROJECT_NAME}_build_done - ${DEPENDENCIES_TARGET} ${PROJECT_TARGETS}) + add_dependencies(${PROJECT_NAME}_build_done + ${PROJECT_TARGETS} populate) endif() endmacro()