Skip to content

Commit

Permalink
Simplify Prefix Build Support (#1178)
Browse files Browse the repository at this point in the history
  • Loading branch information
skmcgrail authored Sep 13, 2023
1 parent f16f154 commit ebe0892
Show file tree
Hide file tree
Showing 209 changed files with 350 additions and 633 deletions.
69 changes: 42 additions & 27 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,9 @@ endif()
install(DIRECTORY include/openssl
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
COMPONENT Development
PATTERN boringssl_prefix_symbols.h EXCLUDE
PATTERN boringssl_prefix_symbols_asm.h EXCLUDE
PATTERN boringssl_prefix_symbols_nasm.inc EXCLUDE
)

if(ANDROID)
Expand Down Expand Up @@ -130,46 +133,43 @@ foreach(VAR CMAKE_C_FLAGS CMAKE_CXX_FLAGS CMAKE_ASM_FLAGS)
"${${VAR}_RELEASE}")
endforeach()

if(BORINGSSL_PREFIX)
add_definitions(-DBORINGSSL_PREFIX=${BORINGSSL_PREFIX})
# CMake automatically connects include_directories to the NASM command-line,
# but not add_definitions.
set(CMAKE_ASM_NASM_FLAGS "${CMAKE_ASM_NASM_FLAGS} -DBORINGSSL_PREFIX=${BORINGSSL_PREFIX}")
set(CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS} -DBORINGSSL_PREFIX=${BORINGSSL_PREFIX}")
endif()

if(BORINGSSL_PREFIX AND BORINGSSL_PREFIX_SYMBOLS AND GO_EXECUTABLE)

