From: rschulz Date: Sat, 2 Jul 2005 09:16:57 +0000 (+0000) Subject: changed makefiles to enable compiling with lapack and umfpack on cygwin systems. X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b464bd092b2d3765fe894845f2a509a6bb8401bb;p=dealii-svn.git changed makefiles to enable compiling with lapack and umfpack on cygwin systems. git-svn-id: https://svn.dealii.org/trunk@11053 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/contrib/umfpack/Makefile b/deal.II/contrib/umfpack/Makefile index 2f3d6cdd90..b8661a0dfc 100644 --- a/deal.II/contrib/umfpack/Makefile +++ b/deal.II/contrib/umfpack/Makefile @@ -1,5 +1,13 @@ include ../../common/Make.global_options +deplibs = + +# for cygwin, llapack and other libraries are necessary to link with +ifeq ($(findstring cygwin,$(TARGET)),cygwin) + deplibs = $(LIBS) +endif + + # rules lib: $(LIBDIR)/liblac_umfpack$(lib-suffix) @@ -20,7 +28,7 @@ UMFPACK: $(LIBDIR)/liblac_umfpack$(shared-lib-suffix): AMD UMFPACK @echo "=====umfpack==========optimized==$(MT)== Linking library: $(@F)" - @$(SHLIBLD) $(LDFLAGS) -shared -o $@ $D/lib/contrib/umfpack/*.o + @$(SHLIBLD) $(LDFLAGS) -shared -o $@ $D/lib/contrib/umfpack/*.o $(deplibs) $(LIBDIR)/liblac_umfpack$(static-lib-suffix): AMD UMFPACK diff --git a/deal.II/doc/news/changes.html b/deal.II/doc/news/changes.html index 2b053a1aa2..a871441e4b 100644 --- a/deal.II/doc/news/changes.html +++ b/deal.II/doc/news/changes.html @@ -128,6 +128,13 @@ inconvenience this causes.

General

    +
  1. + Changed: Under Cygwin, linking against LAPACK and UMFPACK did + not work. This is now fixed in the Makefiles. Changes only + affect Cygwin. +
    + (Ralf B. Schulz, 2005/07/02) +

  2. New: The latest version of UMFPACK, version 4.4, has been imported.
    diff --git a/deal.II/lac/Makefile b/deal.II/lac/Makefile index 9bfb4e8030..3a4ddbedbf 100644 --- a/deal.II/lac/Makefile +++ b/deal.II/lac/Makefile @@ -37,27 +37,39 @@ lib: $(LIBDIR)/liblac.g$(lib-suffix) $(LIBDIR)/liblac$(lib-suffix) libg: $(LIBDIR)/liblac.g$(lib-suffix) libo: $(LIBDIR)/liblac$(lib-suffix) -# if we use HSL, then we need to link against libhsl.so. if we don't, then -# don't set this variable -ifeq ($(USE_CONTRIB_HSL),yes) - LIBHSL=$(lib-contrib-hsl) -else - LIBHSL= -endif - # in general, when linking shared libraries, we will want to link with # the underlying libs as well. AIX even requires this. on the other # hand, on DEC OSF with CXX this will fail with duplicate symbols, so # make sure that it doesn't happen on that system and that compiler ifneq ($(GXX-VERSION),compaq_cxx) - deplibs.g = $(lib-base.g) $(LIBHSL) - deplibs.o = $(lib-base.o) $(LIBHSL) + deplibs.g = $(lib-base.g) + deplibs.o = $(lib-base.o) + + # if we use HSL, then we need to link against libhsl.so. + ifeq ($(USE_CONTRIB_HSL),yes) + deplibs.g += $(lib-contrib-hsl) + deplibs.o += $(lib-contrib-hsl) + endif + # same with PETSC ifeq ($(USE_CONTRIB_PETSC),yes) deplibs.g += $(lib-contrib-petsc.g) deplibs.o += $(lib-contrib-petsc.o) endif + # and UMFPACK + ifeq ($(USE_CONTRIB_UMFPACK),yes) + deplibs.g += $(LIBDIR)/liblac_umfpack$(lib-suffix) + deplibs.o += $(LIBDIR)/liblac_umfpack$(lib-suffix) + endif + + # for cygwin, also llapack and such are necessary + # we better link all libraries mentioned in $(libs) + ifeq ($(findstring cygwin,$(TARGET)),cygwin) + deplibs.g += $(LIBS) + deplibs.o += $(LIBS) + endif + else deplibs.g = deplibs.o =