Merge "Set default value for APP_TEMPLATES_DIR and WIDGET_ENTRY_POINT"
authorJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Mon, 12 Jun 2017 08:35:03 +0000 (08:35 +0000)
committerGerrit Code Review <gerrit@automotivelinux.org>
Mon, 12 Jun 2017 08:35:03 +0000 (08:35 +0000)
1  2 
cmake/common.cmake
cmake/config.cmake.sample

diff --combined cmake/common.cmake
@@@ -113,7 -113,7 +113,7 @@@ macro(project_targets_populate
                                        COMMAND cp ${BD}/${P}${OUT}.so ${PACKAGE_LIBDIR}
                                )
                                add_custom_target(${POPULE_PACKAGE_TARGET} DEPENDS ${PACKAGE_LIBDIR}/${P}${TARGET}.so)
-                               add_dependencies(populate ${POPULE_PACKAGE_TARGET}) 
+                               add_dependencies(populate ${POPULE_PACKAGE_TARGET})
                        elseif(${T} STREQUAL "EXECUTABLE")
                                add_custom_command(OUTPUT ${PACKAGE_BINDIR}/${P}${TARGET}
                                        DEPENDS ${TARGET}
                                        COMMAND cp ${BD}/${P}${OUT} ${PACKAGE_BINDIR}
                                )
                                add_custom_target(${POPULE_PACKAGE_TARGET} DEPENDS ${PACKAGE_BINDIR}/${P}${TARGET})
-                               add_dependencies(populate ${POPULE_PACKAGE_TARGET}) 
+                               add_dependencies(populate ${POPULE_PACKAGE_TARGET})
                        elseif(${T} STREQUAL "HTDOCS")
                                add_custom_command(OUTPUT ${PACKAGE_HTTPDIR}-xx
                                        DEPENDS ${TARGET}
                                        COMMAND cp -r ${BD}/${P}${OUT}/* ${PACKAGE_HTTPDIR}
                                )
                                        add_custom_target(${POPULE_PACKAGE_TARGET} DEPENDS ${PACKAGE_HTTPDIR}-xx)
-                                       add_dependencies(populate ${POPULE_PACKAGE_TARGET}) 
+                                       add_dependencies(populate ${POPULE_PACKAGE_TARGET})
                        elseif(${T} STREQUAL "DATA")
                                add_custom_command(OUTPUT ${PACKAGE_DATADIR}-xx
                                        DEPENDS ${TARGET}
                                        COMMAND cp -r ${BD}/${P}${OUT} ${PACKAGE_DATADIR}
                                )
                                        add_custom_target(${POPULE_PACKAGE_TARGET} DEPENDS ${PACKAGE_DATADIR}-xx)
-                                       add_dependencies(populate ${POPULE_PACKAGE_TARGET}) 
+                                       add_dependencies(populate ${POPULE_PACKAGE_TARGET})
                        endif(${T} STREQUAL "BINDING")
                elseif(${CMAKE_BUILD_TYPE} MATCHES "[Dd][Ee][Bb][Uu][Gg]")
                        MESSAGE(".. Warning: ${TARGET} ignored when packaging.")
@@@ -156,7 -156,7 +156,7 @@@ macro(remote_targets_populate
        endif()
  
        set(
-               REMOTE_LAUNCH "Test on target with: ${CMAKE_CURRENT_BINARY_DIR}/target/start-on-${RSYNC_TARGET}.sh" 
+               REMOTE_LAUNCH "Test on target with: ${CMAKE_CURRENT_BINARY_DIR}/target/start-on-${RSYNC_TARGET}.sh"
                CACHE STRING "Command to start ${PROJECT_NAME} on remote target ${RSYNC_TARGET}"
        )
  
@@@ -187,8 -187,14 +187,13 @@@ macro(wgt_package_build
        if(NOT EXISTS ${WGT_TEMPLATE_DIR}/icon-default.png)
                MESSAGE(FATAL_ERROR "${Red}WARNING ! Missing mandatory files to build widget file.\nYou need ${PROJECT_ICON} file in ${WGT_TEMPLATE_DIR} folder.${ColourReset}")
        endif()
+     if(NOT WIDGET_TYPE)
+         MESSAGE(FATAL_ERROR "WIDGET_TYPE must be set in your config.cmake.\neg.: set(WIDGET_TYPE application/vnd.agl.service)")
+     endif()
+     set(WIDGET_ENTRY_POINT lib CACHE STRING "the widget entry point file")
  
        configure_file(${WIDGET_CONFIG_TEMPLATE} ${PROJECT_PKG_BUILD_DIR}/config.xml)
 -      configure_file(${WIDGET_CONFIG_TEMPLATE} ${PROJECT_PKG_ENTRY_POINT}/config.xml)
        file(COPY ${WGT_TEMPLATE_DIR}/icon-default.png DESTINATION ${PROJECT_PKG_BUILD_DIR})
        file(RENAME ${PROJECT_PKG_BUILD_DIR}/icon-default.png ${PROJECT_PKG_BUILD_DIR}/${PROJECT_ICON})
  
@@@ -364,6 -370,8 +369,8 @@@ else(
        set(PROJECT_PKG_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/package CACHE PATH "Application contents to be packaged")
  endif()
  
+ set (PROJECT_APP_TEMPLATES_DIR "conf.d/templates" CACHE PATH "Default Templates directory")
  set (PKG_TEMPLATE_PREFIX ${CMAKE_SOURCE_DIR}/${PROJECT_APP_TEMPLATES_DIR} CACHE PATH "Default Package Templates Directory")
  set(SSH_TEMPLATE_DIR "${PKG_TEMPLATE_PREFIX}/ssh" CACHE PATH "Subpath to a directory where are stored needed files to launch on remote target to debuging purposes")
  set(GDB_TEMPLATE_DIR "${PKG_TEMPLATE_PREFIX}/gdb" CACHE PATH "Subpath to a directory where are stored needed files to launch debuging server on a remote target. Use gdbserver.")
@@@ -26,12 -26,12 +26,12 @@@ set(PROJECT_URL "https://gerrit.automot
  set(PROJECT_ICON "icon.png")
  set(PROJECT_AUTHOR "Last Name, First Name")
  set(PROJECT_AUTHOR_MAIL "example.man@bigouden.bzh")
 -set(PROJECT_LICENCE "APL2.0")
 +set(PROJECT_LICENSE "APL2.0")
  set(PROJECT_LANGUAGES,"C")
  
  # Where are stored default templates files from submodule or subtree app-templates in your project tree
  # relative to the root project directory
- set(PROJECT_APP_TEMPLATES_DIR "conf.d/default")
+ set(PROJECT_APP_TEMPLATES_DIR "conf.d/templates")
  
  # Where are stored your external libraries for your project. This is 3rd party library that you don't maintain
  # but used and must be built and linked.
@@@ -84,27 -84,24 +84,27 @@@ set(LD_LIBRARY_PATH ${CMAKE_INSTALL_PRE
  # -----------------------------------
  #set(WIDGET_CONFIG_TEMPLATE ${CMAKE_CURRENT_SOURCE_DIR}/conf.d/config.xml.in)
  
 -# Mandatory widget Mimetype specification
 -# --------------------------------------------------
 +# Mandatory widget Mimetype specification of the main unit
 +# --------------------------------------------------------------------------
  # Choose between :
 -# - application/vnd.agl.service
 -# - application/vnd.agl.native
 -# - application/x-executable
 -# - text/html
 +#- text/html : HTML application,
 +#     content.src designates the home page of the application
 +#
 +#- application/vnd.agl.native : AGL compatible native,
 +#     content.src designates the relative path of the binary.
 +#
 +# - application/vnd.agl.service: AGL service, content.src is not used.
 +#
 +#- ***application/x-executable***: Native application,
 +#     content.src designates the relative path of the binary.
 +#     For such application, only security setup is made.
  #
  set(WIDGET_TYPE MimeType_Not_Set)
  
 -# Mandatory Widget entry point file.
 -# ----------------------------------------------------
 -# This is the file that will be executed, loaded,...
 -# at launch time by the application framework
 -#
 -# !IMPORTANT! : Service Widget Mimetype has to specified
 -# the WIDGET_ENTRY_POINT "lib" which is the default directory
 -# that holds the bindings.
 +# Mandatory Widget entry point file of the main unit
 +# --------------------------------------------------------------
 +# This is the file that will be executed, loaded,
 +# at launch time by the application framework.
  #
  set(WIDGET_ENTRY_POINT EntryPoint_Path_Not_Set)