I'm not sure what the ARCH define does, it is actually used in the Makefile before defined so good job it is correct by default!
It's an ugly trick of mine for linking openssl lib of different architectures. "=" and ":=" assignments are different. One is like a constant. The other is like a pointer whose value is only determined at evaluation upon actual use. I think there is a better way to get this done.
STRIP still breaks the dynamic build (noted in the Makefile), so commented out, UPX works but is slow and not really needed! Too many warnings for my like
strip broke again for amd64 too. No issue for arm & mips. Haven't looked into it yet..I had the exact sentiment on UPX. It bloats up the size of both binary image and runtime RAM use. I don't get why it was added in the first place. So commented out in all the builds I created.
asprint warning in certgen is a recent one. It's one of the only two warnings I saw in arm, mips & amd64. I did a sweep to clean up all the warnings at the very beginning. The other warning is on LINE_NUMBER defined not used.
The binaries run, but I still don't know how to use the ssl certs...
See if this gets you started..."Prepare your Root CA cert" section from https://github.com/kvic-z/pixelserv-tls