summaryrefslogtreecommitdiff
path: root/lib/sbin/ProcessConfiguration.pl
Commit message (Collapse)AuthorAge
* Currently Cactus sets up flags like CPPFLAGS or CFLAGS by adding e.g.knarf2013-07-09
| | | | | | | | | | | | | | | | | | | | | | | | CPP_OPENMP_FLAGS. However, later it overwrites these again by their original value in sbin/ProcessConfiguration.pl (search for FIXME). This patch implements what the 'FIXME' suggests - accepting the drawbacks that are mentioned there: that configuration settings not originating from a thorn might not be forwarded from e.g., a .cactus/config file. MPI was one of these, but this is now handled differently anyway. With this patch, we would need to be aware of these and might need to add them to @allowed_opts in the future. Without the patch however, compilation might fail for perfectly valid setups. One of these is when using openmp, setting all the corresponding *_OPENMP_FLAGS, but not setting CPPFLAGS (only CPP_OPENMP_FLAGS). In this case ProcessConfiguration.pl will set CFLAGS to the version in the config file (*without* the -openmp), but it will leave CPPFLAGS to the version *with* -openmp. This later leads to a linker error in external libraries, since compilation there uses CPPFLAGS (with openmp), but the linker doesn't (It correctly uses CFLAGS, but this doesn't have openmp flags here). git-svn-id: http://svn.cactuscode.org/flesh/trunk@5034 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Don't sort thorn list unnecessarilyeschnett2011-11-26
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4771 17b73243-c579-4c4c-a9d2-2d5706c11dac
* exit loop (not die) if no progress made. This can heppen if e.g. a ↵knarf2009-06-19
| | | | | | dependency cannot be fulfilled (missing thorn) which is handled gracefully later (one hopes) git-svn-id: http://svn.cactuscode.org/flesh/trunk@4562 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Order thorns topologically when executing configurations scripts. Ifschnetter2009-06-18
| | | | | | | | | | | | thorn A requires a feature provided by thorn B, then thorn B's configuration script is executed first. Make environment variables that are defined in configuration scripts available immediately, so that scripts (from other thorns) whicn are execute later can access them. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4561 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added tracking of options for thorn configuration scripts. Now a thorngoodale2004-08-27
| | | | | | | | | | | | | | | | | | | | | | may specify OPTIONS a b c in a PROVIDES block in its configuration.ccl and these options will be tracked and stored in the configuration's config-info file. The config-info file, and any options file specified on the command line are now used to setup the environment before a configuration script is run by the CST. Note that the only options stored to the config-info file by the CST are ones specified in the configuration.ccl files, and configuration scripts are invoked each time the CST is run, so any option used by a thorn's configuration script MUST be mentioned in the configuration.ccl file to be remembered the next time the CST is invoked. git-svn-id: http://svn.cactuscode.org/flesh/trunk@3855 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Fix typo in commentschnetter2004-03-31
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@3627 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Traverse all hashes alphabetically, so that all output files of theschnetter2003-10-07
| | | | | | | | CST stage will be identical. This is necessary at least since perl 5.8.1 to avoid redundant recompilation. git-svn-id: http://svn.cactuscode.org/flesh/trunk@3425 17b73243-c579-4c4c-a9d2-2d5706c11dac
* configuration.ccl stuff from a while back. Parses the .ccl file as pergoodale2000-08-31
spec, and generates a list of 'thorns' with no source files - i.e. ones which shouldn't get libraries built for them. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1804 17b73243-c579-4c4c-a9d2-2d5706c11dac