| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
| |
Add configuration options allowing people to ensure that all thorn
source files make it into the executable. Among other things, this
ensures that each routine has a unique name.
This is disabled by default.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4899 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Move MPI support from flesh to thorn ExternalLibraries/MPI. This also
requires thorns that call MPI directly to declare this in their
configuration.ccl. Existing configurations using MPI need to include
ExternalLibraries/MPI into their thorn list.
* Declare that the flesh optionally uses MPI (because it needs to call
MPI_Init)
* Update test case mechanism to find out whether MPI is used
* Handle configuration bindings for flesh
* Don't special-case Crays any more when configuring Linux
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4847 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
| |
Change per thorn -DTHORN_IS_xxx to a per thorn -I bindings/include/xxx
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4839 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
- re-introduce SILENT=no to set VERBOSE=yes, for some time
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4740 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
| |
minor cosmetics issues
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4739 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4738 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
is still VERBOSE=no, but this now actually produces a lot less output: almost
no "cosmetic" lines (only ---), and no messages for pre- and postprocessing
anymore. Add VERBOSE=yes to get the old beavior of SILENT=no.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4737 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
increase it on all other systems to 10000.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4481 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
| |
during the generation of libCactusBindings.a on an IBM SP5 machine
(see http://www.cactuscode.org/old/pipermail/developers/2007-December/005479.html as the corresponding email discussion thread)
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4446 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@4109 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
file for a thorn.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@3736 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@3602 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
dependencies can be automatically resolved.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@3533 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@3497 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
| |
so that they are printed before make checks the dependencies, which can
take quite some time.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@3429 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@3011 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
| |
CCTK_TARGET
as TARGET seems to conflict with an environment variable used by the compilers
on the T3E.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2230 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make system now looks in
bindings/build/$(THORN)/make.code.defn
for additional objects to be built and linked into a library.
The CST puts a file cctk_ThornBindings.c into this directory.
This should solve the empty library problem - PR 638.
The interface to the internal routine CCTKi_RegisterThorn has changed.
The new file created by the CST uses the correct new syntax, ands passes
information about ancestors and friends into the flesh. Hence the
commit of two separate things in one commit, as the both changes
require a -rebuild.
Please do a
make <config>-rebuild
or your code will not compile.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2199 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2197 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2180 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
a thorn's main src directory were added twice to the archive.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2178 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
| |
A known-architecture file or the config line can now set USE_RANLIB=yes to
have the make system use ranlib.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2174 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
| |
Optimised a bit so libs and executable are only rebuilt if a source file/header
has really changed.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2158 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
| |
of the dependencies will be dealt with by the recursive make into
subdirectories.
This fixes PR 177. Thanks to Erik for pointing out the fix.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@1912 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
allowed in a thorn.
This also makes the names of the dependency files unique, so should also solve
PR CCTK/75.
You will need to do a <config>-config
after this,
or do
cp lib/make/make.config.rules.in configs/<config>/config-data/make.config.rules
in order for everything to work again.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@894 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@891 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@883 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Everything should work again (!)
git-svn-id: http://svn.cactuscode.org/flesh/trunk@839 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
subdirectories
overwriting this.
Put packages subdirectory on include path.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@463 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
| |
git-svn-id: http://svn.cactuscode.org/flesh/trunk@393 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
| |
shorten some include paths, and allows us to add system include paths
like the path to mpi.h easily.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@352 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@210 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
things were happening.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@204 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
changes directory to $(TOP)/scratch and builds the file there, putting
the object file in the appropriate build directory.
When this is done for F90 it should mkae sure that all module files
end up in one place and are available for the F90 compiler.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@107 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
| |
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@105 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now all you need to do is
#include "config.h"
and
#include "cctk_parameters.h"
at the top of your c source file, and then state
DECLARE_PARSER
at the top of any subroutine where you want to use the parameters.
Note that the flesh should use the getparameter subroutine, rather than this
method, otherwise it may need to be recompiled whenever someone adds a public
parameter.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@104 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Unified rules for making libraries.
Slight cosmetic change to make.thornlib - now states whether it is
creating or whether it is updating the library, rather than just
saying 'Creating or Updating' .
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@76 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
| |
sinclude.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@70 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
| |
messages.
Now the presence of make.code.deps in a thorn's directory or subdirectories is
optional.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@68 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In your make.code.defn file put lines
SRCS = <sources in this directory>
SUBDIRS= <all subdirectories - e.g. what find . -type d would give you>
then in each subdirectory put a make.code.defn containing
SRCS = <sources in this directory>
(N.B. you cannot currently put a SUBDIRS line here)
along with make.code.deps files in all the directories.
Make will then go into the relevant subdirectory and make the object files there
before updating the library file.
The first time it does this you will get errors of the form
cannot find <subdir-name>/make.identity
you should ignore these errors, as the make system then creates the files. If I find a way to do this without the errors, I'll be happy 8-) The files are used to keep track of the subdirectory filenames.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@66 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently these rules don't do anything other than make the files if they
don't exist.
Put @'s in front of the echos in make.configuration.
Commented out $(RANLIB) line in make.thornlib - it didn't seem to do the
correct thing under irix, and irix,osf and linux ar take the -s flag anyway.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@65 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To build a configuration <conf> do
make <conf>
if <conf> doesn't exist you'll get a complaint
make by itself will list existing configurations, or run the setup
perl script if there are none.
make config will make a new configuration
make help should list all options
make tags will create a Vi style tags file
make TAGS will create an Emacs style TAGS file
make distclean will nuke your build directory.
When setting up a configuration the make system creates the following directories
$(CCTK_HOME)/build
$(CCTK_HOME)/build/$(config)
$(CCTK_HOME)/build/$(config)/config-data
$(CCTK_HOME)/build/$(config)/lib
$(CCTK_HOME)/build/$(config)/build
and runs autoconf in the config-data directory.
You then need to create a file
make.thornlist
containing one line of the form
THORNS=toolkit1/thorn1 toolkit3/thorn45 ...
in the config-data directory.
(This will be automatically created from ActiveThorns later.)
At that point you should be fine for making the system.
Note that it doesn't preprocess the files yet, nor in fact touch any of
the ccl scripts. This is coming to a make system near you soon...
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@62 17b73243-c579-4c4c-a9d2-2d5706c11dac
|
|
Rely on a directory structure like
arch/config-stuff
arch/lib
arch/build/<thorn1>
arch/build/<thorn2>
etc
and files called make.config.defn, make.config.deps, make.config.rules in the config-stuff directory.
make.config.defn should contain the normal make variables defining
compilers and compiler flags, etc, plus
TOOLKIT_DIR - the directory containing the toolkit sources
CCTK_LIBDIR - arch/lib in the above example
BUILD_DIR - arch/build in the above example
EXE - the name of the executable
THORNS - the names of the thorns, including toolkits - e.g CCTK/pugh CCTK/io, etc.
(I'll probably move this one out to another file.)
make.config.rules should contain rules to make object files from source files, e.g.
%.o: $(SRCDIR)/%.c
$(CC) $(CFLAGS) -c -o $@ $< $(addprefix -I, $(INC_DIRS))
etc.
Then you invoke make.configuration with
make -f make.configuration TOP=<directory containing the build tree - arch> MAKE_DIR=<directory containing make.thornlib>
and the thorns should get built.
Still need to add stuff for building flesh, and to take in flesh include files,
etc.
Need to do autoconf stuff to automagically create make.config.defn.
Need the perl configuration stuff.
Tom
git-svn-id: http://svn.cactuscode.org/flesh/trunk@60 17b73243-c579-4c4c-a9d2-2d5706c11dac
|