Commit Graph

274 Commits (master)
 

Author SHA1 Message Date
matoro be80075e95 meson: support building docs
ci/woodpecker/push/woodpecker Pipeline was successful Details
Toggleable with -Ddocs=(true|false), defaults to false.

Requires bumping minimum meson version to 0.59.0, or 0.61.0 to also
include symlinks.
4 months ago
Ariadne Conill 4c2cfc54ac libucontext.h: add C++ externs 4 months ago
L. Pereira 0f625a86ee Fix FREESTANDING install target
When installing a FREESTANDING build, the check for an empty variable
was not being honored because the empty string would evaluate to
nothing.  Put the variable expansion in quotes so that we have an empty
string instead.
4 months ago
Ismael Luceno 8e1397f5a2 Makefile: Make variables Automake-compatible
Also split libdir into shared and static variants to enable installing to
different locations.

Signed-off-by: Ismael Luceno <ismael@iodev.co.uk>
4 months ago
Ariadne Conill 33ff253d52 Merge pull request 'Fixed empty TYPE(__proc) causing linker issues on 32-bit arm' (#36) from rlcamp/libucontext:arm_linker_fix into master
Reviewed-on: #36
2 years ago
Richard Campbell 3044c2b908 Fixed empty TYPE(__proc) causing linker issues on 32-bit arm 2 years ago
Ariadne Conill 128e4fdc4b Merge pull request 'arm_hard_float' (#35) from rlcamp/libucontext:arm_hard_float into master
Reviewed-on: #35
2 years ago
Richard Campbell 5244775fb9 Added note to readme about floating point WIP 2 years ago
Richard Campbell 9abcd8afe0 Added passthrough of FORCE_SOFT_FLOAT and FORCE_HARD_FLOAT Makefile options 2 years ago
Richard Campbell 7bc3e90984 Added arm conditional vfp save/restore 2 years ago
Ariadne Conill 4dde3417b4 libucontext 1.2
continuous-integration/woodpecker the build was successful Details
2 years ago
Ariadne Conill 6ec3e63877 NEWS: mention or1k port
continuous-integration/woodpecker the build was successful Details
2 years ago
Ariadne Conill 69ebc5e51b README: add or1k
continuous-integration/woodpecker the build was successful Details
2 years ago
Ariadne Conill 0a72eff002 or1k: add freestanding bits 2 years ago
Ariadne Conill 973e61441a or1k: add getcontext/setcontext/swapcontext 2 years ago
Ariadne Conill 00128f7575 or1k: add makecontext and trampoline 2 years ago
Ariadne Conill 7fc08a6dc6 or1k: add definitions 2 years ago
Ariadne Conill e26a93806e build: allow check_libucontext program to be run on its own like the other check steps
continuous-integration/woodpecker the build was successful Details
2 years ago
Ariadne Conill 5d2f30f96a build: check_libucontext_posix must depend on ${LIBUCONTEXT_SONAME} 2 years ago
Ariadne Conill a51dce6e2c common-trampoline: initialize link pointer to NULL
continuous-integration/woodpecker the build was successful Details
2 years ago
Ariadne Conill a5ed584aa8 build: ensure libucontext_posix.so.1 is cleaned up
continuous-integration/woodpecker the build was successful Details
2 years ago
Ariadne Conill 9943d4f5fc NEWS: prepare for 1.2
continuous-integration/woodpecker the build was successful Details
2 years ago
Ariadne Conill 9403b481bc build: use CPPFLAGS instead of CFLAGS for FREESTANDING/EXPORT_UNPREFIXED 2 years ago
Ariadne Conill 2c0c0e5d29 build: only set default CFLAGS if there are none already set 2 years ago
Ariadne Conill c8fe721e69 build: fix linking of libucontext_posix against libucontext 2 years ago
Ariadne Conill c50182d98c build: disable executable stacks 2 years ago
Ariadne Conill 55c91428ba build: use -shared correctly instead of as linker flag
continuous-integration/woodpecker the build was successful Details
2 years ago
Ariadne Conill 18aa732212 CI: also build armv7
continuous-integration/woodpecker the build was successful Details
2 years ago
Ariadne Conill 8215aedb56 add woodpecker pipeline 2 years ago
Ariadne Conill 8efa9e8b85
Merge pull request #34 from Torrekie/master
Allow building on Darwin/arm64
2 years ago
Torrekie Gen 6ddefbbbb4
Allow building on Darwin/arm64
Changes:
1. `-soname` should be `-install_name` on Darwin
2. Version suffix should placed before extension suffix (libucontext.so.1 -> libucontext.1.dylib)
3. Check for architecture specific include directory, and include it while building
4. `EXPORT_UNPREFIXED` macro shouldn't be set since Darwin don't support aliases
5. Choose correct subdir for arm64
6. Use `-dynamiclib` instead of `-shared` on Darwin for adding version info (`-current_version` and `-compatibility_version`)
2 years ago
Ariadne Conill b1b4fe9665
Merge pull request #32 from rlcamp/master
Adjusted location within ucontext of saved/restored FP regs for compat
2 years ago
Richard Campbell 1e37bf30f9 Adjusted location within ucontext of saved/restored FP regs for compatibility 2 years ago
Ariadne Conill 14d9859c00
Merge pull request #31 from rlcamp/master
Added saving/restoring of bottom 64 bits of d8-d15 per AAPCS64
2 years ago
Richard Campbell 06303df1cd Added saving/restoring of bottom 64 bits of d8-d15 per AAPCS64 2 years ago
Ariadne Conill ae058b1f38 add loongarch64 to the supported arch list 2 years ago
Peng Fan a182fee66a Add support for Loongarch64
Signed-off-by: Peng Fan <fanpeng@loongson.cn>
2 years ago
Ariadne Conill 0108623531
Merge pull request #28 from kraj/master
meson: Add option to pass cpu
2 years ago
Khem Raj a530eed9e7 meson: Add option to pass cpu
This helps with cross compile setups, where host_cpu != target_cpu
therefore detecting it on the fly will end up with wrong cpu to build
for

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 years ago
Ariadne Conill 335ee864ef libucontext 1.1. 3 years ago
Ariadne Conill 4d8abf9b3b update README a bit 3 years ago
Ariadne Conill 7b8f3f6d04 NEWS for 1.1. 3 years ago
Ariadne Conill fb1d203677 everywhere: drop _GNU_SOURCE requirement 3 years ago
Ariadne Conill 1ad20e03e5 add riscv32 port 3 years ago
Ariadne Conill 464f98a01b
Merge pull request #27 from utmapp/qemu-support-v2
Remaining fixes for Apple Silicon and QEMU
3 years ago
osy 9b1d8f01a6 aarch64: remove usage of FUNC macro for clang
Clang's arm64 assembler does not support multiple directives on a single
line. C macros ALWAYS expand to a single line.
3 years ago
osy 5d66c194a7 x86_64: define reg names if not defined
_GNU_SOURCE can be defined without defining REG_X macros so it is not a
good indicator. (QEMU for example defines it in the build system.) x86
and x86_64 should have consistant looking defs.h so ifndef guards are
added to each REG_X definition.
3 years ago
osy f3e1b876c7 project: move freestanding include headers
This is needed because in libucontext.h we include "libucontext/bits.h".
We therefore need to have bits.h in somepath/libucontext/bits.h. In the
Makefile, somepath/freestanding/bits.h was copied to the right path but
in the meson build system, the include copy happens at the end.
3 years ago
Ariadne Conill f04d423e63
Merge pull request #26 from lpereira/armv7l-makefile-fix
Fix ARCH deduction on armv7l when using Makefiles
3 years ago
Leandro Pereira 7823593b6f Fix ARCH deduction on armv7l when using Makefiles
The Makefile on ARMv7l devices (e.g. Raspberry Pi 400 running the
stock Raspbian distro) was failing to deduct the architecture and
empty libraries were being built as a result.  Building with Meson
works fine; only building with make generated empty libraries.

Add an override for armv7l -> arm in the Makefile to address this.
3 years ago