diff options
Diffstat (limited to 'INSTALL_MAINT')
-rw-r--r-- | INSTALL_MAINT | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/INSTALL_MAINT b/INSTALL_MAINT index e889b00..2f42cf0 100644 --- a/INSTALL_MAINT +++ b/INSTALL_MAINT @@ -13,7 +13,7 @@ Information for HDF5 maintainers: all -- build locally. install -- install libs, headers, progs. - uninstall -- removed installed files. + uninstall -- remove installed files. mostlyclean -- remove temp files (eg, *.o but not *.a). clean -- mostlyclean plus libs and progs. distclean -- all non-distributed files. @@ -47,8 +47,8 @@ Information for HDF5 maintainers: fi Site configuration files are for personal preferences and should - not be distributed. - + not be distributed. Run bin/config.guess to see what we think your + CPU, VENDOR, and OS values are. * If you use GNU make along with gcc the Makefile will contain targets that automatically maintain a list of source interdependencies; you @@ -57,16 +57,16 @@ Information for HDF5 maintainers: to force an update. To force an update of all dependency information remove the - `.depend' file from each directory and type `make depend'. For + `.depend' file from each directory and type `make'. For instance: $ cd $HDF5_HOME $ find . -name .depend -exec rm {} \; - $ make depend + $ make * Object files stay in the directory and are added to the library as a final step instead of placing the file in the library immediately - and removing it from the directory. The reason is two-fold: + and removing it from the directory. The reason is three-fold: 1. Most versions of make don't allow `$(LIB)($(SRC:.c=.o))' which makes it necessary to have two lists of files, one @@ -75,3 +75,20 @@ Information for HDF5 maintainers: 2. Some versions of make/ar have problems with modification times of archive members. + + 3. Adding object files immediately causes problems on SMP + machines where make is doing more than one thing at a + time. + +* When using GNU make on an SMP you can cause it to compile more than + one thing at a time. At the top of the source tree invoke make as + + $ make -j -l6 + + which causes make to fork as many children as possible as long as + the load average doesn't go above 6. In subdirectories one can say + + $ make -j2 + + which limits the number of children to two (this doesn't work at the + top level because the `-j2' is not passed to recursive makes. |