1#TODO(michaelrj): separate the fputil library into individual targets.
2add_header_library(
3  fputil
4  HDRS
5    FEnvImpl.h
6    BasicOperations.h
7    DivisionAndRemainderOperations.h
8    FloatProperties.h
9    FPBits.h
10    BasicOperations.h
11    ManipulationFunctions.h
12    NearestIntegerOperations.h
13    NormalFloat.h
14    PlatformDefs.h
15    builtin_wrappers.h
16  DEPENDS
17    libc.include.math
18    libc.include.errno
19    libc.include.fenv
20    libc.src.__support.common
21    libc.src.__support.CPP.bit
22    libc.src.__support.CPP.type_traits
23    libc.src.__support.CPP.uint128
24    libc.src.errno.errno
25)
26
27add_header_library(
28  xfloat
29  HDRS
30    XFloat.h
31  DEPENDS
32    .fputil #FPBits and NormalFloat
33    libc.src.__support.CPP.uint
34)
35
36add_header_library(
37  sqrt
38  HDRS
39    sqrt.h
40  DEPENDS
41    .fputil
42    libc.src.__support.FPUtil.generic.sqrt
43)
44
45add_header_library(
46  fma
47  HDRS
48    FMA.h
49  DEPENDS
50    .fputil
51    libc.src.__support.FPUtil.generic.fma
52  FLAGS
53    FMA_OPT
54)
55
56add_header_library(
57  multiply_add
58  HDRS
59    multiply_add.h
60  DEPENDS
61    .fma
62)
63
64add_header_library(
65  polyeval
66  HDRS
67    PolyEval.h
68  DEPENDS
69    .multiply_add
70)
71
72add_header_library(
73  nearest_integer
74  HDRS
75    nearest_integer.h
76  DEPENDS
77    libc.src.__support.common
78)
79
80add_subdirectory(generic)
81