# Use "symbol_prefix_include" to store generated header files
include_directories(${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include)

if(IS_ABSOLUTE ${BORINGSSL_PREFIX_SYMBOLS})
set(BORINGSSL_PREFIX_SYMBOLS_PATH ${BORINGSSL_PREFIX_SYMBOLS})
else()
set(BORINGSSL_PREFIX_SYMBOLS_PATH ${PROJECT_BINARY_DIR}/${BORINGSSL_PREFIX_SYMBOLS})
endif()

add_custom_command(
OUTPUT symbol_prefix_include/boringssl_prefix_symbols.h
symbol_prefix_include/boringssl_prefix_symbols_asm.h
symbol_prefix_include/boringssl_prefix_symbols_nasm.inc
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include
COMMAND ${GO_EXECUTABLE} run ${CMAKE_CURRENT_SOURCE_DIR}/util/make_prefix_headers.go -out ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include ${BORINGSSL_PREFIX_SYMBOLS_PATH}
COMMAND sed -i.bak '/ bignum_/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/boringssl_prefix_symbols.h
COMMAND sed -i.bak '/ bignum_/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/boringssl_prefix_symbols_asm.h
COMMAND sed -i.bak '/ bignum_/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/boringssl_prefix_symbols_nasm.inc
COMMAND sed -i.bak '/ curve25519_x25519/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/boringssl_prefix_symbols.h
COMMAND sed -i.bak '/ curve25519_x25519/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/boringssl_prefix_symbols_asm.h
COMMAND sed -i.bak '/ curve25519_x25519/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/boringssl_prefix_symbols_nasm.inc
OUTPUT symbol_prefix_include/openssl/boringssl_prefix_symbols.h
symbol_prefix_include/openssl/boringssl_prefix_symbols_asm.h
symbol_prefix_include/openssl/boringssl_prefix_symbols_nasm.inc
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl
COMMAND ${GO_EXECUTABLE} run ${CMAKE_CURRENT_SOURCE_DIR}/util/make_prefix_headers.go -out ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl -prefix ${BORINGSSL_PREFIX} ${BORINGSSL_PREFIX_SYMBOLS_PATH}
COMMAND sed -i.bak '/ bignum_/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl/boringssl_prefix_symbols.h
COMMAND sed -i.bak '/ bignum_/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl/boringssl_prefix_symbols_asm.h
COMMAND sed -i.bak '/ bignum_/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl/boringssl_prefix_symbols_nasm.inc
COMMAND sed -i.bak '/ curve25519_x25519/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl/boringssl_prefix_symbols.h
COMMAND sed -i.bak '/ curve25519_x25519/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl/boringssl_prefix_symbols_asm.h
COMMAND sed -i.bak '/ curve25519_x25519/d' ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl/boringssl_prefix_symbols_nasm.inc
COMMAND ${CMAKE_COMMAND} -E remove
${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl/boringssl_prefix_symbols.h.bak
${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl/boringssl_prefix_symbols_asm.h.bak
${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl/boringssl_prefix_symbols_nasm.inc.bak
DEPENDS util/make_prefix_headers.go
${BORINGSSL_PREFIX_SYMBOLS_PATH})
# add_dependencies needs a target, not a file, so we add an intermediate
# target.
add_custom_target(
boringssl_prefix_symbols
DEPENDS symbol_prefix_include/boringssl_prefix_symbols.h
symbol_prefix_include/boringssl_prefix_symbols_asm.h
symbol_prefix_include/boringssl_prefix_symbols_nasm.inc)
DEPENDS symbol_prefix_include/openssl/boringssl_prefix_symbols.h
symbol_prefix_include/openssl/boringssl_prefix_symbols_asm.h
symbol_prefix_include/openssl/boringssl_prefix_symbols_nasm.inc)

install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
COMPONENT Development
)
elseif(BORINGSSL_PREFIX AND BORINGSSL_PREFIX_HEADERS)

if(IS_ABSOLUTE ${BORINGSSL_PREFIX_HEADERS})
Expand All @@ -178,15 +178,30 @@ elseif(BORINGSSL_PREFIX AND BORINGSSL_PREFIX_HEADERS)
set(BORINGSSL_PREFIX_HEADERS_PATH ${PROJECT_BINARY_DIR}/${BORINGSSL_PREFIX_HEADERS})
endif()

include_directories(${BORINGSSL_PREFIX_HEADERS_PATH})
file(COPY ${BORINGSSL_PREFIX_HEADERS_PATH}/openssl/boringssl_prefix_symbols.h DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl)
file(COPY ${BORINGSSL_PREFIX_HEADERS_PATH}/openssl/boringssl_prefix_symbols_asm.h DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl)
file(COPY ${BORINGSSL_PREFIX_HEADERS_PATH}/openssl/boringssl_prefix_symbols_nasm.inc DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl)

add_custom_target(boringssl_prefix_symbols)

install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/symbol_prefix_include/openssl
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
COMPONENT Development
)
elseif(BORINGSSL_PREFIX OR BORINGSSL_PREFIX_SYMBOLS)
message(FATAL_ERROR "Must specify both or neither of BORINGSSL_PREFIX and BORINGSSL_PREFIX_SYMBOLS")
elseif((BORINGSSL_PREFIX AND BORINGSSL_PREFIX_SYMBOLS) AND NOT GO_EXECUTABLE)
message(FATAL_ERROR "Must have Go installed when using BORINGSSL_PREFIX and BORINGSSL_PREFIX_SYMBOLS")
else()
add_custom_target(boringssl_prefix_symbols)

install(DIRECTORY include/openssl
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
COMPONENT Development
PATTERN boringssl_prefix_symbols.h
PATTERN boringssl_prefix_symbols_asm.h
PATTERN boringssl_prefix_symbols_nasm.inc
)
endif()

if("${CMAKE_SYSTEM_NAME}" STREQUAL "Emscripten")
Expand Down
20 changes: 16 additions & 4 deletions crypto/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -532,10 +532,10 @@ add_library(
)

target_compile_definitions(crypto_objects PRIVATE BORINGSSL_IMPLEMENTATION)
target_include_directories(crypto_objects PRIVATE ../include)

# For the prefix build, the object files need the prefix header files to build.
add_dependencies(crypto_objects boringssl_prefix_symbols)
target_include_directories(crypto_objects BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)
target_include_directories(crypto_objects PRIVATE ${PROJECT_SOURCE_DIR}/include)

function(build_libcrypto name module_source)
if(FIPS)
Expand All @@ -555,8 +555,11 @@ function(build_libcrypto name module_source)
target_link_libraries(${name} PUBLIC pthread)
endif()

add_dependencies(${name} boringssl_prefix_symbols)
target_include_directories(${name} BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)

target_include_directories(${name} PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include>
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:include>)
endfunction()

Expand Down Expand Up @@ -584,7 +587,7 @@ if(FIPS_SHARED)
generated_fips_shared_support.c
${PROJECT_SOURCE_DIR}/crypto/fipsmodule/cpucap/cpucap.c
)
target_include_directories(generated_fipsmodule PRIVATE ../include)
target_include_directories(generated_fipsmodule PRIVATE ${PROJECT_SOURCE_DIR}/include)

