From 09654fa5575d900afa7f45006405002a1b44eec5 Mon Sep 17 00:00:00 2001 From: Laan Tungir Date: Thu, 23 Apr 2026 07:25:06 -0400 Subject: [PATCH] v0.2.2 - Fix ARM64 cross-compilation in Dockerfile --- Dockerfile.alpine-musl | 16 ++++++++++++++-- build/ginxsom-fcgi_static_x86_64 | Bin 9434728 -> 9434728 bytes src/ginxsom.h | 4 ++-- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/Dockerfile.alpine-musl b/Dockerfile.alpine-musl index 51f2d82..0718714 100644 --- a/Dockerfile.alpine-musl +++ b/Dockerfile.alpine-musl @@ -72,8 +72,20 @@ RUN git clone https://git.laantungir.net/laantungir/nostr_core_lib.git /build/no RUN cd nostr_core_lib && \ chmod +x build.sh && \ sed -i 's/CFLAGS="-Wall -Wextra -std=c99 -fPIC -O2"/CFLAGS="-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0 -Wall -Wextra -std=c99 -fPIC -O2"/' build.sh && \ + if [ "$(uname -m)" = "aarch64" ] && ! command -v aarch64-linux-gnu-gcc >/dev/null 2>&1; then \ + ln -sf /usr/bin/gcc /usr/local/bin/aarch64-linux-gnu-gcc; \ + fi && \ rm -f *.o *.a 2>/dev/null || true && \ - ./build.sh --nips=1,6,13,17,19,42,44,59 + ./build.sh --nips=1,6,13,17,19,42,44,59 && \ + if [ -f libnostr_core_arm64.a ]; then \ + cp libnostr_core_arm64.a libnostr_core.a; \ + elif [ -f libnostr_core_x64.a ]; then \ + cp libnostr_core_x64.a libnostr_core.a; \ + else \ + echo "ERROR: No supported nostr_core static library produced"; \ + ls -la *.a 2>/dev/null || true; \ + exit 1; \ + fi # Copy web interface files for embedding # Note: Changes to api/ files will trigger rebuild from this point @@ -110,7 +122,7 @@ RUN if [ "$DEBUG_BUILD" = "true" ]; then \ src/request_validator.c src/relay_client.c \ nostr_core_lib/nostr_core/core_relay_pool.c \ -o /build/ginxsom-fcgi_static \ - nostr_core_lib/libnostr_core_x64.a \ + nostr_core_lib/libnostr_core.a \ -lfcgi -lsqlite3 -lsecp256k1 -lssl -lcrypto -lcurl \ -lnghttp2 -lcares -lidn2 -lunistring -lpsl -lbrotlidec -lbrotlicommon \ -lz -lpthread -lm -ldl && \ diff --git a/build/ginxsom-fcgi_static_x86_64 b/build/ginxsom-fcgi_static_x86_64 index 910429bf861e57ab4a537f318fb35a18ef9c78cd..b1b46cdf8c29641f5a0959052de6a3d3e61adb63 100755 GIT binary patch delta 590 zcma*d*H#Ds0Eh8Yve##1D|@f3D0^oldy|ztLWzuoFJxWCap%Hu%T<@2!5eUnLl-W3 z1ph~H@%yg6uD{=ky5dVy;qda>?=4+l>pJS&KUDttRq>;-xcg)0&zk1X1)beB&F}xK z@7|U*d}>7sq)>WDk@S>a(p&mSU+E|PWq=HnK{8nK50RlVOomIbjF6EsN=C~V87t#t zyp%|(Opu8(NhZq_nJUv{y3CN7GD~L59GNTgWWFqrGFd2#WU(xfrBW`-WVuvGrL2&Z zvPxFV8d)prWW8*Vjj~BL%ND7Ut+GwF%Z?7JOA5-`N~w;WQ4_mjckGG1u`l+=fjAh4 z;&2>^qj4;b$BC$olW{6e$C)@Ab#X4v$A!2Um*R3JIQm->0%KfU|f{-d_#eWCq#ZOfbg z>g$(Pjqh5Kf)q(7DVEOCMY>8i=`KB_r}UEE(ntDA{(jP521tnvltD6BhR9GECc|Zf zluDVD%Sag|qh*YYm2om&CdfpYB$K5=rpQ#8Cex)-s$_=Dlvy%c=Ez)`C-Y^2ER;pE zSeD3AStiS6g{+iSvRc;2T3IL6vR*dGM%na=nzBM=TRAncIcj4|Y>jQPJ$A&-*cH2@ zF80LUsE>WIKMusfI24EDNF0r0aXe1M$v73K<4l~5b8$W{#KpK24RJZHL}OfyYta #include