The "external" Trilinos package makes it easy add additional packages
that are external to Trilinos to the Trilinos build process. Users
who develop additional capabilities on top of and outside of Trilinos
may find this tool useful for simplifying their Trilinos interface.
Packages that utilize this tool can easily be added to a user's
existing set of Trilinos packages.
To add a package with a top level directory called NEW (that has been properly set up, more about this below) to the build process:
Note that NEW can be a single package or a multilevel configure structure like Trilinos. If more than one package is to be added to the build process at the Trilinos/packages/external level, modify the above steps as follows:
The setup requirements for NEW are fairly minimal:
It is suggested that packages also:
To add a package with a top level directory called NEW (that has been properly set up, more about this below) to the build process:
- Put the code into a new directory Trilinos/packages/external/NEW.
- In Trilinos/packages/external, type ./CustomizeExternal.csh NEW
- Build Trilinos in the usual way, adding any arguments necessary for NEW.
Note that NEW can be a single package or a multilevel configure structure like Trilinos. If more than one package is to be added to the build process at the Trilinos/packages/external level, modify the above steps as follows:
- Put the code into new directories Trilinos/packages/external/NEW Trilinos/packages/external/NEW1 (and so on)
- In Trilinos/packages/external, type ./CustomizeExternal.csh NEW NEW1 ...
- Build Trilinos in the usual way, adding '--enable-external' to the list of configure arguments. Also add any configure arguments necessary for the external package(s) being added to the build process.
The setup requirements for NEW are fairly minimal:
- NEW must recognize the "configure" command in the same way that Trilinos packages do.
- sed must be in your path.
- Autoconf version 2.59 and automake version 1.8.2 must be in your path when adding *more than one* package at the external/ level.
It is suggested that packages also:
- Use Autoconf and Automake.
- Support the same basic set of options that Trilinos packages support.
- Support the make install make target.
- Utilize makefile.export - both reading from other packages and producing a makefile.export.NEW file for other applications to use. **If starting with makefile.export files from a Trilinos package, keep in mind that the relative location of the top level Trilinos directory will be ../../../ instead of ../../.