build_libcrypto(crypto $<TARGET_OBJECTS:generated_fipsmodule>)
else()
Expand Down Expand Up @@ -659,6 +662,8 @@ if(BUILD_TESTING)
add_executable(${executable_name} ${test_file})
target_compile_definitions(${executable_name} PRIVATE BORINGSSL_IMPLEMENTATION)
target_link_libraries(${executable_name} test_support_lib boringssl_gtest_main crypto)
add_dependencies(${executable_name} boringssl_prefix_symbols)
target_include_directories(${executable_name} BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)
add_dependencies(all_tests ${executable_name})
endmacro()

Expand All @@ -683,7 +688,9 @@ if(BUILD_TESTING)
target_compile_options(${RANDOM_TEST_EXEC} PUBLIC -DJITTER_ENTROPY)
endif()

add_dependencies(${RANDOM_TEST_EXEC} boringssl_prefix_symbols)
target_link_libraries(${RANDOM_TEST_EXEC} test_support_lib boringssl_gtest crypto)
target_include_directories(${RANDOM_TEST_EXEC} BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)

add_dependencies(all_tests ${RANDOM_TEST_EXEC})

Expand Down Expand Up @@ -770,7 +777,9 @@ if(BUILD_TESTING)
$<TARGET_OBJECTS:crypto_test_data>
)

add_dependencies(${CRYPTO_TEST_EXEC} boringssl_prefix_symbols)
target_link_libraries(${CRYPTO_TEST_EXEC} test_support_lib boringssl_gtest_main crypto)
target_include_directories(${CRYPTO_TEST_EXEC} BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)
if(WIN32)
target_link_libraries(${CRYPTO_TEST_EXEC} ws2_32)
else()
Expand All @@ -783,6 +792,9 @@ if(BUILD_TESTING)
add_executable(${DYNAMIC_LOADING_TEST_EXEC} dynamic_loading_test.c)
add_dependencies(${DYNAMIC_LOADING_TEST_EXEC} crypto)

add_dependencies(${DYNAMIC_LOADING_TEST_EXEC} boringssl_prefix_symbols)
target_include_directories(${DYNAMIC_LOADING_TEST_EXEC} BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)

if (BUILD_SHARED_LIBS AND NOT WIN32)
target_compile_options(${DYNAMIC_LOADING_TEST_EXEC} PUBLIC "-DLIBCRYPTO_PATH=$<TARGET_FILE:crypto>")
# Do not link to boringssl_gtest_main or any library that might be linked to libcrypto.so.
Expand Down
24 changes: 15 additions & 9 deletions crypto/fipsmodule/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -259,15 +259,14 @@ function(cpreprocess dest src)
set(TARGET "--target=${CMAKE_ASM_COMPILER_TARGET}")
endif()

set(PREFIX_INCLUDE "")
if(BORINGSSL_PREFIX)
set(PREFIX_INCLUDE "-I${BORINGSSL_PREFIX_HEADERS_PATH}")
set(PREFIX_INCLUDE "-I${PROJECT_BINARY_DIR}/symbol_prefix_include")
endif()

string(REGEX REPLACE "[ ]+" ";" CMAKE_ASM_FLAGS "${CMAKE_ASM_FLAGS}")
add_custom_command(
OUTPUT ${dest}
COMMAND ${CMAKE_ASM_COMPILER} ${TARGET} ${CMAKE_ASM_FLAGS} -E ${src} -I${PROJECT_SOURCE_DIR}/include ${PREFIX_INCLUDE} > ${dest}
COMMAND ${CMAKE_ASM_COMPILER} ${TARGET} ${CMAKE_ASM_FLAGS} -E ${src} ${PREFIX_INCLUDE} -I${PROJECT_SOURCE_DIR}/include > ${dest}
DEPENDS
${src}
${PROJECT_SOURCE_DIR}/include/openssl/arm_arch.h
Expand Down Expand Up @@ -342,7 +341,8 @@ if(FIPS_DELOCATE)
endif()

add_dependencies(bcm_c_generated_asm boringssl_prefix_symbols)
target_include_directories(bcm_c_generated_asm PRIVATE ../../include)
target_include_directories(bcm_c_generated_asm BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)
target_include_directories(bcm_c_generated_asm PRIVATE ${PROJECT_SOURCE_DIR}/include)
set_target_properties(bcm_c_generated_asm PROPERTIES COMPILE_OPTIONS "-S")
set_target_properties(bcm_c_generated_asm PROPERTIES POSITION_INDEPENDENT_CODE ON)

Expand Down Expand Up @@ -372,6 +372,8 @@ if(FIPS_DELOCATE)
target_compile_definitions(bcm_hashunset PRIVATE BORINGSSL_IMPLEMENTATION)

add_dependencies(bcm_hashunset boringssl_prefix_symbols)
target_include_directories(bcm_hashunset BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)
target_include_directories(bcm_hashunset PRIVATE ${PROJECT_SOURCE_DIR}/include)

set_target_properties(bcm_hashunset PROPERTIES POSITION_INDEPENDENT_CODE ON)
set_target_properties(bcm_hashunset PROPERTIES LINKER_LANGUAGE C)
Expand Down Expand Up @@ -402,7 +404,8 @@ if(FIPS_DELOCATE)
target_compile_definitions(fipsmodule PRIVATE BORINGSSL_IMPLEMENTATION)

add_dependencies(fipsmodule boringssl_prefix_symbols)
target_include_directories(fipsmodule PRIVATE ../../include)
target_include_directories(fipsmodule BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)
target_include_directories(fipsmodule PRIVATE ${PROJECT_SOURCE_DIR}/include)

set_target_properties(fipsmodule PROPERTIES LINKER_LANGUAGE C)
elseif(FIPS_SHARED)
Expand All @@ -421,7 +424,8 @@ elseif(FIPS_SHARED)
target_compile_definitions(fipsmodule PRIVATE BORINGSSL_IMPLEMENTATION)

add_dependencies(fipsmodule boringssl_prefix_symbols)
target_include_directories(fipsmodule PRIVATE ../../include)
target_include_directories(fipsmodule BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)
target_include_directories(fipsmodule PRIVATE ${PROJECT_SOURCE_DIR}/include)

add_library(
bcm_library
Expand All @@ -433,10 +437,11 @@ elseif(FIPS_SHARED)
${BCM_ASM_SOURCES}
)
target_compile_definitions(bcm_library PRIVATE BORINGSSL_IMPLEMENTATION)
target_include_directories(bcm_library PRIVATE ../../include)
target_include_directories(bcm_library PRIVATE ${PROJECT_SOURCE_DIR}/include)

add_dependencies(bcm_library boringssl_prefix_symbols)
target_include_directories(bcm_library PRIVATE ../../include)
target_include_directories(bcm_library BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)
target_include_directories(bcm_library PRIVATE ${PROJECT_SOURCE_DIR}/include)
if (APPLE)
set(BCM_NAME bcm.o)
# The linker on macOS doesn't have the ability to process linker scripts,
Expand Down Expand Up @@ -531,5 +536,6 @@ else()
target_compile_definitions(fipsmodule PRIVATE BORINGSSL_IMPLEMENTATION)

add_dependencies(fipsmodule boringssl_prefix_symbols)
target_include_directories(fipsmodule PRIVATE ../../include)
target_include_directories(fipsmodule BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)
target_include_directories(fipsmodule PRIVATE ${PROJECT_SOURCE_DIR}/include)
endif()
4 changes: 1 addition & 3 deletions crypto/hrss/asm/poly_rq_mul.S
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,7 @@
#if !defined(OPENSSL_NO_ASM) && !defined(OPENSSL_SMALL) && \
defined(__linux__) && !defined(MY_ASSEMBLER_IS_TOO_OLD_FOR_AVX)

#if defined(BORINGSSL_PREFIX)
#include <boringssl_prefix_symbols_asm.h>
#endif
#include <openssl/boringssl_prefix_symbols_asm.h>

// This is the polynomial multiplication function from [HRSS], provided by kind
// permission of the authors.
Expand Down
4 changes: 1 addition & 3 deletions crypto/perlasm/arm-xlate.pl
Original file line number Diff line number Diff line change
Expand Up @@ -187,9 +187,7 @@ sub expand_line {
#if !defined(OPENSSL_NO_ASM) && $arch_defines && $target_defines
___

print "#if defined(BORINGSSL_PREFIX)\n";
print "#include <boringssl_prefix_symbols_asm.h>\n";
print "#endif\n";
print "#include <openssl/boringssl_prefix_symbols_asm.h>\n";

while(my $line=<>) {

Expand Down
4 changes: 1 addition & 3 deletions crypto/perlasm/ppc-xlate.pl
Original file line number Diff line number Diff line change
Expand Up @@ -266,9 +266,7 @@ sub vcrypto_op {
#endif
#if !defined(OPENSSL_NO_ASM) && defined(__powerpc64__) && defined(__ELF__)
#if defined(BORINGSSL_PREFIX)
#include <boringssl_prefix_symbols_asm.h>
#endif
#include <openssl/boringssl_prefix_symbols_asm.h>
___

while($line=<>) {
Expand Down
8 changes: 2 additions & 6 deletions crypto/perlasm/x86_64-xlate.pl
Original file line number Diff line number Diff line change
Expand Up @@ -1500,9 +1500,7 @@ sub rxb {
\%define YMMWORD
\%define ZMMWORD
\%ifdef BORINGSSL_PREFIX
\%include "boringssl_prefix_symbols_nasm.inc"
\%endif
\%include "openssl/boringssl_prefix_symbols_nasm.inc"
___
} elsif ($masm) {
print <<___;
Expand All @@ -1529,9 +1527,7 @@ sub rxb {
#endif
#if defined(__x86_64__) && !defined(OPENSSL_NO_ASM) && $target
#if defined(BORINGSSL_PREFIX)
#include <boringssl_prefix_symbols_asm.h>
#endif
#include <openssl/boringssl_prefix_symbols_asm.h>
___
}
Expand Down
8 changes: 2 additions & 6 deletions crypto/perlasm/x86asm.pl
Original file line number Diff line number Diff line change
Expand Up @@ -284,9 +284,7 @@ sub ::asm_finish
___
if ($win32) {
print <<___ unless $masm;
\%ifdef BORINGSSL_PREFIX
\%include "boringssl_prefix_symbols_nasm.inc"
\%endif
\%include "openssl/boringssl_prefix_symbols_nasm.inc"
\%ifidn __OUTPUT_FORMAT__, win32
___
print @out;
Expand Down Expand Up @@ -314,9 +312,7 @@ sub ::asm_finish
#endif
#if !defined(OPENSSL_NO_ASM) && defined(__i386__) && $target
#if defined(BORINGSSL_PREFIX)
#include <boringssl_prefix_symbols_asm.h>
#endif
#include <openssl/boringssl_prefix_symbols_asm.h>
___
print @out;
print <<___;
Expand Down
4 changes: 1 addition & 3 deletions crypto/poly1305/poly1305_arm_asm.S
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,7 @@

#if defined(__ARMEL__) && !defined(OPENSSL_NO_ASM) && defined(__ELF__)

#if defined(BORINGSSL_PREFIX)
#include <boringssl_prefix_symbols_asm.h>
#endif
#include <openssl/boringssl_prefix_symbols_asm.h>

# This implementation was taken from the public domain, neon2 version in
# SUPERCOP by D. J. Bernstein and Peter Schwabe.
Expand Down
3 changes: 3 additions & 0 deletions crypto/test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,8 @@ if(WIN32)
endif()
target_link_libraries(test_support_lib boringssl_gtest crypto)

target_include_directories(test_support_lib BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)

add_library(boringssl_gtest_main STATIC gtest_main.cc)
target_link_libraries(boringssl_gtest_main boringssl_gtest crypto test_support_lib)
target_include_directories(boringssl_gtest_main BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)
1 change: 1 addition & 0 deletions fuzz/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ macro(fuzzer name)
add_executable(${name} ${name}.cc)
target_compile_options(${name} PRIVATE "-Wno-missing-prototypes")
target_link_libraries(${name} crypto ${ARGN})
target_include_directories(${name} BEFORE PRIVATE ${PROJECT_BINARY_DIR}/symbol_prefix_include)
if(LIBFUZZER_FROM_DEPS)
set_target_properties(${name} PROPERTIES LINK_FLAGS "-fsanitize=fuzzer-no-link")
target_link_libraries(${name} Fuzzer)
Expand Down
4 changes: 1 addition & 3 deletions generated-src/ios-aarch64/crypto/chacha/chacha-armv8.S
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,7 @@
#endif

#if !defined(OPENSSL_NO_ASM) && defined(__AARCH64EL__) && defined(__APPLE__)
#if defined(BORINGSSL_PREFIX)
#include <boringssl_prefix_symbols_asm.h>
#endif
#include <openssl/boringssl_prefix_symbols_asm.h>
#include <openssl/arm_arch.h>


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,7 @@
#endif

#if !defined(OPENSSL_NO_ASM) && defined(__AARCH64EL__) && defined(__APPLE__)
#if defined(BORINGSSL_PREFIX)
#include <boringssl_prefix_symbols_asm.h>
#endif
#include <openssl/boringssl_prefix_symbols_asm.h>
#include <openssl/arm_arch.h>
.section __TEXT,__const

Expand Down
Loading

0 comments on commit ebe0892

Please sign in to comment.