Skip to content

Commit ac751db

Browse files
authored
Merge pull request #3888 from mysterywolf/master
[add] [libc] libc新增getline/getdelim函数(posix.1-2008)
2 parents 36cb434 + b3ab8a9 commit ac751db

File tree

32 files changed

+394
-196
lines changed

32 files changed

+394
-196
lines changed

bsp/efm32/rtconfig.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,7 @@
213213
/* SECTION: Runtime library */
214214
// #define RT_USING_NOLIBC
215215
// #define RT_USING_NEWLIB
216+
#define RT_LIBC_USING_TIME
216217

217218
/* SECTION: Console options */
218219
#define RT_USING_CONSOLE

bsp/lpc408x/.config

Lines changed: 125 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
# RT-Thread Kernel
88
#
99
CONFIG_RT_NAME_MAX=8
10+
# CONFIG_RT_USING_ARCH_DATA_TYPE is not set
1011
# CONFIG_RT_USING_SMP is not set
1112
CONFIG_RT_ALIGN_SIZE=4
1213
# CONFIG_RT_THREAD_PRIORITY_8 is not set
@@ -63,8 +64,9 @@ CONFIG_RT_USING_DEVICE=y
6364
CONFIG_RT_USING_CONSOLE=y
6465
CONFIG_RT_CONSOLEBUF_SIZE=128
6566
CONFIG_RT_CONSOLE_DEVICE_NAME="uart0"
66-
CONFIG_RT_VER_NUM=0x40001
67+
CONFIG_RT_VER_NUM=0x40003
6768
CONFIG_ARCH_ARM=y
69+
CONFIG_RT_USING_CPU_FFS=y
6870
CONFIG_ARCH_ARM_CORTEX_M=y
6971
CONFIG_ARCH_ARM_CORTEX_M4=y
7072
# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set
@@ -138,6 +140,7 @@ CONFIG_RT_USING_DFS_DEVFS=y
138140
#
139141
CONFIG_RT_USING_DEVICE_IPC=y
140142
CONFIG_RT_PIPE_BUFSZ=512
143+
# CONFIG_RT_USING_SYSTEM_WORKQUEUE is not set
141144
CONFIG_RT_USING_SERIAL=y
142145
CONFIG_RT_SERIAL_USING_DMA=y
143146
CONFIG_RT_SERIAL_RB_BUFSZ=64
@@ -147,21 +150,21 @@ CONFIG_RT_SERIAL_RB_BUFSZ=64
147150
# CONFIG_RT_USING_I2C is not set
148151
CONFIG_RT_USING_PIN=y
149152
# CONFIG_RT_USING_ADC is not set
153+
# CONFIG_RT_USING_DAC is not set
150154
# CONFIG_RT_USING_PWM is not set
151155
# CONFIG_RT_USING_MTD_NOR is not set
152156
# CONFIG_RT_USING_MTD_NAND is not set
153-
# CONFIG_RT_USING_MTD is not set
154157
# CONFIG_RT_USING_PM is not set
155158
# CONFIG_RT_USING_RTC is not set
156159
# CONFIG_RT_USING_SDIO is not set
157160
# CONFIG_RT_USING_SPI is not set
158161
# CONFIG_RT_USING_WDT is not set
159162
# CONFIG_RT_USING_AUDIO is not set
160163
# CONFIG_RT_USING_SENSOR is not set
161-
162-
#
163-
# Using WiFi
164-
#
164+
# CONFIG_RT_USING_TOUCH is not set
165+
# CONFIG_RT_USING_HWCRYPTO is not set
166+
# CONFIG_RT_USING_PULSE_ENCODER is not set
167+
# CONFIG_RT_USING_INPUT_CAPTURE is not set
165168
# CONFIG_RT_USING_WIFI is not set
166169

167170
#
@@ -175,6 +178,7 @@ CONFIG_RT_USING_PIN=y
175178
#
176179
# CONFIG_RT_USING_LIBC is not set
177180
# CONFIG_RT_USING_PTHREADS is not set
181+
CONFIG_RT_LIBC_USING_TIME=y
178182

179183
#
180184
# Network
@@ -186,17 +190,14 @@ CONFIG_RT_USING_PIN=y
186190
# CONFIG_RT_USING_SAL is not set
187191

188192
#
189-
# light weight TCP/IP stack
193+
# Network interface device
190194
#
191-
# CONFIG_RT_USING_LWIP is not set
192-
# CONFIG_RT_USING_LWIP141 is not set
193-
# CONFIG_RT_USING_LWIP202 is not set
194-
# CONFIG_RT_USING_LWIP210 is not set
195+
# CONFIG_RT_USING_NETDEV is not set
195196

196197
#
197-
# Modbus master and slave stack
198+
# light weight TCP/IP stack
198199
#
199-
# CONFIG_RT_USING_MODBUS is not set
200+
# CONFIG_RT_USING_LWIP is not set
200201

201202
#
202203
# AT commands
@@ -211,16 +212,9 @@ CONFIG_RT_USING_PIN=y
211212
#
212213
# Utilities
213214
#
214-
# CONFIG_RT_USING_LOGTRACE is not set
215215
# CONFIG_RT_USING_RYM is not set
216216
# CONFIG_RT_USING_ULOG is not set
217217
# CONFIG_RT_USING_UTEST is not set
218-
219-
#
220-
# ARM CMSIS
221-
#
222-
# CONFIG_RT_USING_CMSIS_OS is not set
223-
# CONFIG_RT_USING_RTT_CMSIS is not set
224218
# CONFIG_RT_USING_LWP is not set
225219

226220
#
@@ -230,13 +224,20 @@ CONFIG_RT_USING_PIN=y
230224
#
231225
# IoT - internet of things
232226
#
227+
# CONFIG_PKG_USING_LORAWAN_DRIVER is not set
233228
# CONFIG_PKG_USING_PAHOMQTT is not set
229+
# CONFIG_PKG_USING_UMQTT is not set
234230
# CONFIG_PKG_USING_WEBCLIENT is not set
235231
# CONFIG_PKG_USING_WEBNET is not set
236232
# CONFIG_PKG_USING_MONGOOSE is not set
233+
# CONFIG_PKG_USING_MYMQTT is not set
234+
# CONFIG_PKG_USING_KAWAII_MQTT is not set
235+
# CONFIG_PKG_USING_BC28_MQTT is not set
237236
# CONFIG_PKG_USING_WEBTERMINAL is not set
238237
# CONFIG_PKG_USING_CJSON is not set
239238
# CONFIG_PKG_USING_JSMN is not set
239+
# CONFIG_PKG_USING_LIBMODBUS is not set
240+
# CONFIG_PKG_USING_FREEMODBUS is not set
240241
# CONFIG_PKG_USING_LJSON is not set
241242
# CONFIG_PKG_USING_EZXML is not set
242243
# CONFIG_PKG_USING_NANOPB is not set
@@ -254,10 +255,14 @@ CONFIG_RT_USING_PIN=y
254255
# Wiced WiFi
255256
#
256257
# CONFIG_PKG_USING_WLAN_WICED is not set
258+
# CONFIG_PKG_USING_RW007 is not set
257259
# CONFIG_PKG_USING_COAP is not set
258260
# CONFIG_PKG_USING_NOPOLL is not set
259261
# CONFIG_PKG_USING_NETUTILS is not set
262+
# CONFIG_PKG_USING_CMUX is not set
263+
# CONFIG_PKG_USING_PPP_DEVICE is not set
260264
# CONFIG_PKG_USING_AT_DEVICE is not set
265+
# CONFIG_PKG_USING_ATSRV_SOCKET is not set
261266
# CONFIG_PKG_USING_WIZNET is not set
262267

263268
#
@@ -267,14 +272,38 @@ CONFIG_RT_USING_PIN=y
267272
# CONFIG_PKG_USING_GAGENT_CLOUD is not set
268273
# CONFIG_PKG_USING_ALI_IOTKIT is not set
269274
# CONFIG_PKG_USING_AZURE is not set
270-
# CONFIG_PKG_USING_TENCENT_IOTKIT is not set
275+
# CONFIG_PKG_USING_TENCENT_IOT_EXPLORER is not set
276+
# CONFIG_PKG_USING_JIOT-C-SDK is not set
277+
# CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set
278+
# CONFIG_PKG_USING_JOYLINK is not set
279+
# CONFIG_PKG_USING_NIMBLE is not set
280+
# CONFIG_PKG_USING_OTA_DOWNLOADER is not set
281+
# CONFIG_PKG_USING_IPMSG is not set
282+
# CONFIG_PKG_USING_LSSDP is not set
283+
# CONFIG_PKG_USING_AIRKISS_OPEN is not set
284+
# CONFIG_PKG_USING_LIBRWS is not set
285+
# CONFIG_PKG_USING_TCPSERVER is not set
286+
# CONFIG_PKG_USING_PROTOBUF_C is not set
287+
# CONFIG_PKG_USING_ONNX_PARSER is not set
288+
# CONFIG_PKG_USING_ONNX_BACKEND is not set
289+
# CONFIG_PKG_USING_DLT645 is not set
290+
# CONFIG_PKG_USING_QXWZ is not set
291+
# CONFIG_PKG_USING_SMTP_CLIENT is not set
292+
# CONFIG_PKG_USING_ABUP_FOTA is not set
293+
# CONFIG_PKG_USING_LIBCURL2RTT is not set
294+
# CONFIG_PKG_USING_CAPNP is not set
295+
# CONFIG_PKG_USING_RT_CJSON_TOOLS is not set
296+
# CONFIG_PKG_USING_AGILE_TELNET is not set
297+
# CONFIG_PKG_USING_NMEALIB is not set
271298

272299
#
273300
# security packages
274301
#
275302
# CONFIG_PKG_USING_MBEDTLS is not set
276303
# CONFIG_PKG_USING_libsodium is not set
277304
# CONFIG_PKG_USING_TINYCRYPT is not set
305+
# CONFIG_PKG_USING_TFM is not set
306+
# CONFIG_PKG_USING_YD_CRYPTO is not set
278307

279308
#
280309
# language packages
@@ -288,6 +317,9 @@ CONFIG_RT_USING_PIN=y
288317
#
289318
# CONFIG_PKG_USING_OPENMV is not set
290319
# CONFIG_PKG_USING_MUPDF is not set
320+
# CONFIG_PKG_USING_STEMWIN is not set
321+
# CONFIG_PKG_USING_WAVPLAYER is not set
322+
# CONFIG_PKG_USING_TJPGD is not set
291323

292324
#
293325
# tools packages
@@ -299,6 +331,15 @@ CONFIG_RT_USING_PIN=y
299331
# CONFIG_PKG_USING_RDB is not set
300332
# CONFIG_PKG_USING_QRCODE is not set
301333
# CONFIG_PKG_USING_ULOG_EASYFLASH is not set
334+
# CONFIG_PKG_USING_ADBD is not set
335+
# CONFIG_PKG_USING_COREMARK is not set
336+
# CONFIG_PKG_USING_DHRYSTONE is not set
337+
# CONFIG_PKG_USING_NR_MICRO_SHELL is not set
338+
# CONFIG_PKG_USING_CHINESE_FONT_LIBRARY is not set
339+
# CONFIG_PKG_USING_LUNAR_CALENDAR is not set
340+
# CONFIG_PKG_USING_BS8116A is not set
341+
# CONFIG_PKG_USING_GPS_RMC is not set
342+
# CONFIG_PKG_USING_URLENCODE is not set
302343

303344
#
304345
# system packages
@@ -310,27 +351,74 @@ CONFIG_RT_USING_PIN=y
310351
# CONFIG_PKG_USING_LWEXT4 is not set
311352
# CONFIG_PKG_USING_PARTITION is not set
312353
# CONFIG_PKG_USING_FAL is not set
354+
# CONFIG_PKG_USING_FLASHDB is not set
313355
# CONFIG_PKG_USING_SQLITE is not set
314356
# CONFIG_PKG_USING_RTI is not set
315357
# CONFIG_PKG_USING_LITTLEVGL2RTT is not set
316358
# CONFIG_PKG_USING_CMSIS is not set
317359
# CONFIG_PKG_USING_DFS_YAFFS is not set
318360
# CONFIG_PKG_USING_LITTLEFS is not set
361+
# CONFIG_PKG_USING_THREAD_POOL is not set
362+
# CONFIG_PKG_USING_ROBOTS is not set
363+
# CONFIG_PKG_USING_EV is not set
364+
# CONFIG_PKG_USING_SYSWATCH is not set
365+
# CONFIG_PKG_USING_SYS_LOAD_MONITOR is not set
366+
# CONFIG_PKG_USING_PLCCORE is not set
367+
# CONFIG_PKG_USING_RAMDISK is not set
368+
# CONFIG_PKG_USING_MININI is not set
369+
# CONFIG_PKG_USING_QBOOT is not set
370+
# CONFIG_PKG_USING_UCOSIII_WRAPPER is not set
319371

320372
#
321373
# peripheral libraries and drivers
322374
#
375+
# CONFIG_PKG_USING_SENSORS_DRIVERS is not set
323376
# CONFIG_PKG_USING_REALTEK_AMEBA is not set
324377
# CONFIG_PKG_USING_SHT2X is not set
325-
# CONFIG_PKG_USING_AHT10 is not set
326-
# CONFIG_PKG_USING_AP3216C is not set
378+
# CONFIG_PKG_USING_SHT3X is not set
327379
# CONFIG_PKG_USING_STM32_SDIO is not set
328380
# CONFIG_PKG_USING_ICM20608 is not set
329381
# CONFIG_PKG_USING_U8G2 is not set
330382
# CONFIG_PKG_USING_BUTTON is not set
331-
# CONFIG_PKG_USING_MPU6XXX is not set
332383
# CONFIG_PKG_USING_PCF8574 is not set
384+
# CONFIG_PKG_USING_SX12XX is not set
385+
# CONFIG_PKG_USING_SIGNAL_LED is not set
386+
# CONFIG_PKG_USING_LEDBLINK is not set
387+
# CONFIG_PKG_USING_LITTLED is not set
388+
# CONFIG_PKG_USING_LKDGUI is not set
389+
# CONFIG_PKG_USING_NRF5X_SDK is not set
390+
# CONFIG_PKG_USING_NRFX is not set
391+
# CONFIG_PKG_USING_WM_LIBRARIES is not set
333392
# CONFIG_PKG_USING_KENDRYTE_SDK is not set
393+
# CONFIG_PKG_USING_INFRARED is not set
394+
# CONFIG_PKG_USING_ROSSERIAL is not set
395+
# CONFIG_PKG_USING_AGILE_BUTTON is not set
396+
# CONFIG_PKG_USING_AGILE_LED is not set
397+
# CONFIG_PKG_USING_AT24CXX is not set
398+
# CONFIG_PKG_USING_MOTIONDRIVER2RTT is not set
399+
# CONFIG_PKG_USING_AD7746 is not set
400+
# CONFIG_PKG_USING_PCA9685 is not set
401+
# CONFIG_PKG_USING_I2C_TOOLS is not set
402+
# CONFIG_PKG_USING_NRF24L01 is not set
403+
# CONFIG_PKG_USING_TOUCH_DRIVERS is not set
404+
# CONFIG_PKG_USING_MAX17048 is not set
405+
# CONFIG_PKG_USING_RPLIDAR is not set
406+
# CONFIG_PKG_USING_AS608 is not set
407+
# CONFIG_PKG_USING_RC522 is not set
408+
# CONFIG_PKG_USING_WS2812B is not set
409+
# CONFIG_PKG_USING_EMBARC_BSP is not set
410+
# CONFIG_PKG_USING_EXTERN_RTC_DRIVERS is not set
411+
# CONFIG_PKG_USING_MULTI_RTIMER is not set
412+
# CONFIG_PKG_USING_MAX7219 is not set
413+
# CONFIG_PKG_USING_BEEP is not set
414+
# CONFIG_PKG_USING_EASYBLINK is not set
415+
# CONFIG_PKG_USING_PMS_SERIES is not set
416+
# CONFIG_PKG_USING_CAN_YMODEM is not set
417+
# CONFIG_PKG_USING_LORA_RADIO_DRIVER is not set
418+
# CONFIG_PKG_USING_QLED is not set
419+
# CONFIG_PKG_USING_PAJ7620 is not set
420+
# CONFIG_PKG_USING_AGILE_CONSOLE is not set
421+
# CONFIG_PKG_USING_LD3320 is not set
334422

