hi greg, On Sun, Apr 19, 2009 at 05:56:46PM -0500, Greg Beaver wrote: > blasted piece of scripting doesn't work: > > @if test "a$(program_prefix)" != "a"; then \ > PEAR_PREFIX = " -dp php_prefix=$(program_prefix)"; \ > fi > @if test "a$(program_suffix)" != "a"; then \ > PEAR_SUFFIX = " -ds php_suffix=$(program_suffix)"; \ > fi
1) you can't put arbitrary shell commands in the body of a makefile: it has
to be part of the rule for a target.
2) you need to remove spaces around the "=" assignment for it to be valid shell
(or iow you can't mix shell and makefile syntax like that)
>
> install-pear-installer: $(SAPI_CLI_PATH)
> @$(top_builddir)/sapi/cli/php $(PEAR_INSTALL_FLAGS)
> $(builddir)/install-pear-nozlib.phar -d "$(peardir)" -b "$(bindir)"
> $(PEAR_PREFIX) $(PEAR_SUFFIX)
>
>
> What I am trying to do is to pass in those options ONLY if
> --program_prefix or --program_suffix were specified in the configure
> line.
>
> Any working solution is appreciated.
here's one way using makefile syntax (not sure if this works with other
than gnu makefiles though)
ifneq(,$(program_prefix))
PEAR_PREFIX = " -dp php_prefix=$(program_prefix)"; \
endif
ifneq(,$(program_suffix))
PEAR_SUFFIX = " -ds php_suffix=$(program_suffix)"; \
endif
> install-pear-installer: $(SAPI_CLI_PATH)
> @$(top_builddir)/sapi/cli/php $(PEAR_INSTALL_FLAGS)
> $(builddir)/install-pear-nozlib.phar -d "$(peardir)" -b "$(bindir)"
> $(PEAR_PREFIX) $(PEAR_SUFFIX)
suggestion two, maybe more portable?:
export PEAR_SUFFIX
export PEAR_PREFIX
install-pear-installer: $(SAPI_CLI_PATH)
@$(top_builddir)/sapi/cli/php $(PEAR_INSTALL_FLAGS)
$(builddir)/install-pear-nozlib.phar -d "$(peardir)" -b "$(bindir)"
$${PEAR_PREFIX:- -ds php_prefix=$(program_prefix)} $${PEAR_SUFFIX:- -ds
php_suffix=$(program_suffix)}
though that mnight have interesting results if program_suffix has a '}' in it...
hth,
sean
signature.asc
Description: Digital signature
