| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- cmake_minimum_required(VERSION 3.13)
- project(zerotier-core LANGUAGES CXX ASM)
- file (GLOB core_src_glob ${PROJ_DIR}/node/*.cpp)
- file (GLOB core_hdr_glob ${PROJ_DIR}/node/*.hpp)
- if(${CPU_ARCHITECTURE} STREQUAL "x86_64")
- set(CMAKE_ASM_FLAGS "${CFLAGS} -x assembler-with-cpp -z noexecstack")
- set(ASM_SALSA_DIR ${CMAKE_SOURCE_DIR}/ext/x64-salsa2012-asm)
- set(ASM_ED25519_DIR ${CMAKE_SOURCE_DIR}/ext/ed25519-amd64-asm)
- list(APPEND core_src_glob
- ${ASM_SALSA_DIR}/salsa2012.s
- #${ASM_ED25519_DIR}/batch.c
- ${ASM_ED25519_DIR}/choose_t.s
- ${ASM_ED25519_DIR}/consts.s
- ${ASM_ED25519_DIR}/fe25519_add.s
- ${ASM_ED25519_DIR}/fe25519_freeze.s
- ${ASM_ED25519_DIR}/fe25519_getparity.c
- ${ASM_ED25519_DIR}/fe25519_invert.c
- ${ASM_ED25519_DIR}/fe25519_iseq.c
- ${ASM_ED25519_DIR}/fe25519_iszero.c
- ${ASM_ED25519_DIR}/fe25519_mul.s
- ${ASM_ED25519_DIR}/fe25519_neg.c
- ${ASM_ED25519_DIR}/fe25519_pack.c
- ${ASM_ED25519_DIR}/fe25519_pow2523.c
- ${ASM_ED25519_DIR}/fe25519_setint.c
- ${ASM_ED25519_DIR}/fe25519_square.s
- ${ASM_ED25519_DIR}/fe25519_sub.s
- ${ASM_ED25519_DIR}/fe25519_unpack.c
- ${ASM_ED25519_DIR}/ge25519_add_p1p1.s
- ${ASM_ED25519_DIR}/ge25519_add.c
- ${ASM_ED25519_DIR}/ge25519_base.c
- ${ASM_ED25519_DIR}/ge25519_dbl_p1p1.s
- ${ASM_ED25519_DIR}/ge25519_double_scalarmult.c
- ${ASM_ED25519_DIR}/ge25519_double.c
- ${ASM_ED25519_DIR}/ge25519_isneutral.c
- ${ASM_ED25519_DIR}/ge25519_multi_scalarmult.c
- ${ASM_ED25519_DIR}/ge25519_nielsadd_p1p1.s
- ${ASM_ED25519_DIR}/ge25519_nielsadd2.s
- ${ASM_ED25519_DIR}/ge25519_p1p1_to_p2.s
- ${ASM_ED25519_DIR}/ge25519_p1p1_to_p3.s
- ${ASM_ED25519_DIR}/ge25519_pack.c
- ${ASM_ED25519_DIR}/ge25519_pnielsadd_p1p1.s
- ${ASM_ED25519_DIR}/ge25519_scalarmult_base.c
- ${ASM_ED25519_DIR}/ge25519_unpackneg.c
- ${ASM_ED25519_DIR}/heap_rootreplaced_1limb.s
- ${ASM_ED25519_DIR}/heap_rootreplaced_2limbs.s
- ${ASM_ED25519_DIR}/heap_rootreplaced_3limbs.s
- ${ASM_ED25519_DIR}/heap_rootreplaced.s
- ${ASM_ED25519_DIR}/hram.c
- ${ASM_ED25519_DIR}/index_heap.c
- #${ASM_ED25519_DIR}/keypair.c
- #${ASM_ED25519_DIR}/open.c
- ${ASM_ED25519_DIR}/sc25519_add.s
- ${ASM_ED25519_DIR}/sc25519_barrett.s
- ${ASM_ED25519_DIR}/sc25519_from_shortsc.c
- ${ASM_ED25519_DIR}/sc25519_from32bytes.c
- ${ASM_ED25519_DIR}/sc25519_from64bytes.c
- ${ASM_ED25519_DIR}/sc25519_iszero.c
- ${ASM_ED25519_DIR}/sc25519_lt.s
- ${ASM_ED25519_DIR}/sc25519_mul_shortsc.c
- ${ASM_ED25519_DIR}/sc25519_mul.c
- ${ASM_ED25519_DIR}/sc25519_slide.c
- ${ASM_ED25519_DIR}/sc25519_sub_nored.s
- ${ASM_ED25519_DIR}/sc25519_to32bytes.c
- ${ASM_ED25519_DIR}/sc25519_window4.c
- ${ASM_ED25519_DIR}/sign.c
- ${ASM_ED25519_DIR}/ull4_mul.s
- )
- list(APPEND core_hdr_glob
- ${ASM_SALSA_DIR}/salsa2012.h
- ${ASM_ED25519_DIR}/fe25519.h
- ${ASM_ED25519_DIR}/ge25519.h
- ${ASM_ED25519_DIR}/hram.h
- ${ASM_ED25519_DIR}/index_heap.h
- ${ASM_ED25519_DIR}/sc25519.h)
- set_property(SOURCE ${ASM_ED25519_DIR}/fe25519_freeze.s PROPERTY COMPILE_FLAGS "-z noexecstack")
- elseif(${CPU_ARCHITECTURE} STREQUAL "aarch64")
- endif()
- add_library(zerotier-core STATIC ${core_src_glob} ${core_hdr_glob})
- target_include_directories(zerotier-core
- PRIVATE
- ${prometheus-cpp-lite_INCLUDE}
- )
- target_link_libraries(zerotier-core
- PRIVATE
- nlohmann_json::nlohmann_json
- Threads::Threads
- prometheus-cpp-lite
- Threads::Threads)
|