#105 Bad variable names generated in Makefile.am

open
nobody
None
5
2011-10-21
2011-10-21
Anonymous
No

If the user desires a program or target with '-' characters in the name, the required substitution of '_' for '-' in the resulting Makefile.am _SOURCES and _LDADD variables is not carried out, resulting in an invalid Makefile.am that causes the target not to build.

Steps to reproduce using the attached ede-hello-world.c source file:

1. Create a new directory containing ede-hello-world.c, copy the file there, open the file in an emacs buffer.
2. run "M-x ede-new", set the Project Type to Automake and the Name to ede-hello-world.
3. run "M-x ede-new-target", set the Name to ede-hello-world and the Type to program, answer 'y' when queried whether to add ede-hello-world.c to ede-hello-world.
4. run "M-x ede-compile-target", after various files are created, the "autoreconf -i;./configure;" step of the build fails with errors about bad characters in the ede-hello-world_SOURCES and ede-hello-world_LDADD variables and a helpful message on how to fix these problems.
5. open Makefile.am in an emacs buffer, modify ede-hello-world_SOURCES to ede_hello_world_SOURCES, modify ede-hello-world_LDADD to ede_hello_world_LDADD, save the result.
6. switch back to ede-hello-world.c buffer and run "M-x ede-compile-target", the build now succeeds and the resulting ede-hello-world binary behaves as expected.

Discussion

  • Simple source file to use when reproducing the problem.

     
    Attachments
  • r94Epo <a href="http://lpzufgswnmzp.com/">lpzufgswnmzp</a>, [url=http://arwfszexytjh.com/]arwfszexytjh[/url], [link=http://bipoehbrvcps.com/]bipoehbrvcps[/link], http://eftyjetoqpur.com/