[root]/testprograms/Malloc
Author | Changes | Lines of Code | Lines per Change |
---|---|---|---|
Totals | 7 (100.0%) | 46 (100.0%) | 6.5 |
jas | 5 (71.4%) | 33 (71.7%) | 6.6 |
dav | 2 (28.6%) | 13 (28.3%) | 6.5 |
Allow for building 'sus' (et al) statically. Use the configure flag: --enable-static. For the most
part, you will not want a static build. However, in two cases you might:
1) To check for circular dependencies in the code. (Dynamic libs are forgiving in this regard.)
2) For machines that don't support shared libs (eg: AIX, some new micro-kernel Linux clusters, etc.)
Unfortunately when static linking, library order is important. There is no good way (that I know of)
to tell our build system to place the libs in a specific order, so I have hardcoded the libraries
that are necessary to static link each executable. (See CORE_STATIC_PSELIBS and CORE_STATIC_LIBS in
configVars.mk.)
Note, SUS previously build statically for AIX and Redstorm. A number of hard coded #defines for these
architectures have been replaced with more general code.
If a source code file needs to know that it is building statically (most won't, but some do), then it
will need to #include <sci_defs/compile_defs.h> and use the "STATIC_BUILD" #define'd var.
Some specific notes:
M testprograms/TestMatrix3/testmatrix3.cc
Since it is used in a library, it can't have a "main()" (as this causes two mains to show up when linking).
M configure.ac
- Go back to using 'autoconf' version 2.61 as the standard as it is available many places, and I can't
find 2.63 anywhere.
- Fixed a few uses of a $var that would cause shell script errors when not defined. (Placed it withing ""
so that it becomes an empty string (as opposed to a missing string).
13 lines of code changed in 2 files:
Add c includes.
1 lines of code changed in 2 files:
Added memory leak testing in the regression_tester script.
Broke out the MallocTrace library into a mpi and non-mpi version when
including it into the MPI_LIBRARY flag in configure.ac.
Changed various sub.mk to include the MPI_LIBRARY in the testprograms
directory.
2 lines of code changed in 1 file:
Add the MIT License to every *.cc, *.h,*.F, and sub.mk file.
30 lines of code changed in 2 files: