originally suggested by Ralf Wildenhues, to try to speed autogen, configure,
and make (and possibly even make install). Use automake's include directive
to drastically reduce the number of Makefile files (although the number of
Makefile.am files is the same - most are just included in a top-level
Makefile.am). Also use an Automake SUBDIRs feature to eliminate the
dynamic-mca tree, which was no longer really needed. This makes adding
a framework easier (since you don't have to remember the dynamic-mca
tree) and makes building faster (as make doesn't have to recurse through
the dynamic-mca tree)
This commit was SVN r7777.
a random string of characters as part of the version number (the really
soon to happen 1.0lanl release and the 1.1sc2005 release that we've
talked about). So rather than having alpha and beta fields that must
be numeric values, have a general field that can be any alphanumeric
value.
This commit was SVN r7511.
friendly #defines to be included in mpi.h (even for users), such as
_GNU_SOURCE, which can have some really big consequences on Linux.
Instead, add mpi.h to AC_CONFIG_HEADERS and just include the #defines
we have to have for mpi.h and the C++ bindings.
This commit was SVN r7022.
to opal_progress() to use the timers instead of a tick count for deciding
whether to call the event loop or not. Currently supported platforms are:
- solaris (x86 / sparc)
- Linux (x86 / x86_64 / IA64)
- Mac OS X (x86 / Power PC)
This commit was SVN r6922.
be compiled, as well as the ability for components to prioritize
the order in which they should be compiled so that the "right"
first one is selected. Make autogen.sh do all the hard sorting
work, so that the m4_defined lists of components are in the
prioritized order. From there, it's just forcing components
to fail after the first one succeeds (if we are in the "only one
compnent can build" mode).
This commit was SVN r6895.
load a set of arguments to build OMPI. So you can do something like:
./configure --with-platform=redstorm
and automagically have all 10,000 arguments to configure required
for Red Storm magically set
* change all instances of sinclude to m4_include so that autogen
will properly fail if an .m4 file isn't included properly
This commit was SVN r6648.
frameworks, and components without configure scripts instead of
hard-coded shell variables (for projects and frameworks) and
shell variable building (for components).
* Add 3rd category of component configuration (in addition to configure
scripts and no-configured components): configure.m4 components. These
components can only be built as part of OMPI (like no-configure), but
can provide an m4 file that is run as part of the main configure
script. These macros can set whether the component should be built,
along with just about any other configuration wanted. More care must
be taken compared to configure components, as doing things like setting
variables or calling AC_MSG_ERROR now affects the top-level configure
script (so calling AC_MSG_ERROR if your component can't configure
probably isn't what you want)
* Added support to autogen.sh for the configure.m4-style components,
as well as building up the m4_define lists ompi_mca.m4 now expects
* Updated a number of macros to be more config.cache friendly (both
so that config.cache can be used and so the test can be quickly
run multiple times in the same configrue script):
- ompi_config_asm
- c_weak_symbols
- c_get_alignment
* Added new macros to be shared when configuring components:
- ompi_objc.m4 (this actually provides AC_PROG_OBJC - don't ask...)
- ompi_check_xgrid
- ompi_check_tm
- ompi_check_bproc
* Updated a number of components to use configure.m4 instead of
configure.stub
- btl portals
- io romio
- tm ras and pls
- bjs, lsf_bproc ras and bproc_seed pls
- xgrid ras and pls
- null iof (used by tm)
This commit was SVN r6412.
code
* Add code to create m4_defined lists in mca_no_configure_components.m4 that
list all the projects (opal, orte, ompi, etc.), all the frameworks in each
project, and all the no-configure components in each framework. These will
eventually be used to remove all those lists from ompi_mca.m4
This does not require an autogen / configure. Won't hurt, but not
required.
This commit was SVN r6361.
"don't evaluate later expessions if an early one evaluates to false".
So change it back to && and put a big comment *why*. @#%@#$%...
This commit was SVN r5667.
Components are now unignored if:
- .ompi_unignore exists, and
- .ompi_unignore contains at least one of the following:
- regexp matching "$USER$"
- regexp matching "$USER@$HOST"
This allows selective unignoring of components for only specific
development hosts rather that everywhere a given username is used.
This commit was SVN r5664.
the src/mca/soh/base/*.c files out of the default build because
they're uncompilable right now -- don't want to step on any of Ralph's
local changes.
This commit was SVN r3837.
.ompi_ignore file.
If you have an empty .ompi_unignore file (presumably alongside an
.ompi_ignore file), we'll build the component.
If you have a non-empty .ompi_unignore file (presumable alongside an
.ompi_ignore file), and your username can be found in that file, we'll
build the component. If your username is *not* the the .ompi_unignore
file, we *won't* build the component.
This commit was SVN r3747.
the Open MPI tree. This fixes bug 1015.
- Eliminate some confusion/inconsistencies through the tree; we only
use MCA_<type>_<name>_VERSION now, not ..._FULL_VERSION
- coll demo component is ready
- ROMIO io component had a VERSION file but wasn't using it, so now
it's using it properly
- Updated autogen.sh and mca_make_configure.pl to generate version
header templates upon demand
This commit was SVN r3267.
minor buglet in not regenerating version header files properly (minor
shell quoting problem).
It is not necessary to re-run autogen.sh (etc.) after updating to this
fix; the changes will be picked up the next time you naturally run
autogen.sh and friends.
This commit was SVN r3031.
specific AC_DEFINE to a specific header file), emulate the behavior
of AC_HEADER_FILES when saving the values from the VERSION files;
dump them into a temporary file and diff them against the
already-existing .h file. If they're the same, do nothing. If
they're different, replace the .h file.
- With this capabiliy, move the #define's of all version numbers out
of ompi_config.h and into component-specific <type>-<name>-version.h
header files. This will prevent a lot of extra compilation when
you updat your local svn working copy.
- Remove the requirement for having a VERSION file. If you don't have
it, then a .h file with your version numbers won't be generated.
- Remove the VERSION file from lots of components that don't use it.
I've added it to my "consistency" list to go back and re-add them
along with using the proper #define's in the component struct after
we reach a period of stability.
This commit was SVN r1999.
because "svnversion" may emit a version number with ":" in it (duh!).
This fixes the problem where, depending on the status of your svn
checkout, you could get a string in a MAJOR version number instead of
an integer (i.e., "1234M" instead of "10"). This was caused by
extraneous ":" in the output, causing autogen.sh to grab the wrong
field.
This commit was SVN r1991.
from the "LAM/MPI" -> "Open MPI" name change that didn't convert
properly. So this commit fixes all instances of "OMPI/MPI" to "Open
MPI".
This commit was SVN r1924.
code base.
- many (most) mca type names have "component" or "module" in them,
as relevant, just to further distinguish the difference between
component data/actions and module data/actions. All developers
are encouraged to perpetuate this convention when you create
types that are specific to a framework, component, or module
- did very little to entire framework (just the basics to make it
compile) because it's just about to be almost entirely replaced
- ditto for io / romio
- did not work on elan or ib components; have to commit and then
convert those on a different machine with the right libraries and
headers
- renamed a bunch of *_module.c files to *_component.c and *module*c
to *component*c (a few still remain, e.g., ptl/ib, ptl/elan, etc.)
- modified autogen/configure/build process to match new filenames
(e.g., output static-components.h instead of static-modules.h)
- removed DOS-style cr/lf stuff in ns/ns.h
- added newline to end of file src/util/numtostr.h
- removed some redundant error checking in the top-level topo
functions
- added a few {} here and there where people "forgot" to put them in
for 1 line blocks ;-)
- removed a bunch of MPI_* types from mca header files (replaced with
corresponding ompi_* types)
- all the ptl components had version numbers in their structs; removed
- converted a few more elements in the MCA base to use the OBJ
interface -- removed some old manual reference counting kruft
This commit was SVN r1830.
- Updated autogen.sh and friends to be more flexible and allow
components to be configured and built outside of the Open MPI tree
- Removed $(LIBOMPI_LA) from all component Makefile.am's -- it's
unnecessary
This commit was SVN r1566.
--disable-mca-dso to build MCA components statically as part of
libmpi, or --enable-mca-dso=LIST to only build some components as DSOs
(see ./configure --help for more details).
This commit was SVN r1521.