Re: [ANN] CHICKEN 5.4.0 release candidate 2 available
Kristian Lein-Mathisen <[email protected]>
| Newsgroups | gmane.lisp.scheme.chicken |
|---|---|
| Message-ID | <CAAGQtHxCaykDhMhJU4zqBoXLcK+r5n4OSPtCnmu---dEjTcKZw@mail.gmail.com> |
Hi!
Here are my results on Termux (the Android app). I stumbled upon a build
issue but I don't think it's release-candidate material. But in case it is
useful, I thought I'd include it here:
ld.lld: error: undefined reference due to --no-allow-shlib-undefined:
__android_log_vprint
The build system correctly detects __ANDROID__, but incorrectly assumes
__android_log_vprint is available. `-llog` is needed and not on by default
on Termux it seems. However, while it's useful to replace stdout/stderr on
Android NDK-builds where stdio goes to nowhere, it is available on Termux
which should not require special care.
This error is prabably not new to 5.4.0rc2.
=== My Termux workaround
Patch for testing, not for submission:
diff -U3 runtime.c\~ runtime.c --- runtime.c~
2024-06-25
+++ runtime.c 2024-06-27
@@ -591,7 +591,7 @@ va_list va;
va_start(va, fstr);
-#ifdef __ANDROID__
+#ifdef __ANDROID_IGNOREME137__
__android_log_vprint(ANDROID_LOG_DEBUG, prefix, fstr, va);
#else
C_fflush(C_stdout);
===
Perhaps there is a preprocessor define, something like __NDK__, that will
both replace stdio with Android logging for standalone apps and build
normallc on Termux. With that simple patch in place however, everything
worked as expected.
W: Termux (arm64)
OS: Android
CC: clang 18.1.6
Installation works?: yes
Tests work?: yes
Installation and tests of "pastiche" egg works?: yes
I built with:
make PLATFORM=linux install check
===
I also have a question about this line in the changelog: "Added support for
embedded strings and characters in SRFI-4 vector". this seems very neat!
But why doesn't it also work in the runtime u8vector constructor? Srfi-4
vector literals are limited in that they can contain only other literals,
not arbitrary expressions so I tend to not use them.
#;2> #u8(1 "hello")
#u8(1 104 101 108 108 111)
#;3> (u8vector 1 "hello")
Error: (u8vector-set!) bad argument type: "hello"
Thanks,
K.
On Tue, Jun 25, 2024, 10:22 Peter Bex <[email protected]> wrote:
> Hello all,
>
> The second release candidate for CHICKEN 5.4.0 is now available for
> download:
>
>
> https://code.call-cc.org/dev-snapshots/2024/06/25/chicken-5.4.0rc2.tar.gz
>
> The sha256sum of that tarball is:
>
> 4733f7eaffbb9917605314fbc820ae693cb05a4d6829a229b0340ecd81479d72
>
> The list of changes since 5.3.0 and 5.4.0rc1 is available here:
>
> https://code.call-cc.org/dev-snapshots/2024/06/25/NEWS
>
> This release candidate fixes a problem with chicken-install on
> Windows when using the native shell, which would lead to empty .egg-info
> files. The other fixes are all minor, mostly fixing build and test
> suite issues.
>
> Please give it a test and report your findings to the mailing list.
>
> Here's a suggested test procedure:
>
> $ make PREFIX=<some dir> install check
> $ <some dir>/bin/chicken-install pastiche
>
> If you want to build CHICKEN with a compiler other than the default one,
> just use C_COMPILER=<the compiler> (e.g., C_COMPILER=clang) on the make
> invocation.
>
> Of course, feel free to explore other supported build options (see the
> README file for more information) and actually use CHICKEN 5.3.0rc2 for
> your software.
>
> If you can, please let us know the following information about the
> environment you tested the RC tarball on:
>
> Operating system: (e.g., FreeBSD 14.0, Debian 12, Windows 11 mingw-msys
> under
> mingw32)
> Hardware platform: (e.g., x86, x86-64, PPC)
> C Compiler: (e.g., GCC 11.3.0, clang 16.0.6)
> Installation works?: yes or no
> Tests work?: yes or no
> Installation of eggs works?: yes or no
>
> Thanks in advance!
>
> The CHICKEN Team
>
>