summaryrefslogtreecommitdiff
path: root/lib/make/make.config.defn.in
Commit message (Collapse)AuthorAge
* Define C_LINE_DIRECTIVES and F_LINE_DIRECTIVESschnetter2004-01-19
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@3529 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add (incomplete) Fortran 90 bindings for the flesh functions.schnetter2004-01-19
| | | | | | | Also, detect Fortran 90 inter-module dependencies automatically. git-svn-id: http://svn.cactuscode.org/flesh/trunk@3524 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add FPP and FPPFLAGS configuration variables. These are used forschnetter2004-01-19
| | | | | | | preprocessing Fortran files. git-svn-id: http://svn.cactuscode.org/flesh/trunk@3522 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Turn "WARN={yes|no}" into a configuration option also (still changeable attradke2003-12-17
| | | | | | | compile time). git-svn-id: http://svn.cactuscode.org/flesh/trunk@3477 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Exclude cctk_Functions.h from dependency checking. It does notschnetter2003-11-20
| | | | | | | | contain any relevant information; the same is done for cctk_Arguments.h. git-svn-id: http://svn.cactuscode.org/flesh/trunk@3463 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Adding RANLIBFLAGS to pass arguments to ranlib. Default is "cs".goodale2001-05-14
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@2180 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added optional use of ranlib to create archoive indices.goodale2001-05-11
| | | | | | | | | | 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
* Initial implementation of Function Aliasing for thorns.allen2001-02-24
| | | | | | | | | | | | | | | | | | This is described on a Spec on the web pages at the moment, and will move to the documentation once it is tested and extended a bit more. If you want to have a look at it in action, checkout the thorns TestFunctions1A, TestFunctions1B and TestFunctions2 which will be in AlphaThorns in a few minutes time. At the moment it is only possible to use Function Aliasing for C functions which use and return Cactus data types. You will need to rebuild your configurations once you update, but apart from that these changes shouldn't affect anyone ... if you see any problems please let us know. Gabrielle git-svn-id: http://svn.cactuscode.org/flesh/trunk@2060 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Add F90_SUFFIX make variable for freeformat f90 suffix. This shouldgoodale2000-12-17
| | | | | | | | | help with PR 224. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1962 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added LIBNAME_PREFIX and LIBNAME_SUFFIX to allow libraries to be namedgoodale2000-10-31
| | | | | | | | | | | | | differently on some architectures (e.g. NT). Removed fallback definition for GENERAL_LIBRARIES in make.configuration, and added fallback definitions for LIBNAME_PREFIX and LIBNAME_SUFFIX so old configurations should still work. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1872 17b73243-c579-4c4c-a9d2-2d5706c11dac
* A few more checks for things. Now looks for regex.h and getopt.h andgoodale2000-05-14
| | | | | | | | | | if they don't exist it sets the make variables BUILD_REGEX and BUILD_GETOPT to no, otherwise they are yes. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1659 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Addedgoodale2000-03-07
| | | | | | | | | | | | | | | | | | | | | | | | | C_POSTPROCESSING CXX_POSTPROCESSING F77_POSTPROCESSING F_POSTPROCESSING F90_POSTPROCESSING as things a known-architecture can set. This allows object files to be moved and things like that. Also added the ability of the architecture files to write to a file calles make.arch.defn which is included at the bottom of make.code.defn. Thus, for example, an architecture requiring mpicc and its ilk for compiling with MPI can replace the compilers at this point, but still allow the rest of the configuration to use the normal compiler. Use with caution. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1438 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added yet another thing which can be set by the known-architecture stuff:goodale2000-03-06
| | | | | | | | | | | | | | | | | | | | | | | | CXX_WORKING_NAME this defaults to the working name being the filename without the directory info, but can be used to give the file generated after preprocessing a different name. E.g. if your machine requires C++ files to end with .C you should be able to do CXX_WORKING_NAME='$(notdir $<).C to solve the problem. At some point we're going to have to go through all these obscure flags and decide on nice names and what functionality they really should have. For instance the above could also have been done by introducing CXX_SUFFIX which would of course be easier for the end-user, but might in some circumstances be less useful. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1420 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added configuration-time optionallen2000-02-19
| | | | | | | | | | | | | | | OPTIMISE=no to switch off optimisation flags for quicker compiling. The known architectures files can now contain C_OPTIMISE_FLAGS CXX_OPTIMISE_FLAGS F77_OPTIMISE_FLAGS F90_OPTIMISE_FLAGS git-svn-id: http://svn.cactuscode.org/flesh/trunk@1395 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added configuration-time optiongoodale2000-02-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | DEBUG=yes This was there before, but now the known-architecture files can contain C_DEBUG_FLAGS CXX_DEBUG_FLAGS F77_DEBUG_FLAGS F90_DEBUG_FLAGS Also added compile-time option WARNINGS=yes which should switch on warning flags during compilation. The known-architecture files specifies these flags via C_WARN_FLAGS CXX_WARN_FLAGS F77_WARN_FLAGS F90_WARN_FLAGS Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1390 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added detection of X library location.goodale2000-02-10
| | | | | | | | | | | | Sets make variables X_LIB_DIR X_INC_DIR Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1377 17b73243-c579-4c4c-a9d2-2d5706c11dac
* cctk_arguments.h -> cctk_Arguments.hallen2000-01-25
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@1288 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Fixed typoallen1999-12-17
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@1206 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Adding CParameterStructNames.h to be ignored by the dependencyallen1999-11-06
| | | | | | | | | | fixer. Now thorns can be added and removed from the ThornList without a major rebuild git-svn-id: http://svn.cactuscode.org/flesh/trunk@1139 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Attempt to exclude certain files from the dependency lists to preventgoodale1999-11-04
| | | | | | | | | | | excessive recompilation when the thornlist is changed. Tested under Linux. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1134 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Detection of various functions and header files.goodale1999-10-20
| | | | | | | Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1073 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added MKDIRFLAGS to be available for make and code.allen1999-09-07
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@876 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added yet another make variable.goodale1999-09-04
| | | | | | | | | | | | | | | | | | | | | | | | | Now the make stuff required for the final linking of libraries is bundled up into GENERAL_LIBRARIES which defaults to $(LIBDIRS:%=-L%) $(LIBS:%=-l%) which should work on all unices. For NT I have made it $(LIBS) and LIBDIRS has no use. NT stuff needs to specify the full path and name of each library in the LIBS variable. Maybe one day we'll find a neater way ! Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@874 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Now "packages" are called "arrangements"allen1999-07-30
| | | | | | | Everything should work again (!) git-svn-id: http://svn.cactuscode.org/flesh/trunk@839 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Now EXE is the executable nameallen1999-07-28
| | | | | | | | and EXEDIR is the executable directory git-svn-id: http://svn.cactuscode.org/flesh/trunk@804 17b73243-c579-4c4c-a9d2-2d5706c11dac
* I've re-done the MPI stuff to make it more flexible. It is now easy to add ↵goodale1999-07-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | other extra packages, e.g. PVM, without having to rerun autoconf. Basically 'configure' now looks in a directory called 'extras', and for every subdirectory of that is checks for the presence of an executable file call 'setup.sh' which can do configuration stuff. 'setup.sh' should put extra definitions in a file called 'cctk_extradefs.h' and extra make stuff in 'make.extra.defn'. To help this process there is a function CCTK_WriteLine which takes two arguments, the name of the file, and what to write. E.g. CCTK_WriteLine cctk_extradefs.h "#define MPI" and CCTK_WriteLine make.extra.defn 'LIBS += $(MPI_LIBS)' with the usual shell expansions happening. To help search for files and things there is function CCTK_Search which takes four arguments - the name of a variable - a list of names - a filename - an (optional) basename E.g. CCTK_Search MPI_DEVICE "ch_shmem ch_p4 globus" lib $MPICH_DIR/build would look for directories called ch_shmem or ch_p4 or globus containing a file or directory called 'lib' and all this would be done in the directory $MPICH_DIR/build. On return from the function the value of MPI_DEVICE would be ch_shmem, ch_p4, globus, or empty depending on which one was found first. So, to add an optional extra package: - add a directory with its name under lib/make/extras - in this directory add an executable shell file called setup.sh - in this file check if the extra thing is enabled, check for any configuration things and add them to cctk_extradefs.h or make.extra.defn as necessary. Note you will need to do a cvs update -d to get the new directories I've just added. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@752 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added MPI=<type> configuration option.goodale1999-07-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current types are CUSTOM - must define, either in the environment or on the command line MPI_LIBS MPI_LIB_DIRS MPI_INC_DIRS NATIVE - use the 'native' MPI for the machine; this must be checked for and setup in the known-architecture file. MPICH - use MPICH. This is controlled by MPICH_DIR - the MPICH installation directory will search a few places for this if not defined. MPICH_DEVICE - the MPICH device again will search. If MPICH_DEVICE=globus you must set GLOBUS_DIR. LAM - use LAM. This is controlled by LAM_DIR - the LAM installation directory will search a few places. This should still be treated as experimental, but it works on my laptop for MPICH and LAM. I've updated the known-architectures/irix file for this, plus fixed the IRIX IRIX64 problem (I think), but haven't tested the change yet. Have fun, Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@748 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added F_DEPEND and F77_DEPEND for consistency with C and CXX.goodale1999-07-15
| | | | | | | | | | | | Added {C,CXX,F,F77}_DEPEND_OUT for the end of dependency rules - i.e. it contains > $@ by default, but on architectures where the dependency info is generated in more complicated ways, such as the Exemplar or AIX it can be something more long-winded. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@712 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Added method to change the way libraries are linked in, this should help undergoodale1999-06-28
| | | | | | | | | | | NT. Fixed the default OPTIONSEP so that it is a space. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@591 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Lots more changes to get things working under NT.goodale1999-06-25
| | | | | | | | | | Almost there. Everything seems to compile, modulo a problem I just spotted, with only the final linking remaining. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@589 17b73243-c579-4c4c-a9d2-2d5706c11dac
* A few more changes to help supprt NT.goodale1999-06-25
| | | | | | | | | NOTE: you will need to do a reconfig after this. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@578 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Most compilers use -c -o for compile only and put object file in agoodale1999-04-08
| | | | | | | | | | | particular place, but some don't. Now the options are held in make variables, and a known-architectures, or setup options script can set these appropriately. Currently they default to -c -o . Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@457 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Changed the way include files are handled slightly. This shouldgoodale1999-02-27
| | | | | | | | | | 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
* Can now pass options to the configure scriptgoodale1999-02-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | use make <config> options=<option-file-name> when making a new configuration. <option-file-name> has the format of keyword value or keyword = value Note that even though it will allow a vlue to be blank, the configure script itself will ignore this, so it's not so easy to tell it to ignore, say, your f90 compiler. The configure script now uses the f90 compiler for f77, or the f77 compiler if there is no f90 compiler. The configure.pl script will produce a dummy fortran_name perl script if there is no fortran compiler. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@319 17b73243-c579-4c4c-a9d2-2d5706c11dac
* toolkit -> packageallen1999-02-13
| | | | git-svn-id: http://svn.cactuscode.org/flesh/trunk@246 17b73243-c579-4c4c-a9d2-2d5706c11dac
* Created make variables for the perl scripts - these variables are rungoodale1999-02-06
| | | | | | | | | | through sed to convert names beginning with, say, //d/foo to d:/foo to allow compilation under cygwin. Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@213 17b73243-c579-4c4c-a9d2-2d5706c11dac
* New make system.goodale1999-01-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Lots more stuff for the new make system -goodale1999-01-17
configure and config.h.in are generated by running autoconf and autoheader respectively. The resulting configure file can then be run to produce make.config.defn config.h fortran_name.pl You must set an environment variable with the name of the executable first. It should be run from the config-data directory of a configuration - e.g setenv EXE cctk $(CCTK_HOME)/lib/make/configure Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@61 17b73243-c579-4c4c-a9d2-2d5706c11dac