From 94bfd401b8672383dc5814329cf52f46f5a06f8f Mon Sep 17 00:00:00 2001 From: bernhard-gatzhammer Date: Tue, 20 Oct 2015 11:14:14 +0200 Subject: [PATCH] Reproduced bug and played around. Not working yet. EMBB-516 --- CMakeLists.txt | 3 +++ base_c/CMakeLists.txt | 46 +++++++++++++++++++++++++++++++--------------- 2 files changed, 34 insertions(+), 15 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3f43e85..1319133 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -111,6 +111,9 @@ include(CMakeCommon/SetCompilerFlags.cmake) SetGNUCompilerFlags(compiler_libs compiler_flags) SetVisualStudioCompilerFlags(compiler_libs compiler_flags) +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=thread -fPIC -pie") +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=thread -fPIC -pie") + ## Exception handling in C++ # if (USE_EXCEPTIONS STREQUAL ON) diff --git a/base_c/CMakeLists.txt b/base_c/CMakeLists.txt index a05179d..5600146 100644 --- a/base_c/CMakeLists.txt +++ b/base_c/CMakeLists.txt @@ -23,21 +23,21 @@ FOREACH(src_tmp ${EMBB_BASE_SOURCES}) ENDFOREACH(src_tmp) ENDIF() -include(CheckTypeSize) -check_type_size(char EMBB_CHAR_TYPE_SIZE) -check_type_size(short EMBB_SHORT_TYPE_SIZE) -check_type_size("unsigned short" EMBB_UNSIGNED_SHORT_TYPE_SIZE) -check_type_size(int EMBB_INT_TYPE_SIZE) -check_type_size("unsigned int" EMBB_UNSIGNED_INT_TYPE_SIZE) -check_type_size(long EMBB_LONG_TYPE_SIZE) -check_type_size("unsigned long" EMBB_UNSIGNED_LONG_TYPE_SIZE) -check_type_size("long long" EMBB_LONG_LONG_TYPE_SIZE) -check_type_size("unsigned long long" EMBB_UNSIGNED_LONG_LONG_TYPE_SIZE) -check_type_size(intptr_t EMBB_INTPTR_T_TYPE_SIZE) -check_type_size(uintptr_t EMBB_UINTPTR_T_TYPE_SIZE) -check_type_size(size_t EMBB_SIZE_T_TYPE_SIZE) -check_type_size(ptrdiff_t EMBB_PTRDIFF_T_TYPE_SIZE) -check_type_size(uintmax_t EMBB_UINTMAX_T_TYPE_SIZE) +#include(CheckTypeSize) +#check_type_size(char EMBB_CHAR_TYPE_SIZE) +#check_type_size(short EMBB_SHORT_TYPE_SIZE) +#check_type_size("unsigned short" EMBB_UNSIGNED_SHORT_TYPE_SIZE) +#check_type_size(int EMBB_INT_TYPE_SIZE) +#check_type_size("unsigned int" EMBB_UNSIGNED_INT_TYPE_SIZE) +#check_type_size(long EMBB_LONG_TYPE_SIZE) +#check_type_size("unsigned long" EMBB_UNSIGNED_LONG_TYPE_SIZE) +#check_type_size("long long" EMBB_LONG_LONG_TYPE_SIZE) +#check_type_size("unsigned long long" EMBB_UNSIGNED_LONG_LONG_TYPE_SIZE) +#check_type_size(intptr_t EMBB_INTPTR_T_TYPE_SIZE) +#check_type_size(uintptr_t EMBB_UINTPTR_T_TYPE_SIZE) +#check_type_size(size_t EMBB_SIZE_T_TYPE_SIZE) +#check_type_size(ptrdiff_t EMBB_PTRDIFF_T_TYPE_SIZE) +#check_type_size(uintmax_t EMBB_UINTMAX_T_TYPE_SIZE) # Create header file from input file configure_file("include/embb/base/c/internal/atomic/atomic_sizes.h.in" @@ -122,3 +122,19 @@ install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/include/embb install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/include/embb DESTINATION include FILES_MATCHING PATTERN "*.h") install(TARGETS embb_base_c DESTINATION lib) + +include(CheckTypeSize) +check_type_size(char EMBB_CHAR_TYPE_SIZE) +check_type_size(short EMBB_SHORT_TYPE_SIZE) +check_type_size("unsigned short" EMBB_UNSIGNED_SHORT_TYPE_SIZE) +check_type_size(int EMBB_INT_TYPE_SIZE) +check_type_size("unsigned int" EMBB_UNSIGNED_INT_TYPE_SIZE) +check_type_size(long EMBB_LONG_TYPE_SIZE) +check_type_size("unsigned long" EMBB_UNSIGNED_LONG_TYPE_SIZE) +check_type_size("long long" EMBB_LONG_LONG_TYPE_SIZE) +check_type_size("unsigned long long" EMBB_UNSIGNED_LONG_LONG_TYPE_SIZE) +check_type_size(intptr_t EMBB_INTPTR_T_TYPE_SIZE) +check_type_size(uintptr_t EMBB_UINTPTR_T_TYPE_SIZE) +check_type_size(size_t EMBB_SIZE_T_TYPE_SIZE) +check_type_size(ptrdiff_t EMBB_PTRDIFF_T_TYPE_SIZE) +check_type_size(uintmax_t EMBB_UINTMAX_T_TYPE_SIZE) -- libgit2 0.26.0