Continue separation of sources and put also html5 into separated dir
authorRomain Forlot <romain.forlot@iot.bzh>
Thu, 4 May 2017 09:57:27 +0000 (11:57 +0200)
committerRomain Forlot <romain.forlot@iot.bzh>
Thu, 4 May 2017 09:57:27 +0000 (11:57 +0200)
Change-Id: I36bc61f69f0e2d197f1891f3ea7cfa30e9a29e3b
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
14 files changed:
examples/html5/CMakeLists.txt
examples/html5/app/CMakeLists.txt [new file with mode: 0644]
examples/html5/app/bower.json [moved from examples/html5/bower.json with 100% similarity]
examples/html5/app/gulpfile.js [moved from examples/hybrid-html5/gulpfile.js with 99% similarity]
examples/html5/app/package.json [moved from examples/html5/package.json with 100% similarity]
examples/html5/etc/macros.cmake
examples/hybrid-html5/CMakeLists.txt
examples/hybrid-html5/app/CMakeLists.txt [new file with mode: 0644]
examples/hybrid-html5/app/bower.json [moved from examples/hybrid-html5/bower.json with 100% similarity]
examples/hybrid-html5/app/gulpfile.js [moved from examples/html5/gulpfile.js with 99% similarity]
examples/hybrid-html5/app/package.json [moved from examples/hybrid-html5/package.json with 100% similarity]
examples/hybrid-html5/etc/macros.cmake
examples/native/etc/macros.cmake
examples/service/etc/macros.cmake

index 2a7b33a..26b9226 100644 (file)
@@ -21,25 +21,6 @@ CMAKE_MINIMUM_REQUIRED(VERSION 3.3)
 include(${CMAKE_CURRENT_SOURCE_DIR}/etc/config.cmake)
 include(${CMAKE_CURRENT_SOURCE_DIR}/etc/macros.cmake)
 
-# Add target to project dependency list
-PROJECT_TARGET_ADD(html5-example)
-
-       # Define project Targets
-       add_custom_command(OUTPUT dist.prod
-       DEPENDS ${TARGET_NAME}
-       WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
-       COMMAND npm install
-       COMMAND gulp widget-config-prod
-       COMMAND cp -r dist.prod ${CMAKE_CURRENT_BINARY_DIR})
-
-       add_custom_target(${TARGET_NAME} ALL DEPENDS dist.prod)
-
-       # Binder exposes a unique public entry point
-       SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES
-               PREFIX ""
-               LABELS "HTDOCS"
-               OUTPUT_NAME dist.prod)
-
-populate_widget()
+search_targets()
 
 build_widget()
diff --git a/examples/html5/app/CMakeLists.txt b/examples/html5/app/CMakeLists.txt
new file mode 100644 (file)
index 0000000..ec66f01
--- /dev/null
@@ -0,0 +1,38 @@
+###########################################################################
+# Copyright 2015, 2016, 2017 IoT.bzh
+#
+# author: Romain Forlot <romain.forlot@iot.bzh>
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+###########################################################################
+
+# Add target to project dependency list
+PROJECT_TARGET_ADD(html5-example)
+
+       # Define project Targets
+       add_custom_command(OUTPUT dist.prod
+       DEPENDS ${TARGET_NAME}
+       WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+       COMMAND npm install
+       COMMAND gulp widget-config-prod
+       COMMAND cp -r dist.prod ${CMAKE_CURRENT_BINARY_DIR})
+
+       add_custom_target(${TARGET_NAME} ALL DEPENDS dist.prod)
+
+       # Binder exposes a unique public entry point
+       SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES
+               PREFIX ""
+               LABELS "HTDOCS"
+               OUTPUT_NAME dist.prod)
+
+populate_widget()
similarity index 99%
rename from examples/hybrid-html5/gulpfile.js
rename to examples/html5/app/gulpfile.js
index 3f64339..da2826d 100644 (file)
@@ -18,7 +18,7 @@ var exec = require('child_process').exec
 var router   = require('front-router');
 
 // == PATH STRINGS ========
-var appdir  = "./app/";   // Warning to not forget trailling '/'
+var appdir  = "./";   // Warning to not forget trailling '/'
 config=require (appdir + "etc/_Config"); // upload user local preferences if any
 
 var frontend= appdir + config.FRONTEND;
index e1c449e..6a389de 100644 (file)
@@ -69,15 +69,16 @@ macro(populate_widget)
        set(POPULE_WIDGET_TARGET "populate_${TARGET_NAME}")
 
        get_target_property(T ${TARGET_NAME} LABELS)
+       get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
+
        if(${T} STREQUAL "BINDING")
                add_custom_command(OUTPUT ${WIDGET_LIBDIR}/${TARGET_NAME}.so
                        DEPENDS ${TARGET_NAME}
                        COMMAND mkdir -p ${WIDGET_LIBDIR}
-                       COMMAND cp ${TARGET_NAME}.so ${WIDGET_LIBDIR}
+                       COMMAND cp ${OUT}.so ${WIDGET_LIBDIR}
                )
                add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_LIBDIR}/${TARGET_NAME}.so)
        elseif(${T} STREQUAL "EXECUTABLE")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_BINDIR}/${TARGET_NAME}
                        DEPENDS ${TARGET_NAME}
                        COMMAND mkdir -p ${WIDGET_BINDIR}
@@ -85,14 +86,12 @@ macro(populate_widget)
                )
                add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_BINDIR}/${TARGET_NAME})
        elseif(${T} STREQUAL "HTDOCS")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_HTTPDIR}
                        DEPENDS ${TARGET_NAME}
                        COMMAND cp -r ${OUT} ${WIDGET_HTTPDIR}
                        )
                        add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_HTTPDIR})
        elseif(${T} STREQUAL "DATA")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_DATADIR}
                        DEPENDS ${TARGET_NAME}
                        COMMAND cp -r ${OUT} ${WIDGET_DATADIR}
@@ -119,6 +118,7 @@ macro(build_widget)
                COMMAND wgtpkg-pack -f -o ${PROJECT_NAME}.wgt ${WIDGET_DIR}
                )
                add_custom_target(widget DEPENDS ${PROJECT_NAME}.wgt)
+               set(ADDITIONAL_MAKE_CLEAN_FILES, "${PROJECT_NAME}.wgt")
        else()
                MESSAGE(FATAL_ERROR "Widget tree empty, please populate it by calling  populate_widget() macro with target you want to include into it.")
        endif("${PROJECT_TARGETS}" MATCHES "populate_")
@@ -191,7 +191,7 @@ CHECK_LIBRARY_EXISTS(efence malloc "" HAVE_LIBEFENCE)
 IF(HAVE_LIBEFENCE)
        MESSAGE(STATUS "Linking with ElectricFence for debugging purposes...")
        SET(libefence_LIBRARIES "-lefence")
-       list (APPEND link_libraries libefence_LIBRARIES})
+       list (APPEND link_libraries ${libefence_LIBRARIES})
 ENDIF(HAVE_LIBEFENCE)
 ENDIF(CMAKE_BUILD_TYPE MATCHES DEBUG)
 
@@ -250,4 +250,3 @@ if(CLOSING_MESSAGE AND GLOBAL_TARGET_LIST)
        )
 endif()
 
-set(ADDITIONAL_MAKE_CLEAN_FILES, "low-can-binding/low-can-binding.wgt")
index 9fdfe64..1e44569 100644 (file)
@@ -24,25 +24,4 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/etc/macros.cmake)
 # Add subdir targets
 search_targets()
 
