Enable builds with GCC (#527)

* Enable builds with GCC

* Update travis.sh
This commit is contained in:
Peter Goodman
2019-03-13 09:49:27 -04:00
committed by GitHub
parent 91f6f26399
commit 376479256d
4 changed files with 15 additions and 19 deletions
+1 -1
View File
@@ -1 +1 @@
084fe9f39059490657a065b20ec890bb25fd092a
20bfadd947c74cad53c17061eddf055565e46463
+11 -8
View File
@@ -1,6 +1,3 @@
# This is an exact copy of the cmake/settings.cmake file in the Remill
# repository; you are encouraged to keep them in sync
# This is only executed once; use a macro (and not a function) so that
# everything defined here does not end up in a separate namespace
macro(main)
@@ -88,15 +85,21 @@ macro(main)
set(GLOBAL_CXXFLAGS
-Wall -Wextra -Wno-unused-parameter -Wno-c++98-compat
-Wno-unreachable-code-return -Wno-nested-anon-types
-Wno-extended-offsetof -Wgnu-alignof-expression
-Wno-gnu-anonymous-struct -Wno-gnu-designator
-Wno-variadic-macros -Wno-gnu-zero-variadic-macro-arguments
-Wno-gnu-statement-expression -Wno-return-type-c-linkage
-Wno-extended-offsetof
-Wno-variadic-macros -Wno-return-type-c-linkage
-Wno-c99-extensions -Wno-ignored-attributes -Wno-unused-local-typedef
-Wno-unknown-pragmas -Wno-unknown-warning-option -fPIC
-fno-omit-frame-pointer -fvisibility-inlines-hidden -fno-exceptions
-fno-asynchronous-unwind-tables -fno-rtti
-fno-asynchronous-unwind-tables
)
if ("${CMAKE_C_COMPILER_ID}" STREQUAL "Clang" OR "${CMAKE_C_COMPILER_ID}" STREQUAL "AppleClang")
set(GLOBAL_CXXFLAGS
${GLOBAL_CXXFLAGS}
-Wgnu-alignof-expression -Wno-gnu-anonymous-struct -Wno-gnu-designator
-Wno-gnu-zero-variadic-macro-arguments -Wno-gnu-statement-expression
)
endif()
# debug symbols
if(CMAKE_BUILD_TYPE STREQUAL "Debug" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
+1 -8
View File
@@ -8,6 +8,7 @@ function(FindAndSelectClangCompiler)
if(DEFINED LLVM_INSTALL_PREFIX)
list(APPEND FINDPACKAGE_LLVM_HINTS "${LLVM_INSTALL_PREFIX}/lib/cmake/llvm/")
list(APPEND FINDPACKAGE_LLVM_HINTS "${LLVM_INSTALL_PREFIX}/share/llvm/cmake/")
set(FINDPACKAGE_LLVM_HINTS ${FINDPACKAGE_LLVM_HINTS} PARENT_SCOPE)
message(STATUS "Using LLVM_INSTALL_PREFIX hints for find_package(LLVM): ${FINDPACKAGE_LLVM_HINTS}")
endif()
@@ -28,10 +29,6 @@ function(FindAndSelectClangCompiler)
set(CMAKE_C_COMPILER "clang" PARENT_SCOPE)
endif()
endif()
if (NOT "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang" AND NOT "${CMAKE_C_COMPILER_ID}" STREQUAL "AppleClang")
message(FATAL_ERROR "Remill and its dependent libraries must be compiled with Clang.")
endif()
if(NOT DEFINED CMAKE_CXX_COMPILER)
if(DEFINED LLVM_INSTALL_PREFIX)
@@ -41,10 +38,6 @@ function(FindAndSelectClangCompiler)
set(CMAKE_CXX_COMPILER "clang++${executable_extension}" PARENT_SCOPE)
endif()
endif()
if (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" AND NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang")
message(FATAL_ERROR "Remill and its dependent libraries must be compiled with Clang.")
endif()
if(NOT DEFINED CMAKE_ASM_COMPILER)
if(DEFINED LLVM_INSTALL_PREFIX)
+2 -2
View File
@@ -162,8 +162,8 @@ linux_build() {
local log_file=`mktemp`
# set up ada support for cmake
# Old supported versions: "35" "36" "37" "38" "39"
llvm_version_list=( "40" "50" "60" )
# Old supported versions: "35" "36" "37" "38" "39" "40"
llvm_version_list=( "50" "60" )
for llvm_version in "${llvm_version_list[@]}" ; do
printf "#\n"
printf "# Running CI tests for LLVM version ${llvm_version}...\n"