Commit graph

52 commits

Author SHA1 Message Date
Lephenixnoir
6847596bcd
clean up the STATUS file
Also add "!" in front of lines requiring more work to complete for
visual cues of progress.
2021-05-20 16:40:39 +02:00
Lephenixnoir
cc03641522
inttypes: add strtoimax and strtoumax 2021-05-20 16:05:20 +02:00
Lephenixnoir
bc53e756a8
stdlib: fix saturation in strtol, strtoul, strtoll, strtoull 2021-05-20 15:38:37 +02:00
Lephenixnoir
9de2f5c391
math, fenv, complex: add headers through OpenLibm 2021-05-20 11:35:14 +02:00
Lephenixnoir
99339ae9f4
cmake: add arch-specific support flags 2021-05-20 11:35:14 +02:00
Lephenixnoir
ade01b532e
stdlib: add atoi, atol and atoll 2021-05-20 11:35:14 +02:00
Lephenixnoir
06f975f75c
stdlib: add a test strtol, strtoul, strtoll (DONE)
The presumed bug where the value computed without the sign overflows
even though the negative result can be represented is not actually a
problem, because this only happens with signed results and the temporary
value is computed as unsigned (thus with extra range).
2021-05-20 11:03:19 +02:00
Lephenixnoir
5042236392
stdlib: reword strtoull into a generic strto_int
This new function will support strtol, strtoul, and strtoll as well.
2021-05-20 09:23:06 +02:00
Lephenixnoir
b1dc3e77de
stdlib: add and test strtoull (DONE) 2021-05-19 21:50:08 +02:00
Lephenixnoir
41ab197ba2
inttypes: imaxabs and imaxdiv are now tested (DONE) 2021-05-19 21:50:02 +02:00
Lephenixnoir
6e66c531ca
stdlib: abs, labs, llabs, div, ldiv and lldiv are now tested (DONE) 2021-05-19 21:50:00 +02:00
Lephenixnoir
e4c385d0df
stdlib: safeguard prototypes against user-defined macros 2021-05-19 10:12:41 +02:00
Lephenixnoir
36b4854137
inttypes: add imaxabs and imaxdiv (TEST) 2021-05-18 21:31:00 +02:00
Lephenixnoir
73b536bbb6
stdlib: add abs, labs, llabs, div, ldiv, lldiv (TEST) 2021-05-18 21:25:45 +02:00
Lephenixnoir
e8aaadf2e7
inttypes: add PRI* and SCN* macros (LDEPS)
These macros cannot be tested properly until support for *printf and
*scanf is added (support for *printf currently exists but with a
temporary implementation), so this is LDEPS.

