diff options
author | Bill Wendling <wendling@ncsa.uiuc.edu> | 2003-07-28 21:38:04 (GMT) |
---|---|---|
committer | Bill Wendling <wendling@ncsa.uiuc.edu> | 2003-07-28 21:38:04 (GMT) |
commit | 0603e2db00e773702906387620e5644c23360703 (patch) | |
tree | a3f999ab9a8ac0ae015fedb9eb45a709a99c4a85 /config/conclude.in | |
parent | 6e0e3da2837214179812cf613e78227d4cbb78b3 (diff) | |
download | hdf5-0603e2db00e773702906387620e5644c23360703.zip hdf5-0603e2db00e773702906387620e5644c23360703.tar.gz hdf5-0603e2db00e773702906387620e5644c23360703.tar.bz2 |
[svn-r7269] Purpose:
Update
Description:
Revamped the configuration system. The configurations for the Fortran
and C++ libraries are no longer separate from the "main"
configuration system. This involved removing the "configure*" and
"aclocal.m4" files from the fortran/ and c++/ subdirectories. Also
merging settings in the config/ subdirectories into the main config/
subdirectory.
Fortran header files had to be modified a little for Linux. It was
checking if it was a Linux machine by some #defines, however with the
-std=c99 switch, these defines weren't there. I added a check for
some other ones which should be there whether the -std=c99 switch is
used or not.
Platforms tested:
Verbena (Fortran & C++)
Sol (Fortran & C++)
Copper (Fortran & C++)
Modi4 (Parallel, Fortran, & C++)
Misc. update:
Diffstat (limited to 'config/conclude.in')
-rw-r--r-- | config/conclude.in | 102 |
1 files changed, 71 insertions, 31 deletions
diff --git a/config/conclude.in b/config/conclude.in index ad90169..8f14856 100644 --- a/config/conclude.in +++ b/config/conclude.in @@ -9,11 +9,17 @@ ## lib: $(LIB) $(LIB) __no_library__: $(LIB_OBJ) - @$(LT_LINK_LIB) -o $@ $(CFLAGS) $(LIB_OBJ) $(LDFLAGS) $(LIBS) - @for d in X $(SUBDIRS); do \ - if test $$d != X; then \ - (set -x; cd $$d && $(MAKE) lib) || exit 1; \ - fi; \ + @if test "X$(HDF_FORTRAN)" = "Xyes"; then \ + $(LT_LINK_FLIB) -o $@ $(FFLAGS) $(LIB_OBJ) $(LDFLAGS) $(LIBS); \ + elif test "X$(HDF_CXX)" = "Xyes"; then \ + $(LT_LINK_CXX_LIB) -o $@ $(CXXFLAGS) $(LIB_OBJ) $(LDFLAGS) $(LIBS); \ + else \ + $(LT_LINK_LIB) -o $@ $(CFLAGS) $(LIB_OBJ) $(LDFLAGS) $(LIBS); \ + fi + @for d in X $(SUBDIRS); do \ + if test $$d != X; then \ + (set -x; cd $$d && $(MAKE) lib) || exit 1; \ + fi; \ done progs: $(LIB) $(PROGS) @@ -108,31 +114,42 @@ check-vfd: ## Make installation directories directories if they don't exist. ## $(libdir): - $(top_srcdir)/bin/mkdirs $@ + -$(top_srcdir)/bin/mkdirs $@ $(includedir): - $(top_srcdir)/bin/mkdirs $@ + -$(top_srcdir)/bin/mkdirs $@ $(bindir): - $(top_srcdir)/bin/mkdirs $@ + -$(top_srcdir)/bin/mkdirs $@ $(DOCDIR): - $(top_srcdir)/bin/mkdirs $@ + -$(top_srcdir)/bin/mkdirs $@ $(EXAMPLEDIR): - $(top_srcdir)/bin/mkdirs $@ + -$(top_srcdir)/bin/mkdirs $@ ## Install the library, the public header files, and public programs. ## install: $(AUX_LIB) $(PUB_LIB) $(PUB_HDR) $(PUB_PROGS) $(libdir) $(includedir) $(bindir) @for f in X $(PUB_LIB); do \ - if test $$f != X; then \ - ($(LT_INSTALL_LIB) $$f $(libdir)/. || exit 1); \ - fi; \ + if test $$f != X; then \ + if test "X$(HDF_FORTRAN)" = "Xyes"; then \ + (cd .libs && rm -f $(PUB_LIB)i && ln -s ../$(PUB_LIB) $(PUB_LIB)i); \ + fi; \ + ($(LT_INSTALL_LIB) $$f $(libdir)/. || exit 1); \ + fi; \ done + @if test "X$(HDF_FORTRAN)" = "Xyes" -a -n "$(F9XMODEXT)" && test "X$(F9XMODEXT)" != "Xo"; then \ + if test -f "hdf5.$(F9XMODEXT)" || test -f "HDF5.$(F9XMODEXT)"; then \ + ((cp *.$(F9XMODEXT) $(libdir)/. && chmod 644 $(libdir)/*.$(F9XMODEXT)) || exit 1); \ + fi; \ + fi @if test -f libhdf5.settings; then \ (set -x; $(INSTALL_DATA) libhdf5.settings $(libdir)/. || exit 1); \ fi + @if test "X$(HDF_FORTRAN)" = "Xyes" -a -f libhdf5_fortran.settings; then \ + (set -x; $(INSTALL_DATA) libhdf5_fortran.settings $(libdir)/. || exit 1); \ + fi @for f in X $(PUB_HDR); do \ if test $$f != X; then \ if test -f $$f; then \ @@ -213,30 +230,38 @@ install-doc: $(PUB_DOCS) $(DOCDIR) ## uninstall: @for f in libhdf5.settings $(LIB); do \ - $(LT_UNINSTALL) $(libdir)/$$f; \ + $(LT_UNINSTALL) $(libdir)/$$f; \ done @if test -n "$(PUB_HDR)"; then \ - set -x; cd $(includedir) && $(RM) $(PUB_HDR); \ + set -x; cd $(includedir) && $(RM) $(PUB_HDR); \ fi - @for f in X $(PUB_PROGS); do \ - if test $$f != X; then \ - $(LT_UNINSTALL) $(bindir)/$$f; \ - fi; \ + @for f in dummy $(PUB_PROGS); do \ + if test $$f != dummy; then \ + $(LT_UNINSTALL) $(bindir)/$$f; \ + fi; \ done + @if test "X$(HDF_FORTRAN)" = "Xyes"; then \ + $(LT_UNINSTALL) $(libdir)/libhdf5_fortran.settings; \ + if test -n "$(F9XMODEXT)" -a "X$(F9XMODEXT)" != "Xo"; then \ + if test -f "$(libdir)/hdf5.$(F9XMODEXT)" -o -f "$(libdir)/HDF5.$(F9XMODEXT)"; then \ + set -x; $(RM) $(libdir)/*.$(F9XMODEXT); \ + fi; \ + fi; \ + fi ## Removes those things that `make install-doc' (would have) installed. ## uninstall-doc: @for d in X $(SUBDIRS); do \ - if test $$d != X; then \ - (set -x; cd $$d && $(MAKE) $@) || exit 1; \ - fi; \ + if test $$d != X; then \ + (set -x; cd $$d && $(MAKE) $@) || exit 1; \ + fi; \ done @if test -n "$(PUB_DOCS)"; then \ - set -x; cd $(DOCDIR) && $(RM) $(PUB_DOCS); \ + set -x; cd $(DOCDIR) && $(RM) $(PUB_DOCS); \ fi - @if test -n "$(PUB_SUBDOCS)"; then \ - set -x; cd $(DOCDIR) && $(RM) $(PUB_SUBDOCS); \ + @if test -n "$(PUB_SUBDOCS)"; then \ + set -x; cd $(DOCDIR) && $(RM) $(PUB_SUBDOCS); \ fi ## Removes temporary files without removing the final target files. That is, @@ -269,8 +294,11 @@ clean: mostlyclean fi; \ done @if test -n "$(LIB)" -o -n "$(TEST_PROGS)" -o -n "$(TEST_PROGS_PARA)" -o -n "$(PROGS)" -o -n "$(CLEAN)"; then \ - $(RM) $(LIB) $(TEST_PROGS) $(TEST_PROGS_PARA) $(PROGS) $(CLEAN); \ - fi; + $(RM) $(LIB) $(TEST_PROGS) $(TEST_PROGS_PARA) $(PROGS) $(CLEAN); \ + fi + @if test "X$(HDF_FORTRAN)" = "Xyes"; then \ + $(RM) -f *.M *.a *.mod; \ + fi -$(RM) -r .libs ## Like `clean' except it also removes files that were created by running @@ -280,10 +308,10 @@ clean: mostlyclean ## distclean: clean -$(RM) .depend TAGS *~ core *.core *.bak *.old *.new $(DISTCLEAN) - @for d in X $(SUBDIRS); do \ - if test $$d != X; then \ - (set -x; cd $$d; $(MAKE) $@) || exit 1; \ - fi; \ + @for d in X $(SUBDIRS); do \ + if test $$d != X; then \ + (set -x; cd $$d; $(MAKE) $@) || exit 1; \ + fi; \ done @if test -f $(srcdir)/Makefile.in; then \ (set -x; $(RM) Makefile); \ @@ -308,6 +336,18 @@ maintainer-clean: distclean .c.lo: @$(LT_COMPILE) $(CFLAGS) $(CPPFLAGS) -c $< +.f90.o: + $(F9X) $(FFLAGS) $(FSEARCH_DIRS) -c $< + +.f90.lo: + @$(LT_FCOMPILE) $(FFLAGS) $(FSEARCH_DIRS) -c $< + +.cpp.o: + $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $< + +.cpp.lo: + @$(LT_CXX_COMPILE) $(CXXFLAGS) $(CPPFLAGS) -c $< + ##----------------------------------------------------------------------------- ## The following section of this makefile contains dependencies between the ## source files and the header files. |