2004-01-19 20:44:47 +03:00
|
|
|
//
|
2004-11-22 04:38:40 +03:00
|
|
|
// Copyright (c) 2004-2005 The Trustees of Indiana University.
|
|
|
|
// All rights reserved.
|
|
|
|
// Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
|
|
|
|
// All rights reserved.
|
2004-11-28 23:09:25 +03:00
|
|
|
// Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
|
|
|
// University of Stuttgart. All rights reserved.
|
2005-03-24 15:43:37 +03:00
|
|
|
// Copyright (c) 2004-2005 The Regents of the University of California.
|
|
|
|
// All rights reserved.
|
2004-11-22 04:38:40 +03:00
|
|
|
// $COPYRIGHT$
|
|
|
|
//
|
|
|
|
// Additional copyrights may follow
|
|
|
|
//
|
2004-01-19 20:44:47 +03:00
|
|
|
// $HEADER$
|
|
|
|
//
|
|
|
|
|
2004-06-07 19:33:53 +04:00
|
|
|
#ifndef OMPI_INFO_H
|
|
|
|
#define OMPI_INFO_H
|
2004-01-19 20:44:47 +03:00
|
|
|
|
|
|
|
#include <string>
|
|
|
|
#include <vector>
|
|
|
|
#include <map>
|
|
|
|
|
2005-07-03 20:22:16 +04:00
|
|
|
#include "opal/class/opal_list.h"
|
2005-07-04 04:13:44 +04:00
|
|
|
#include "opal/util/cmd_line.h"
|
2004-01-19 20:44:47 +03:00
|
|
|
#include "mca/mca.h"
|
|
|
|
|
|
|
|
|
2004-06-07 19:33:53 +04:00
|
|
|
namespace ompi_info {
|
2004-01-19 20:44:47 +03:00
|
|
|
|
|
|
|
//
|
|
|
|
// Globals
|
|
|
|
//
|
|
|
|
|
2004-01-30 01:10:58 +03:00
|
|
|
typedef std::vector<std::string> type_vector_t;
|
2004-01-19 20:44:47 +03:00
|
|
|
|
|
|
|
extern bool pretty;
|
2005-07-04 04:13:44 +04:00
|
|
|
extern opal_cmd_line_t *cmd_line;
|
2004-01-19 20:44:47 +03:00
|
|
|
|
|
|
|
extern const std::string type_all;
|
2004-06-07 19:33:53 +04:00
|
|
|
extern const std::string type_ompi;
|
Major simplifications to component versioning:
- After long discussions and ruminations on how we run components in
LAM/MPI, made the decision that, by default, all components included
in Open MPI will use the version number of their parent project
(i.e., OMPI or ORTE). They are certaint free to use a different
number, but this simplification makes the common cases easy:
- components are only released when the parent project is released
- it is easy (trivial?) to distinguish which version component goes
with with version of the parent project
- removed all autogen/configure code for templating the version .h
file in components
- made all ORTE components use ORTE_*_VERSION for version numbers
- made all OMPI components use OMPI_*_VERSION for version numbers
- removed all VERSION files from components
- configure now displays OPAL, ORTE, and OMPI version numbers
- ditto for ompi_info
- right now, faking it -- OPAL and ORTE and OMPI will always have the
same version number (i.e., they all come from the same top-level
VERSION file). But this paves the way for the Great Configure
Reorganization, where, among other things, each project will have
its own version number.
So all in all, we went from a boatload of version numbers to
[effectively] three. That's pretty good. :-)
This commit was SVN r6344.
2005-07-05 00:12:36 +04:00
|
|
|
extern const std::string type_orte;
|
|
|
|
extern const std::string type_opal;
|
2004-01-19 20:44:47 +03:00
|
|
|
extern const std::string type_base;
|
2004-01-30 01:10:58 +03:00
|
|
|
extern type_vector_t mca_types;
|
2004-01-19 20:44:47 +03:00
|
|
|
|
|
|
|
//
|
|
|
|
// Version-related strings and functions
|
|
|
|
//
|
|
|
|
|
|
|
|
extern const std::string ver_full;
|
|
|
|
extern const std::string ver_major;
|
|
|
|
extern const std::string ver_minor;
|
|
|
|
extern const std::string ver_release;
|
|
|
|
extern const std::string ver_alpha;
|
|
|
|
extern const std::string ver_beta;
|
2004-03-19 09:05:27 +03:00
|
|
|
extern const std::string ver_svn;
|
2004-01-19 20:44:47 +03:00
|
|
|
|
2005-07-04 04:13:44 +04:00
|
|
|
void do_version(bool want_all, opal_cmd_line_t *cmd_line);
|
2004-06-07 19:33:53 +04:00
|
|
|
void show_ompi_version(const std::string& scope);
|
2004-07-14 00:25:12 +04:00
|
|
|
void show_component_version(const std::string& type_name,
|
|
|
|
const std::string& component_name,
|
2004-01-29 05:51:20 +03:00
|
|
|
const std::string& scope,
|
|
|
|
const std::string& ver_type);
|
2004-01-19 20:44:47 +03:00
|
|
|
|
|
|
|
//
|
|
|
|
// Parameter/configuration-related functions
|
|
|
|
//
|
|
|
|
|
2004-07-14 00:25:12 +04:00
|
|
|
extern std::string component_all;
|
2004-01-19 20:44:47 +03:00
|
|
|
extern std::string param_all;
|
|
|
|
|
|
|
|
extern std::string path_prefix;
|
|
|
|
extern std::string path_bindir;
|
|
|
|
extern std::string path_libdir;
|
|
|
|
extern std::string path_incdir;
|
|
|
|
extern std::string path_pkglibdir;
|
|
|
|
extern std::string path_sysconfdir;
|
|
|
|
|
2005-02-10 07:37:13 +03:00
|
|
|
void do_params(bool want_all, bool want_internal);
|
2004-07-14 00:25:12 +04:00
|
|
|
void show_mca_params(const std::string& type, const std::string& component,
|
2005-02-10 07:37:13 +03:00
|
|
|
const std::string& param, bool want_internal);
|
2004-01-19 20:44:47 +03:00
|
|
|
|
2005-07-04 04:13:44 +04:00
|
|
|
void do_path(bool want_all, opal_cmd_line_t *cmd_line);
|
2004-01-19 20:44:47 +03:00
|
|
|
void show_path(const std::string& type, const std::string& value);
|
|
|
|
|
2005-07-04 04:13:44 +04:00
|
|
|
void do_arch(opal_cmd_line_t *cmd_line);
|
2004-01-19 20:44:47 +03:00
|
|
|
void do_config(bool want_all);
|
|
|
|
|
|
|
|
//
|
|
|
|
// Output-related functions
|
|
|
|
//
|
|
|
|
void out(const std::string& pretty_message,
|
|
|
|
const std::string &plain_message,
|
|
|
|
int value);
|
|
|
|
void out(const std::string& pretty_message,
|
|
|
|
const std::string &plain_message,
|
|
|
|
const std::string& value);
|
|
|
|
|
|
|
|
//
|
2004-07-14 00:25:12 +04:00
|
|
|
// Component-related functions
|
2004-01-19 20:44:47 +03:00
|
|
|
//
|
|
|
|
|
2005-07-03 20:22:16 +04:00
|
|
|
typedef std::map<std::string, opal_list_t *> component_map_t;
|
2004-01-19 20:44:47 +03:00
|
|
|
|
2004-07-14 00:25:12 +04:00
|
|
|
extern component_map_t component_map;
|
2004-01-19 20:44:47 +03:00
|
|
|
|
2004-07-14 00:25:12 +04:00
|
|
|
void open_components();
|
|
|
|
void close_components();
|
2004-01-19 20:44:47 +03:00
|
|
|
|
|
|
|
}
|
|
|
|
|
2004-06-07 19:33:53 +04:00
|
|
|
#endif /* OMPI_INFO_H */
|