Port of OpenLibm
Replace the FreeBSD libm with OpenLibm, which is easier to port. OpenLibm is used by Mirage's freestanding Ocaml runtime (sin POSIX). https://openlibm.org/ Ref #3289
This commit is contained in:
parent
382371d9e4
commit
777d92f6de
|
@ -0,0 +1,55 @@
|
||||||
|
PORT_DIR := $(call select_from_ports,openlibm)
|
||||||
|
|
||||||
|
# Depot hack
|
||||||
|
ifneq ($(PORT_DIR),)
|
||||||
|
LIBM_PORT_DIR = $(PORT_DIR)/
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBM_SRC_DIR := $(LIBM_PORT_DIR)src/lib/openlibm
|
||||||
|
|
||||||
|
SHARED_LIB = yes
|
||||||
|
LIBS += libc
|
||||||
|
|
||||||
|
CC_OPT += -fno-gnu89-inline
|
||||||
|
CC_OPT += -std=c99 -DASSEMBLER -D__BSD_VISIBLE -Wno-implicit-function-declaration
|
||||||
|
|
||||||
|
CC_OPT += -include sys/cdefs.h
|
||||||
|
|
||||||
|
INC_DIR += $(REP_DIR)/include/openlibm
|
||||||
|
INC_DIR += $(LIBM_SRC_DIR)
|
||||||
|
INC_DIR += $(LIBM_SRC_DIR)/src
|
||||||
|
INC_DIR += $(LIBM_PORT_DIR)include/openlibm
|
||||||
|
INC_DIR += $(LIBM_SRC_DIR)/include
|
||||||
|
|
||||||
|
SUBDIRS = src $(ARCH) bsdsrc
|
||||||
|
# Add ld80 directory on x86 and x64
|
||||||
|
ifneq ($(filter $(ARCH),i387 amd64),)
|
||||||
|
SUBDIRS += ld80
|
||||||
|
else
|
||||||
|
ifneq ($(filter $(ARCH),aarch64),)
|
||||||
|
SUBDIRS += ld128
|
||||||
|
else
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
define INC_template
|
||||||
|
TEST=test
|
||||||
|
override CUR_SRCS = $(1)_SRCS
|
||||||
|
-include $(LIBM_SRC_DIR)/$(1)/Make.files
|
||||||
|
SRCS += $$(addprefix $(1)/,$$($(1)_SRCS))
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(foreach dir,$(SUBDIRS),$(eval $(call INC_template,$(dir))))
|
||||||
|
|
||||||
|
DUPLICATE_NAMES = $(filter $(patsubst %.S,%,$($(ARCH)_SRCS)),$(patsubst %.c,%,$(src_SRCS)))
|
||||||
|
DUPLICATE_SRCS = $(addsuffix .c,$(DUPLICATE_NAMES))
|
||||||
|
|
||||||
|
CLEAN_SRCS = $(filter-out $(DUPLICATE_SRCS),$(notdir $(SRCS)))
|
||||||
|
|
||||||
|
SRC_C += $(filter %.c,$(CLEAN_SRCS))
|
||||||
|
SRC_S += $(filter %.S,$(CLEAN_SRCS))
|
||||||
|
|
||||||
|
$(foreach dir,$(SUBDIRS),$(eval vpath %.c $(LIBM_SRC_DIR)/$(dir)))
|
||||||
|
$(foreach dir,$(SUBDIRS),$(eval vpath %.S $(LIBM_SRC_DIR)/$(dir)))
|
||||||
|
|
||||||
|
$(foreach dir,$(SUBDIRS),$(eval INC_DIR += $(LIBM_SRC_DIR)/$(dir)))
|
|
@ -1,89 +0,0 @@
|
||||||
LIBC_PORT_DIR := $(call select_from_ports,libc)
|
|
||||||
LIBC_DIR := $(LIBC_PORT_DIR)/src/lib/libc
|
|
||||||
LIBM_DIR := $(LIBC_DIR)/lib/msun
|
|
||||||
|
|
||||||
LIBS = libc
|
|
||||||
|
|
||||||
#
|
|
||||||
# finding 'math_private.h'
|
|
||||||
#
|
|
||||||
INC_DIR += $(LIBM_DIR)/src
|
|
||||||
|
|
||||||
#
|
|
||||||
# finding 'invtrig.h', included by 'e_acosl.c'
|
|
||||||
#
|
|
||||||
INC_DIR += $(LIBM_DIR)/ld80
|
|
||||||
|
|
||||||
#
|
|
||||||
# finding 'fpmath.h', included by 'invtrig.h'
|
|
||||||
#
|
|
||||||
INC_DIR += $(LIBC_DIR)/lib/libc/include
|
|
||||||
|
|
||||||
FILTER_OUT += s_exp2l.c
|
|
||||||
|
|
||||||
#
|
|
||||||
# Files that are included by other sources (e.g., 's_sin.c'). Hence, we need
|
|
||||||
# to remove them from the build. Otherwise, we would end up with doubly
|
|
||||||
# defined symbols (and compiler warnings since those files are apparently
|
|
||||||
# not meant to be compiled individually).
|
|
||||||
#
|
|
||||||
FILTER_OUT += e_rem_pio2.c e_rem_pio2f.c
|
|
||||||
|
|
||||||
#
|
|
||||||
# Disable warnings for selected files, i.e., to suppress
|
|
||||||
# 'is static but used in inline function which is not static'
|
|
||||||
# messages
|
|
||||||
#
|
|
||||||
CC_OPT_s_tanf = -w
|
|
||||||
CC_OPT_s_tan = -w
|
|
||||||
CC_OPT_s_sin = -w
|
|
||||||
CC_OPT_s_cos = -w
|
|
||||||
CC_OPT_s_cosf = -w
|
|
||||||
CC_OPT_s_sinf = -w
|
|
||||||
CC_OPT_k_cosf = -w
|
|
||||||
CC_OPT_k_sinf = -w
|
|
||||||
CC_OPT_k_tanf = -w
|
|
||||||
|
|
||||||
#
|
|
||||||
# Work-around to get over doubly defined symbols produced by several sources
|
|
||||||
# that include 'e_rem_pio2.c' and 'e_rem_pio2f.c'. To avoid symbol clashes,
|
|
||||||
# we rename each occurrence by adding the basename of the compilation unit
|
|
||||||
# as suffix.
|
|
||||||
#
|
|
||||||
CC_OPT_s_sin += -D__ieee754_rem_pio2=__ieee754_rem_pio2_s_sin
|
|
||||||
CC_OPT_s_cos += -D__ieee754_rem_pio2=__ieee754_rem_pio2_s_cos
|
|
||||||
CC_OPT_s_sinf += -D__ieee754_rem_pio2f=__ieee754_rem_pio2f_s_sinf
|
|
||||||
CC_OPT_s_sinf += -D__kernel_cosdf=__kernel_cosdf_sinf
|
|
||||||
CC_OPT_s_cosf += -D__ieee754_rem_pio2f=__ieee754_rem_pio2f_s_cosf
|
|
||||||
CC_OPT_s_cosf += -D__kernel_sindf=__kernel_sindf_cosf
|
|
||||||
CC_OPT_s_tanf += -D__ieee754_rem_pio2f=__ieee754_rem_pio2f_s_tanf
|
|
||||||
|
|
||||||
#
|
|
||||||
# Use default warning level rather than -Wall because we do not want to touch
|
|
||||||
# the imported source code to improve build aesthetics.
|
|
||||||
#
|
|
||||||
CC_WARN =
|
|
||||||
|
|
||||||
SRC_C = $(wildcard $(LIBM_DIR)/src/*.c) \
|
|
||||||
$(wildcard $(LIBM_DIR)/ld80/*.c) \
|
|
||||||
$(wildcard $(LIBM_DIR)/bsdsrc/*.c)
|
|
||||||
SRC_C := $(filter-out $(FILTER_OUT),$(notdir $(SRC_C)))
|
|
||||||
|
|
||||||
# remove on update to version 9
|
|
||||||
SRC_C += log2.c
|
|
||||||
|
|
||||||
#
|
|
||||||
# 'e_rem_pio2.c' uses '__inline'
|
|
||||||
#
|
|
||||||
CC_OPT += -D__inline=inline
|
|
||||||
|
|
||||||
vpath %.c $(LIBM_DIR)/src
|
|
||||||
vpath %.c $(LIBM_DIR)/ld80
|
|
||||||
vpath %.c $(LIBM_DIR)/bsdsrc
|
|
||||||
|
|
||||||
# remove on update to version 9
|
|
||||||
vpath log2.c $(REP_DIR)/src/lib/libc
|
|
||||||
|
|
||||||
SHARED_LIB = yes
|
|
||||||
|
|
||||||
CC_CXX_WARN_STRICT =
|
|
|
@ -1,25 +1,2 @@
|
||||||
#
|
ARCH = arm
|
||||||
# Cannot be compiled for ARM because this file relies on the 'xbits'
|
include $(REP_DIR)/lib/mk/libm.inc
|
||||||
# member of union 'IEEEl2bits', which is not present in the ARM version.
|
|
||||||
#
|
|
||||||
FILTER_OUT = e_acosl.c e_asinl.c e_atan2l.c e_hypotl.c \
|
|
||||||
s_atanl.c
|
|
||||||
|
|
||||||
#
|
|
||||||
# Cannot be compiled for ARM because "Unsupported long double format"
|
|
||||||
#
|
|
||||||
FILTER_OUT += s_cosl.c s_frexpl.c s_nextafterl.c s_nexttoward.c \
|
|
||||||
s_rintl.c s_scalbnl.c s_sinl.c s_tanl.c
|
|
||||||
|
|
||||||
#
|
|
||||||
# Cannot be compiled for ARM because 'split' is undeclared
|
|
||||||
#
|
|
||||||
FILTER_OUT += s_fmal.c
|
|
||||||
|
|
||||||
include $(REP_DIR)/lib/mk/libm.mk
|
|
||||||
|
|
||||||
SRC_C += msun/arm/fenv.c
|
|
||||||
|
|
||||||
vpath msun/arm/fenv.c $(LIBC_DIR)/lib
|
|
||||||
|
|
||||||
CC_CXX_WARN_STRICT =
|
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
ARCH = aarch64
|
||||||
|
include $(REP_DIR)/lib/mk/libm.inc
|
|
@ -1,7 +1,2 @@
|
||||||
include $(REP_DIR)/lib/mk/libm.mk
|
ARCH = i387
|
||||||
|
include $(REP_DIR)/lib/mk/libm.inc
|
||||||
SRC_C += msun/i387/fenv.c
|
|
||||||
|
|
||||||
vpath msun/i387/fenv.c $(LIBC_DIR)/lib
|
|
||||||
|
|
||||||
CC_CXX_WARN_STRICT =
|
|
||||||
|
|
|
@ -1,7 +1,2 @@
|
||||||
include $(REP_DIR)/lib/mk/libm.mk
|
ARCH = amd64
|
||||||
|
include $(REP_DIR)/lib/mk/libm.inc
|
||||||
SRC_C += msun/amd64/fenv.c
|
|
||||||
|
|
||||||
vpath msun/amd64/fenv.c $(LIBC_DIR)/lib
|
|
||||||
|
|
||||||
CC_CXX_WARN_STRICT =
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
_ItL_aT R 208
|
_ItL_aT R 384
|
||||||
_ItL_atanhi R 64
|
_ItL_atanhi R 64
|
||||||
_ItL_atanlo R 64
|
_ItL_atanlo R 64
|
||||||
_ItL_pS0 R 16
|
_ItL_pS0 R 16
|
||||||
|
@ -16,49 +16,53 @@ _ItL_qS4 R 16
|
||||||
_ItL_qS5 R 16
|
_ItL_qS5 R 16
|
||||||
__exp__D T
|
__exp__D T
|
||||||
__fe_dfl_env R 32
|
__fe_dfl_env R 32
|
||||||
__fedisableexcept T
|
__fpclassifyd T
|
||||||
__feenableexcept T
|
__fpclassifyf T
|
||||||
__has_sse D 4
|
__fpclassifyl T
|
||||||
__ieee754_rem_pio2 T
|
__ieee754_rem_pio2 T
|
||||||
__ieee754_rem_pio2_s_cos T
|
__ieee754_rem_pio2f T
|
||||||
__ieee754_rem_pio2_s_sin T
|
|
||||||
__ieee754_rem_pio2f_s_cosf T
|
|
||||||
__ieee754_rem_pio2f_s_sinf T
|
|
||||||
__ieee754_rem_pio2f_s_tanf T
|
|
||||||
__isfinite T
|
__isfinite T
|
||||||
__isfinitef T
|
__isfinitef T
|
||||||
__isfinitel T
|
__isfinitel T
|
||||||
|
__isinff T
|
||||||
|
__isinfl T
|
||||||
|
__isnanf T
|
||||||
__isnanl T
|
__isnanl T
|
||||||
__isnormal T
|
__isnormal T
|
||||||
__isnormalf T
|
__isnormalf T
|
||||||
__isnormall T
|
__isnormall T
|
||||||
__kernel_cos T
|
__kernel_cos T
|
||||||
__kernel_cosdf T
|
__kernel_cosdf T
|
||||||
__kernel_cosdf_sinf T
|
|
||||||
__kernel_cosl T
|
__kernel_cosl T
|
||||||
__kernel_rem_pio2 T
|
__kernel_rem_pio2 T
|
||||||
__kernel_sin T
|
__kernel_sin T
|
||||||
__kernel_sindf T
|
__kernel_sindf T
|
||||||
__kernel_sindf_cosf T
|
|
||||||
__kernel_sinl T
|
__kernel_sinl T
|
||||||
__kernel_tan T
|
__kernel_tan T
|
||||||
__kernel_tandf T
|
__kernel_tandf T
|
||||||
__kernel_tanl T
|
__kernel_tanl T
|
||||||
|
__ldexp_cexp T
|
||||||
|
__ldexp_cexpf T
|
||||||
|
__ldexp_exp T
|
||||||
|
__ldexp_expf T
|
||||||
__log__D T
|
__log__D T
|
||||||
|
__p1evll T
|
||||||
|
__polevll T
|
||||||
|
__scan_nan T
|
||||||
__signbit T
|
__signbit T
|
||||||
__signbitf T
|
__signbitf T
|
||||||
__signbitl T
|
__signbitl T
|
||||||
__test_sse T
|
|
||||||
_scan_nan T
|
|
||||||
acos T
|
acos T
|
||||||
acosf T
|
acosf T
|
||||||
acosh T
|
acosh T
|
||||||
acoshf T
|
acoshf T
|
||||||
|
acoshl T
|
||||||
acosl T
|
acosl T
|
||||||
asin T
|
asin T
|
||||||
asinf T
|
asinf T
|
||||||
asinh T
|
asinh T
|
||||||
asinhf T
|
asinhf T
|
||||||
|
asinhl T
|
||||||
asinl T
|
asinl T
|
||||||
atan T
|
atan T
|
||||||
atan2 T
|
atan2 T
|
||||||
|
@ -67,21 +71,53 @@ atan2l T
|
||||||
atanf T
|
atanf T
|
||||||
atanh T
|
atanh T
|
||||||
atanhf T
|
atanhf T
|
||||||
|
atanhl T
|
||||||
atanl T
|
atanl T
|
||||||
cabs T
|
cabs T
|
||||||
cabsf T
|
cabsf T
|
||||||
cabsl T
|
cabsl T
|
||||||
|
cacos T
|
||||||
|
cacosf T
|
||||||
|
cacosh T
|
||||||
|
cacoshf T
|
||||||
|
cacoshl T
|
||||||
|
cacosl T
|
||||||
carg T
|
carg T
|
||||||
cargf T
|
cargf T
|
||||||
cargl T
|
cargl T
|
||||||
|
casin T
|
||||||
|
casinf T
|
||||||
|
casinh T
|
||||||
|
casinhf T
|
||||||
|
casinhl T
|
||||||
|
casinl T
|
||||||
|
catan T
|
||||||
|
catanf T
|
||||||
|
catanh T
|
||||||
|
catanhf T
|
||||||
|
catanhl T
|
||||||
|
catanl T
|
||||||
cbrt T
|
cbrt T
|
||||||
cbrtf T
|
cbrtf T
|
||||||
|
cbrtl T
|
||||||
|
ccos T
|
||||||
|
ccosf T
|
||||||
|
ccosh T
|
||||||
|
ccoshf T
|
||||||
|
ccoshl T
|
||||||
|
ccosl T
|
||||||
ceil T
|
ceil T
|
||||||
ceilf T
|
ceilf T
|
||||||
ceill T
|
ceill T
|
||||||
|
cexp T
|
||||||
|
cexpf T
|
||||||
|
cexpl T
|
||||||
cimag T
|
cimag T
|
||||||
cimagf T
|
cimagf T
|
||||||
cimagl T
|
cimagl T
|
||||||
|
clog T
|
||||||
|
clogf T
|
||||||
|
clogl T
|
||||||
conj T
|
conj T
|
||||||
conjf T
|
conjf T
|
||||||
conjl T
|
conjl T
|
||||||
|
@ -92,43 +128,60 @@ cos T
|
||||||
cosf T
|
cosf T
|
||||||
cosh T
|
cosh T
|
||||||
coshf T
|
coshf T
|
||||||
|
coshl T
|
||||||
cosl T
|
cosl T
|
||||||
|
cpow T
|
||||||
|
cpowf T
|
||||||
|
cpowl T
|
||||||
cproj T
|
cproj T
|
||||||
cprojf T
|
cprojf T
|
||||||
cprojl T
|
cprojl T
|
||||||
creal T
|
creal T
|
||||||
crealf T
|
crealf T
|
||||||
creall T
|
creall T
|
||||||
|
csin T
|
||||||
|
csinf T
|
||||||
|
csinh T
|
||||||
|
csinhf T
|
||||||
|
csinhl T
|
||||||
|
csinl T
|
||||||
csqrt T
|
csqrt T
|
||||||
csqrtf T
|
csqrtf T
|
||||||
csqrtl T
|
csqrtl T
|
||||||
drem T
|
ctan T
|
||||||
dremf T
|
ctanf T
|
||||||
|
ctanh T
|
||||||
|
ctanhf T
|
||||||
|
ctanhl T
|
||||||
|
ctanl T
|
||||||
erf T
|
erf T
|
||||||
erfc T
|
erfc T
|
||||||
erfcf T
|
erfcf T
|
||||||
|
erfcl T
|
||||||
erff T
|
erff T
|
||||||
|
erfl T
|
||||||
exp T
|
exp T
|
||||||
exp2 T
|
exp2 T
|
||||||
exp2f T
|
exp2f T
|
||||||
|
exp2l T
|
||||||
expf T
|
expf T
|
||||||
|
expl T
|
||||||
expm1 T
|
expm1 T
|
||||||
expm1f T
|
expm1f T
|
||||||
|
expm1l T
|
||||||
fabs T
|
fabs T
|
||||||
fabsf T
|
fabsf T
|
||||||
fabsl T
|
fabsl T
|
||||||
fdim T
|
fdim T
|
||||||
fdimf T
|
fdimf T
|
||||||
fdiml T
|
fdiml T
|
||||||
fedisableexcept W
|
fedisableexcept T
|
||||||
feenableexcept W
|
feenableexcept T
|
||||||
fegetenv T
|
fegetenv T
|
||||||
feholdexcept T
|
feholdexcept T
|
||||||
feraiseexcept T
|
feraiseexcept T
|
||||||
fesetexceptflag T
|
fesetexceptflag T
|
||||||
feupdateenv T
|
feupdateenv T
|
||||||
finite T
|
|
||||||
finitef T
|
|
||||||
floor T
|
floor T
|
||||||
floorf T
|
floorf T
|
||||||
floorl T
|
floorl T
|
||||||
|
@ -147,29 +200,32 @@ fmodl T
|
||||||
frexp T
|
frexp T
|
||||||
frexpf T
|
frexpf T
|
||||||
frexpl T
|
frexpl T
|
||||||
gamma T
|
|
||||||
gamma_r T
|
|
||||||
gammaf T
|
|
||||||
gammaf_r T
|
|
||||||
hypot T
|
hypot T
|
||||||
hypotf T
|
hypotf T
|
||||||
hypotl T
|
hypotl T
|
||||||
ilogb T
|
ilogb T
|
||||||
ilogbf T
|
ilogbf T
|
||||||
ilogbl T
|
ilogbl T
|
||||||
isnanf T
|
isinf T
|
||||||
|
isinff W
|
||||||
|
isnan T
|
||||||
|
isnanf W
|
||||||
|
isopenlibm T
|
||||||
j0 T
|
j0 T
|
||||||
j0f T
|
j0f T
|
||||||
j1 T
|
j1 T
|
||||||
j1f T
|
j1f T
|
||||||
jn T
|
jn T
|
||||||
jnf T
|
jnf T
|
||||||
|
ldexp T
|
||||||
ldexpf T
|
ldexpf T
|
||||||
ldexpl T
|
ldexpl T
|
||||||
lgamma T
|
lgamma T
|
||||||
lgamma_r T
|
lgamma_r T
|
||||||
lgammaf T
|
lgammaf T
|
||||||
lgammaf_r T
|
lgammaf_r T
|
||||||
|
lgammal T
|
||||||
|
lgammal_r T
|
||||||
llrint T
|
llrint T
|
||||||
llrintf T
|
llrintf T
|
||||||
llrintl T
|
llrintl T
|
||||||
|
@ -179,14 +235,18 @@ llroundl T
|
||||||
log T
|
log T
|
||||||
log10 T
|
log10 T
|
||||||
log10f T
|
log10f T
|
||||||
|
log10l T
|
||||||
log1p T
|
log1p T
|
||||||
log1pf T
|
log1pf T
|
||||||
|
log1pl T
|
||||||
log2 T
|
log2 T
|
||||||
log2f T
|
log2f T
|
||||||
|
log2l T
|
||||||
logb T
|
logb T
|
||||||
logbf T
|
logbf T
|
||||||
logbl T
|
logbl T
|
||||||
logf T
|
logf T
|
||||||
|
logl T
|
||||||
lrint T
|
lrint T
|
||||||
lrintf T
|
lrintf T
|
||||||
lrintl T
|
lrintl T
|
||||||
|
@ -210,6 +270,7 @@ nexttowardf T
|
||||||
nexttowardl T
|
nexttowardl T
|
||||||
pow T
|
pow T
|
||||||
powf T
|
powf T
|
||||||
|
powl T
|
||||||
remainder T
|
remainder T
|
||||||
remainderf T
|
remainderf T
|
||||||
remainderl T
|
remainderl T
|
||||||
|
@ -222,8 +283,6 @@ rintl T
|
||||||
round T
|
round T
|
||||||
roundf T
|
roundf T
|
||||||
roundl T
|
roundl T
|
||||||
scalb T
|
|
||||||
scalbf T
|
|
||||||
scalbln T
|
scalbln T
|
||||||
scalblnf T
|
scalblnf T
|
||||||
scalblnl T
|
scalblnl T
|
||||||
|
@ -231,12 +290,14 @@ scalbn T
|
||||||
scalbnf T
|
scalbnf T
|
||||||
scalbnl T
|
scalbnl T
|
||||||
signgam B 4
|
signgam B 4
|
||||||
significand T
|
|
||||||
significandf T
|
|
||||||
sin T
|
sin T
|
||||||
|
sincos T
|
||||||
|
sincosf T
|
||||||
|
sincosl T
|
||||||
sinf T
|
sinf T
|
||||||
sinh T
|
sinh T
|
||||||
sinhf T
|
sinhf T
|
||||||
|
sinhl T
|
||||||
sinl T
|
sinl T
|
||||||
sqrt T
|
sqrt T
|
||||||
sqrtf T
|
sqrtf T
|
||||||
|
@ -245,9 +306,11 @@ tan T
|
||||||
tanf T
|
tanf T
|
||||||
tanh T
|
tanh T
|
||||||
tanhf T
|
tanhf T
|
||||||
|
tanhl T
|
||||||
tanl T
|
tanl T
|
||||||
tgamma T
|
tgamma T
|
||||||
tgammaf T
|
tgammaf T
|
||||||
|
tgammal T
|
||||||
trunc T
|
trunc T
|
||||||
truncf T
|
truncf T
|
||||||
truncl T
|
truncl T
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
c1868f791e2a4dd9c2c31af84a425924179f1580
|
|
@ -0,0 +1,14 @@
|
||||||
|
LICENSE = MIT+ISC+BSD
|
||||||
|
DOWNLOADS = openlibm.archive
|
||||||
|
VERSION = 0.6.0
|
||||||
|
|
||||||
|
OWNER := JuliaMath
|
||||||
|
REPO := openlibm
|
||||||
|
REV := a96f0740e32c3d8aaa0a34c3988201018dfa90ce
|
||||||
|
|
||||||
|
URL(openlibm) := https://github.com/$(OWNER)/$(REPO)/archive/$(REV).tar.gz
|
||||||
|
SHA(openlibm) := a9c7d4450c3e9a8b92ec1e20c7a9fd2682e900743dff37f163c9a9ac68b4f471
|
||||||
|
DIR(openlibm) := src/lib/openlibm
|
||||||
|
|
||||||
|
DIRS := include/openlibm
|
||||||
|
DIR_CONTENT(include/openlibm) = src/lib/openlibm/include/*
|
Loading…
Reference in New Issue