The size of the types has been checked though, so the definitions here
should be correct, the rest is printf/scanf logic.
2021-05-18 18:56:06 +02:00
Lephenixnoir
b1fa650914
ctype: test and fix character conversion functions (DONE)
Some shenanigans with the scope of variables in block expressions.
2021-05-18 11:52:17 +02:00
Lephenixnoir
50629bf479
ctype: test and fix character class functions (DONE) 2021-05-18 11:37:37 +02:00
Lephenixnoir
d70a2c671c
add a STATUS file to keep track of implementation progress 2021-05-16 18:12:46 +02:00
Lephenixnoir
5f48a6b4e0
errno: add the errno variable and base macros
A <bits/errno.h> file will likely by added later on for each target to
add more specific values.
2021-05-16 18:12:46 +02:00
Lephenixnoir
c87805ef10
ctype: add a simple implementation for the "C" locale (TEST) 2021-05-16 18:12:45 +02:00
Lephenixnoir
fdf32aeb97
locale: add a stub that supports only the "C" locale (TEST)
This is enough to support the standard and likely the C++ library and
external programs to port, but also the most we can do without a proper
locale data storage and more target-specific developments that aren't a
priority right now.
2021-05-16 18:12:45 +02:00
Lephenixnoir
676601b894
assert: add a partial assert implementation (LDEPS)
This currently does not link because fprintf, stderr and abort are
missing on most platforms. But the code is there.
2021-05-16 18:12:45 +02:00
Lephenixnoir
97d52ff0b1
stdio: declare stdin, stdout and stderr on all targets
This is needed for some basic stuff like assert.
2021-05-16 18:12:45 +02:00
Lephenixnoir
c88b31ec94
setjmp: make setjmp a macro 2021-05-16 18:12:42 +02:00
Lephenixnoir
4933d9c19f
cmake: remove unneeded separators in install paths 2021-05-16 18:01:21 +02:00
Lephenixnoir
471d6ea820
longjmp: optimize forcing the return value to be non-zero 2021-05-14 18:05:47 +02:00
Lephenixnoir
6275b3e73b
move bits/unistd_32.h to bits/asm on all targets
Only Vhex had it at the correct place previously.
2021-05-11 09:22:34 +02:00
Lephenixnoir
f6bed55f75
update header guard convention 2021-05-09 23:00:11 +02:00
Lephenixnoir
f58187c55e
remove unneeded __SUPPORT macros 2021-05-09 22:11:49 +02:00
Lephenixnoir
e719af2f63
update include hierarchy 2021-05-09 17:59:07 +02:00
Lephenixnoir
8993049f4e
update README and CMake install rules 2021-05-09 17:52:07 +02:00
Yatis
64e7001d22 new include hierarchy 2021-05-09 16:35:40 +02:00
Lephenixnoir
a543bfcb7c
remove old build system 2021-05-09 14:57:00 +02:00
Lephenixnoir
ad9f92873b
new build system and source file hierarchy 2021-05-09 14:56:08 +02:00
Yatis
f76757ecd2 Fix installation / uninstallation rules + Fix compilation ABI support 2020-11-03 15:15:01 +01:00
Yatis
6fa1e2498d Fix printf error + uninstall rules generation error + update configure 2020-11-01 11:01:39 +01:00
Yatis
15a286daf0 Fix configure script error 2020-10-27 12:03:10 +01:00
Yatis
4f1f5169d8 Fix useless variable 2020-10-26 19:24:38 +01:00
Yatis
566d2db1a6 Fix minor bugs. 2020-10-26 19:01:16 +01:00
Yatis
0a997affd5 Fix minor bugs. 2020-10-26 18:01:04 +01:00
Yatis
47e79813d9 Update configure script
* add early "-h" and "--help" handling
* replace "--support-<ABI_NAME>" flags by "--support=<target>,<target>,..."
* rename libraries name:
	* "libfxlibc-casio-abi-fx9860g" -> "libfxlibc-fx9860g"
	* "libfxlibc-casio-abi-fxcg5" -> "libfxlibc-fxcg50"

Update the README.md
2020-10-24 21:48:45 +02:00
Yann MAGNIN
e9984365eb README.md edited 2020-10-21 20:29:48 +00:00
Yatis
565a159370 Release the 0.3.0 (add README + LICENSE and fix norm) 2020-10-21 22:26:47 +02:00
Yatis
38ff31fc47 add installation rules 2020-10-20 11:02:13 +02:00
Yatis
44bd67431c Fix norme + move arch-specific header 2020-10-14 15:18:10 +02:00
Yatis
4eb7b35617 fix compilation error (casio-fx9860) 2020-10-14 12:24:57 +02:00
Yatis
9f60f2bbf9 fix compilation error (vhex) 2020-10-14 12:18:34 +02:00
Yatis
3764de9a27 fix compilation error (common) 2020-10-14 12:07:29 +02:00
Yatis
aeedfcdb02 project architecture rework + handle ABI specific code (WIP) 2020-10-14 11:45:08 +02:00
Yatis
ac36fce54d Update configure and makefile 2020-10-11 10:15:34 +02:00