Xiang Xiao
759b63d4be
libc: implement getopt_long partially
...
only the short option is supported now
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-11-21 07:01:08 -06:00
Xiang Xiao
af53bdb048
libc: Add opterr global variable
...
defined here:
https://pubs.opengroup.org/onlinepubs/9699919799/functions/getopt.html
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-11-21 07:01:08 -06:00
YAMAMOTO Takashi
8a70c6bf47
libs/libnx/nxfonts/nxfonts_cache.c: Fix syslog formats
2020-11-20 22:22:53 -08:00
YAMAMOTO Takashi
07a67c7b96
libs/libnx/nxmu/nx_eventhandler.c: Fix syslog formats
2020-11-20 22:22:53 -08:00
YAMAMOTO Takashi
aa653fef63
libs/libnx/nxglib/nxglib_splitline.c: Fix syslog formats
...
Note: b16_t is int32_t.
2020-11-20 22:22:53 -08:00
YAMAMOTO Takashi
02b92c5ad9
libs/libc/pthread/pthread_attr_setstacksize.c: Fix a syslog format
2020-11-20 22:22:53 -08:00
YAMAMOTO Takashi
efe8e24fe7
libs/libnx/nxmu/nx_eventhandler.c: Appease nxstyle
2020-11-20 22:22:53 -08:00
YAMAMOTO Takashi
6d8ccccbb0
libs/libnx/nxglib/nxglib_splitline.c: Appease nxstyle
2020-11-20 22:22:53 -08:00
Alin Jerpelea
48e6f2051d
audio: libsamplerate: add initial audio Sample Rate Converter
...
Add audio sample rate conversion library from
http://www.mega-nerd.com/SRC/index.html
Source:
https://github.com/libsndfile/libsamplerate
Add needed patches for NuttX OS and embedded boards.
NOTE:
We must use master branch until next stable release
2020-11-19 18:05:47 -08:00
YAMAMOTO Takashi
bc4780b8ba
libs/libc/uuid/lib_uuid_from_string.c: Fix scanf format warnings
2020-11-18 00:44:55 -08:00
liuhaitao
fd94a32468
sysconf: add _SC_PAGESIZE sysconf support
...
Also implement getpagesize() based on sysconf(_SC_PAGESIZE).
Change-Id: I812eb8f34ed602f7bc12c4cafafcebc0d98fd136
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
2020-11-17 02:03:23 -08:00
YAMAMOTO Takashi
1b4f65c7f2
libs/libc/uuid/lib_uuid_to_string.c: Fix a printf format warning
2020-11-16 08:29:00 -08:00
YAMAMOTO Takashi
9c08c53e81
libs/libc/time/lib_strftime.c: Fix a printf format warning
2020-11-16 08:29:00 -08:00
YAMAMOTO Takashi
2342b929e7
libs/libc/time/lib_strftime.c: Appease nxstyle
2020-11-16 05:46:53 -08:00
Xiang Xiao
b827565396
[libc++] Move the toolchain's macros undefinition to Make.defs
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-11-15 08:28:36 -03:00
Xiang Xiao
8bc4a5b08a
[libc++] Cherry pick patches from mainline to fix warnings
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-11-15 08:28:36 -03:00
Peter Bee
1f5786f5ea
libc/stdlib: Fix range check in strtoul(l)
...
The previous implementation of strtoul(l) is flawed. The range check
assumed that when overflow happens, the truncated value is smaller than
the original value. As a counter example, passing "10000000000" to
strtol will not trigger ERANGE, but return a truncated value. This patch
adds more accurate range checks.
Change-Id: I239e034e390b4974157ed6efa17110f2e74904cf
Signed-off-by: Peter Bee <bijunda1@xiaomi.com>
2020-11-12 06:01:33 -08:00
Xiang Xiao
84b90e00f0
libc/stdio: Preallocate the stdin, stdout and stderr
...
to handle the uninitialized stdin/stdout/stderr gracefully
report here:
https://github.com/apache/incubator-nuttx/issues/2203
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-11-11 09:56:10 -08:00
YAMAMOTO Takashi
f307d999e6
lib_libvsprintf.c: Implement "t" modifier for printf
...
Introduced by C99 for ptrdiff_t.
2020-11-10 00:03:06 -08:00
Xiang Xiao
b23bca5cb3
libcxx: Update 0001-libcxx-Port-to-NuttX-https-nuttx.apache.org-RTOS.patch
...
All changes come from:
from YAMAMOTO Takashi <yamamoto@midokura.com>
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-11-08 13:04:43 -03:00
Xiang Xiao
e160bffe28
Remove all fclose with stdin, stdout and stderr
...
since it is wrong to close the builtin stream and specially note
https://pubs.opengroup.org/onlinepubs/9699919799/functions/fclose.html :
Since after the call to fclose() any use of stream results in
undefined behavior, fclose() should not be used on stdin, stdout,
or stderr except immediately before process termination (see XBD
Process Termination), so as to avoid triggering undefined behavior
in other standard interfaces that rely on these streams. If there
are any atexit() handlers registered by the application, such a
call to fclose() should not occur until the last handler is
finishing. Once fclose() has been used to close stdin, stdout, or
stderr, there is no standard way to reopen any of these streams.
and it is also unnecessary because the stream always get flushed.
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-10-29 20:43:50 +09:00
Yoshinori Sugino
c13f869432
Modify SIGSTP to SIGTSTP
...
Follow the POSIX description.
SIGTSTP should be sent when the Ctrl-Z characters is encountered, not SIGSTP.
Testing:
Built with hifive1-revb:nsh (CONFIG_SERIAL_TERMIOS=y, CONFIG_SIG_DEFAULT=y and CONFIG_TTY_SIGTSTP=y)
2020-10-29 01:12:43 -07:00
YAMAMOTO Takashi
ff3fa805a4
libxx: Use Kconfig "choice" to specify an implemenetation
...
It doesn't make sense to enable both of LIBCXX and UCLIBCXX.
This commit reflects it to Kconfig.
2020-10-28 14:10:30 -03:00
Yoshinori Sugino
079737dd0c
libs/libc/signal/sig_pause.c: Fix a comment
2020-10-28 07:12:46 +01:00
Xiang Xiao
2b9282d5ee
libc: Skip close stdin/stdout/stderr in fclose
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-10-26 22:16:53 -07:00
ligd
b69c587dc9
stdio: remove depends on setbuf setvbuf
...
N/A
Cause the function realize will handle this
Change-Id: I154c21c7a40667afae423bb0ebb67de8f5fc42fd
Signed-off-by: ligd <liguiding1@xiaomi.com>
2020-10-26 22:12:02 -07:00
YAMAMOTO Takashi
07fc24ba99
libxx: Suppress -Wmissing-exception-spec on operator new
2020-10-26 22:08:40 -07:00
YAMAMOTO Takashi
4c7bf29e35
libxx: Add exception specifier to operator delete
...
CXX: libxx_delete.cxx
libxx_delete.cxx:52:6: error: 'operator delete' is missing exception
specification 'throw()' [-Werror,-Wmissing-exception-spec]
void operator delete(FAR void *ptr)
^
throw()
1 error generated.
2020-10-26 22:08:40 -07:00
YAMAMOTO Takashi
6aef245523
libxx: Stop mentioning libs not integrated with this version of libxx
2020-10-26 22:07:39 -07:00
YAMAMOTO Takashi
caf67c817f
libxx: Update README
...
This doc seems a bit outdated to me.
This commit is my best attempt to update it.
2020-10-26 22:07:39 -07:00
YAMAMOTO Takashi
df812d09a2
math: Make this friendly with libcxx
...
- Turn some macros into functions
- Implement some type-agnostic functions.
(Just use __builtin_xxx)
- Add some missing function prototypes
(Just prototypes, not actually implemented in this commit)
2020-10-25 07:30:14 -07:00
Yoshinori Sugino
7b3cb0a23b
libs/libc/string/lib_strsignal.c: Fix a comment
2020-10-25 08:49:44 -03:00
dongjiuzhu
2b5be56bd0
serial/termios: support custom baud rate setting
...
N/A
Change-Id: I0cc00f6d0fda852533bd4a38ea6fc39e0d0059da
Signed-off-by: dongjiuzhu <dongjiuzhu1@xiaomi.com>
2020-10-21 10:11:21 -07:00
Xiang Xiao
eb4121ce38
Change all 'Nuttx' to 'NuttX'
...
Unify the naming convention
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-10-20 01:45:06 -07:00
Xiang Xiao
9928088868
libc: Don't fclose and fopen file in freopen
...
to avoid FILE pointer change after this commit:
commit b0797263ca
Author: Xiang Xiao <xiaoxiang@xiaomi.com>
Date: Thu Aug 13 18:17:29 2020 +0800
libc/stdio: Allocate file_struct dynamically
1.Reduce the default size of task_group_s(~512B each task)
2.Scale better between simple and complex application
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-10-19 21:31:31 -07:00
Xiang Xiao
c67da1d2b5
libxx: Switch the package downloading from 11.0.0.rc1 to 11.0.0
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-10-12 20:33:55 +01:00
Yoshinori Sugino
5a1788822d
libs/libc/signal/sig_wait.c: Fix a typo
2020-10-11 13:00:25 +08:00
raiden00pl
33901969fe
Fix nxstyle warnings
2020-10-10 12:24:28 -06:00
raiden00pl
24e17910b2
libdsp: Changed headers for apache 2.0 license
2020-10-10 12:24:28 -06:00
Gregory Nutt
32b0562375
Add some comments to inet_ntop()
...
Endian-ness issues are mind boggling sometimes. I have been confused by the logic in inet_ntop() a few times so I thought I would add some comments so that I (and others) will understand the endian-ness issues in the future. No change to logic, only comments changed.
2020-10-05 03:00:22 +08:00
Nathan Hartman
80ce7800a9
Sources and Docs: Fix typos and nxstyle issues
...
Documentation/contributing/coding_style.rst:
* Fix repeated words: ("this this").
* Remove trailing spaces.
boards/z80/z80/z80sim/README.txt:
* Fix repeated words: ("this this") and rewrap lines.
graphics/Kconfig,
libs/libc/math/Kconfig:
* Fix repeated words: ("this this").
arch/arm/src/armv7-a/arm_assert.c,
arch/arm/src/armv7-r/arm_assert.c,
arch/arm/src/imxrt/imxrt_enet.c,
arch/arm/src/kinetis/kinetis_enet.c,
arch/arm/src/kinetis/kinetis_flexcan.c,
arch/arm/src/s32k1xx/s32k1xx_enet.c,
arch/arm/src/s32k1xx/s32k1xx_flexcan.c,
arch/arm/src/stm32/stm32_pwm.c,
arch/arm/src/stm32h7/stm32_pwm.c,
arch/arm/src/stm32l4/stm32l4_pwm.c,
arch/renesas/src/rx65n/rx65n_usbdev.c,
binfmt/libnxflat/libnxflat_bind.c,
drivers/pipes/pipe_common.c,
net/igmp/igmp_input.c,
net/tcp/tcp_conn.c,
sched/sched/sched_roundrobin.c:
* Fix typo in comment ("this this").
arch/arm/src/cxd56xx/cxd56_usbdev.c,
arch/arm/src/lc823450/lc823450_usbdev.c:
* Fix typo in comment and rewrap lines.
arch/arm/src/imxrt/imxrt_usbdev.c,
arch/arm/src/stm32/stm32_dac.c,
arch/arm/src/stm32f0l0g0/stm32_pwm.c,
arch/arm/src/stm32f7/stm32_pwm.c,
arch/arm/src/tiva/lm/lm4f_gpio.h,
fs/nxffs/nxffs_write.c,
include/nuttx/analog/pga11x.h,
include/nuttx/usb/usbdev.h,
net/mld/mld_join.c:
* Fix typo in comment ("this this").
* Fix nxstyle issues.
2020-10-02 04:54:52 +02:00
YAMAMOTO Takashi
3e6561c3cf
lib_libvscanf.c: Implement "j" modifier for scanf
...
It's a part of C99 and commonly used these days.
2020-09-23 03:28:40 -07:00
Gregory Nutt
ebdfd16f0f
Move gettid() implementation to /libs/libc/unistd
...
Move sched/task/task/task_gettid.c to libs/libc/unistd/lib_gettid.c. gettid() is a dumb wrapper around getpid(). It is wasteful of resources to support TWO systme calls, one for getpid() and one for gettid(). Instead, move gettid() in the C library where it calls the single sysgtem call, getpid(). Much cleaner.
2020-09-22 19:40:56 -07:00
Xiang Xiao
f4794f0b48
libc: Implement access function correctly
...
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I6ae3abf79bd9aa8cfb54b8bbe302d69c4d9cb8ff
2020-09-22 10:30:36 +02:00
spiriou
a1c047fe53
libc/uio: enable writev() for sockets
2020-09-21 19:31:06 -07:00
Xiang Xiao
ba3f12c93f
libc: Implement popcount/popcountl/popcountll
...
specified here:
https://www.unix.com/man-page/netbsd/3/popcountll/
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-09-21 07:37:04 -07:00
chao.an
216c33a5c7
libs/libc/stdlib: Implement mkdtemp(3) syscall
...
See the reference here:
https://pubs.opengroup.org/onlinepubs/9699919799/functions/mkdtemp.html
Change-Id: I49081ecafc011a843e6067b1118b53bf65d4418b
Signed-off-by: chao.an <anchao@xiaomi.com>
2020-09-19 04:16:14 -07:00
chao.an
4067a9f057
libs/libc/stdio: correct the prototype of mktemp(3)
...
From: int mktemp(FAR char *path_template);
To: FAR char *mktemp(FAR char *path_template);
See the reference here:
https://pubs.opengroup.org/onlinepubs/009695399/functions/mktemp.html
Signed-off-by: chao.an <anchao@xiaomi.com>
2020-09-19 04:16:14 -07:00
chao.an
0826b827ee
libs/libc/time: add stub for futimes/ns(2)
...
Change-Id: I231817d10b9e2071b1f642e8694839b2a64b1c4c
Signed-off-by: chao.an <anchao@xiaomi.com>
2020-09-19 03:20:09 -07:00
chao.an
0f06c35640
unistd/priority: Implement [s/g]etpriority(2) syscall
...
See the reference here:
https://pubs.opengroup.org/onlinepubs/009695399/functions/getpriority.html
Signed-off-by: chao.an <anchao@xiaomi.com>
2020-09-19 01:06:51 -07:00