diff options
author | Stefan Agner <stefan.agner@toradex.com> | 2017-05-08 14:41:54 -0700 |
---|---|---|
committer | Stefan Agner <stefan.agner@toradex.com> | 2017-05-12 13:54:18 -0700 |
commit | 6fcd37817cbea037bd1194b50382c7d8ca4b74ee (patch) | |
tree | 831d8933037194c97345cc0fce0301d52dd76a6f /examples | |
parent | 74e83463973d77b16449e7b9206f4f75b94296d1 (diff) |
examples: convert CMake structure to allow multiple builds
Convert CMake build files structure such that we can build debug
and release configuration simultaneously. This is useful when using
Eclipse's Makefile integration.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Suggested-by: Raul Munoz <raul.munoz@toradex.com>
Diffstat (limited to 'examples')
9 files changed, 31 insertions, 18 deletions
diff --git a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/CMakeLists.txt b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/CMakeLists.txt index 7b23972..4fa749b 100644 --- a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/CMakeLists.txt +++ b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/CMakeLists.txt @@ -154,8 +154,7 @@ TARGET_LINK_LIBRARIES(hello_world nosys) TARGET_LINK_LIBRARIES(hello_world -Wl,--end-group) # MAP FILE -SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} -Xlinker -Map=debug/hello_world.map") -SET(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} -Xlinker -Map=release/hello_world.map") +SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Xlinker -Map=hello_world.map") # BIN AND HEX ADD_CUSTOM_COMMAND(TARGET hello_world POST_BUILD COMMAND ${CMAKE_OBJCOPY} -Oihex ${EXECUTABLE_OUTPUT_PATH}/hello_world.elf ${EXECUTABLE_OUTPUT_PATH}/hello_world.hex) diff --git a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_all.bat b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_all.bat index 6d41d86..426a29f 100644 --- a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_all.bat +++ b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_all.bat @@ -1,5 +1,7 @@ -cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug . -mingw32-make -j4 -cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release . -mingw32-make -j4 +cd release +call build_release.bat +cd .. +cd debug +call build_debug.bat +cd .. pause diff --git a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_all.sh b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_all.sh index ebb0c25..99e6267 100755 --- a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_all.sh +++ b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_all.sh @@ -1,5 +1,7 @@ #!/bin/sh -cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug . -make -j4 -cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release . -make -j4 +cd debug/ +./build_debug.sh +cd .. +cd release/ +./build_release.sh +cd .. diff --git a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/clean.bat b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/clean.bat index ffea088..fc53949 100644 --- a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/clean.bat +++ b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/clean.bat @@ -1,3 +1,9 @@ -RD /s /Q Debug Release CMakeFiles -DEL /s /Q /F Makefile cmake_install.cmake CMakeCache.txt +cd debug +rd /s /Q CMakeFiles/ +del /s /Q /F Makefile cmake_install.cmake CMakeCache.txt *.elf *.bin *.map *.hex +cd .. +cd release +rd /s /Q CMakeFiles/ +del /s /Q /F Makefile cmake_install.cmake CMakeCache.txt *.elf *.bin *.map *.hex +cd .. pause diff --git a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/clean.sh b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/clean.sh index 795ad87..7120907 100755 --- a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/clean.sh +++ b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/clean.sh @@ -1,3 +1,7 @@ #!/bin/sh -rm -rf debug release CMakeFiles -rm -rf Makefile cmake_install.cmake CMakeCache.txt +cd debug +rm -rf Makefile cmake_install.cmake CMakeCache.txt CMakeFiles *.elf *.bin *.map *.hex +cd .. +cd release +rm -rf Makefile cmake_install.cmake CMakeCache.txt CMakeFiles *.elf *.bin *.map *.hex +cd .. diff --git a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_debug.bat b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/debug/build_debug.bat index bf3b902..434e91e 100644 --- a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_debug.bat +++ b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/debug/build_debug.bat @@ -1,3 +1,3 @@ -cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug . +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug .. mingw32-make -j4 pause diff --git a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_debug.sh b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/debug/build_debug.sh index 571868b..5526f5d 100755 --- a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_debug.sh +++ b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/debug/build_debug.sh @@ -1,3 +1,3 @@ #!/bin/sh -cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug . +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug .. make -j4 diff --git a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_release.bat b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/release/build_release.bat index e229a83..17f773a 100644 --- a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_release.bat +++ b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/release/build_release.bat @@ -1,3 +1,3 @@ -cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release . +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release .. mingw32-make -j4 pause diff --git a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_release.sh b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/release/build_release.sh index 035ce4e..1ad7338 100755 --- a/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/build_release.sh +++ b/examples/imx7_colibri_m4/demo_apps/hello_world/armgcc/release/build_release.sh @@ -1,3 +1,3 @@ #!/bin/sh -cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release . +cmake -DCMAKE_TOOLCHAIN_FILE="../../../../../tools/cmake_toolchain_files/armgcc.cmake" -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release .. make -j4 |