335423
#
336424
# miscellaneous packages
@@ -341,11 +429,15 @@ CONFIG_RT_USING_PIN=y
341429
# CONFIG_PKG_USING_MINILZO is not set
342430
# CONFIG_PKG_USING_QUICKLZ is not set
343431
# CONFIG_PKG_USING_MULTIBUTTON is not set
432+
# CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set
344433
# CONFIG_PKG_USING_CANFESTIVAL is not set
345434
# CONFIG_PKG_USING_ZLIB is not set
346435
# CONFIG_PKG_USING_DSTR is not set
347436
# CONFIG_PKG_USING_TINYFRAME is not set
348437
# CONFIG_PKG_USING_KENDRYTE_DEMO is not set
438+
# CONFIG_PKG_USING_DIGITALCTRL is not set
439+
# CONFIG_PKG_USING_UPACKER is not set
440+
# CONFIG_PKG_USING_UPARAM is not set
349441

350442
#
351443
# samples: kernel and components samples
@@ -356,6 +448,15 @@ CONFIG_RT_USING_PIN=y
356448
# CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set
357449
# CONFIG_PKG_USING_HELLO is not set
358450
# CONFIG_PKG_USING_VI is not set
451+
# CONFIG_PKG_USING_NNOM is not set
452+
# CONFIG_PKG_USING_LIBANN is not set
453+
# CONFIG_PKG_USING_ELAPACK is not set
454+
# CONFIG_PKG_USING_ARMv7M_DWT is not set
455+
# CONFIG_PKG_USING_VT100 is not set
456+
# CONFIG_PKG_USING_ULAPACK is not set
457+
# CONFIG_PKG_USING_UKAL is not set
458+
# CONFIG_PKG_USING_CRCLIB is not set
459+
# CONFIG_PKG_USING_THREES is not set
359460
CONFIG_SOC_LPC4088=y
360461

361462
#

bsp/lpc408x/rtconfig.h

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,9 @@
4040
#define RT_USING_CONSOLE
4141
#define RT_CONSOLEBUF_SIZE 128
4242
#define RT_CONSOLE_DEVICE_NAME "uart0"
43-
#define RT_VER_NUM 0x40001
43+
#define RT_VER_NUM 0x40003
4444
#define ARCH_ARM
45+
#define RT_USING_CPU_FFS
4546
#define ARCH_ARM_CORTEX_M
4647
#define ARCH_ARM_CORTEX_M4
4748

@@ -101,24 +102,22 @@
101102
#define RT_SERIAL_RB_BUFSZ 64
102103
#define RT_USING_PIN
103104

104-
/* Using WiFi */
105-
106-
107105
/* Using USB */
108106

109107

110108
/* POSIX layer and C standard library */
111109

110+
#define RT_LIBC_USING_TIME
112111

113112
/* Network */
114113

115114
/* Socket abstraction layer */
116115

117116

118-
/* light weight TCP/IP stack */
117+
/* Network interface device */
119118

120119

121-
/* Modbus master and slave stack */
120+
/* light weight TCP/IP stack */
122121

123122

124123
/* AT commands */
@@ -130,9 +129,6 @@
130129
/* Utilities */
131130

132131

133-
/* ARM CMSIS */
134-
135-
136132
/* RT-Thread online packages */
137133

138134
/* IoT - internet of things */

components/libc/Kconfig

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,15 @@ if RT_USING_LIBC && RT_USING_DFS
2222

2323
if RT_USING_POSIX
2424
config RT_USING_POSIX_MMAP
25-
bool "Enable mmap() api"
25+
bool "Enable mmap() API"
2626
default n
2727

2828
config RT_USING_POSIX_TERMIOS
29-
bool "Enable termios feature"
29+
bool "Enable termios APIs"
30+
default n
31+
32+
config RT_USING_POSIX_GETLINE
33+
bool "Enable getline()/getdelim() APIs"
3034
default n
3135

3236
config RT_USING_POSIX_AIO

0 commit comments

Comments
 (0)