]> xenbits.xensource.com Git - unikraft/libs/libcxx.git/log
unikraft/libs/libcxx.git
3 years agoCorrect license headers introduced by University Politehnica of Bucharest RELEASE-0.10.0 RELEASE-0.6 RELEASE-0.7.0 RELEASE-0.8.0 RELEASE-0.9.0
Simon Kuenzer [Tue, 13 Jul 2021 19:13:13 +0000 (21:13 +0200)]
Correct license headers introduced by University Politehnica of Bucharest

This commit removes the additional clause
"THIS HEADER MAY NOT BE EXTRACTED OR MODIFIED IN ANY WAY"
from BSD license headers that got introduced by mistake
with the following commits:
 3602034 - Initial port of libcxx to Unikraft (Vlad-Andrei BĂDOIU (78692))

On the one hand, this additional clause is redundant because
the BSD license already states that it must remain and the
copyright notice must be kept.
On the other hand, the clause freezes the file header
and prohibits future contributors from extending the
copyright notice for their contributions. This additional
clause is not part of the official BSD 3-clause.

The original author(s) or an authorized representative from
the author's affiliation consents to the change with a
`Reviewed-by` tag to this commit.

Signed-off-by: Simon Kuenzer <simon.kuenzer@neclab.eu>
Reviewed-by: Razvan Deaconescu <razvan.deaconescu@cs.pub.ro>
5 years agoFix crash due to atomics on bare-metal arm64 RELEASE-0.5
Felipe Huici [Tue, 28 Jan 2020 12:55:45 +0000 (13:55 +0100)]
Fix crash due to atomics on bare-metal arm64

At the moment atomic operations are working on ARM64 for KVM; however,
they are not working on baremetal on ARM64 (i.e., on the Raspberry Pi
3B+).  This can be most likely be solved by enabling the caches and
setting up a compatible memory configuration.  In the meantime, these
patches allow us to have functionally-equivalent non-atomic
implementations of the gcc builtins working on baremetal on ARM64.
Once the issue is fixed this workaround can be removed.

Signed-off-by: Felipe Huici <felipe.huici@neclab.eu>
Reviewed-by: Simon Kuenzer <simon.kuenzer@neclab.eu>
5 years agoAdd suppress flags for cleaner build. RELEASE-0.4
Felipe Huici [Thu, 13 Feb 2020 20:44:12 +0000 (21:44 +0100)]
Add suppress flags for cleaner build.

Signed-off-by: Felipe Huici <felipe.huici@neclab.eu>
Reviewed-by: Simon Kuenzer <simon.kuenzer@neclab.eu>
5 years agoAdd ARM64 support
Vlad-Andrei BĂDOIU (78692) [Tue, 14 Jan 2020 16:02:58 +0000 (16:02 +0000)]
Add ARM64 support

In order to compile under ARM64 we remove the definitions of __x86_64__
and __FLT16_MANT_DIG__.

Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@stud.acs.upb.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
5 years agoConfig.uk: Make CXX_THREADS depend on LIBCXXABI_THREADS
Costin Lupu [Wed, 4 Dec 2019 11:17:27 +0000 (13:17 +0200)]
Config.uk: Make CXX_THREADS depend on LIBCXXABI_THREADS

... because LIBCXX depends on LIBCXXABI.

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
Reviewed-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@stud.acs.upb.ro>
5 years agoRemove strtold_l external symbol from stdlib.h
Vlad-Andrei BĂDOIU (78692) [Mon, 18 Nov 2019 15:23:32 +0000 (15:23 +0000)]
Remove strtold_l external symbol from stdlib.h

Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@stud.acs.upb.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
5 years agoRemove external symbols definitions
Vlad-Andrei BĂDOIU (78692) [Fri, 8 Nov 2019 12:15:47 +0000 (12:15 +0000)]
Remove external symbols definitions

The latest newlib patch, 05b35a729f9, enables the definitions of the
long double math functions. This patch solves the conflicts by removng
their external definitions from libcxx.

Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@stud.acs.upb.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
5 years agoMakefile.uk: Rename SUPPRESS_FLAGS to LIBCXX_SUPPRESS_FLAGS
Costin Lupu [Sat, 12 Oct 2019 12:29:19 +0000 (15:29 +0300)]
Makefile.uk: Rename SUPPRESS_FLAGS to LIBCXX_SUPPRESS_FLAGS

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
5 years agoRemove exportsyms.uk
Vlad-Andrei BĂDOIU (78692) [Sun, 6 Oct 2019 21:29:38 +0000 (21:29 +0000)]
Remove exportsyms.uk

We remove the exportsyms.uk file due to issues with name mangling.

Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@stud.acs.upb.ro>
Reviewed-by: Costin Lupu <costin.lupu@cs.pub.ro>
5 years agoEnable threads support
Costin Lupu [Tue, 4 Jun 2019 20:54:39 +0000 (23:54 +0300)]
Enable threads support

This patch defines the macros and adds the hashtable template required for
enabling threads support in cxx library.

Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@stud.acs.upb.ro>
Signed-off-by: Teodora Serbanescu <teo.serbanescu16@gmail.com>
Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
5 years agoExport __dso_handle
Costin Lupu [Sun, 2 Jun 2019 15:11:22 +0000 (18:11 +0300)]
Export __dso_handle

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
5 years agoFix some of the compiling warnings
Costin Lupu [Sun, 2 Jun 2019 13:46:16 +0000 (16:46 +0300)]
Fix some of the compiling warnings

This patch removes the "unused-parameter" warnings generated by the origin code
and the multiple definition warnings for _LIBCPP_BUILDING_LIBRARY and
_LIBCPPABI_VERSION macros.

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
5 years agoAdd features.h
Costin Lupu [Sat, 1 Jun 2019 20:16:49 +0000 (23:16 +0300)]
Add features.h

When threads are enabled, cxx library includes a 'features.h' header in its
'include/__config' header from origin. The header introduced by this patch
includes the 'sys/features.h' header from newlib.

Signed-off-by: Costin Lupu <costin.lupu@cs.pub.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
6 years agoAdd exported symbols
Vlad-Andrei BĂDOIU (78692) [Wed, 10 Apr 2019 12:26:30 +0000 (12:26 +0000)]
Add exported symbols

This patch adds the mangled functions to the
exportsyms.uk. Due to the high number of symbols
this is a separate patch.

Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@stud.acs.upb.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
6 years agoInitial port of libcxx to Unikraft
Vlad-Andrei BĂDOIU (78692) [Wed, 10 Apr 2019 12:26:29 +0000 (12:26 +0000)]
Initial port of libcxx to Unikraft

This is our initial port of libcxx to Unikraft as an external
library. Libc is requiered for it to work. The dependency list
should contain: ...:$(UK_LIBS)/libunwind:
$(UK_LIBS)/compiler-rt:$(UK_LIBS)/libcxxabi:$(UK_LIBS)/libcxx:
$(UK_LIBS)/newlib:...

Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@stud.acs.upb.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
6 years agoAdd .gitignore
Vlad-Andrei BĂDOIU (78692) [Wed, 10 Apr 2019 12:26:28 +0000 (12:26 +0000)]
Add .gitignore

Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@stud.acs.upb.ro>
Reviewed-by: Felipe Huici <felipe.huici@neclab.eu>
6 years agoInitial commit (empty)
Vlad-Andrei Badoiu [Thu, 28 Mar 2019 17:20:10 +0000 (19:20 +0200)]
Initial commit (empty)