History log of /haiku/src/system/libroot/posix/glibc/stdlib/Jamfile
Revision Date Author Comments
# d338200e 30-May-2022 Trung Nguyen <trungnt282910@gmail.com>

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>


# 3a76add7 09-Mar-2022 Augustin Cavalier <waddlesplash@gmail.com>

libroot: Replace a64l/l64a with musl equivalents.


# 4a025c8e 09-Nov-2021 Alexander von Gluck IV <kallisti5@unixzen.com>

libroot: revert __clz_tab change. Didn't mean to put that in yet

Change-Id: I6c4eea2de5778749e4894ea5d1d12e8403e538da


# ec8a8f1c 09-Nov-2021 X512 <danger_mail@list.ru>

libroot/riscv64: minor riscv64 fixes

Change-Id: I96b604aabe18307d7376473b8d9cd50eccb537d1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4709
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>


# a5f30bea 13-Dec-2014 Puck Meerburg <puck@puckipedia.nl>

Fix #7008: Add a64l and l64a from glibc, and add some missing definitions in wchar.h and stdlib.h

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>


# b0944c78 01-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

More work towards hybrid support

* All packaging architecture dependent variables do now have a
respective suffix and are set up for each configured packaging
architecture, save for the kernel and boot loader variables, which
are still only set up for the primary architecture.
For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++,
and TARGET_LIBSTDC++ are set to the respective values for the primary
packaging architecture by default.
* Introduce a set of MultiArch* rules to help with building targets for
multiple packaging architectures. Generally the respective targets are
(additionally) gristed with the packaging architecture. For libraries
the additional grist is usually omitted for the primary architecture
(e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that
Jamfiles for targets built only for the primary architecture don't
need to be changed.
* Add multi-arch build support for all targets needed for the stage 1
cross devel package as well as for libbe (untested).


# 0cf89c88 11-Dec-2011 Oliver Tappe <zooey@hirschkaefer.de>

Activate our own wcs*tombs()-functions.

* add our own version of these functions to the build
* drop the glibc implementations of those functions


# b8b65310 07-Dec-2011 Oliver Tappe <zooey@hirschkaefer.de>

Add implementation for mbstowcs().

* implement mbstowcs() on top of mbsrtowcs()
* drop glibc's version of mbstowcs()


# ae901935 24-Nov-2011 Oliver Tappe <zooey@hirschkaefer.de>

Introduce __set_errno() throughout libroot.

* add errno_private.h, which defines the __set_errno() macro with
and without tracing
* instead of setting errno manually, all libroot's code now invokes
__set_errno(), which makes it much easier to trace changes to errno
* redirect glibc's use of __set_errno() to our own version


# cc5eca75 22-Nov-2011 Oliver Tappe <zooey@hirschkaefer.de>

Activate our new multibyte implementation.

* add implementations for the following multibyte-related
functions:
btwoc()
mblen()
mbrlen()
mbrtowc()
mbsinit()
mbtowc()
wcrtomb()
wcswidth()
wctob()
wctomb()
* the implementation of the above function live in a symbol
named __<name>, the above symbol names are defined as a weak
alias to the internal ones - TODO: we need to make sure to
only invoked the internal functions (i.e. prepended with __)
in order to avoid problems with symbol preemption.
* deactivate the limited mb implementation we provided before,
as well as respective stuff from glibc


# e86eb77b 18-Sep-2010 Scott McCreary <scottmc2@gmail.com>

Patch from kaliber to a the glibc strtold implentation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38710 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4f86db49 29-Jul-2009 Oliver Tappe <zooey@hirschkaefer.de>

* replaced broken bsd-inherited implementation of strtod() with the glibc
version that lives in our repo, too, and actually works as intended
* removed the broken strtod() implementation from the repo
This fixes all floating-point test regressions reported in #3308.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31919 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4a7ad412 23-Jan-2009 Stefano Ceccherini <stefano.ceccherini@gmail.com>

revert r28970, since they cause crashes. Still looking into it

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28997 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 64f6abaa 20-Jan-2009 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Imported some wide char functions from freebsd, adapted to the build, tried to integrate them with the glibc we are using. The mbtest supplied in ticket #2822 seems to work, without regressions. Please shout if there are issues.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28970 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 27c3792d 01-Sep-2008 Jérôme Duval <korli@users.berlios.de>

added random_r.c


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27278 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a2762cad 15-May-2006 Jérôme Duval <korli@users.berlios.de>

hopefully handles bug #587


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17476 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b150d60 07-Dec-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Added PPC specific and some generic glibc headers. Taken from
glibc 2.3.2, which seems to be the version used in other places,
though I also found older files.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15402 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 353d20c0 27-Nov-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

* libroot and the runtime loader are no longer built with kernel rules.
* New rule Ld, analogously to KernelLd.
* Added StaticLibrary parameter for supplying additional objects.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15191 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ef0635bd 21-Nov-2005 Jérôme Duval <korli@users.berlios.de>

added some more glibc functions


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15064 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 68719375 02-Nov-2005 Jérôme Duval <korli@users.berlios.de>

added drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48,
seed48, and lcong48 functions
fixed bug #63


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14645 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 338b8dc3 29-Oct-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Merged changes from branch build_system_redesign at revision 14573.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14574 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 718b5114 13-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

This should fix the build after all the kernel/system renaming.
If anything is still broken (and was not before :)), please shout.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12361 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5af32e75 13-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed src/kernel to src/system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12359 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a5f30beaadfb2f99c44ba85db889c20a4d22f89b 13-Dec-2014 Puck Meerburg <puck@puckipedia.nl>

Fix #7008: Add a64l and l64a from glibc, and add some missing definitions in wchar.h and stdlib.h

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>


# b0944c78b074a8110bd98e060415d0e8f38a7f65 01-Aug-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

More work towards hybrid support

* All packaging architecture dependent variables do now have a
respective suffix and are set up for each configured packaging
architecture, save for the kernel and boot loader variables, which
are still only set up for the primary architecture.
For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++,
and TARGET_LIBSTDC++ are set to the respective values for the primary
packaging architecture by default.
* Introduce a set of MultiArch* rules to help with building targets for
multiple packaging architectures. Generally the respective targets are
(additionally) gristed with the packaging architecture. For libraries
the additional grist is usually omitted for the primary architecture
(e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that
Jamfiles for targets built only for the primary architecture don't
need to be changed.
* Add multi-arch build support for all targets needed for the stage 1
cross devel package as well as for libbe (untested).


# 0cf89c88d3672a3f0d642e5fbac0f640cc893a55 11-Dec-2011 Oliver Tappe <zooey@hirschkaefer.de>

Activate our own wcs*tombs()-functions.

* add our own version of these functions to the build
* drop the glibc implementations of those functions


# b8b6531011c096fd36a80555cc5cbca46df66554 07-Dec-2011 Oliver Tappe <zooey@hirschkaefer.de>

Add implementation for mbstowcs().

* implement mbstowcs() on top of mbsrtowcs()
* drop glibc's version of mbstowcs()


# ae9019359606f1db67632ef51a77ce70001d3770 24-Nov-2011 Oliver Tappe <zooey@hirschkaefer.de>

Introduce __set_errno() throughout libroot.

* add errno_private.h, which defines the __set_errno() macro with
and without tracing
* instead of setting errno manually, all libroot's code now invokes
__set_errno(), which makes it much easier to trace changes to errno
* redirect glibc's use of __set_errno() to our own version


# cc5eca75540f0750fbc325eab1f82c168564336b 22-Nov-2011 Oliver Tappe <zooey@hirschkaefer.de>

Activate our new multibyte implementation.

* add implementations for the following multibyte-related
functions:
btwoc()
mblen()
mbrlen()
mbrtowc()
mbsinit()
mbtowc()
wcrtomb()
wcswidth()
wctob()
wctomb()
* the implementation of the above function live in a symbol
named __<name>, the above symbol names are defined as a weak
alias to the internal ones - TODO: we need to make sure to
only invoked the internal functions (i.e. prepended with __)
in order to avoid problems with symbol preemption.
* deactivate the limited mb implementation we provided before,
as well as respective stuff from glibc


# e86eb77b1b581dd11a0e14b9a6835068fee20f5d 18-Sep-2010 Scott McCreary <scottmc2@gmail.com>

Patch from kaliber to a the glibc strtold implentation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38710 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4f86db4973a5dddc04e7486a399196b313dedf05 29-Jul-2009 Oliver Tappe <zooey@hirschkaefer.de>

* replaced broken bsd-inherited implementation of strtod() with the glibc
version that lives in our repo, too, and actually works as intended
* removed the broken strtod() implementation from the repo
This fixes all floating-point test regressions reported in #3308.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31919 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4a7ad412f6e8a35cb49b9985c08021227ef55466 23-Jan-2009 Stefano Ceccherini <stefano.ceccherini@gmail.com>

revert r28970, since they cause crashes. Still looking into it

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28997 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 64f6abaa915724c1f683848fdebfa46312ae60e2 20-Jan-2009 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Imported some wide char functions from freebsd, adapted to the build, tried to integrate them with the glibc we are using. The mbtest supplied in ticket #2822 seems to work, without regressions. Please shout if there are issues.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28970 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 27c3792d1ec4f42b059b8a8e874bc5be2fed978b 01-Sep-2008 Jérôme Duval <korli@users.berlios.de>

added random_r.c


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27278 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a2762cadacf267eecf349acef5999d13923f8aa4 15-May-2006 Jérôme Duval <korli@users.berlios.de>

hopefully handles bug #587


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17476 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b150d6067ffabe5ec1e6c36e49d36c64d6b1e47 07-Dec-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Added PPC specific and some generic glibc headers. Taken from
glibc 2.3.2, which seems to be the version used in other places,
though I also found older files.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15402 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 353d20c0c5f19d1120a8acb0f4f7f3b266da730f 27-Nov-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

* libroot and the runtime loader are no longer built with kernel rules.
* New rule Ld, analogously to KernelLd.
* Added StaticLibrary parameter for supplying additional objects.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15191 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ef0635bd49b6de5f297530cb956e5e2d6c2cc1a9 21-Nov-2005 Jérôme Duval <korli@users.berlios.de>

added some more glibc functions


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15064 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 687193750c5b58febfbd3571407688ba1c852c36 02-Nov-2005 Jérôme Duval <korli@users.berlios.de>

added drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48,
seed48, and lcong48 functions
fixed bug #63


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14645 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 338b8dc301721b1f472e8297a898d4eaa2f2ee3a 29-Oct-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Merged changes from branch build_system_redesign at revision 14573.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14574 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 718b5114e0613a5602d5d6296afeaa7f3ee4b576 13-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

This should fix the build after all the kernel/system renaming.
If anything is still broken (and was not before :)), please shout.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12361 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5af32e752606778be5dd7379f319fe43cb3f6b8c 13-Apr-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed src/kernel to src/system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12359 a95241bf-73f2-0310-859d-f6bbb57e9c96