Commit Graph

61 Commits

Author SHA1 Message Date
Xiang Xiao
77792a1598 sched: Define CONFIG_SMP_NCPUS to 1 in no SMP case
to simplify the SMP related code logic

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-01-20 23:21:21 +08:00
Xiang Xiao
6357523892 arch: Add _wchar_t typedef like other basic types
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-12-09 16:57:23 +09:00
Gustavo Henrique Nihei
5dfb2713f6 include: Add __socklen_t_defined for compatibility to other C libraries
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-11-09 08:19:27 -06:00
Xiang Xiao
319474b1b1 fs: Change off_t and related types to int64_t if long long is supported
since it is very popular that the storage capcacity is large than 4GB
even in the embedded system:
https://www.opengroup.org/platform/lfs.html
https://en.wikipedia.org/wiki/Large-file_support

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I019dc08aff02f9ea01eb6d750033bbc358994da5
2021-08-04 06:48:30 -07:00
Alin Jerpelea
9b9be7e1f0 include: Author: Gregory Nutt: update licenses to Apache 2.0
Update files from Gregory Nutt to Apache 2.0 license.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-02-04 03:33:58 -08:00
Xiang Xiao
bb8c4485a2 libc: Change OK/ERROR macro to enum
to avoid the conflict with 3rd party c++ library(e.g. protobuf):
fdc35840b9/src/google/protobuf/stubs/status.h (L47)

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Ie8bb9008a8375c729f8b947c9f10baa80104d157
2020-11-30 09:43:18 +01:00
YAMAMOTO Takashi
e99e185712 Don't typedef wchar_t for C++
wchar_t is a builtin type in C++.

clang complains like the following even with -fshort-wchar:

    error: cannot combine with previous 'type-name' declaration specifier

my clang version if it matters:

    spacetanuki% clang++ --version
    Apple clang version 11.0.0 (clang-1100.0.33.17)
    Target: x86_64-apple-darwin18.7.0
    Thread model: posix
    InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
    spacetanuki% clang++ -dM -E - < /dev/null | grep WCHAR
    #define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
    #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
    #define __SIZEOF_WCHAR_T__ 4
    #define __WCHAR_MAX__ 2147483647
    #define __WCHAR_TYPE__ int
    #define __WCHAR_WIDTH__ 32
    spacetanuki% clang++ -fshort-wchar -dM -E - < /dev/null | grep WCHAR
    #define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
    #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
    #define __SIZEOF_WCHAR_T__ 2
    #define __WCHAR_MAX__ 65535
    #define __WCHAR_TYPE__ unsigned short
    #define __WCHAR_UNSIGNED__ 1
    #define __WCHAR_WIDTH__ 16
    spacetanuki%
2020-11-01 18:19:13 -08:00
ligd
c8c2745fa7 include/sys/types.h: add u_intXX_t support
like u_int8_t u_int16_t u_in32_t...

