Fixing assembly coverage reporting. Due to issues with CMake enable_language, we have to delay setting CMAKE_ASM_FLAGS until after enable_language(ASM) has been called. We also need to remove the '.file' macro from x86gas.pl to prevent the filenames from being overridden from those provided by the build system. Change-Id: I436f57ec45e4751714af49e1211a0d7810e4e56a Reviewed-on: https://boringssl-review.googlesource.com/16127 Reviewed-by: Steven Valdez <svaldez@google.com> Commit-Queue: Steven Valdez <svaldez@google.com> CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
diff --git a/CMakeLists.txt b/CMakeLists.txt index 7c23f0a..f50b42c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt
@@ -41,10 +41,6 @@ endif() set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${C_CXX_FLAGS} -Wmissing-prototypes -Wold-style-definition -Wstrict-prototypes") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 ${C_CXX_FLAGS} -Wmissing-declarations") - # Clang's integerated assembler does not support debug symbols. - if(NOT CMAKE_CXX_COMPILER_ID MATCHES "Clang") - set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} -Wa,-g") - endif() elseif(MSVC) set(MSVC_DISABLED_WARNINGS_LIST "C4061" # enumerator 'identifier' in switch of enum 'enumeration' is not
diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt index e357a68..0ca2847 100644 --- a/crypto/CMakeLists.txt +++ b/crypto/CMakeLists.txt
@@ -31,6 +31,11 @@ enable_language(ASM) set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} -Wa,--noexecstack") + # Clang's integerated assembler does not support debug symbols. + if(NOT CMAKE_ASM_COMPILER_ID MATCHES "Clang") + set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} -Wa,-g") + endif() + # CMake does not add -isysroot and -arch flags to assembly. if (APPLE) set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} -isysroot ${CMAKE_OSX_SYSROOT}")
diff --git a/crypto/perlasm/x86gas.pl b/crypto/perlasm/x86gas.pl index ab4c5a3..0c989a1 100644 --- a/crypto/perlasm/x86gas.pl +++ b/crypto/perlasm/x86gas.pl
@@ -104,7 +104,7 @@ sub ::DWC { @_; } sub ::file -{ push(@out,".file\t\"$_[0].S\"\n.text\n"); } +{ push(@out,".text\n"); } sub ::function_begin_B { my $func=shift;