nest-simulator icon indicating copy to clipboard operation
nest-simulator copied to clipboard

Use MAKE variable to pass correct info to child.

Open Helveg opened this issue 3 years ago • 4 comments

Spawning a make subprocess should be done through use of the $(MAKE) variable so that the child process receives all the information it needs. closes #2395. I didn't check the whole list of make targets, but more could be affected.

Helveg avatar May 16 '22 14:05 Helveg

Point of discussion: This syntax doesn't seem to sit well with ninja, which complains:

ninja: error: build.ninja:126: bad $-escape (literal $ must be written as $$)

I have tried any combination of unqouted, quoted, bracket quoted, single $, double $, \\$, and VERBATIM you could think of, but can't find any syntax that both cmake and ninja will run:

  • If cmake runs it, ninja complains about escaping
  • If ninja runs it, various cmake configuration failures occur and the install target no longer exists.

Is it possible for the install-nodoc target to set the NEST_INSTALL_NODOC env var in another way, without having to subprocess a make process?

Helveg avatar May 16 '22 14:05 Helveg

@jougs and I had a long discussion some time ago, that this should probably not be a cmake target at all. The concept of "nodoc" should be a flag that can be set. This would reduce the complexity of the issue a lot. We wrote this down in an issue, but never got around to working on this, also I seem to be unable to find the issue that I have in mind :-/ … does anyone reading this remember the discussion? @gtrensch maybe?

terhorstd avatar Jun 27 '22 17:06 terhorstd

We discussed this in issue #1905.

gtrensch avatar Jul 01 '22 07:07 gtrensch

Well it breaks make install-nodoc for ninja users 😟

Helveg avatar Aug 02 '22 07:08 Helveg