make all non hardware_ libraries foo add C preprocessor definition LIB_FOO=1, and remove bespoke definitions which were all undocumented anyway (#374)

This commit is contained in:
Graham Sanderson
2021-05-04 08:00:17 -05:00
committed by GitHub
parent 6796faf0d5
commit b7da70a53b
46 changed files with 114 additions and 183 deletions

View File

@ -1,14 +1,10 @@
if (NOT TARGET pico_int64_ops)
#shims for ROM functions for -lgcc functions (listed below)
add_library(pico_int64_ops INTERFACE)
pico_add_impl_library(pico_int64_ops)
# no custom implementation; falls thru to compiler
add_library(pico_int64_ops_compiler INTERFACE)
# PICO_BUILD_DEFINE: PICO_INT64_OPS_COMPILER, whether compiler provided int64_ops multiplication support is being used, type=bool, default=0, but dependent on CMake options, group=pico_int64_ops
target_compile_definitions(pico_int64_ops_compiler INTERFACE
PICO_INT64_OPS_COMPILER=1
)
pico_add_impl_library(pico_int64_ops_compiler)
# add alias "default" which is just pico.
add_library(pico_int64_ops_default INTERFACE)
@ -19,18 +15,13 @@ if (NOT TARGET pico_int64_ops)
target_link_libraries(pico_int64_ops INTERFACE
$<IF:$<BOOL:$<TARGET_PROPERTY:PICO_TARGET_INT64_OPS_IMPL>>,$<TARGET_PROPERTY:PICO_TARGET_INT64_OPS_IMPL>,${PICO_DEFAULT_INT64_OPS_IMPL}>)
add_library(pico_int64_ops_pico INTERFACE)
pico_add_impl_library(pico_int64_ops_pico)
target_include_directories(pico_int64_ops_pico INTERFACE ${CMAKE_CURRENT_LIST_DIR}/include)
target_sources(pico_int64_ops_pico INTERFACE
${CMAKE_CURRENT_LIST_DIR}/pico_int64_ops_aeabi.S
)
# PICO_BUILD_DEFINE: PICO_INT64_OPS_PICO, whether optimized pico/bootrom provided int64_ops multiplication support is being used, type=bool, default=1, but dependent on CMake options, group=pico_int64_ops
target_compile_definitions(pico_int64_ops_pico INTERFACE
PICO_INT64_OPS_PICO=1
)
pico_wrap_function(pico_int64_ops_pico __aeabi_lmul)
macro(pico_set_int64_ops_implementation TARGET IMPL)