Merge pull request #4265 from jgoppert/cmake_stack

Modified cmake to use STACK_MAX and STACK_MAIN

Looked over the reported sitl failure with jenkins, but it shows all tests passed, and this is happening on all branches, so going to merge.
This commit is contained in:
James Goppert
2016-04-14 14:10:01 -04:00
80 changed files with 158 additions and 196 deletions
+38 -10
View File
@@ -225,7 +225,9 @@ endfunction()
# Usage:
# px4_add_module(MODULE <string>
# [ MAIN <string> ]
# [ STACK <string> ]
# [ STACK <string> ] !!!!!DEPRECATED, USE STACK_MAIN INSTEAD!!!!!!!!!
# [ STACK_MAIN <string> ]
# [ STACK_MAX <string> ]
# [ COMPILE_FLAGS <list> ]
# [ INCLUDES <list> ]
# [ DEPENDS <string> ]
@@ -234,7 +236,9 @@ endfunction()
# Input:
# MODULE : unique name of module
# MAIN : entry point, if not given, assumed to be library
# STACK : size of stack
# STACK : deprecated use stack main instead
# STACK_MAIN : size of stack for main function
# STACK_MAX : maximum stack size of any frame
# COMPILE_FLAGS : compile flags
# LINK_FLAGS : link flags
# SRCS : source files
@@ -248,7 +252,7 @@ endfunction()
# px4_add_module(MODULE test
# SRCS
# file.cpp
# STACK 1024
# STACK_MAIN 1024
# DEPENDS
# git_nuttx
# )
@@ -257,15 +261,43 @@ function(px4_add_module)
px4_parse_function_args(
NAME px4_add_module
ONE_VALUE MODULE MAIN STACK PRIORITY
ONE_VALUE MODULE MAIN STACK STACK_MAIN STACK_MAX PRIORITY
MULTI_VALUE COMPILE_FLAGS LINK_FLAGS SRCS INCLUDES DEPENDS
REQUIRED MODULE
ARGN ${ARGN})
add_library(${MODULE} STATIC EXCLUDE_FROM_ALL ${SRCS})
# set defaults if not set
set(MAIN_DEFAULT MAIN-NOTFOUND)
set(STACK_MAIN_DEFAULT 1024)
set(PRIORITY_DEFAULT SCHED_PRIORITY_DEFAULT)
# default stack max to stack main
if(NOT STACK_MAIN AND STACK)
set(STACK_MAIN ${STACK})
message(AUTHOR_WARNING "STACK deprecated, USE STACK_MAIN instead!!!!!!!!!!!!")
endif()
foreach(property MAIN STACK_MAIN PRIORITY)
if(NOT ${property})
set(${property} ${${property}_DEFAULT})
endif()
set_target_properties(${MODULE} PROPERTIES ${property}
${${property}})
endforeach()
# default stack max to stack main
if(NOT STACK_MAX)
set(STACK_MAX ${STACK_MAIN})
endif()
set_target_properties(${MODULE} PROPERTIES STACK_MAX
${STACK_MAX})
if(${OS} STREQUAL "qurt" )
set_property(TARGET ${MODULE} PROPERTY POSITION_INDEPENDENT_CODE TRUE)
elseif(${OS} STREQUAL "nuttx" )
list(APPEND COMPILE_FLAGS -Wframe-larger-than=${STACK_MAX})
endif()
if(MAIN)
@@ -290,8 +322,8 @@ function(px4_add_module)
# store module properties in target
# COMPILE_FLAGS and LINK_FLAGS are passed to compiler/linker by cmake
# STACK, MAIN, PRIORITY are PX4 specific
foreach (prop COMPILE_FLAGS LINK_FLAGS STACK MAIN PRIORITY)
# STACK_MAIN, MAIN, PRIORITY are PX4 specific
foreach (prop COMPILE_FLAGS LINK_FLAGS STACK_MAIN MAIN PRIORITY)
if (${prop})
set_target_properties(${MODULE} PROPERTIES ${prop} ${${prop}})
endif()
@@ -530,10 +562,6 @@ function(px4_add_common_flags)
# but generates too many false positives
)
if (${OS} STREQUAL "nuttx")
list(APPEND warnings -Wframe-larger-than=1024)
endif()
if (${CMAKE_C_COMPILER_ID} MATCHES ".*Clang.*")
# QuRT 6.4.X compiler identifies as Clang but does not support this option
if (NOT ${OS} STREQUAL "qurt")
+4 -2
View File
@@ -189,8 +189,10 @@ set(config_io_extra_libs
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "sercon" STACK_MAIN "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "serdis" STACK_MAIN "2048")
@@ -80,8 +80,12 @@ set(config_extra_builtin_cmds
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "sercon"
STACK_MAIN "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "serdis"
STACK_MAIN "2048")
+6 -2
View File
@@ -171,8 +171,12 @@ set(config_io_extra_libs
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "sercon"
STACK_MAIN "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "serdis"
STACK_MAIN "2048")
+4 -2
View File
@@ -183,8 +183,10 @@ set(config_io_extra_libs
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "sercon" STACK_MAIN "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "serdis" STACK_MAIN "2048")
+4 -2
View File
@@ -182,8 +182,10 @@ set(config_io_extra_libs
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "sercon" STACK_MAIN "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "serdis" STACK_MAIN "2048")
+6 -2
View File
@@ -179,8 +179,12 @@ set(config_io_extra_libs
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "sercon"
STACK_MAIN "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
PRIORITY "SCHED_PRIORITY_DEFAULT"
MAIN "serdis"
STACK_MAIN "2048")
-10
View File
@@ -88,13 +88,3 @@ set(config_sitl_debugger
)
set_property(CACHE config_sitl_debugger
PROPERTY STRINGS "disable;gdb;lldb")
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
-10
View File
@@ -87,13 +87,3 @@ set(config_sitl_debugger
)
set_property(CACHE config_sitl_debugger
PROPERTY STRINGS "disable;gdb;lldb")
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
-10
View File
@@ -50,13 +50,3 @@ set(config_sitl_debugger
)
set_property(CACHE config_sitl_debugger
PROPERTY STRINGS "disable;gdb;lldb")
add_custom_target(sercon)
set_target_properties(sercon PROPERTIES
MAIN "sercon" STACK "2048")
add_custom_target(serdis)
set_target_properties(serdis PROPERTIES
MAIN "serdis" STACK "2048")
+2 -10
View File
@@ -137,20 +137,12 @@ function(px4_nuttx_generate_builtin_commands)
set(builtin_apps_decl_string)
set(command_count 0)
foreach(module ${MODULE_LIST})
#message("generating builtin for: ${module}")
# default
set(MAIN_DEFAULT MAIN-NOTFOUND)
set(STACK_DEFAULT 1024)
set(PRIORITY_DEFAULT SCHED_PRIORITY_DEFAULT)
foreach(property MAIN STACK PRIORITY)
foreach(property MAIN STACK_MAIN PRIORITY)
get_target_property(${property} ${module} ${property})
if(NOT ${property})
set(${property} ${${property}_DEFAULT})
endif()
endforeach()
if (MAIN)
set(builtin_apps_string
"${builtin_apps_string}\t{\"${MAIN}\", ${PRIORITY}, ${STACK}, ${MAIN}_main},\n")
"${builtin_apps_string}\t{\"${MAIN}\", ${PRIORITY}, ${STACK_MAIN}, ${MAIN}_main},\n")
set(builtin_apps_decl_string
"${builtin_apps_decl_string}extern int ${MAIN}_main(int argc, char *argv[]);\n")
math(EXPR command_count "${command_count}+1")
+1 -8
View File
@@ -84,15 +84,8 @@ function(px4_qurt_generate_builtin_commands)
set(builtin_apps_decl_string)
set(command_count 0)
foreach(module ${MODULE_LIST})
# default
set(MAIN_DEFAULT MAIN-NOTFOUND)
set(STACK_DEFAULT 1024)
set(PRIORITY_DEFAULT SCHED_PRIORITY_DEFAULT)
foreach(property MAIN STACK PRIORITY)
foreach(property MAIN STACK_MAIN PRIORITY)
get_target_property(${property} ${module} ${property})
if(NOT ${property})
set(${property} ${${property}_DEFAULT})
endif()
endforeach()
if (MAIN)
set(builtin_apps_string
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__ardrone_interface
MAIN ardrone_interface
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Os
SRCS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__bst
MAIN bst
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Os
SRCS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__camera_trigger
MAIN camera_trigger
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Os
SRCS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__ets_airspeed
MAIN ets_airspeed
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Os
SRCS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__frsky_telemetry
MAIN frsky_telemetry
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Os
SRCS
+1
View File
@@ -33,6 +33,7 @@
px4_add_module(
MODULE drivers__gimbal
MAIN gimbal
STACK_MAIN 1024
COMPILE_FLAGS
-Os
SRCS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__gps
MAIN gps
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Os
SRCS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__hmc5883
MAIN hmc5883
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Weffc++
-Os
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__l3gd20
MAIN l3gd20
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Weffc++
-Os
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__lsm303d
MAIN lsm303d
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Weffc++
-Os
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__meas_airspeed
MAIN meas_airspeed
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Weffc++
-Os
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__mpu6000
MAIN mpu6000
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Weffc++
-Os
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__mpu9250
MAIN mpu9250
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Weffc++
-Os
+1
View File
@@ -33,6 +33,7 @@
px4_add_module(
MODULE drivers__oreoled
MAIN oreoled
STACK_MAIN 1024
COMPILE_FLAGS
-Os
SRCS
+1 -1
View File
@@ -33,9 +33,9 @@
px4_add_module(
MODULE drivers__pwm_input
MAIN pwm_input
STACK_MAIN 1024
COMPILE_FLAGS
-Wno-pmf-conversions
SRCS
pwm_input.cpp
DEPENDS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__pwm_out_sim
MAIN pwm_out_sim
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Os
SRCS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__px4flow
MAIN px4flow
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Wno-attributes
-Os
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__px4fmu
MAIN fmu
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Os
SRCS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__px4io
MAIN px4io
STACK 1800
STACK_MAIN 1800
COMPILE_FLAGS
-Os
SRCS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE drivers__trone
MAIN trone
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Os
SRCS
@@ -33,10 +33,8 @@
px4_add_module(
MODULE examples__fixedwing_control
MAIN ex_fixedwing_control
STACK 1200
COMPILE_FLAGS
-Wframe-larger-than=1300
STACK_MAIN 1200
STACK_MAX 1300
SRCS
main.c
params.c
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE examples__hwtest
MAIN ex_hwtest
STACK 2000
STACK_MAIN 2000
SRCS
hwtest.c
DEPENDS
@@ -33,7 +33,7 @@
px4_add_module(
MODULE examples__matlab_csv_serial
MAIN matlab_csv_serial
STACK 2000
STACK_MAIN 2000
SRCS
matlab_csv_serial.c
DEPENDS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE examples__publisher
MAIN publisher
STACK 1200
STACK_MAIN 1200
SRCS
publisher_main.cpp
publisher_start_nuttx.cpp
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE examples__px4_daemon_app
MAIN px4_daemon_app
STACK 1200
STACK_MAIN 1200
SRCS
px4_daemon_app.c
DEPENDS
@@ -33,7 +33,7 @@
px4_add_module(
MODULE examples__px4_mavlink_debug
MAIN px4_mavlink_debug
STACK 2000
STACK_MAIN 2000
SRCS
px4_mavlink_debug.c
DEPENDS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE examples__px4_simple_app
MAIN px4_simple_app
STACK 2000
STACK_MAIN 2000
SRCS
px4_simple_app.c
DEPENDS
@@ -33,10 +33,8 @@
px4_add_module(
MODULE examples__rover_steering_control
MAIN rover_steering_control
STACK 1200
COMPILE_FLAGS
-Wframe-larger-than=1300
STACK_MAIN 1200
STACK_MAX 1300
SRCS
main.cpp
params.c
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE examples__subscriber
MAIN subscriber
STACK 2400
STACK_MAIN 2400
SRCS
subscriber_main.cpp
subscriber_start_nuttx.cpp
@@ -32,6 +32,7 @@
############################################################################
px4_add_module(
MODULE lib__tailsitter_recovery
STACK_MAIN 400
COMPILE_FLAGS
-Os
SRCS
@@ -32,6 +32,7 @@
############################################################################
px4_add_module(
MODULE lib__terrain_estimation
STACK_MAIN 1024
COMPILE_FLAGS
-Os
SRCS
@@ -33,7 +33,7 @@
px4_add_module(
MODULE modules__attitude_estimator_ekf
MAIN attitude_estimator_ekf
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Wno-float-equal
SRCS
@@ -31,14 +31,12 @@
#
#############################################################################
set(MODULE_CFLAGS)
if (${OS} STREQUAL "nuttx")
list(APPEND MODULE_CFLAGS -Wframe-larger-than=1600)
endif()
px4_add_module(
MODULE modules__attitude_estimator_q
MAIN attitude_estimator_q
COMPILE_FLAGS ${MODULE_CFLAGS}
STACK 1200
STACK_MAIN 1200
STACK_MAX 1600
SRCS
attitude_estimator_q_main.cpp
DEPENDS
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE modules__bottle_drop
MAIN bottle_drop
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Os
SRCS
+2 -6
View File
@@ -30,16 +30,12 @@
# POSSIBILITY OF SUCH DAMAGE.
#
############################################################################
set(MODULE_CFLAGS -Os)
if(${OS} STREQUAL "nuttx")
list(APPEND MODULE_CFLAGS -Wframe-larger-than=2450)
endif()
px4_add_module(
MODULE modules__commander
MAIN commander
STACK 4096
STACK_MAIN 4096
STACK_MAX 2450
COMPILE_FLAGS
${MODULE_CFLAGS}
-Os
SRCS
commander.cpp
+1 -1
View File
@@ -33,7 +33,7 @@
px4_add_module(
MODULE modules__dataman
MAIN dataman
STACK 1200
STACK_MAIN 1200
COMPILE_FLAGS
-Os
SRCS
+3 -6
View File
@@ -30,15 +30,12 @@
# POSSIBILITY OF SUCH DAMAGE.
#
#############################################################################
set(MODULE_CFLAGS)
if (${OS} STREQUAL "nuttx")
list(APPEND MODULE_CFLAGS -Wframe-larger-than=4000)
endif()
px4_add_module(
MODULE modules__ekf2
MAIN ekf2
COMPILE_FLAGS ${MODULE_CFLAGS}
STACK 1000
COMPILE_FLAGS
STACK_MAIN 2500
STACK_MAX 4000
SRCS
ekf2_main.cpp
DEPENDS
+3 -6
View File
@@ -30,15 +30,12 @@
# POSSIBILITY OF SUCH DAMAGE.
#
#############################################################################
set(MODULE_CFLAGS)
if (${OS} STREQUAL "nuttx")
list(APPEND MODULE_CFLAGS -Wframe-larger-than=4000)
endif()
px4_add_module(
MODULE modules__ekf2_replay
MAIN ekf2_replay
COMPILE_FLAGS ${MODULE_CFLAGS}
STACK 1000
COMPILE_FLAGS
STACK_MAIN 1000
STACK_MAX 4000
SRCS
ekf2_replay_main.cpp
DEPENDS

Some files were not shown because too many files have changed in this diff Show More