Autotools run abysmally slowly on Solaris.
There remaining some CPP macros not described in config/shore.def:
Configuring amounts to running ./configure from the root of the distribution directory tree, and, depending on the features you wish to use, editing config/shore.def.
./configure --help
SHORE-specific Features:
--enable-pthread-mutex default:yes Compile to use pthreads for mutexes for
certain critical sections.
--enable-lp64 default:yes Compile to use LP 64 data model
No other data model is supported yet.
But we hope some day to port back to LP32.
--enable-checkrc default:no Generate (expensive) code to verify return-code checking
If a w_rc_t is set but not checked with
method is_error(), upon destruction the
w_rc_t will print a message to the effect
"error not checked".
--enable-trace default:no Include tracing code
Run-time costly. Good for debugging
problems that are not timing-dependent.
Use with DEBUG_FLAGS and DEBUG_FILE
environment variables. See \ref SSMTRACE.
--enable-dbgsymbols default:no Turn on debugger symbols
Use this to override what a given
debugging level will normally do.
--enable-explicit default:no Compile with explicit templates
NOT TESTED.
\todo mainpage.h compile with or remove explicit templates
--enable-valgrind default:no Enable running valgrind run-time behavior
Includes some code for valgrind.
--enable-purify default:no Enable build of <prog>.pure
--enable-quantify default:no Enable build of <prog>.quant
--enable-purecov default:no Enable build of <prog>.purecov
SHORE-specific Optional Packages:
--with-page-size 1024, 2048, 4196, 8192(default), 16384, or 32768
--with-hugetlbfs Use the hugetlbfs for the buffer pool.
Depending on the target architecture, this might
be useful. If you use it, you will need to set
a path for your hugetlbfs in config/shore.def.
The default is :
#define HUGETLBFS_PATH "/mnt/huge/SSM-BUFPOOL"
--without-mmap Do not use mmap for the buffer pool. Trumps
hugetlbfs option.
--with-debug-level1 Include level 1 debug code, optimize.
This includes code in w_assert1 and
#if W_DEBUG_LEVEL > 0 /#endif pairs and
#if W_DEBUG_LEVEL >= 1 /#endif pairs and and
W_IFDEBUG1
--with-debug-level2 Include level 2 debug code, no optimize.
Equivalent to debug level 1 PLUS
code in w_assert2 and
#if W_DEBUG_LEVEL > 1 /#endif pairs and
#if W_DEBUG_LEVEL >= 2 /#endif pairs and
W_IFDEBUG2
--with-debug-level3 Include level 3 debug code, no optimize.
Equivalent to debug level 2 PLUS
includes code in w_assert3 and
#if W_DEBUG_LEVEL > 2 /#endif pairs and
#if W_DEBUG_LEVEL >= 3 /#endif pairs and
W_IFDEBUG3
Tcl is available from
make
Since it is not alway easy to tell what options were used for the most recent build in a directory, the compiler options used on the build are put in the file makeflags and the rest of the options are determined in config/shore-config.h, produced at configuration time.
configure --enable-dependency-tracking
make check
make check
make install
To change the prefixes, use one or more of these configure options:
configure --prefix=\<path\>
configure --libdir=\<path\>
configure --includedir=\<path\>
Functions | |
| static rc_t | ss_m::config_info (sm_config_info_t &info) |
| Get a copy of configuration-dependent information. | |
| static rc_t ss_m::config_info | ( | sm_config_info_t & | info | ) | [static, inherited] |
Get a copy of configuration-dependent information.
| [out] | info | A pre-allocated structure. |
1.4.7