-# Add target to project dependency list
-PROJECT_TARGET_ADD(hybrid-html5-example)
-
-       # Define project Targets
-       add_custom_command(OUTPUT dist.prod
-       DEPENDS ${TARGET_NAME}
-       WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
-       COMMAND npm install
-       COMMAND gulp widget-config-prod
-       COMMAND cp -r dist.prod ${CMAKE_CURRENT_BINARY_DIR})
-
-       add_custom_target(${TARGET_NAME} ALL DEPENDS dist.prod)
-
-       # Binder exposes a unique public entry point
-       SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES
-               PREFIX ""
-               LABELS "HTDOCS"
-               OUTPUT_NAME dist.prod)
-
-populate_widget()
-
 build_widget()
diff --git a/examples/hybrid-html5/app/CMakeLists.txt b/examples/hybrid-html5/app/CMakeLists.txt
new file mode 100644 (file)
index 0000000..a862b3c
--- /dev/null
@@ -0,0 +1,38 @@
+###########################################################################
+# Copyright 2015, 2016, 2017 IoT.bzh
+#
+# author: Romain Forlot <romain.forlot@iot.bzh>
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+###########################################################################
+
+# Add target to project dependency list
+PROJECT_TARGET_ADD(hybrid-html5-example)
+
+       # Define project Targets
+       add_custom_command(OUTPUT dist.prod
+       DEPENDS ${TARGET_NAME}
+       WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+       COMMAND npm install
+       COMMAND gulp widget-config-prod
+       COMMAND cp -r dist.prod ${CMAKE_CURRENT_BINARY_DIR})
+
+       add_custom_target(${TARGET_NAME} ALL DEPENDS dist.prod)
+
+       # Binder exposes a unique public entry point
+       SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES
+               PREFIX ""
+               LABELS "HTDOCS"
+               OUTPUT_NAME dist.prod)
+
+populate_widget()
similarity index 99%
rename from examples/html5/gulpfile.js
rename to examples/hybrid-html5/app/gulpfile.js
index 3f64339..da2826d 100644 (file)
@@ -18,7 +18,7 @@ var exec = require('child_process').exec
 var router   = require('front-router');
 
 // == PATH STRINGS ========
-var appdir  = "./app/";   // Warning to not forget trailling '/'
+var appdir  = "./";   // Warning to not forget trailling '/'
 config=require (appdir + "etc/_Config"); // upload user local preferences if any
 
 var frontend= appdir + config.FRONTEND;
index e1c449e..6a389de 100644 (file)
@@ -69,15 +69,16 @@ macro(populate_widget)
        set(POPULE_WIDGET_TARGET "populate_${TARGET_NAME}")
 
        get_target_property(T ${TARGET_NAME} LABELS)
+       get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
+
        if(${T} STREQUAL "BINDING")
                add_custom_command(OUTPUT ${WIDGET_LIBDIR}/${TARGET_NAME}.so
                        DEPENDS ${TARGET_NAME}
                        COMMAND mkdir -p ${WIDGET_LIBDIR}
-                       COMMAND cp ${TARGET_NAME}.so ${WIDGET_LIBDIR}
+                       COMMAND cp ${OUT}.so ${WIDGET_LIBDIR}
                )
                add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_LIBDIR}/${TARGET_NAME}.so)
        elseif(${T} STREQUAL "EXECUTABLE")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_BINDIR}/${TARGET_NAME}
                        DEPENDS ${TARGET_NAME}
                        COMMAND mkdir -p ${WIDGET_BINDIR}
@@ -85,14 +86,12 @@ macro(populate_widget)
                )
                add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_BINDIR}/${TARGET_NAME})
        elseif(${T} STREQUAL "HTDOCS")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_HTTPDIR}
                        DEPENDS ${TARGET_NAME}
                        COMMAND cp -r ${OUT} ${WIDGET_HTTPDIR}
                        )
                        add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_HTTPDIR})
        elseif(${T} STREQUAL "DATA")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_DATADIR}
                        DEPENDS ${TARGET_NAME}
                        COMMAND cp -r ${OUT} ${WIDGET_DATADIR}
