Fix NPB test images arm64 cross-build failures

The NPB (NAS Parallel Benchmarks) test images were failing to build
for arm64 architecture due to missing shebangs in NPB shell scripts.

The sys/print_header and sys/print_instructions scripts in NPB lack
default /bin/sh), they fail with "Error 127" (command not found) during
QEMU-emulated cross-builds.

Fix by adding shebangs to these scripts during the Docker build.

Changes:
- npb-ep: Add shebang fix, bump version 1.5 → 1.6.0
- npb-is: Add shebang fix, bump version 1.4 → 1.5.0

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
This commit is contained in:
Davanum Srinivas 2026-01-21 19:33:17 -05:00
parent e51e40ede6
commit 45e30087fd
No known key found for this signature in database
GPG key ID: 6DEA177048756885
4 changed files with 11 additions and 2 deletions

View file

@ -24,6 +24,11 @@ ADD http://www.nas.nasa.gov/assets/npb/NPB3.4.3.tar.gz .
RUN tar xzf NPB3.4.3.tar.gz && chmod -R a+rX NPB3.4.3
WORKDIR ./NPB3.4.3/NPB3.4-OMP
# Add missing shebangs to shell scripts - required for cross-build with QEMU emulation
# Without shebangs, dash (default /bin/sh on Debian) fails to execute these scripts via make
RUN sed -i '1i#!/bin/sh' sys/print_header sys/print_instructions
RUN if [ $(arch) != "x86_64" ]; then \
sed s/-mcmodel=medium//g config/NAS.samples/make.def_gcc > config/make.def; \
else \

View file

@ -1 +1 @@
1.5
1.6.0

View file

@ -25,6 +25,10 @@ RUN tar xzf NPB3.3.1.tar.gz && chmod -R a+rX NPB3.3.1
WORKDIR ./NPB3.3.1/NPB3.3-OMP
# Add missing shebangs to shell scripts - required for cross-build with QEMU emulation
# Without shebangs, dash (default /bin/sh on Debian) fails to execute these scripts via make
RUN sed -i '1i#!/bin/sh' sys/print_header sys/print_instructions
# Create build config based on the architecture and build the workload.
RUN if [ $(arch) != "x86_64" ]; then \
sed s/-mcmodel=medium//g config/NAS.samples/make.def.gcc_x86 > config/make.def; \

View file

@ -1 +1 @@
1.4
1.5.0