On 08/13/18 20:47, Brian Callahan wrote:
On 7/29/18 2:03 AM, Brian Callahan wrote:On 07/20/18 21:00, Brian Callahan wrote:On 07/13/18 22:37, Brian Callahan wrote:Hi ports --Recently, I needed a Pascal compiler for arm. I am not smart enough to port Free Pascal to arm, though it seems like such a task is possible.Instead, I made a port of the old GNU Pascal compiler. While gpc is perfectly usable, and was able to compile the Pascal code I needed it to, it has not kept up with gcc itself; the "latest" gcc that gpc can run on top of is 4.3.5.What I did for this port was resurrect gcc-4.2.4 from ports (as gcc-4.2.4 is one of the supported gcc versions for gpc, and the latest one we had a port of) and patched gpc on top of it. Hence the self-hosted tarball.The port then does a non-bootstrap build of gpc, fakes it, then I rip out all the gcc stuff so that we're just left with the gpc compiler and its headers and libraries. Because no one wants a copy of gcc-4.2.4 lying around, and gpc doesn't need it.This works for me on amd64 (linked with lld), i386, and armv7.Additionally, I discovered a kludge that allows gpc to link with lld--so this port is "future proof" in that regard.Is gpc something we would want in ports, despite its age? I will need the Pascal on armv7 setup for the foreseeable future, so I am willing to maintain it. And it has the minor side benefit of opening up a new language for (most) of our exotic archs.~BrianI thought about this, and since I am going to need it and it stays out of the way of any other compiler, and I'm willing to maintain it (where maintain = ensure it continues to build with clang and link with lld), I would like to put this in. So now looking for OKs.Here's a new tarball, now with powerpc support as well. OK? ~BrianPing.Ping. Also tested now on sparc64. ~Brian
Ping? Am I the only one who needs to compile Standard Pascal/Extended Pascal these days? (Don't answer that...)
Still all good on amd64, i386, macppc, and sparc64. Tarball reattached for convenience. ~Brian
gpc.tgz
Description: Binary data