Change-Id: Ieee5014bddb1cf1a6e769af7258ff524263f67fb
Signed-off-by: ligd <liguiding1@xiaomi.com>
2020-09-11 10:41:24 +08:00
Xiang Xiao
6f6d61eec4 fs/vfs: Implement statvfs and fstatvfs
specified here:
https://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/statvfs.h.html

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-07-13 20:25:03 +01:00
Xiang Xiao
d17b963bca libc: Move double_t typedef from sys/types.h to math.h
specified here:
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/math.h.html

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I3497a73908301d999cf1cfc4a66552a7ca4868c6
2020-06-29 13:37:41 +01:00
Xiang Xiao
e7d9260014 arch: Customize the typedef of size_t instead of intptr_t
To ensure size_t same as toolchain definition in the first place and rename CXX_NEWLONG to ARCH_SIZET_LONG.  The change also check whether __SIZE_TYPE__ exist before CONFIG_ARCH_SIZET_LONG so our definition can align with toolchain(gcc/clang) definition automatically.
2020-02-18 07:15:19 -06:00
Xiang Xiao
b58ccc96e4 include/sys/stat.h and include/sys/types.h: Update struct stat to confirm opengroup spec:
https://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/stat.h.html
2019-11-19 09:54:57 -06:00
Gregory Nutt
bf3105fc8f include/sys/types.h: Remove non-standard HP-UX priority range definitionis. HP-UX is not a supported OS. 2019-09-10 14:02:40 -06:00
Gregory Nutt
58743b7488 The non-standard, non-portable type cpu_set_t was created specifically to support the NuttX internal, SMP implementation. Any resemblance to any other cpu_set_t would be purely coincidental. However it appears that that coincidence has occurred. cpu_set_t is an equivalent, non-standard, non-portable type in the GNU C library. Compilation of libgnat expects this non-standard type to be defined. Who am I to standard in the way of progress? This commit removes the conditioning on CONFIG_SMP so that cpu_set_t is typed (as a uint8_t) even if CONFIG_SMP is not defined. Reference: Bitbucket issue 164. 2019-08-29 10:03:01 -06:00
Xiang Xiao
894ca622e6 nclude/sys/types: Move wint_t and wctype_t from wchar.h to types.h. This change is compatible as before since wchar.h include types.h indirectly. This fixes a compilation error with newlib's math.h: 'unknown type name wint_t' 2018-08-27 06:26:37 -06:00
Gregory Nutt
5db2f993f9 Trivial updates from review of vecto I/O logic. 2018-06-23 09:01:42 -06:00
Gregory Nutt
8fdbb1e0a4 Elimate use of the non-standard type systime_t and replace it the equivalent, standard type clock_t
Squashed commit of the following:

    sched:  Rename all use of system_t to clock_t.
    syscall:  Rename all use of system_t to clock_t.
    net:  Rename all use of system_t to clock_t.
    libs:  Rename all use of system_t to clock_t.
    fs:  Rename all use of system_t to clock_t.
    drivers:  Rename all use of system_t to clock_t.
    arch:  Rename all use of system_t to clock_t.
    include:  Remove definition of systime_t; rename all use of system_t to clock_t.
2018-06-16 12:16:13 -06:00
Gregory Nutt
22484386ee fs/cromfs and tools/gencromfs: Various fixes for traversal relative file paths. Biggest changes is in types used: Cannot use size_t or mode_t in common structures because they have different sizes on the (64-bit) host and the (32-bit) target. Use uint32_t instead of size_t for offsets. Use uint16_t instead of mode_t. 2018-03-20 12:37:01 -06:00
Gregory Nutt
1a990f99d1 libc/time: Add an implementationof clock() 2018-03-13 08:07:29 -06:00
Gregory Nutt
9eca03b9be tools/configure.sh: Another fix for the script. The last change only worked for Windows Cygwin; for Linux, it needed to remove some additional things from the defconfig file. 2017-10-01 14:24:57 -06:00
Gregory Nutt
54fd0f0a04 Fix a few more compile issues with the new wide character support 2016-10-19 08:18:46 -06:00
Gregory Nutt
2075eb7932 Fix a typo introduced in the last commit and a file that was missed in the last commit 2016-02-19 16:03:01 -06:00
Gregory Nutt
3147dfc7d5 SMP: Add some tentative initialization logic 2016-02-10 13:49:27 -06:00
Gregory Nutt
6230e6e199 size_t should be 64-bits on a 64-bit machine. mmsize_t should be 32-bits (unless CONFIG_MM_SMALL is selected). This commit backs out the last change to stddef.h 2015-11-23 12:03:36 -06:00
Gregory Nutt
cb9e27c3b0 Standardize naming used for public data and function groupings 2015-10-02 16:30:35 -06:00
Gregory Nutt
bcae42b653 Costmetic updates comments and style; Add NFS dependency on IPv4 2015-02-26 06:04:23 -06:00
Gregory Nutt
5afa3ec59d Add BSD and SYSV types to sys/types to simplify porting. From Max Neklyudov 2015-02-25 14:01:14 -06:00
Gregory Nutt
d6704a1cd7 Suffer the consequences of moving struct timeval to its correct location 2015-02-15 15:18:35 -06:00
Gregory Nutt
b660a708d4 Add shared memory definitions, types, prototypes 2014-09-22 09:29:37 -06:00
Gregory Nutt
752068073a Forgot to add stpcpy.c in last commit 2014-01-10 07:09:59 -06:00
Gregory Nutt
8e1b493786 Fix some of the SIZE_MAX definitions updated in a recent commit 2014-01-08 08:25:46 -06:00
Gregory Nutt
c5f9b8768e Add type rsize_t and function gets_s() 2014-01-07 16:27:45 -06:00
Gregory Nutt
1da566f27b Make sure that the Z16F build still builds and runs 2014-01-01 10:29:44 -06:00
patacongo
3736ae6ba9 Add logic to retain child task exit status if so configured
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5553 42af7a65-404d-4744-a932-0658087f49c3
2013-01-23 22:23:46 +00:00
patacongo
b8e53dad52 Use SIGCHLD with waitpid(); implemented wait() and waitid()
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5515 42af7a65-404d-4744-a932-0658087f49c3
2013-01-13 18:53:00 +00:00
patacongo
7e20685e1a Define NULL to be (0) for C++
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5023 42af7a65-404d-4744-a932-0658087f49c3
2012-08-12 17:49:35 +00:00
patacongo
8e5733ae3f Header file clean-up
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4948 42af7a65-404d-4744-a932-0658087f49c3
2012-07-17 03:58:11 +00:00
patacongo
34f1a907b4 wchar_t is a C++ built in and should not (always) be defined
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4128 42af7a65-404d-4744-a932-0658087f49c3
2011-11-29 14:26:12 +00:00
patacongo
62d94bb3d6 Add wchar_t type; Add LPC17xx CAN driver from Lzyy; Fix serial bug reported by Lzyy
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3775 42af7a65-404d-4744-a932-0658087f49c3
2011-07-12 16:36:45 +00:00
patacongo
37b42d4259 Fix AVR warnings; FAT FS needs to use off_t instead of size_t
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3728 42af7a65-404d-4744-a932-0658087f49c3
2011-06-20 20:54:45 +00:00
patacongo
f96fb2fa03 Add rtc.h header file
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3493 42af7a65-404d-4744-a932-0658087f49c3
2011-04-12 14:14:47 +00:00
patacongo
8b26af1f4f Experimental version of waitpid()
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3359 42af7a65-404d-4744-a932-0658087f49c3
2011-03-10 14:00:04 +00:00
patacongo
7caab4ea49 First cut at x86 build environment
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3336 42af7a65-404d-4744-a932-0658087f49c3
2011-03-04 22:25:03 +00:00
patacongo
e385b1074b Clean-up from big switch to stdint/stdbool
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2362 42af7a65-404d-4744-a932-0658087f49c3
2009-12-16 23:23:46 +00:00
patacongo
eeec4073a9 Switching to C99 stdint.h types
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2340 42af7a65-404d-4744-a932-0658087f49c3
2009-12-14 23:32:23 +00:00
patacongo
92b110e0e2 Changing NuttX fixed size type names to C99 standard names -- things will be broken for awhile
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2335 42af7a65-404d-4744-a932-0658087f49c3
2009-12-14 15:46:55 +00:00
patacongo
4686cc55fa types blkcnt_t and off_t should not depend on memory model; Remove non-standard type STATUS
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2330 42af7a65-404d-4744-a932-0658087f49c3
2009-12-13 18:01:46 +00:00
patacongo
9535a28d7a Eliminate some hcs12 compile errors/warnings
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2329 42af7a65-404d-4744-a932-0658087f49c3
2009-12-13 15:13:37 +00:00
patacongo
fdca08128e Easing in binfmt support
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1892 42af7a65-404d-4744-a932-0658087f49c3
2009-06-17 16:28:50 +00:00
patacongo
a06bc37358 cosmet
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1504 42af7a65-404d-4744-a932-0658087f49c3
2009-02-15 18:29:14 +00:00