Commit graph

190 commits

Author SHA1 Message Date
Lephenixnoir
b38dd3f894
cmake: use *dynamic* fxSDK compiler path as default for gint
Previously FXSDK_COMPILER_INSTALL would be stored as the install prefix.
However, this prefix is subject to unannounced changes when the compiler
version is upgraded without reconfiguring the fxlibc, which happens in
the GiteaPC workflow.

This commit avoids the use of CMAKE_INSTALL_PREFIX when using gint with
no specified prefix, and instead uses another cached variable which
leaves the prefix to be dynamically resolved based on the uncached
variable FXSDK_COMPILER_INSTALL, like most repositories do (eg. gint).
We need the cached indicator because we frequently reconfigure and
CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT is not persistent.
2022-08-12 22:39:53 +02:00
Lephenixnoir
89c6c39405
stdio: support for UTF-8 %lc in printf() 2022-08-01 11:27:24 +01:00
Yann MAGNIN
e8779145c2 fix vhex target folders 2022-07-30 18:55:40 +02:00
Yann MAGNIN
ed77a97547 Merge branch 'dev' of https://gitea.planet-casio.com/Vhex-Kernel-Core/fxlibc into dev 2022-07-30 17:57:55 +02:00
Yann MAGNIN
bdf9566723 fxlibc - v1.4.3 : fix vhex missing headers
@update
> CMakeLists.txt
 | remove the generation of the shared version of the fxlibc (deprecated, unused)
> include/errno
 | add some error macros needed in vhex
> src/string/strerror
 | add EINTR support
 | add EAGAIN support
 | add ENOMEDIUM support
 | add EMEDIUMTYPE support

@fix
> include/target/vhex
 | add missing headers
2022-07-30 17:57:08 +02:00
Lephenixnoir
26d5b5d9ab
meta: chase the very last __restrict__ for C++ compatibility 2022-06-29 10:52:48 +01:00
Yann MAGNIN
619afe25da fxlibc - v1.4.2 : fix reallocarray() + remove old Vhex/Casiowin sources
@update
> CMakeLists.txt
  | remove casiowin-* target (unused)
  | remove x86-generic target (unused)
  | update files location
  | remove old vhex sources files (deprecated, unused)
> src/posix
  | remove this folder
> src/libc
  | move its content to src/
  | remove thread module
> src/stdlib/reallocarray
  | check if the multiplication overflow failed
  | set appropriate errno value if multiplication failed
2022-06-03 16:25:31 +02:00
Yann MAGNIN
996b2b8ded fxlibc - v1.4.1 : update Vhex stdlib
@update
> malloc  : do not use syscall, involve kmalloc
> realloc : do not use syscall, involve krealloc
> free    : do not use syscall, involve kfree

