From 3f0653e824949f5e991bc279d9f1f4749a7914c0 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Tue, 13 Oct 2015 00:47:58 -0400 Subject: [PATCH] bin_to_obj.py don't use full path to visibility.h --- cmake/common/px4_base.cmake | 4 +++- cmake/nuttx/bin_to_obj.py | 4 +++- cmake/nuttx/px4_impl_nuttx.cmake | 1 + 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/cmake/common/px4_base.cmake b/cmake/common/px4_base.cmake index 65e96055a7..fe07a67666 100644 --- a/cmake/common/px4_base.cmake +++ b/cmake/common/px4_base.cmake @@ -535,6 +535,7 @@ function(px4_add_common_flags) -ffunction-sections -fdata-sections ) + if (NOT ${CMAKE_C_COMPILER_ID} STREQUAL "Clang") list(APPEND optimization_flags -fno-strength-reduce @@ -565,6 +566,7 @@ function(px4_add_common_flags) set(cxx_warnings -Wno-missing-field-initializers ) + set(cxx_compile_flags -g -fno-exceptions @@ -577,7 +579,7 @@ function(px4_add_common_flags) set(visibility_flags -fvisibility=hidden - "-include ${CMAKE_SOURCE_DIR}/src/include/visibility.h" + -include visibility.h ) set(added_c_flags diff --git a/cmake/nuttx/bin_to_obj.py b/cmake/nuttx/bin_to_obj.py index 64ba864295..4b99a6c29b 100755 --- a/cmake/nuttx/bin_to_obj.py +++ b/cmake/nuttx/bin_to_obj.py @@ -12,6 +12,7 @@ from subprocess import PIPE parser = argparse.ArgumentParser(description='Convert bin to obj.') parser.add_argument('--c_flags', required=True) parser.add_argument('--c_compiler', required=True) +parser.add_argument('--include_path', required=True) parser.add_argument('--nm', required=True) parser.add_argument('--ld', required=True) parser.add_argument('--objcopy', required=True) @@ -23,6 +24,7 @@ args = parser.parse_args() in_bin = args.bin c_flags = args.c_flags c_compiler = args.c_compiler +include_path = args.include_path nm = args.nm ld = args.ld obj = args.obj @@ -46,7 +48,7 @@ def run_cmd(cmd, d): return stdout # do compile -run_cmd("{c_compiler:s} {c_flags:s} -c {obj:s}.c -o {obj:s}.c.o", +run_cmd("{c_compiler:s} -I{include_path:s} {c_flags:s} -c {obj:s}.c -o {obj:s}.c.o", locals()) # link diff --git a/cmake/nuttx/px4_impl_nuttx.cmake b/cmake/nuttx/px4_impl_nuttx.cmake index 5995a64157..2586478383 100644 --- a/cmake/nuttx/px4_impl_nuttx.cmake +++ b/cmake/nuttx/px4_impl_nuttx.cmake @@ -349,6 +349,7 @@ function(px4_nuttx_add_romfs) #COMMAND cmake -E remove_directory ${romfs_temp_dir} COMMAND ${PYTHON_EXECUTABLE} ${bin_to_obj} --ld ${LD} --c_flags ${CMAKE_C_FLAGS} + --include_path "${CMAKE_SOURCE_DIR}/src/include" --c_compiler ${CMAKE_C_COMPILER} --nm ${NM} --objcopy ${OBJCOPY} --obj romfs.o