-
Notifications
You must be signed in to change notification settings - Fork 58
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Riscv64 native #157
base: main
Are you sure you want to change the base?
Riscv64 native #157
Conversation
Nice, but it probably doesn't belong here because these are all built in a single x64 Linux machine. So this won't run and produce anything. |
This comment was marked as outdated.
This comment was marked as outdated.
In theory both Try removing those two options and if you can tell me whether it builds successfully for your in riscv64 and x64 if you have access to both, then that would be very useful. |
@rvagg #!/usr/bin/env bash
set -e
set -x
release_urlbase="$1"
disttype="$2"
customtag="$3"
datestring="$4"
commit="$5"
fullversion="$6"
source_url="$7"
source_urlbase="$8"
config_flags=""
make_flags=""
alpineArch="$(apk --print-arch)"
case "${alpineArch##*-}" in
riscv64)
config_flags+="--openssl-no-asm"
;;
loongarch64)
make_flags+=" DESTCPU=loong64 ARCH=loong64"
config_flags+="--openssl-no-asm"
;;
esac
cd /home/node
tar -xf node.tar.xz
cd "node-${fullversion}"
export CC="ccache gcc"
export CXX="ccache g++"
make_flags+=" \
VARIATION=musl \
DISTTYPE=$disttype \
CUSTOMTAG=$customtag \
DATESTRING=$datestring \
COMMIT=$commit \
RELEASE_URLBASE=$release_urlbase \
CONFIG_FLAGS=$config_flags"
make -j$(getconf _NPROCESSORS_ONLN) binary V= $make_flags
mv node-*.tar.?z /out/ |
OK, I don't think I mind, if it works. Is loong64 supported by Alpine already? |
Yes, |
riscv64 hardware is getting larger (64-core and 192-core hardware are available), so this is a recipe to build in riscv64 hardware without the use of cross compiler or distro-external toolchains.
Tested with:
bin/local_build.sh -r riscv64-native -v v20.18.0