]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Use versioned dynamic libraries to make installing on distributions like Fedora or...
authorbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Tue, 7 Oct 2008 20:56:22 +0000 (20:56 +0000)
committerbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Tue, 7 Oct 2008 20:56:22 +0000 (20:56 +0000)
git-svn-id: https://svn.dealii.org/trunk@17139 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/base/Makefile
deal.II/deal.II/Makefile
deal.II/doc/news/changes.h
deal.II/lac/Makefile
deal.II/lib/Makefile

index d7fd328394d609d8509fe93c6275bd1e7e199e9b..5270af9c8f7ec1e61ded2c32b61fc9db6175ed98 100644 (file)
@@ -78,11 +78,13 @@ $(LIBDIR)/libbase.g$(static-lib-suffix): $(go-files)
 
 $(LIBDIR)/libbase$(shared-lib-suffix): $(o-files)
        @echo "=====base=============optimized==$(MT)== Linking library:   $(@F)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $@ $(o-files) $(extra-o-files)  $(deplibs.o)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $(LIBDIR)/libbase$(shared-lib-suffix).$(DEAL_II_VERSION) -Wl,-soname,libbase$(shared-lib-suffix).$(DEAL_II_VERSION) $(o-files) $(extra-o-files)  $(deplibs.o)
+       @ln -s libbase$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
 $(LIBDIR)/libbase.g$(shared-lib-suffix): $(go-files)
        @echo "=====base=============debug======$(MT)== Linking library:   $(@F)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $@ $(go-files) $(extra-o-files)  $(deplibs.g)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $(LIBDIR)/libbase.g$(shared-lib-suffix).$(DEAL_II_VERSION) -Wl,-soname,libbase.g$(shared-lib-suffix).$(DEAL_II_VERSION) $(go-files) $(extra-o-files)  $(deplibs.g)
+       @ln -s libbase.g$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
 
 
index 2fd3683c68593923a81506db0e3d00a1a34c55bb..a5f5031adbd04caa840c2289ca72796463b7b0ee 100644 (file)
@@ -154,29 +154,35 @@ $(LIBDIR)/libdeal_II_3d$(static-lib-suffix): $(o-files-3d)
 
 $(LIBDIR)/libdeal_II_1d.g$(shared-lib-suffix): $(go-files-1d)
        @echo "=====deal.II====1d====debug======$(MT)== Linking library:   $(@F)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $@ $(go-files-1d) $(deplibs.g)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $(LIBDIR)/libdeal_II_1d.g$(shared-lib-suffix).$(DEAL_II_VERSION) -Wl,-soname,libdeal_II_1d.g$(shared-lib-suffix).$(DEAL_II_VERSION) $(go-files-1d) $(deplibs.g)
+       @ln -s libdeal_II_1d.g$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
 $(LIBDIR)/libdeal_II_1d$(shared-lib-suffix): $(o-files-1d)
        @echo "=====deal.II====1d====optimized==$(MT)== Linking library:   $(@F)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $@ $(o-files-1d) $(deplibs.o)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $(LIBDIR)/libdeal_II_1d$(shared-lib-suffix).$(DEAL_II_VERSION) -Wl,-soname,libdeal_II_1d$(shared-lib-suffix).$(DEAL_II_VERSION) $(o-files-1d) $(deplibs.o)
+       @ln -s libdeal_II_1d$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
 
 $(LIBDIR)/libdeal_II_2d.g$(shared-lib-suffix): $(go-files-2d)
        @echo "=====deal.II====2d====debug======$(MT)== Linking library:   $(@F)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $@ $(go-files-2d) $(deplibs.g)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $(LIBDIR)/libdeal_II_2d.g$(shared-lib-suffix).$(DEAL_II_VERSION) -Wl,-soname,libdeal_II_2d.g$(shared-lib-suffix).$(DEAL_II_VERSION) $(go-files-2d) $(deplibs.g)
+       @ln -s libdeal_II_2d.g$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
 $(LIBDIR)/libdeal_II_2d$(shared-lib-suffix): $(o-files-2d)
        @echo "=====deal.II====2d====optimized==$(MT)== Linking library:   $(@F)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $@ $(o-files-2d) $(deplibs.o)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $(LIBDIR)/libdeal_II_2d$(shared-lib-suffix).$(DEAL_II_VERSION) -Wl,-soname,libdeal_II_2d$(shared-lib-suffix).$(DEAL_II_VERSION) $(o-files-2d) $(deplibs.o)
+       @ln -s libdeal_II_2d$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
 
 $(LIBDIR)/libdeal_II_3d.g$(shared-lib-suffix): $(go-files-3d)
        @echo "=====deal.II====3d====debug======$(MT)== Linking library:   $(@F)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $@ $(go-files-3d) $(deplibs.g)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $(LIBDIR)/libdeal_II_3d.g$(shared-lib-suffix).$(DEAL_II_VERSION) -Wl,-soname,libdeal_II_3d.g$(shared-lib-suffix).$(DEAL_II_VERSION) $(go-files-3d) $(deplibs.g)
+       @ln -s libdeal_II_3d.g$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
 $(LIBDIR)/libdeal_II_3d$(shared-lib-suffix): $(o-files-3d)
        @echo "=====deal.II====3d====optimized==$(MT)== Linking library:   $(@F)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $@ $(o-files-3d) $(deplibs.o)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $(LIBDIR)/libdeal_II_3d$(shared-lib-suffix).$(DEAL_II_VERSION) -Wl,-soname,libdeal_II_3d$(shared-lib-suffix).$(DEAL_II_VERSION) $(o-files-3d) $(deplibs.o)
+       @ln -s libdeal_II_3d$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
 
 
index cacad082d0286b8d0128cc32b0c0e54ee65a76a9..9d551a347c4c5ac326eb4f853f9ad6281f8b2b8c 100644 (file)
@@ -114,6 +114,16 @@ inconvenience this causes.
 <ol>
   <li>
   <p>
+  New: The shared libraries we create are now versioned, i.e. they have
+  the form <code>libdeal_II_2d.g.so.6.2.0</code>. The library without
+  the version number is simply a link to the versioned library name.
+  <br>
+  (WB 2008/10/07)
+  </p>
+  </li>
+
+    <li>
+  <p>
   Updated: The version of the <a href="http://www.boost.org/">BOOST</a>
   library that is in the <code>contrib/</code> directory and is used in
   various places of the library has been upgraded to 1.36.
index 3af90d7dc764094cbf95addd5b2b9bcae03a640c..f4d460579bc015d30cc3112bf9587d91ab9944b0 100644 (file)
@@ -105,11 +105,13 @@ $(LIBDIR)/liblac.g$(static-lib-suffix): $(go-files)
 
 $(LIBDIR)/liblac$(shared-lib-suffix): $(o-files)
        @echo "=====lac==============optimized==$(MT)== Linking library:   $(@F)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $@ $(o-files) $(deplibs.o)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $(LIBDIR)/liblac$(shared-lib-suffix).$(DEAL_II_VERSION) $(o-files) -Wl,-soname,liblac$(shared-lib-suffix).$(DEAL_II_VERSION) $(deplibs.o)
+       @ln -s liblac$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
 $(LIBDIR)/liblac.g$(shared-lib-suffix): $(go-files)
        @echo "=====lac==============debug======$(MT)== Linking library:   $(@F)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $@ $(go-files) $(deplibs.g)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o $(LIBDIR)/liblac.g$(shared-lib-suffix).$(DEAL_II_VERSION) -Wl,-soname,liblac.g$(shared-lib-suffix).$(DEAL_II_VERSION) $(go-files) $(deplibs.g)
+       @ln -s liblac.g$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
 
 clean:
index f031dc066c56bdd13f3f292502a9172b93f909ca..ec141ee3b3c07ab1cfadcbe5c604cc40ba6297e2 100644 (file)
@@ -61,13 +61,15 @@ ifeq ($(enable-shared),yes)
 
   libpetscall.g$(shared-lib-suffix): $(xlib.g)
        @echo "======================debug============= Linking library:   libpetscall.g$(shared-lib-suffix)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o libpetscall.g$(shared-lib-suffix) \
-               $(xlib.g)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o libpetscall.g$(shared-lib-suffix).$(DEAL_II_VERSION) \
+               -Wl,-soname,libpetscall.g$(shared-lib-suffix).$(DEAL_II_VERSION) $(xlib.g)
+       @ln -s libpetscall.g$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
   libpetscall$(shared-lib-suffix): $(xlib.o)
        @echo "======================optimized========= Linking library:   libpetscall$(shared-lib-suffix)"
-       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o libpetscall$(shared-lib-suffix) \
-               $(xlib.o)
+       @$(SHLIBLD) $(LDFLAGS) $(SHLIBFLAGS) -o libpetscall$(shared-lib-suffix).$(DEAL_II_VERSION) \
+               -Wl,-soname,libpetscall$(shared-lib-suffix).$(DEAL_II_VERSION) $(xlib.o)
+       @ln -s libpetscall$(shared-lib-suffix).$(DEAL_II_VERSION) $@
 
 else
 

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.