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;