summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Expand $extra in auto-generated comment in makefile fragmenteschnett2011-07-06
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4711 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Accept comments in multi-line strings in parameter fileseschnett2011-07-02
| | | | | | | | | | Modify the parameter file parser to accept comments in multi-line strings. These comments extend from a "#" character to the end of the line. This makes it much easier to comment out variables in output strings. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4710 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Correct documentation of if statements in scheduleeschnett2011-07-02
| | | | | | | | | | | | | | | Change the documented allowed "if" statements in schedule files from if(CCTK_EQUALS(<parameter>, <value>)) { ... } to if(<expression>) { ... } which is what is actually allowed (and commonly used). git-svn-id: http://svn.cactuscode.org/flesh/trunk@4709 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Describe GLOBAL-EARLY, GLOBAL-LATE, META-EARLY and META-LATEeschnett2011-07-02
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4708 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Allow parameters in STORAGE specificationseschnett2011-07-02
| | | | | | | | Allow parameters in addition to integer constants in STORAGE specifications in schedule.ccl. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4707 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Allow parameters in STORAGE specificationseschnett2011-07-02
| | | | | | | | Allow parameters in addition to integer constants in STORAGE specifications in schedule.ccl. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4706 17b73243-c579-4c4c-a9d2-2d5706c11dac
* When linking, sort library directories so that system directorieseschnett2011-06-28
| | | | | | | | | (/opt/local/*) come last. This increases the probability that the correct library is used, e.g. if a library exists both in a specific path and in /opt/local/lib. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4705 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Autodetect <sched.h> and sched_getaffinity()eschnett2011-06-28
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4704 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add support for Darwin 10.8.0eschnett2011-06-24
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4703 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Improve auto-detection of "restrict" keywordeschnett2011-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | Update and improve the auto-detection of the "restrict" keyword; add more test cases to detect more possible failures. Disable testing the array syntax void foo (double A[restrict]); where the "restrict" keyword is given within the square brackets; instead, one can use the pointer syntax void foo (double *restrict const A); which is tested. Add support for the gcc built-in function "builtin_expect", which tells the compiler the value that an expression is most likely to have. Re-enable the (currently commented out) definitions for attribute(hot) and attribute(cold). git-svn-id: http://svn.cactuscode.org/flesh/trunk@4702 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Regenerate configure fileeschnett2011-04-22
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4701 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Reorder CUDA makefile ruleseschnett2011-04-22
| | | | | | | | | The rules to build CUDA source files are very similar to those for C and C++, and different from those for the Fortran. Reorder reorder these makefile rules to make the code easier to understand. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4700 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Jian Tao: describe the flags to support CUDA programming in Cactus.knarf2011-04-19
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4698 17b73243-c579-4c4c-a9d2-2d5706c11dac
* f_file_processor.pl: Fix handling of continuation lines with OpenMPhinder2011-04-11
| | | | | | | | | | | | | | | | | | | | | | OpenMP requires continuation lines in Fortran 90 (and possibly Fortran 77 as well though I have not checked that) to start with the OMP sentinel (https://computing.llnl.gov/tutorials/openMP/#Directives). This patch ensures that a sentinel OMP or HPF is repeated when a line starting with that sentinel is broken to limit its length to 132 characters. It also adds a case-insensitive flag to the check for "!" like comments and adds extra backslashes to the standard_comments regex to properly match $OMP after all metacharacters have been handled. Tested with LoopControl's Fortran interface on gcc 4.5,Intel 11.1 and PGI. (Patch by Roland Haas) git-svn-id: http://svn.cactuscode.org/flesh/trunk@4697 17b73243-c579-4c4c-a9d2-2d5706c11dac
* This patch makes the CST stage create prototypes for all scheduledeschnett2011-03-30
| | | | | | | | | | | functions into a new file cctk_ScheduleFunctions.h, which is included into cctk.h. This is done only for C (and C++) since Fortran prototypes cannot be declared at file scope. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4696 17b73243-c579-4c4c-a9d2-2d5706c11dac
* This patch makes the CST stage create prototypes for all scheduledeschnett2011-03-30
| | | | | | | | | | | functions into a new file cctk_ScheduleFunctions.h, which is included into cctk.h. This is done only for C (and C++) since Fortran prototypes cannot be declared at file scope. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4695 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Force reconfiguring to make the new variables MAKE, TAR, GZIP_CMD,eschnett2011-03-30
| | | | | | | PATCH, GIT available git-svn-id: http://svn.cactuscode.org/flesh/trunk@4694 17b73243-c579-4c4c-a9d2-2d5706c11dac
* fix latexknarf2011-03-28
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4693 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add support for Darwin 10.7.0eschnett2011-03-23
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4692 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Export the MAKE variable to configuration scriptseschnett2011-03-22
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4691 17b73243-c579-4c4c-a9d2-2d5706c11dac
* don't use GZIP for the location of the gzip executable, because the latter ↵knarf2011-03-16
| | | | | | actually uses that very variable for a list of default options. Use GZIP_CMD instead git-svn-id: http://svn.cactuscode.org/flesh/trunk@4690 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Let Cactus find the correct Intel compiler lib directoryknarf2011-03-16
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4689 17b73243-c579-4c4c-a9d2-2d5706c11dac
* let Cactus search for TAR GZIP PATCH and GIT while configuringknarf2011-03-16
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4688 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Improve error messages when parsing configuration.ccl fileseschnett2011-03-08
| | | | | | | | | | | | | In the event of missing {}'s, the code actually went into an endless loop. The culprit was the while immediately following the error message. It was not capable of detecting end of file (i.e. when $data->[$line_number] became undefined). I added checks to ensure $data->[$Line_number] was defined in two additional while loops. [patch from Steve Brandt] git-svn-id: http://svn.cactuscode.org/flesh/trunk@4687 17b73243-c579-4c4c-a9d2-2d5706c11dac
* don't try to update the Cactus flesh using CVS anymore - skip it instead. A ↵knarf2011-03-04
| | | | | | better solution should be found, but this at least doesn't produce an error message now git-svn-id: http://svn.cactuscode.org/flesh/trunk@4686 17b73243-c579-4c4c-a9d2-2d5706c11dac
* patch from Jian Tao: The configuration option to specify the CUDA C compiler ↵knarf2011-02-26
| | | | | | should be called CUCC, not NVCC. nvcc is only NVidia's CUDA C compiler. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4685 17b73243-c579-4c4c-a9d2-2d5706c11dac
* add CUDA support to the fleshknarf2011-02-07
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4684 17b73243-c579-4c4c-a9d2-2d5706c11dac
* include cctk_Termination.h from cctk.hknarf2011-02-07
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4683 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Ian Hinder:knarf2011-02-01
| | | | | | | | | | | | Cactus supports a variable OPTIMISE=yes/no to control whether optimisation is performed during compilation. Setting this variable to "yes" (for example, make sim-config OPTIMISE=yes) adds the flags in C_OPTIMISE_FLAGS to CFLAGS so that optimisation is performed. This is the default. Setting OPTIMISE=no does not add the flags. For gcc, this results in an unoptimised configuration as gcc assumes -O0 as the default. The Intel compiler, however, uses -O2 as the default. Hence, setting OPTIMISE=no has no effect on Intel, and -O2 is still used. This patch adds new configuration options C_NO_OPTIMISE_FLAGS, CXX_NO_OPTIMISE_FLAGS, F77_NO_OPTIMISE_FLAGS and F90_NO_OPTIMISE_FLAGS to complement the *_OPTIMISE_FLAGS options. These are added to the flags when OPTIMISE=no is used, and they default to -O0, which for the commonly used gcc and Intel compilers will lead to an unoptimised configuration. This commit adds the corresponding documentation to the UsersGuide. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4682 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Ian Hinder:knarf2011-02-01
| | | | | | | | | | | Cactus supports a variable OPTIMISE=yes/no to control whether optimisation is performed during compilation. Setting this variable to "yes" (for example, make sim-config OPTIMISE=yes) adds the flags in C_OPTIMISE_FLAGS to CFLAGS so that optimisation is performed. This is the default. Setting OPTIMISE=no does not add the flags. For gcc, this results in an unoptimised configuration as gcc assumes -O0 as the default. The Intel compiler, however, uses -O2 as the default. Hence, setting OPTIMISE=no has no effect on Intel, and -O2 is still used. This patch adds new configuration options C_NO_OPTIMISE_FLAGS, CXX_NO_OPTIMISE_FLAGS, F77_NO_OPTIMISE_FLAGS and F90_NO_OPTIMISE_FLAGS to complement the *_OPTIMISE_FLAGS options. These are added to the flags when OPTIMISE=no is used, and they default to -O0, which for the commonly used gcc and Intel compilers will lead to an unoptimised configuration. This requires a CONFIG-reconfig, but this is not enforced because this option doesn't affect most people, and failing to -reconfig is not fatal. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4681 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Remove whitespace from option values passed on the "make" command linehinder2011-01-26
| | | | | | | | | | | The regular expression used to match variable settings was absorbing whitespace into the variable value. Changing to a non-greedy RE fixes this. This problem caused GSL to not find its directory, as it didn't expect a space on the end of GSL_DIR. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4667 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Support Darwon 10.6.0 (Mac OS X 10.6.6)eschnett2011-01-06
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4664 17b73243-c579-4c4c-a9d2-2d5706c11dac
* from Ian Hinder:knarf2011-01-06
| | | | | | | | | | | | | | | Correctly load parameter files with DOS line-endings Before this commit, when a parameter file with DOS line-endings was used, certain features of Cactus did not work correctly. For example, setting an output directory of $parfile would create an output directory named "$parfile" instead of expanding the parameter filename. This commit converts any CR-LF sequences to LF immediately after the parameter file is loaded. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4663 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add CCTK_ATTRIBUTE_ALIGNED, which is auto-configured and expands toeschnett2011-01-04
| | | | | | | | gcc' __attribute__(__aligned__(...)) if present. This is necessary for vectorisation. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4662 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Delete large "lib" directories without exceeding command line length limitationseschnett2011-01-04
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4661 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Force a rebuild of all Cactus configurations sinceeschnett2010-12-23
| | | | | | | cctki_Capabilities.h was renamed to cctk_Capabilities.h. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4660 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Improve optional requirement of capabilitieseschnett2010-12-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Thorns can specify that they can make use of a particular capability (for example HDF5), but that it is not absolutely required. It is currently not possible to detect a capability in the source code or make system of a thorn because there is no preprocessor macro and no make variable defined to indicate that the capability is available. Additionally, the preprocessor definitions which are explicitly provided by a capability are written to an include file which is malformed and hence these definitions cannot be read. This commit: * Introduces makefile and preprocessor variables HAVE_CAPABILITY_<cap> for each provided capability * Removes the incorrect definition line causing the include file to be malformed * Renames cctki_Capabilities.h to cctk_Capabilities.h and causes cctk_Capabilities.h to be included from cctk.h by all thorns * Excludes cctk_Capabilities.h from dependency checking (dependencies of the files included from this one will be sufficient) [Patch from Ian Hinder] git-svn-id: http://svn.cactuscode.org/flesh/trunk@4659 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Autoconf CCTK_ATTRIBUTE_NOINLINE, which expands toeschnett2010-12-23
| | | | | | | __attribute__((noinline)) if that is supported by the compiler. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4658 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add example for CCTK_VECTGFINDEX3Deschnett2010-12-23
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4657 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add new configuration flags CPP_DEBUG_FLAGS etc., which allow passingeschnett2010-12-22
| | | | | | | | | | | | | | | | | | | | | | | special CPP flags for debugging. These complement the existing C_DEBUG_FLAGS and CPPFLAGS. In particular, the following flags are added: CPP_DEBUG_FLAGS FPP_DEBUG_FLAGS CPP_OPTIMISE_FLAGS FPP_OPTIMISE_FLAGS CPP_PROFILE_FLAGS FPP_PROFILE_FLAGS CPP_OPENMP_FLAGS FPP_OPENMP_FLAGS CPP_WARN_FLAGS FPP_WARN_FLAGS Applications are e.g. adding -Wall to CPP_WARN_FLAGS, or -fopenmp to CPP_OPENMP_FLAGS. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4656 17b73243-c579-4c4c-a9d2-2d5706c11dac
* use define OPENMPI_BIN_LIB_DIR to specify library directories which have to ↵knarf2010-12-01
| | | | | | be searched when the openmpi binaries are executed. This can happen e.g. when using openmpi which was compiled with the intel compiler, but the corresponding intel module wasn't loaded git-svn-id: http://svn.cactuscode.org/flesh/trunk@4655 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add CCTK_VECTGFINDEX3D and friendseschnett2010-11-24
| | | | | | | | | | Add functions CCTK_VectGF1D, CCTK_VectGF2D etc. and the corresponding macros CCTK_VECTGFINDEX1D etc. that allow indexing into vector grid variables. Vector grid variables require an additional index, namely the vector index; these functions simplify using them. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4654 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Force people to reconfigure their buildseschnett2010-11-24
| | | | | | | | Modify force-reconfigure to force people to reconfigure their builds because the way unsued variables are handles changed. git-svn-id: http://svn.cactuscode.org/flesh/trunk@4653 17b73243-c579-4c4c-a9d2-2d5706c11dac
* make Cactus add include paths to the compiler options such that fortran ↵knarf2010-11-23
| | | | | | module files outside of scratch can be found, closes ET ticket #99 git-svn-id: http://svn.cactuscode.org/flesh/trunk@4652 17b73243-c579-4c4c-a9d2-2d5706c11dac
* support __unused__ where known. This let's e.g. gcc know that especially the ↵knarf2010-11-23
| | | | | | Cactus variables might be unused and should not be reported as such. This closes ET ticket #1 git-svn-id: http://svn.cactuscode.org/flesh/trunk@4651 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add support for Darwin 10.5.0eschnett2010-11-23
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4650 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Apply patch by Barry Wardell to fix the hyperlinks in the Reference Manualknarf2010-11-04
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4647 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Provide Fortran wrapper for CCTK_SyncGroupsI().rideout2010-11-03
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4646 17b73243-c579-4c4c-a9d2-2d5706c11dac
* use getpwuid($<) instead of getlogin() which returns an empty string on occationknarf2010-10-28
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@4645 17b73243-c579-4c4c-a9d2-2d5706c11dac
* detect error in dimension size settings of grid arrays, and produce a ↵knarf2010-10-27
| | | | | | meaningful error message git-svn-id: http://svn.cactuscode.org/flesh/trunk@4644 17b73243-c579-4c4c-a9d2-2d5706c11dac