Another diff I have used on riscv64 bulk build cluster since some
weeks/months. The executables are named differently on riscv64.
The SConstruct file has this logic:
if env["arch"] != "":
suffix += "." + env["arch"]
elif env["bits"] == "32":
suffix += ".32"
elif env["bits"] == "64":
suffix += ".64"
In the detect.py scripts:
if env["arch"] == "" and platform.machine() == "riscv64":
env["arch"] = "rv64
The executables are named as such:
hifive /usr/ports/games/godot$ ls -l
/usr/ports/pobj/godot-3.4.5/godot-3.4.5-stable/bin/godot.x11.opt.*
-rwxr-xr-x 1 _pbuild _pbuild 77693472 Aug 8 02:59
/usr/ports/pobj/godot-3.4.5/godot-3.4.5-stable/bin/godot.x11.opt.rv64
-rwxr-xr-x 1 _pbuild _pbuild 157345856 Aug 8 05:28
/usr/ports/pobj/godot-3.4.5/godot-3.4.5-stable/bin/godot.x11.opt.tools.rv64
which doesn't match the logic used in do-install, hence the following diff.
Another approach with more explicit code would be to use a variable in
the file names, that variable would hold either "rv64", "64" or "32"
depending on the arch.
Thoughts? ok?
Index: Makefile
===================================================================
RCS file: /cvs/ports/games/godot/Makefile,v
retrieving revision 1.37
diff -u -p -r1.37 Makefile
--- Makefile 11 Jun 2022 12:55:20 -0000 1.37
+++ Makefile 18 Jun 2022 20:27:50 -0000
@@ -123,7 +123,7 @@ do-build:
@${MODSCONS_BUILD_TARGET} tools=yes target=release_debug
do-install:
- ${INSTALL_PROGRAM} ${WRKBUILD}/bin/godot.x11.opt.[36]* \
+ ${INSTALL_PROGRAM} ${WRKBUILD}/bin/godot.x11.opt.+([!.]) \
${PREFIX}/bin/godot
${INSTALL_PROGRAM} ${WRKBUILD}/bin/godot.x11.opt.tools.* \
${PREFIX}/bin/godot-tools
--
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF DDCC 0DFA 74AE 1524 E7EE