Want to add Nextaw options to Xaw ports (x11-toolkits)



Reaction score: 921
Messages: 1,883

I want to add Nextaw (x11-toolkits/neXtaw) options to applications that use Xaw (x11-toolkits/libXaw) in ports. I've thought about working on adding port customizations since starting the thread Thread athena-xaw-implementations.81588.

To start with, I learned a lot about adjusting Makefiles by using the Porters Handbook, and learning a bit from others. My jail is set up for trying this out: Thread bastille-jail-to-build-and-test-builds.82155.

For manually setting a program that works with Xaw to work with NeXtaw, this is what was done before:
cd /usr/local/lib
mv libXaw.so.6 libXaw2d.so.6
mv libXaw.so.7 libXaw2d.so.7
ln -s libneXtaw.so libXaw.so.6
ln -s libneXtaw.so libXaw.so.7

I've starting by adding Nextaw dependency options to a Makefile. The build process for most ports asks for a libXaw header. When, I use both Xaw and NeXtaw as a dependency, the appearance still works like it's built with Xaw. This means, even though the Makefile is set up for NeXtaw, that it needs Xaw and uses Xaw for building. Linking to NeXtaw seems to be excluded.

For the next step, would making a patch file using shell, to conditionally have the NeXtaw header or dependency replace the Xaw one? Would fixing this also require learning C? Would it require unzipping files, and reading through C code, without necessarily adjusting that, except for header inclusions? Are there any pointers for the next steps?

I understand a lot from the shell part on how to adjust the Makefile, and I may need to understand how to use shell to fix patches for replacements. I want to focus on this for NeXtaw, and not on adding options from ports for other Xaw implementations. It's the best one appearance-wise imo.

Update: I found out about BINARY_ALIAS in the Porter's Handbook (5.17.) which can replace patches for binary file needs. I still hope for pointers from those familiar with port building, maintenance or improvements, and from others who know about any part of the process. Is there a way to see if this may have been done before for a similar OS? In the meantime, I'll look through an ebook about debugging builds.

Here's how NeXtaw looks:

Here's NeXtaw in comparison to other Xaw implementations: