Subject: noinst_PYTHON breaks uninstall of Python files

From: Akim Demaille <[email-masked]>
Date: Thu, 22 Sep 2016 11:48:00 +0200

Hi Friends!

> $ cat configure.ac
> AC_INIT([foo], [1.0])
> AM_INIT_AUTOMAKE([1.15 foreign])
> AM_PATH_PYTHON
> AC_OUTPUT([Makefile])
> $ cat Makefile.am
> noinst_PYTHON = foo.py
> python_PYTHON = bar.py
> $ autoreconf -fi
> $ grep am__pep3147_tweak Makefile.in
>         py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
> $

Now, if I remove the noinst, am__pep3147_tweak is properly defined.

> $ cat Makefile.am
> python_PYTHON = bar.py
> $ autoreconf -fi
> $ grep am__pep3147_tweak Makefile.in
> am__pep3147_tweak = \
>         py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
> $

At runtime, it results in:

> $ make uninstall-nodist_vcsn_tools_pythonPYTHON
> make: Entering directory `_build/36s'
> /bin/sh: command substitution: line 7: syntax error: unexpected end of file
> 
>  ( cd '/opt/gostai/lib/python3.5/site-packages/vcsn_tools' && rm -f config.py )
>  ( cd '/opt/gostai/lib/python3.5/site-packages/vcsn_tools' && rm -f config.pyc )
>  ( cd '/opt/gostai/lib/python3.5/site-packages/vcsn_tools' && rm -f config.pyo )
>  ( cd '/opt/gostai/lib/python3.5/site-packages/vcsn_tools' && rm -f c )
>  ( cd '/opt/gostai/lib/python3.5/site-packages/vcsn_tools' && rm -f o )
> Compilation finished: /Users/akim/src/lrde/2: build-for-darwin -j3 uninstall-nodist_vcsn_tools_pythonPYTHON

That’s Automake 1.15.  Of course the `c` and `o` are errors, resulting
from the missing definition of am__pep3147_tweak (as is the unexpected
end of file).

Sure, I can use noinst_SCRIPTS etc., but it was handy for me to have
a variable for all my Python build-scripts.