forked from Mbed-TLS/mbedtls
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
3rdparty: Add additional build facilities for 3rd-party code
- Loading branch information
Showing
11 changed files
with
79 additions
and
27 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,11 @@ | ||
list (APPEND thirdparty_src) | ||
list (APPEND thirdparty_lib) | ||
list (APPEND thirdparty_inc) | ||
list (APPEND thirdparty_def) | ||
|
||
add_subdirectory(everest) | ||
|
||
set(src_thirdparty | ||
${src_everest} | ||
PARENT_SCOPE | ||
) | ||
set(thirdparty_src ${thirdparty_src} PARENT_SCOPE) | ||
set(thirdparty_lib ${thirdparty_lib} PARENT_SCOPE) | ||
set(thirdparty_inc ${thirdparty_inc} PARENT_SCOPE) | ||
set(thirdparty_def ${thirdparty_def} PARENT_SCOPE) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,40 @@ | ||
include_directories(include include/everest include/everest/kremlib) | ||
list (APPEND everest_src) | ||
list (APPEND everest_inc) | ||
list (APPEND everest_def) | ||
|
||
set(src_everest | ||
${CMAKE_CURRENT_SOURCE_DIR}/library/everest.c | ||
${CMAKE_CURRENT_SOURCE_DIR}/library/Hacl_Curve25519.c | ||
${CMAKE_CURRENT_SOURCE_DIR}/library/x25519.c | ||
${CMAKE_CURRENT_SOURCE_DIR}/library/kremlib/FStar_UInt64_FStar_UInt32_FStar_UInt16_FStar_UInt8.c | ||
PARENT_SCOPE | ||
) | ||
execute_process(COMMAND ${PERL_EXECUTABLE} scripts/config.pl -f include/mbedtls/config.h get MBEDTLS_ECDH_VARIANT_EVEREST_ENABLED RESULT_VARIABLE result) | ||
|
||
if(${result} EQUAL 0) | ||
set(everest_src | ||
${CMAKE_CURRENT_SOURCE_DIR}/library/everest.c | ||
${CMAKE_CURRENT_SOURCE_DIR}/library/x25519.c | ||
${CMAKE_CURRENT_SOURCE_DIR}/library/kremlib/FStar_UInt64_FStar_UInt32_FStar_UInt16_FStar_UInt8.c | ||
) | ||
|
||
if (${CMAKE_LIBRARY_ARCHITECTURE} STREQUAL "x86_64-linux-gnu") | ||
list(APPEND everest_src ${CMAKE_CURRENT_SOURCE_DIR}/library/Hacl_Curve25519.c) | ||
else() | ||
list(APPEND everest_def -DKRML_VERIFIED_UINT128) | ||
list(APPEND everest_src | ||
${CMAKE_CURRENT_SOURCE_DIR}/library/legacy/Hacl_Curve25519.c | ||
${CMAKE_CURRENT_SOURCE_DIR}/library/kremlib/FStar_UInt128_extracted.c | ||
) | ||
endif() | ||
|
||
list(APPEND everest_inc ${CMAKE_CURRENT_SOURCE_DIR}/../../include ${CMAKE_CURRENT_SOURCE_DIR}/include ${CMAKE_CURRENT_SOURCE_DIR}/include/everest ${CMAKE_CURRENT_SOURCE_DIR}/include/everest/kremlib) | ||
|
||
if(INSTALL_MBEDTLS_HEADERS) | ||
|
||
file(GLOB_RECURSE headers "${CMAKE_CURRENT_SOURCE_DIR}/include/everest/*.h") | ||
|
||
install(FILES ${headers} | ||
DESTINATION include/everest | ||
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) | ||
|
||
endif(INSTALL_MBEDTLS_HEADERS) | ||
|
||
endif() | ||
|
||
set(thirdparty_src ${thirdparty_src} ${everest_src} PARENT_SCOPE) | ||
set(thirdparty_inc ${thirdparty_inc} ${everest_inc} PARENT_SCOPE) | ||
set(thirdparty_def ${thirdparty_def} ${everest_def} PARENT_SCOPE) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,18 @@ | ||
THIRDPARTY_INCLUDES+=-I../3rdparty/everest/include -I../3rdparty/everest/include/everest -I../3rdparty/everest/include/everest/kremlib | ||
|
||
THIRDPARTY_OBJECTS+= \ | ||
../3rdparty/everest/library/everest.o \ | ||
../3rdparty/everest/library/Hacl_Curve25519.o \ | ||
../3rdparty/everest/library/x25519.o \ | ||
../3rdparty/everest/library/kremlib/FStar_UInt64_FStar_UInt32_FStar_UInt16_FStar_UInt8.o | ||
EVEREST_ENABLED=$(shell perl ../scripts/config.pl -f ../include/mbedtls/config.h get MBEDTLS_ECDH_VARIANT_EVEREST_ENABLED; echo $$?) | ||
|
||
ifeq ($(EVEREST_ENABLED),0) | ||
THIRDPARTY_INCLUDES+=-I../3rdparty/everest/include -I../3rdparty/everest/include/everest -I../3rdparty/everest/include/everest/kremlib | ||
|
||
THIRDPARTY_OBJECTS+= \ | ||
../3rdparty/everest/library/everest.o \ | ||
../3rdparty/everest/library/x25519.o \ | ||
../3rdparty/everest/library/kremlib/FStar_UInt64_FStar_UInt32_FStar_UInt16_FStar_UInt8.o | ||
|
||
ifeq ($(shell getconf LONG_BIT),64) | ||
THIRDPARTY_OBJECTS+=../3rdparty/everest/library/Hacl_Curve25519.o | ||
else | ||
CFLAGS+="-DKRML_VERIFIED_UINT128" | ||
THIRDPARTY_OBJECTS+=../3rdparty/everest/library/legacy/Hacl_Curve25519.o \ | ||
../3rdparty/everest/library/kremlib/FStar_UInt128_extracted.o | ||
endif | ||
endif |
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters