|
|
@ -25,11 +25,13 @@ var Picolibc = Library{ |
|
|
|
"-Wall", |
|
|
|
"-std=gnu11", |
|
|
|
"-D_COMPILING_NEWLIB", |
|
|
|
"-DHAVE_ALIAS_ATTRIBUTE", |
|
|
|
"-D_HAVE_ALIAS_ATTRIBUTE", |
|
|
|
"-DTINY_STDIO", |
|
|
|
"-DPOSIX_IO", |
|
|
|
"-D_IEEE_LIBM", |
|
|
|
"-D__OBSOLETE_MATH_FLOAT=1", // use old math code that doesn't expect a FPU
|
|
|
|
"-D__OBSOLETE_MATH_DOUBLE=0", |
|
|
|
"-D_WANT_IO_C99_FORMATS", |
|
|
|
"-nostdlibinc", |
|
|
|
"-isystem", newlibDir + "/libc/include", |
|
|
|
"-I" + newlibDir + "/libc/tinystdio", |
|
|
@ -46,31 +48,22 @@ var Picolibc = Library{ |
|
|
|
var picolibcSources = []string{ |
|
|
|
"../../picolibc-stdio.c", |
|
|
|
|
|
|
|
// srcs_tinystdio
|
|
|
|
"libc/tinystdio/asprintf.c", |
|
|
|
"libc/tinystdio/atod_engine.c", |
|
|
|
"libc/tinystdio/atod_ryu.c", |
|
|
|
"libc/tinystdio/atof_engine.c", |
|
|
|
"libc/tinystdio/atof_ryu.c", |
|
|
|
//"libc/tinystdio/atold_engine.c", // have_long_double and not long_double_equals_double
|
|
|
|
"libc/tinystdio/bufio.c", |
|
|
|
"libc/tinystdio/clearerr.c", |
|
|
|
"libc/tinystdio/compare_exchange.c", |
|
|
|
"libc/tinystdio/dtoa_data.c", |
|
|
|
"libc/tinystdio/dtoa_engine.c", |
|
|
|
"libc/tinystdio/dtoa_ryu.c", |
|
|
|
"libc/tinystdio/ecvtbuf.c", |
|
|
|
"libc/tinystdio/ecvt_r.c", |
|
|
|
"libc/tinystdio/ecvt.c", |
|
|
|
"libc/tinystdio/ecvt_data.c", |
|
|
|
"libc/tinystdio/ecvtfbuf.c", |
|
|
|
"libc/tinystdio/ecvtf_r.c", |
|
|
|
"libc/tinystdio/ecvtf.c", |
|
|
|
"libc/tinystdio/ecvtf_data.c", |
|
|
|
"libc/tinystdio/exchange.c", |
|
|
|
//"libc/tinystdio/fclose.c", // posix-io
|
|
|
|
"libc/tinystdio/fcvtbuf.c", |
|
|
|
"libc/tinystdio/fcvt.c", |
|
|
|
"libc/tinystdio/fcvtfbuf.c", |
|
|
|
"libc/tinystdio/fcvt_r.c", |
|
|
|
"libc/tinystdio/fcvtf.c", |
|
|
|
"libc/tinystdio/fcvtf_r.c", |
|
|
|
"libc/tinystdio/gcvt.c", |
|
|
|
"libc/tinystdio/gcvtf.c", |
|
|
|
"libc/tinystdio/fclose.c", |
|
|
|
"libc/tinystdio/fdevopen.c", |
|
|
|
//"libc/tinystdio/fdopen.c", // posix-io
|
|
|
|
"libc/tinystdio/feof.c", |
|
|
|
"libc/tinystdio/ferror.c", |
|
|
|
"libc/tinystdio/fflush.c", |
|
|
@ -78,70 +71,60 @@ var picolibcSources = []string{ |
|
|
|
"libc/tinystdio/fgets.c", |
|
|
|
"libc/tinystdio/fileno.c", |
|
|
|
"libc/tinystdio/filestrget.c", |
|
|
|
"libc/tinystdio/filestrputalloc.c", |
|
|
|
"libc/tinystdio/filestrput.c", |
|
|
|
//"libc/tinystdio/fopen.c", // posix-io
|
|
|
|
"libc/tinystdio/filestrputalloc.c", |
|
|
|
"libc/tinystdio/fmemopen.c", |
|
|
|
"libc/tinystdio/fprintf.c", |
|
|
|
"libc/tinystdio/fputc.c", |
|
|
|
"libc/tinystdio/fputs.c", |
|
|
|
"libc/tinystdio/fread.c", |
|
|
|
"libc/tinystdio/freopen.c", |
|
|
|
"libc/tinystdio/fscanf.c", |
|
|
|
"libc/tinystdio/fseek.c", |
|
|
|
"libc/tinystdio/fseeko.c", |
|
|
|
"libc/tinystdio/ftell.c", |
|
|
|
"libc/tinystdio/ftoa_data.c", |
|
|
|
"libc/tinystdio/ftoa_engine.c", |
|
|
|
"libc/tinystdio/ftoa_ryu.c", |
|
|
|
"libc/tinystdio/ftello.c", |
|
|
|
"libc/tinystdio/fwrite.c", |
|
|
|
"libc/tinystdio/gcvtbuf.c", |
|
|
|
"libc/tinystdio/gcvt.c", |
|
|
|
"libc/tinystdio/gcvtfbuf.c", |
|
|
|
"libc/tinystdio/gcvtf.c", |
|
|
|
"libc/tinystdio/getchar.c", |
|
|
|
"libc/tinystdio/gets.c", |
|
|
|
"libc/tinystdio/matchcaseprefix.c", |
|
|
|
"libc/tinystdio/mktemp.c", |
|
|
|
"libc/tinystdio/perror.c", |
|
|
|
//"libc/tinystdio/posixiob.c", // posix-io
|
|
|
|
//"libc/tinystdio/posixio.c", // posix-io
|
|
|
|
"libc/tinystdio/printf.c", |
|
|
|
"libc/tinystdio/putchar.c", |
|
|
|
"libc/tinystdio/puts.c", |
|
|
|
"libc/tinystdio/ryu_divpow2.c", |
|
|
|
"libc/tinystdio/ryu_log10.c", |
|
|
|
"libc/tinystdio/ryu_log2pow5.c", |
|
|
|
"libc/tinystdio/ryu_pow5bits.c", |
|
|
|
"libc/tinystdio/ryu_table.c", |
|
|
|
"libc/tinystdio/ryu_umul128.c", |
|
|
|
"libc/tinystdio/rewind.c", |
|
|
|
"libc/tinystdio/scanf.c", |
|
|
|
"libc/tinystdio/setbuf.c", |
|
|
|
"libc/tinystdio/setbuffer.c", |
|
|
|
"libc/tinystdio/setlinebuf.c", |
|
|
|
"libc/tinystdio/setvbuf.c", |
|
|
|
//"libc/tinystdio/sflags.c", // posix-io
|
|
|
|
"libc/tinystdio/snprintf.c", |
|
|
|
"libc/tinystdio/sprintf.c", |
|
|
|
"libc/tinystdio/snprintfd.c", |
|
|
|
"libc/tinystdio/snprintff.c", |
|
|
|
"libc/tinystdio/sprintf.c", |
|
|
|
"libc/tinystdio/sprintfd.c", |
|
|
|
"libc/tinystdio/sprintff.c", |
|
|
|
"libc/tinystdio/sprintfd.c", |
|
|
|
"libc/tinystdio/sscanf.c", |
|
|
|
"libc/tinystdio/strfromd.c", |
|
|
|
"libc/tinystdio/strfromf.c", |
|
|
|
"libc/tinystdio/strfromd.c", |
|
|
|
"libc/tinystdio/strtof.c", |
|
|
|
"libc/tinystdio/strtof_l.c", |
|
|
|
"libc/tinystdio/strtod.c", |
|
|
|
"libc/tinystdio/strtod_l.c", |
|
|
|
"libc/tinystdio/strtof.c", |
|
|
|
//"libc/tinystdio/strtold.c", // have_long_double and not long_double_equals_double
|
|
|
|
//"libc/tinystdio/strtold_l.c", // have_long_double and not long_double_equals_double
|
|
|
|
"libc/tinystdio/ungetc.c", |
|
|
|
"libc/tinystdio/vasprintf.c", |
|
|
|
"libc/tinystdio/vfiprintf.c", |
|
|
|
"libc/tinystdio/vfiscanf.c", |
|
|
|
"libc/tinystdio/vfprintf.c", |
|
|
|
"libc/tinystdio/vfprintff.c", |
|
|
|
"libc/tinystdio/vfscanf.c", |
|
|
|
"libc/tinystdio/vfiscanf.c", |
|
|
|
"libc/tinystdio/vfscanff.c", |
|
|
|
"libc/tinystdio/vprintf.c", |
|
|
|
"libc/tinystdio/vscanf.c", |
|
|
|
"libc/tinystdio/vsscanf.c", |
|
|
|
"libc/tinystdio/vsnprintf.c", |
|
|
|
"libc/tinystdio/vsprintf.c", |
|
|
|
"libc/tinystdio/vsscanf.c", |
|
|
|
|
|
|
|
"libc/string/bcmp.c", |
|
|
|
"libc/string/bcopy.c", |
|
|
@ -300,6 +283,7 @@ var picolibcSources = []string{ |
|
|
|
"libm/common/s_expm1.c", |
|
|
|
"libm/common/s_ilogb.c", |
|
|
|
"libm/common/s_infinity.c", |
|
|
|
"libm/common/s_iseqsig.c", |
|
|
|
"libm/common/s_isinf.c", |
|
|
|
"libm/common/s_isinfd.c", |
|
|
|
"libm/common/s_isnan.c", |
|
|
@ -317,6 +301,7 @@ var picolibcSources = []string{ |
|
|
|
"libm/common/s_fmax.c", |
|
|
|
"libm/common/s_fmin.c", |
|
|
|
"libm/common/s_fpclassify.c", |
|
|
|
"libm/common/s_getpayload.c", |
|
|
|
"libm/common/s_lrint.c", |
|
|
|
"libm/common/s_llrint.c", |
|
|
|
"libm/common/s_lround.c", |
|
|
@ -331,7 +316,6 @@ var picolibcSources = []string{ |
|
|
|
"libm/common/exp2.c", |
|
|
|
"libm/common/exp_data.c", |
|
|
|
"libm/common/math_err_with_errno.c", |
|
|
|
"libm/common/math_err_xflow.c", |
|
|
|
"libm/common/math_err_uflow.c", |
|
|
|
"libm/common/math_err_oflow.c", |
|
|
|
"libm/common/math_err_divzero.c", |
|
|
@ -339,6 +323,8 @@ var picolibcSources = []string{ |
|
|
|
"libm/common/math_err_may_uflow.c", |
|
|
|
"libm/common/math_err_check_uflow.c", |
|
|
|
"libm/common/math_err_check_oflow.c", |
|
|
|
"libm/common/math_inexact.c", |
|
|
|
"libm/common/math_inexactf.c", |
|
|
|
"libm/common/log.c", |
|
|
|
"libm/common/log_data.c", |
|
|
|
"libm/common/log2.c", |
|
|
@ -346,76 +332,91 @@ var picolibcSources = []string{ |
|
|
|
"libm/common/pow.c", |
|
|
|
"libm/common/pow_log_data.c", |
|
|
|
|
|
|
|
"libm/math/e_acos.c", |
|
|
|
"libm/math/e_acosh.c", |
|
|
|
"libm/math/e_asin.c", |
|
|
|
"libm/math/e_atan2.c", |
|
|
|
"libm/math/e_atanh.c", |
|
|
|
"libm/math/e_cosh.c", |
|
|
|
"libm/math/e_exp.c", |
|
|
|
"libm/math/ef_acos.c", |
|
|
|
"libm/math/ef_acosh.c", |
|
|
|
"libm/math/ef_asin.c", |
|
|
|
"libm/math/ef_atan2.c", |
|
|
|
"libm/math/ef_atanh.c", |
|
|
|
"libm/math/ef_cosh.c", |
|
|
|
"libm/math/ef_exp.c", |
|
|
|
"libm/math/ef_fmod.c", |
|
|
|
"libm/math/ef_hypot.c", |
|
|
|
"libm/math/ef_j0.c", |
|
|
|
"libm/math/ef_j1.c", |
|
|
|
"libm/math/ef_jn.c", |
|
|
|
"libm/math/ef_lgamma.c", |
|
|
|
"libm/math/ef_log10.c", |
|
|
|
"libm/math/ef_log.c", |
|
|
|
"libm/math/e_fmod.c", |
|
|
|
"libm/math/ef_pow.c", |
|
|
|
"libm/math/ef_remainder.c", |
|
|
|
"libm/math/ef_rem_pio2.c", |
|
|
|
"libm/math/ef_scalb.c", |
|
|
|
"libm/math/ef_sinh.c", |
|
|
|
"libm/math/ef_sqrt.c", |
|
|
|
"libm/math/ef_tgamma.c", |
|
|
|
"libm/math/e_hypot.c", |
|
|
|
"libm/math/e_j0.c", |
|
|
|
"libm/math/e_j1.c", |
|
|
|
"libm/math/e_jn.c", |
|
|
|
"libm/math/e_lgamma.c", |
|
|
|
"libm/math/e_log10.c", |
|
|
|
"libm/math/e_log.c", |
|
|
|
"libm/math/e_pow.c", |
|
|
|
"libm/math/e_remainder.c", |
|
|
|
"libm/math/e_rem_pio2.c", |
|
|
|
"libm/math/erf_lgamma.c", |
|
|
|
"libm/math/er_lgamma.c", |
|
|
|
"libm/math/e_scalb.c", |
|
|
|
"libm/math/e_sinh.c", |
|
|
|
"libm/math/e_sqrt.c", |
|
|
|
"libm/math/e_tgamma.c", |
|
|
|
"libm/math/k_cos.c", |
|
|
|
"libm/math/k_rem_pio2.c", |
|
|
|
"libm/math/k_sin.c", |
|
|
|
"libm/math/k_tan.c", |
|
|
|
"libm/math/kf_cos.c", |
|
|
|
"libm/math/kf_rem_pio2.c", |
|
|
|
"libm/math/kf_sin.c", |
|
|
|
"libm/math/kf_tan.c", |
|
|
|
"libm/math/s_acos.c", |
|
|
|
"libm/math/s_acosh.c", |
|
|
|
"libm/math/s_asin.c", |
|
|
|
"libm/math/s_asinh.c", |
|
|
|
"libm/math/s_atan.c", |
|
|
|
"libm/math/s_atan2.c", |
|
|
|
"libm/math/s_atanh.c", |
|
|
|
"libm/math/s_ceil.c", |
|
|
|
"libm/math/s_cos.c", |
|
|
|
"libm/math/s_cosh.c", |
|
|
|
"libm/math/s_drem.c", |
|
|
|
"libm/math/s_erf.c", |
|
|
|
"libm/math/s_exp.c", |
|
|
|
"libm/math/s_exp2.c", |
|
|
|
"libm/math/s_fabs.c", |
|
|
|
"libm/math/s_floor.c", |
|
|
|
"libm/math/s_fmod.c", |
|
|
|
"libm/math/s_frexp.c", |
|
|
|
"libm/math/s_gamma.c", |
|
|
|
"libm/math/s_hypot.c", |
|
|
|
"libm/math/s_j0.c", |
|
|
|
"libm/math/s_j1.c", |
|
|
|
"libm/math/s_jn.c", |
|
|
|
"libm/math/s_lgamma.c", |
|
|
|
"libm/math/s_log.c", |
|
|
|
"libm/math/s_log10.c", |
|
|
|
"libm/math/s_pow.c", |
|
|
|
"libm/math/s_rem_pio2.c", |
|
|
|
"libm/math/s_remainder.c", |
|
|
|
"libm/math/s_scalb.c", |
|
|
|
"libm/math/s_signif.c", |
|
|
|
"libm/math/s_sin.c", |
|
|
|
"libm/math/s_sincos.c", |
|
|
|
"libm/math/s_sinh.c", |
|
|
|
"libm/math/s_sqrt.c", |
|
|
|
"libm/math/s_tan.c", |
|
|
|
"libm/math/s_tanh.c", |
|
|
|
"libm/math/s_tgamma.c", |
|
|
|
"libm/math/sf_acos.c", |
|
|
|
"libm/math/sf_acosh.c", |
|
|
|
"libm/math/sf_asin.c", |
|
|
|
"libm/math/sf_asinh.c", |
|
|
|
"libm/math/sf_atan.c", |
|
|
|
"libm/math/sf_atan2.c", |
|
|
|
"libm/math/sf_atanh.c", |
|
|
|
"libm/math/sf_ceil.c", |
|
|
|
"libm/math/sf_cos.c", |
|
|
|
"libm/math/sf_cosh.c", |
|
|
|
"libm/math/sf_drem.c", |
|
|
|
"libm/math/sf_erf.c", |
|
|
|
"libm/math/sf_exp.c", |
|
|
|
"libm/math/sf_exp2.c", |
|
|
|
"libm/math/sf_fabs.c", |
|
|
|
"libm/math/sf_floor.c", |
|
|
|
"libm/math/sf_fmod.c", |
|
|
|
"libm/math/sf_frexp.c", |
|
|
|
"libm/math/sf_ldexp.c", |
|
|
|
"libm/math/s_floor.c", |
|
|
|
"libm/math/s_frexp.c", |
|
|
|
"libm/math/sf_gamma.c", |
|
|
|
"libm/math/sf_hypot.c", |
|
|
|
"libm/math/sf_j0.c", |
|
|
|
"libm/math/sf_j1.c", |
|
|
|
"libm/math/sf_jn.c", |
|
|
|
"libm/math/sf_lgamma.c", |
|
|
|
"libm/math/sf_log.c", |
|
|
|
"libm/math/sf_log10.c", |
|
|
|
"libm/math/sf_log2.c", |
|
|
|
"libm/math/sf_pow.c", |
|
|
|
"libm/math/sf_rem_pio2.c", |
|
|
|
"libm/math/sf_remainder.c", |
|
|
|
"libm/math/sf_scalb.c", |
|
|
|
"libm/math/sf_signif.c", |
|
|
|
"libm/math/sf_sin.c", |
|
|
|
"libm/math/sf_sincos.c", |
|
|
|
"libm/math/sf_sinh.c", |
|
|
|
"libm/math/sf_sqrt.c", |
|
|
|
"libm/math/sf_tan.c", |
|
|
|
"libm/math/sf_tanh.c", |
|
|
|
"libm/math/s_ldexp.c", |
|
|
|
"libm/math/s_signif.c", |
|
|
|
"libm/math/s_sin.c", |
|
|
|
"libm/math/s_tan.c", |
|
|
|
"libm/math/s_tanh.c", |
|
|
|
"libm/math/sf_tgamma.c", |
|
|
|
"libm/math/sr_lgamma.c", |
|
|
|
"libm/math/srf_lgamma.c", |
|
|
|
} |
|
|
|