mirror of
https://git.sr.ht/~thestr4ng3r/chiaki
synced 2025-03-12 05:25:23 -07:00
55 lines
1.4 KiB
CMake
55 lines
1.4 KiB
CMake
|
|
if(NOT CHIAKI_USE_SYSTEM_NANOPB)
|
|
##################
|
|
# nanopb
|
|
##################
|
|
|
|
add_subdirectory(nanopb EXCLUDE_FROM_ALL)
|
|
set(NANOPB_GENERATOR_PY "${CMAKE_CURRENT_SOURCE_DIR}/nanopb/generator/nanopb_generator.py" PARENT_SCOPE)
|
|
add_library(nanopb INTERFACE)
|
|
target_link_libraries(nanopb INTERFACE protobuf-nanopb-static)
|
|
target_include_directories(nanopb INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/nanopb")
|
|
add_library(Nanopb::nanopb ALIAS nanopb)
|
|
endif()
|
|
|
|
if(NOT CHIAKI_USE_SYSTEM_JERASURE)
|
|
##################
|
|
# gf-complete
|
|
##################
|
|
|
|
set(GF_COMPLETE_SOURCE
|
|
gf-complete/src/gf.c
|
|
gf-complete/src/gf_wgen.c
|
|
gf-complete/src/gf_w4.c
|
|
gf-complete/src/gf_w8.c
|
|
gf-complete/src/gf_w16.c
|
|
gf-complete/src/gf_w32.c
|
|
gf-complete/src/gf_w64.c
|
|
gf-complete/src/gf_w128.c
|
|
gf-complete/src/gf_rand.c
|
|
gf-complete/src/gf_general.c
|
|
gf-complete/src/gf_cpu.c)
|
|
|
|
# TODO: support NEON
|
|
|
|
add_library(gf_complete STATIC ${GF_COMPLETE_SOURCE})
|
|
target_include_directories(gf_complete PUBLIC gf-complete/include)
|
|
|
|
##################
|
|
# jerasure
|
|
##################
|
|
|
|
set(JERASURE_SOURCE
|
|
jerasure/src/galois.c
|
|
jerasure/src/jerasure.c
|
|
jerasure/src/reed_sol.c
|
|
jerasure/src/cauchy.c
|
|
jerasure/src/liberation.c)
|
|
|
|
add_library(jerasure STATIC ${JERASURE_SOURCE})
|
|
target_include_directories(jerasure PUBLIC jerasure/include)
|
|
target_link_libraries(jerasure gf_complete)
|
|
|
|
add_library(Jerasure::Jerasure ALIAS jerasure)
|
|
endif()
|