On Fri, 23 Mar 2012, Jeremy C. Reed wrote:

> 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


I considered reporting via sendbug, but "ports" was not listed ats a 
category to choose from.

I looked at cvs and the patch is still there.

Will anyone fix this or suggest a workaround for others using it please?

By the way, I tried to use the query-pr.html web interface to search for 
this and it failed with: The requested URL /cgi-bin/query-pr-wrapper was 
not found on this server.

Reply via email to