@fix
> _Exit : remove syscall
2022-05-14 11:49:08 +02:00
Lephenixnoir
d50e44c563
C++ __restrict__, update STATUS, minor formatting 2022-03-31 10:12:01 +01:00
Lephenixnoir
94faa6cbea Merge pull request 'Add getline(3) & getdelim(3)' (#2) from Alice/fxlibc:dev into dev
Reviewed-on: https://gitea.planet-casio.com/Vhex-Kernel-Core/fxlibc/pulls/2
2022-03-31 11:11:26 +02:00
Alice Rozengarden
3f5989ceab Add getline(3) & getdelim(3) 2022-03-30 23:49:44 +02:00
Lephenixnoir
3c29639988
string: fix a bug in SuperH memset 2022-03-26 15:19:15 +00:00
Lephenixnoir
4d464bde01
bump version to 1.4.0 2022-03-19 19:29:17 +00:00
Lephenixnoir
809238e5b8
errno: add EINTR and EAGAIN 2022-02-24 12:48:51 +01:00
Yann MAGNIN
fa4adc5620 add PIC option + vxsdk support 2022-01-26 16:34:16 +01:00
Lephenixnoir
71866ed769
stdio: stdin/stdout/stderr, perror, final adjustments
Support for <stdio.h> will stop here for now.
2022-01-14 18:38:48 +01:00
Lephenixnoir
ed873a652e
stdio: fgetc(), fgets(), tests for fputc() and fputs() (DONE) 2022-01-14 17:16:04 +01:00
Lephenixnoir
294fda9731
stdio: share the FILE implementation between all versions 2022-01-13 21:28:19 +01:00
Lephenixnoir
f1512125d0
stdio: initial versions of fputc() and fputs() (TEST) 2022-01-13 21:21:23 +01:00
Lephenixnoir
6ec0c24e2d
stdio: ungetc(), update (+) and append (a) modes (DONE) 2022-01-12 10:20:30 +01:00
Lephenixnoir
06b66252c9
stdio: line buffering, test fgetpos and fsetpos (DONE) 2022-01-10 21:32:24 +01:00
Lephenixnoir
0c2f81e5bb
string: add and test a naive memrchr (DONE) 2022-01-10 21:21:03 +01:00
Lephenixnoir
909c7df815
stdio: fixes for initial fread() et fwrite() (TEST) 2022-01-10 17:10:49 +01:00
Lephenixnoir
4461bdb96a
stdio: basic fread/fwrite (WIP) 2022-01-05 21:26:06 +01:00
Lephenixnoir
b6dbdf321d
stdio: error handling and positioning functions (WIP) 2022-01-02 22:09:06 +01:00
Lephenixnoir
a12b84f1ef
stdio: opening primitives for FILE (WIP) 2022-01-02 19:22:43 +01:00
Lephenixnoir
51528170bb
stdio: FILE barebones with buffering model (WIP) 2022-01-02 19:22:42 +01:00
Lephenixnoir
b53078776d
stdio: enable dprintf() and vdprintf() 2022-01-02 19:22:42 +01:00
Lephenixnoir
3046304497
stdlib: set errno=ENOMEM after failed malloc() 2022-01-02 19:22:42 +01:00
Lephenixnoir
f7b85f18bd
time: do not depend on gint headers
They're usually not installed yet
2021-12-31 19:48:43 +01:00
Lephenixnoir
bd0dd3a8d2
bump version to 1.3.0 2021-12-31 10:42:44 +01:00
Lephenixnoir
dbfefe5172
errno: add ENOTEMPTY for rmdir() 2021-12-30 18:18:54 +01:00
Lephenixnoir
937b7bfb63
stat: definitions required to support stat(2) 2021-12-23 23:50:48 +01:00
Lephenixnoir
e479393a9c
unistd, dirent: definitions for directory functions 2021-12-21 18:55:23 +01:00
Lephenixnoir
c2feb94710
fcntl, unistd: declarations for the Unix file API 2021-12-13 18:37:04 +01:00
Lephenixnoir
92ccd8b1db
time: add support for C99 <time.h> (DONE) 2021-12-04 22:02:23 +01:00
Lephenixnoir
e71f9867e2
support for shared libgcc in vhex 2021-11-07 18:05:33 +01:00
Lephenixnoir
164b33b26d
cmake: initial support for shared vhex library
Using the previously-tested trick with `ld -shared`.
2021-10-10 19:34:46 +02:00
Lephenixnoir
df4c13b007
stdlib: fix bad memset in calloc() 2021-09-25 15:16:24 +02:00
Lephenixnoir
a0ceeefaf4
string: fix strtok detecting NUL only after separators 2021-08-17 17:30:21 +02:00
Lephenixnoir
ea35c18c41
stdlib: add qsort (TEST) 2021-06-28 23:54:43 +02:00
Lephenixnoir
a6dbcfb227
add C++ header guards 2021-06-28 15:49:05 +02:00
Lephenixnoir
f5571e2b3d
time: add general definitions 2021-06-13 18:26:04 +02:00
Lephenixnoir
6e42995388
stdio: add general file management definitions 2021-06-13 18:18:32 +02:00
Lephenixnoir
518a866750
use __restrict__ in headers for g++ compatibility 2021-06-13 18:17:40 +02:00
Lephenixnoir
6be2a3d52e
bump version to 1.2.0 2021-06-08 10:57:34 +02:00
Lephenixnoir
dcaf203f46
stdio: improve printf extension API and type size support 2021-06-08 10:32:08 +02:00
Lephenixnoir
ed8134970b
add nonstandard GNU endian.h 2021-06-08 10:05:00 +02:00
Lephenixnoir
009a2eef6e
stdlib: add TinyMT-based rand, and malloc/etc for gint 2021-06-07 22:00:41 +02:00
Lephenixnoir
625a6af459
stdio: add asprintf and vasprintf 2021-06-07 19:09:55 +02:00