@@ -119,6 +118,7 @@ macro(build_widget)
                COMMAND wgtpkg-pack -f -o ${PROJECT_NAME}.wgt ${WIDGET_DIR}
                )
                add_custom_target(widget DEPENDS ${PROJECT_NAME}.wgt)
+               set(ADDITIONAL_MAKE_CLEAN_FILES, "${PROJECT_NAME}.wgt")
        else()
                MESSAGE(FATAL_ERROR "Widget tree empty, please populate it by calling  populate_widget() macro with target you want to include into it.")
        endif("${PROJECT_TARGETS}" MATCHES "populate_")
@@ -191,7 +191,7 @@ CHECK_LIBRARY_EXISTS(efence malloc "" HAVE_LIBEFENCE)
 IF(HAVE_LIBEFENCE)
        MESSAGE(STATUS "Linking with ElectricFence for debugging purposes...")
        SET(libefence_LIBRARIES "-lefence")
-       list (APPEND link_libraries libefence_LIBRARIES})
+       list (APPEND link_libraries ${libefence_LIBRARIES})
 ENDIF(HAVE_LIBEFENCE)
 ENDIF(CMAKE_BUILD_TYPE MATCHES DEBUG)
 
@@ -250,4 +250,3 @@ if(CLOSING_MESSAGE AND GLOBAL_TARGET_LIST)
        )
 endif()
 
-set(ADDITIONAL_MAKE_CLEAN_FILES, "low-can-binding/low-can-binding.wgt")
index e1c449e..6a389de 100644 (file)
@@ -69,15 +69,16 @@ macro(populate_widget)
        set(POPULE_WIDGET_TARGET "populate_${TARGET_NAME}")
 
        get_target_property(T ${TARGET_NAME} LABELS)
+       get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
+
        if(${T} STREQUAL "BINDING")
                add_custom_command(OUTPUT ${WIDGET_LIBDIR}/${TARGET_NAME}.so
                        DEPENDS ${TARGET_NAME}
                        COMMAND mkdir -p ${WIDGET_LIBDIR}
-                       COMMAND cp ${TARGET_NAME}.so ${WIDGET_LIBDIR}
+                       COMMAND cp ${OUT}.so ${WIDGET_LIBDIR}
                )
                add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_LIBDIR}/${TARGET_NAME}.so)
        elseif(${T} STREQUAL "EXECUTABLE")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_BINDIR}/${TARGET_NAME}
                        DEPENDS ${TARGET_NAME}
                        COMMAND mkdir -p ${WIDGET_BINDIR}
@@ -85,14 +86,12 @@ macro(populate_widget)
                )
                add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_BINDIR}/${TARGET_NAME})
        elseif(${T} STREQUAL "HTDOCS")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_HTTPDIR}
                        DEPENDS ${TARGET_NAME}
                        COMMAND cp -r ${OUT} ${WIDGET_HTTPDIR}
                        )
                        add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_HTTPDIR})
        elseif(${T} STREQUAL "DATA")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_DATADIR}
                        DEPENDS ${TARGET_NAME}
                        COMMAND cp -r ${OUT} ${WIDGET_DATADIR}
@@ -119,6 +118,7 @@ macro(build_widget)
                COMMAND wgtpkg-pack -f -o ${PROJECT_NAME}.wgt ${WIDGET_DIR}
                )
                add_custom_target(widget DEPENDS ${PROJECT_NAME}.wgt)
+               set(ADDITIONAL_MAKE_CLEAN_FILES, "${PROJECT_NAME}.wgt")
        else()
                MESSAGE(FATAL_ERROR "Widget tree empty, please populate it by calling  populate_widget() macro with target you want to include into it.")
        endif("${PROJECT_TARGETS}" MATCHES "populate_")
@@ -191,7 +191,7 @@ CHECK_LIBRARY_EXISTS(efence malloc "" HAVE_LIBEFENCE)
 IF(HAVE_LIBEFENCE)
        MESSAGE(STATUS "Linking with ElectricFence for debugging purposes...")
        SET(libefence_LIBRARIES "-lefence")
-       list (APPEND link_libraries libefence_LIBRARIES})
+       list (APPEND link_libraries ${libefence_LIBRARIES})
 ENDIF(HAVE_LIBEFENCE)
 ENDIF(CMAKE_BUILD_TYPE MATCHES DEBUG)
 
@@ -250,4 +250,3 @@ if(CLOSING_MESSAGE AND GLOBAL_TARGET_LIST)
        )
 endif()
 
-set(ADDITIONAL_MAKE_CLEAN_FILES, "low-can-binding/low-can-binding.wgt")
index e1c449e..6a389de 100644 (file)
@@ -69,15 +69,16 @@ macro(populate_widget)
        set(POPULE_WIDGET_TARGET "populate_${TARGET_NAME}")
 
        get_target_property(T ${TARGET_NAME} LABELS)
+       get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
+
        if(${T} STREQUAL "BINDING")
                add_custom_command(OUTPUT ${WIDGET_LIBDIR}/${TARGET_NAME}.so
                        DEPENDS ${TARGET_NAME}
                        COMMAND mkdir -p ${WIDGET_LIBDIR}
-                       COMMAND cp ${TARGET_NAME}.so ${WIDGET_LIBDIR}
+                       COMMAND cp ${OUT}.so ${WIDGET_LIBDIR}
                )
                add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_LIBDIR}/${TARGET_NAME}.so)
        elseif(${T} STREQUAL "EXECUTABLE")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_BINDIR}/${TARGET_NAME}
                        DEPENDS ${TARGET_NAME}
                        COMMAND mkdir -p ${WIDGET_BINDIR}
@@ -85,14 +86,12 @@ macro(populate_widget)
                )
                add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_BINDIR}/${TARGET_NAME})
        elseif(${T} STREQUAL "HTDOCS")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_HTTPDIR}
                        DEPENDS ${TARGET_NAME}
                        COMMAND cp -r ${OUT} ${WIDGET_HTTPDIR}
                        )
                        add_custom_target(${POPULE_WIDGET_TARGET} ALL DEPENDS ${WIDGET_HTTPDIR})
        elseif(${T} STREQUAL "DATA")
-               get_target_property(OUT ${TARGET_NAME} OUTPUT_NAME)
                add_custom_command(OUTPUT ${WIDGET_DATADIR}
                        DEPENDS ${TARGET_NAME}
                        COMMAND cp -r ${OUT} ${WIDGET_DATADIR}
@@ -119,6 +118,7 @@ macro(build_widget)
                COMMAND wgtpkg-pack -f -o ${PROJECT_NAME}.wgt ${WIDGET_DIR}
                )
                add_custom_target(widget DEPENDS ${PROJECT_NAME}.wgt)
+               set(ADDITIONAL_MAKE_CLEAN_FILES, "${PROJECT_NAME}.wgt")
        else()
                MESSAGE(FATAL_ERROR "Widget tree empty, please populate it by calling  populate_widget() macro with target you want to include into it.")
        endif("${PROJECT_TARGETS}" MATCHES "populate_")
@@ -191,7 +191,7 @@ CHECK_LIBRARY_EXISTS(efence malloc "" HAVE_LIBEFENCE)
 IF(HAVE_LIBEFENCE)
        MESSAGE(STATUS "Linking with ElectricFence for debugging purposes...")
        SET(libefence_LIBRARIES "-lefence")
-       list (APPEND link_libraries libefence_LIBRARIES})
+       list (APPEND link_libraries ${libefence_LIBRARIES})
 ENDIF(HAVE_LIBEFENCE)
 ENDIF(CMAKE_BUILD_TYPE MATCHES DEBUG)
 
@@ -250,4 +250,3 @@ if(CLOSING_MESSAGE AND GLOBAL_TARGET_LIST)
        )
 endif()
 
-set(ADDITIONAL_MAKE_CLEAN_FILES, "low-can-binding/low-can-binding.wgt")