Jason Riedy [off-list ref] writes:
And I worry about using different programs in different
scripts, so I just changed all of them.
That's a good point. I stand corrected.
The AIX machines I work on are back, and it looks like my
patches are unnecessary, at least for my use. It'd be cute
to allow builders to point at GNU tools, but not terribly
useful. The File::Find patch to git-archimport.perl might
be nice, but it functions as-is.
To have diff and merge on my path with this AIX platform, I have
to pull *all* the GNU tools into my path. (NERSC uses modules.)
I suspect that is a rather common setup, so it's not worth the
serious surgery to redirect diff and merge. diff is used in C
and shell, and merge is in shell, Perl, and Python sources.
And pkgsrc on Solaris appears happy using GNU's cpio (under
archivers/gcpio) rather than its default, plain one. I hadn't
realized I could replace it easily.
So with the GNU tools in the path and a properly built Python,
the mainline code works on Solaris 8 and AIX.
For posterity: Any problems with git-merge-recursive.py on AIX
likely are a yucky Python/AIX problem. The sha has 'sem_trywait:
Permission denied\n' prepended to it a few times. You need to
rebuild Python with HAVE_BROKEN_POSIX_SEMAPHORES:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1106262&group_id=5470
If anyone really wants to point at particular tools but not
require them in the user's path, the simplest way would be to
link the correct tools (or wrappers) into the GIT_EXEC_PATH
and prepend that to the PATH *everywhere*. But it's not worth
the effort until someone really needs it.
Jason