Can someone please explain how
ports/devel/automake/1.11/patches/patch-lib_am_header-vars_am works with
/usr/local/share/aclocal-1.11/install-sh.m4 (note that it results in
${SHELL} ${SHELL} install-sh)?
----------------------------
revision 1.1
date: 2011/05/18 19:38:15; author: matthieu; state: Exp;
Use ${SHELL} to run install-sh since it may not be executable.
ok phessler@, landry@ who did run this through a full ports build.
=============================================================================
This causes my install targets to run
/bin/sh /bin/sh /home/jreed/foo/install-sh
resulting in:
/bin/sh[2]: syntax error: `(' unexpected
I am using autoconf-2.68 and automake-1.11.1p2 from ports and I am
attempting to port a software to OpenBSD in preparation to make a port.
You can see the shell is repeated in the definition below.
$ cat src/Makefile.am
SUBDIRS = lib bin
$ head -4 install-sh
#!/bin/sh
# install - install a program, script, or datafile
scriptversion=2009-04-28.21; # UTC
$ grep ^install_sh src/Makefile
install_sh_DATA = ${SHELL} $(install_sh) -c -m 644
install_sh_PROGRAM = ${SHELL} $(install_sh) -c
install_sh_SCRIPT = ${SHELL} $(install_sh) -c
install_sh = ${SHELL} /home/jreed/foo/install-sh
Here is the problem (that I don't see on other systems with various
versions of automake/autoconf) introduced in the patch above:
$ grep ^install_sh src/Makefile.in
install_sh_DATA = ${SHELL} $(install_sh) -c -m 644
install_sh_PROGRAM = ${SHELL} $(install_sh) -c
install_sh_SCRIPT = ${SHELL} $(install_sh) -c
install_sh = @install_sh@
Also the patch in patch-automake_in also causes the same problem for me:
- define_variable ('mkinstalldirs', '$(install_sh) -d', INTERNAL);
+ define_variable ('mkinstalldirs', '$(SHELL) $(install_sh) -d', INTERNAL);
Is there some workaround you can suggest I need?
Note that the cvs log message said the patch was run through a
full ports build, but this only is used when using automake. So only
ports that use automake (most ports do not since the probably use the
pre-generated Makefile.in files provided by the upstream distfile) and
use the standard install-sh shell script would have a problem -- or I am
misunderstanding something.
If the install-sh is not executable maybe fix that instead of running
/bin/sh /bin/sh install-sh.
Thanks,
Jeremy C. Reed
echo 'EhZ[h ^jjf0%%h[[Zc[Z_W$d[j%Xeeai%ZW[ced#]dk#f[d]k_d%' | \
tr '#-~' '\-.-{'