Commit graph

29 commits

Author SHA1 Message Date
Daniel Kochmański
b9e0a7f949 Clarify INSTALL instructions for Windows (replace ...) 2025-08-23 14:14:12 +02:00
Daniel Kochmański
bebb43d558 INSTALL: update the version of te tested emsdk version to 4.0.12
That's the current latest and it works OK when we compile host and wasm target
according to the most up-to-date instructions.
2025-08-04 10:06:31 +02:00
Marius Gerbershagen
b77a0bbf06 update compilation instructions for iOS and emscripten
We don't need a separate host compiler anymore.
2025-07-19 16:33:22 +02:00
Marius Gerbershagen
f0ef267ce7 update compilation instructions for android
With recent versions of the android NDK, there is no need to create a
separate toolchain anymore. Moreover, the LDFLAGS and CPPFLAGS are
obsolete. Also, we can't call the C compiler with a `-Dandroid`
argument as we used to since that conflicts with uses of the `android`
identifier within the header files of the android C standard library.
Therefore, we change from `thehost=android` to `thehost=ANDROID` in
uppercase. Finally, make the test script run more reliably by starting
an adb server before we change TMPDIR.
2025-07-19 16:33:22 +02:00
Marius Gerbershagen
d51ce511f6 handle *features* entirely in the configure script
Previously, there were a lot of places that turned on or off C macros
which finally determined whether some particular entry was found
in *features* or not. Now, we do this all in the configure script.
This is necessary for cross compilation from a non-compatible host
which may have different features.
2025-07-19 16:33:22 +02:00
Daniel Kochmański
f585847506 initial port to cosmopolitan libc 2024-09-09 10:14:17 +02:00
Marius Gerbershagen
003a7edd6b emscripten: add linker flag to allow bdwgc to work correctly
See https://github.com/ivmai/bdwgc/issues/650 for more discussion.
2024-08-17 12:43:02 +02:00
Marius Gerbershagen
6c2afada2f INSTALL: revert back to -disable-shared for emscripten build instructions
Closes #746
2024-06-15 13:34:11 +02:00
Marius Gerbershagen
ecce6e7a7f INSTALL: fix build instructions for how to link to libecl.so with emscripten
Closes #744.
2024-05-18 12:55:39 +02:00
Marius Gerbershagen
dc286efb66 cmp: faster function calls for C compatible variadic dispatch
For C compatible variadic dispatch, the compiler now generates two
entrypoints for variadic functions. An entrypoint with specialized
signature that is used for direct C calls from the same file and an
entrypoint with generic signature that implements the variadic to
variadic dispatch, i.e. checking the number of arguments and then
calling the specialized entrypoint.

This approach is faster than using the wrapper functions in
variadic_dispatch_table. The reasons are threefold: we save a call to
ecl_process_env(), we don't need a call through a function pointer but
instead use a direct call to the specialized entrypoint and we emit
better code to deal with required arguments since the number of those
are known.

Moreover, for functions with optional arguments the new approach is
less stack hungry since we can allocate an array of size smaller than
ECL_C_ARGUMENTS_LIMIT to store the arguments.
2024-03-24 18:08:34 +01:00
Marius Gerbershagen
bca56f7d2f use flatinstall as install target for emscripten 2024-02-24 22:30:16 +01:00
Marius Gerbershagen
693761a9f6 support shared libraries for the emscripten target 2024-02-24 22:30:16 +01:00
Daniel Kochmański
f4af0cc9e3 INSTALL: add an extra hint for emscripten re stack size
Fixes #726.
2023-12-09 09:24:58 +01:00
Daniel Kochmański
63ff85ef7f install: add build instructions for emscripten 2023-06-13 22:07:12 +02:00
Marius Gerbershagen
d4e5a96c23 config-internal.h: automatically set ECL_C_COMPATIBLE_VARIADIC_DISPATCH for apple/arm64 2021-01-29 19:46:01 +01:00
Marius Gerbershagen
74e366c2e3 INSTALL: update iOS build instructions
Apparently the bdwgc workaround is no longer needed
2021-01-09 11:58:15 +01:00
Dima Pasechnik
b9676343c7 fix a broken link in INSTALL, see #595 2020-06-17 08:24:55 +00:00
Marius Gerbershagen
2155e354e4 doc: more detailed build instructions for MSVC 2020-03-01 18:49:49 +01:00
Marius Gerbershagen
4f8b4fab8b update CHANGELOG, INSTALL and cross config for iOS 2019-12-08 10:26:52 +01:00
Daniel Kochmański
ea87100a06 long-float: remove conditionalization
Many parts of the source code were bent backward to support builds
without long floats which are always present given we depend expect
c99 compiler.

The corresponding C macros (ECL_LONG_FLOAT) and the *feature*
entry (:long-float) are marked as deprecated in the documentation.
2019-05-24 21:04:59 +00:00
Marius Gerbershagen
6090d9d201 update installation instructions for recent Android NDKs and support ARM64
Works for Android NDKs with unified headers (see https://android.googlesource.com/platform/ndk/+/ndk-release-r16/docs/UnifiedHeaders.md).
    Separate step of configuring a standalone toolchain is recommended
    by the Android docs. Explicitely setting CC to clang is useful,
    since gcc in Android NDK is deprecated and outright broken in NDK
    version 18. Using the bfd linker is needed for bdwgc to work
    correctly (see also https://github.com/ivmai/bdwgc/issues/259).
2019-01-12 22:51:17 +01:00
Tomek Kurcz
bc09db0603 Fix the link in INSTALL 2017-08-18 15:09:33 +02:00
Daniel Kochmański
13f01cffcd update INSTALL for Android 2016-12-12 08:02:21 +01:00
Daniel Kochmański
5c77b14d98 update Android CC instructions 2016-12-11 14:11:40 +01:00
Daniel Kochmański
4fcf48926b INSTALL: add darwin notes
Add troubleshoting for Darwin (nm and gcc). Fixes #245.
2016-05-24 21:15:41 +02:00
Daniel Kochmański
2e43f8cf03 android: fix builds 2016-05-16 09:22:42 +02:00
Daniel Kochmański
a3a609ac42 android: move android.cross_config to src/util 2015-10-28 19:57:35 +01:00
Daniel Kochmański
c95ba3ce93 android: add libecl build instructions 2015-10-28 18:13:00 +01:00
Juan Jose Garcia Ripoll
ceb4322468 New file with a sketch of the installation instrucitons 2009-08-12 23:54:41 +02:00