Descent3 icon indicating copy to clipboard operation
Descent3 copied to clipboard

Source for hogUtils-i686

Open Nakhr11n opened this issue 10 months ago • 1 comments

hogUtils-i686 (scripts/hogutils/hogUtils-i686) is executed as part of the build system to build hog files. However, it is a linux 32-bit executable, which means that extra steps are required for building on anything other than 32-bit linux. It would be nice to have the source for this, so it can be built as part of the build system, and thus be native to whatever system it is used on.

Nakhr11n avatar Apr 18 '24 09:04 Nakhr11n

After some digging code I can tell that we can write own tool to make HOG files. All needed code already here in hogfile.h / hog.cpp. If there nothing special on generated hogs (like a messing with headers after generation), it would be easy task.

winterheart avatar Apr 18 '24 16:04 winterheart

OK, hogUtils actually is here in source code: https://github.com/kevinbentley/Descent3/blob/main/Descent3/lnxmain.cpp#L550. Still it's unpractical to build custom version of Descent executable, so I decided write own version of hogUtils and possibly some of cfile components.

winterheart avatar Apr 19 '24 07:04 winterheart

I ran into the same problem building on linux aarch64, I have a Dockerfile almost working that just wraps the thing in a Debian i386 container so the hog file generates for me.

mstephenson6 avatar Apr 20 '24 00:04 mstephenson6

See #98 for my short term workaround, but +1 to a replacement.

mstephenson6 avatar Apr 20 '24 04:04 mstephenson6

I added some code in a branch, not sure if this helps resolve the issue:

https://github.com/kevinbentley/Descent3/tree/add-missing/hogmaker https://github.com/kevinbentley/Descent3/tree/add-missing/hogedit

kevinbentley avatar Apr 20 '24 16:04 kevinbentley

Would it make sense these for these build tools live in the repo as python scripts instead?

bryanperris avatar Apr 20 '24 16:04 bryanperris

I'd favor just adding it to cmake so a build generates the executable. Unless someone wants to port the whole thing to python, which IMO is unnecessary.

kevinbentley avatar Apr 20 '24 16:04 kevinbentley