From: Alexander Shirokov <shirokovalexs@gmail.com>
To: buildroot@buildroot.org
Cc: shirokovalexs@gmail.com, thomas.petazzoni@bootlin.com
Subject: Re: [Buildroot] [PATCH 1/1] package/nnn: bump to version 5.3
Date: Sat, 19 Sep 2026 16:19:35 +0200 [thread overview]
Message-ID: <20260919141935.11663-1-shirokovalexs@gmail.com> (raw)
In-Reply-To: <aqsHJwIBte5JUy6M@windsurf>
Hello Thomas,
Thank you for the review and detailed feedback.
> > 1. Adds libatomic dependency, as the library is required since commit
> > 7ce4913bc39bc3b34a0e2c3de7153fb09d489152.
>
> Is this upstream commit part of this version bump 5.1 -> 5.3, or did
> it already exist?
Yes, it is part of the version bump. This commit is from 1 Feb 2026, while 5.1
is from 23 Mar 2025. It updates some functionality and adds the use of atomics.
#if defined(__GNUC__) || defined(__clang__)
/* Relaxed ordering is sufficient: only need atomicity for this bitmap */
ullong_t old = __atomic_fetch_or(m, bit, __ATOMIC_RELAXED);
return (old & bit) == 0;
#else
In newer versions (5.2 and 5.3) atomics are needed. Otherwise, builds may fail
on some toolchains. For example:
/home/user/br-test-pkg/bootlin-sh4-uclibc/host/opt/ext-toolchain/bin/../lib/gcc/
sh4-buildroot-linux-uclibc/14.3.0/../../../../sh4-buildroot-linux-uclibc/bin/ld:
/tmp/cc1CMtRl.o: in function `du_walk_dir.constprop.0':
nnn.c:(.text+0x8d7c): undefined reference to `__atomic_fetch_or_8'
collect2: error: ld returned 1 exit status
So I added the atomics dependency explicitly to avoid such failures.
> >
> > 2. Adds a dependency on BR2_TOOLCHAIN_HAS_THREADS to prevent failures
> > in test-pkg.
>
> Is this new dependency needed because of the version bump, or was it
> already needed with version 5.1?
>
> If some of those topics are independent from the version bump, they
> should be in a separate commit.
Here we have the opposite situation. Both old and new versions of nnn use
pthreads. Adding BR2_TOOLCHAIN_HAS_THREADS is not connected with the version
bump. It just fixes my mistake: the dependency was missing in 5.1. As a result,
the build may fail on some toolchains, like br-arm-full-nothread. Sorry.
/home/user/br-test-pkg/br-arm-full-nothread/host/bin/arm-linux-gcc
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DNORL
-DDIM_FILTERED -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
-O2 -g0 -std=c11 -Wall -Wextra -Wshadow -D_GNU_SOURCE -DNCURSES_WIDECHAR -o
nnn src/nnn.c -lfts -latomic -lncursesw -lpthread
src/nnn.c:84:10: fatal error: pthread.h: No such file or directory
84 | #include <pthread.h>
I'll send a separate small patch to fix that for 5.1. Then I'll prepare and send
a version bump patch with only the changes related to the bump.
Regards,
Alexander
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2026-09-19 14:19 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-07 19:45 [Buildroot] [PATCH 1/1] package/nnn: bump to version 5.3 Alexander Shirokov
2026-09-16 21:20 ` Thomas Petazzoni via buildroot
2026-09-19 14:19 ` Alexander Shirokov [this message]
2026-09-19 16:06 ` Thomas Petazzoni via buildroot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260919141935.11663-1-shirokovalexs@gmail.com \
--to=shirokovalexs@gmail.com \
--cc=buildroot@buildroot.org \
--cc=thomas.petazzoni@bootlin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox