Commit Graph

17 Commits

Author SHA1 Message Date
Trung Nguyen
d338200e2b libs/posix: Implemented new locale functions
Implemented the missing POSIX functions in <locale.h>:
newlocale, duplocale, uselocale, and freelocale, and also
provided missing type definitions for <locale.h>.

Implemented missing POSIX locale-based function variants.

Modified LocaleBackend so that it could support thread-local
locales.

Some glibc-like locale-related variables supporting
ctype and printf family of functions have also been updated
to reflect the thread-local variables present in the latest
glibc sources.

As there have been some modifications to global symbols
in libroot, libroot_stubs.c has been regenerated.

Bug: #17168
Change-Id: Ibf296c58c47d42d1d1dfb2ce64042442f2679431
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5351
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2022-07-11 16:30:16 +00:00
Jérôme Duval
a7115745f2 POSIX/C11: add timespec_get()
Change-Id: I746e32f3a463bf2c7b03097c625901d54cf2b8eb
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4853
Reviewed-by: Rene Gollent <rene@gollent.com>
2022-01-10 14:46:27 +00:00
Augustin Cavalier
39efd913c1 Switch to a 64-bit time_t everywhere except 32-bit x86.
Thus, BeOS compatibility is preserved (and there is no risk of
breaking GCC5<->GCC2 interoperation on hybrid builds.)

This commit only makes the actual change, the build fixes are
in the next commit.
2017-06-06 17:38:17 -04:00
François Revol
02c3d9f5e6 Rename some parameters to avoid "declaration of 'foo' shadows global declaration" warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43048 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 22:01:29 +00:00
Ingo Weinhold
24df65921b Merged signals-merge branch into trunk with the following changes:
* Reorganized the kernel locking related to threads and teams.
* We now discriminate correctly between process and thread signals. Signal
  handlers have been moved to teams. Fixes #5679.
* Implemented real-time signal support, including signal queuing, SA_SIGINFO
  support, sigqueue(), sigwaitinfo(), sigtimedwait(), waitid(), and the addition
  of the real-time signal range. Closes #1935 and #2695.
* Gave SIGBUS a separate signal number. Fixes #6704.
* Implemented <time.h> clock and timer support, and fixed/completed alarm() and
  [set]itimer(). Closes #5682.
* Implemented support for thread cancellation. Closes #5686.
* Moved send_signal() from <signal.h> to <OS.h>. Fixes #7554.
* Lots over smaller more or less related changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42116 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 00:00:23 +00:00
Scott McCreary
0fae873352 Updated posix headers to remove commas from copyright line, to match the preferred coding guidelines.
Cleaned up some header style violations, making sure there are two blank lines after the header guards.
This fixes the posix header part of #2191.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-03 21:46:47 +00:00
Oliver Tappe
9d391816b7 * clearified that stime() has nothing to do with timezones
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-05 21:42:56 +00:00
Ingo Weinhold
2222d0559d * Introduced new header directory "config", which ATM contains HaikuConfig.h
and types.h. The idea is to provide a basic architecture/compiler
  abstraction by defining types and macros that allow the posix/ and os/
  headers to be mostly architecture/compiler agnostic. 
* Adjusted the posix/ and os/ headers accordingly.
* <SupportDefs.h>: Introduced B_PRI* and B_SCN* macros similar to the PRI*
  and SCN* macros defined in <inttypes.h>, just for the BeOS/Haiku [u]int*
  types and some POSIX types (e.g. off_t, dev_t, ino_t) that don't have POSIX
  macros. Also the B_PRI* and B_SCN* macros are available unconditionally,
  unlike the <inttypes.h> macros, which require __STDC_FORMAT_MACROS to be
  defined in C++ mode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-24 19:44:07 +00:00
Jérôme Duval
e4bbf18b3f added an implementation for nanosleep() based on snooze()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-25 19:18:27 +00:00
Axel Dörfler
b506c53f0a Changed useconds_t and suseconds_t to be "long" types instead of "long long".
This has a negative effect on ualarm(), but is somewhat required by the POSIX
specs ("[...] the implementation should support one or more programming environments
in which [...], and useconds_t are no greater than the width of type long."
Indeed, it also changed the size of our struct timeval which broken binary
compatibility with R5 (ie. used in gettimeofday()).
This fixes bug #490 and therefore bug #428 (firefox crashing on load) as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-16 15:16:50 +00:00
Axel Dörfler
71c6382f33 useconds_t and suseconds_t are now long long ints.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-13 13:05:26 +00:00
Jérôme Duval
89104b34c4 Change the license (no no Axel doesn't change his name :))
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11559 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 10:25:24 +00:00
Jérôme Duval
613757e677 added a proto for strptime
replaced copyright header with author


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 16:39:50 +00:00
Axel Dörfler
f647a9d57c Added struct timespec, and struct itimerspec to time.h.
Added missing typedefs (suseconds_t, useconds_t).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-28 18:36:26 +00:00
Axel Dörfler
5e4caf1e35 included missing header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 16:06:53 +00:00
Axel Dörfler
2b9d5ff6c2 Some changes for an independent header system - added missing function
prototypes (and those commented out), to keep the whole project be compilable
and usable on BeOS.
Fixed a bug in fcntl.h (definition for O_DIRECT), added new O_MOUNT.
Added prototypes and "struct tm" to time.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1619 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 15:27:44 +00:00
Axel Dörfler
8edc4bb4c8 Added a very preliminary time.h
Removed the bzero()/bcopy() prototypes, and replaced them with macros - we
should decide what to do with them.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-23 02:33:02 +00:00