diff --git a/cmake/utils.cmake b/cmake/utils.cmake index a6952c833..672dcad33 100644 --- a/cmake/utils.cmake +++ b/cmake/utils.cmake @@ -130,7 +130,9 @@ function(GenerateNamedObjects sources_in float_type_in) list(APPEND obj_defines "ASMNAME=${FU}${obj_name};ASMFNAME=${FU}${obj_name}${BU};NAME=${obj_name}${BU};CNAME=${obj_name};CHAR_NAME=\"${obj_name}${BU}\";CHAR_CNAME=\"${obj_name}\"") list(APPEND obj_defines ${defines_in}) - list(APPEND obj_defines ${float_type_in}) + if (NOT ${float_type_in} STREQUAL "SINGLE") + list(APPEND obj_defines ${float_type_in}) + endif () add_library(${obj_name} OBJECT ${source_file}) set_target_properties(${obj_name} PROPERTIES COMPILE_DEFINITIONS "${obj_defines}") diff --git a/kernel/CMakeLists.txt b/kernel/CMakeLists.txt index 8bc325f17..a83bd0dbe 100644 --- a/kernel/CMakeLists.txt +++ b/kernel/CMakeLists.txt @@ -7,6 +7,14 @@ if (${ARCH} STREQUAL "x86") GenerateNamedObjects("${KERNELDIR}/cpuid.S" "") endif () +# TODO: Read from ${KERNELDIR}/KERNEL - some architectures use a different lsame +set(LSAME_KERNEL lsame.S) +set(SCABS_KERNEL cabs.S) +set(DCABS_KERNEL cabs.S) +GenerateNamedObjects("${KERNELDIR}/${LSAME_KERNEL}" "" "F_INTERFACE" "lsame") +GenerateNamedObjects("${KERNELDIR}/${SCABS_KERNEL}" "SINGLE" "COMPLEX;F_INTERFACE" "cabs1") +GenerateNamedObjects("${KERNELDIR}/${DCABS_KERNEL}" "DOUBLE" "COMPLEX;F_INTERFACE" "cabs1") + # Makefile.L1