[SCM] ATLAS packaging for Debian branch, master, updated. upstream/3.8.4-26-gc81c720

Sébastien Villemot sebastien at debian.org
Fri Jun 7 13:47:28 UTC 2013


The following commit has been merged in the master branch:
commit bad2bc7bf708535d11f3282434ed194cae709fb7
Author: Sébastien Villemot <sebastien at debian.org>
Date:   Thu Jun 6 15:27:49 2013 +0200

    Refactor symlink handlink
    
    - move symlinks for lib{cblas,f77blas,atlas,lapack_atlas} out of the libblas.so.3 alternative, and rather ship them as traditional symlinks
    - add various missing *.a symlinks

diff --git a/debian/changelog b/debian/changelog
index f567c48..1efbb09 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -8,6 +8,12 @@ atlas (3.10.1-1) UNRELEASED; urgency=low
     release archs. This will make the package build much faster and should
     eliminate transient build failures due to excessive variance in the
     timings.
+  * Move symlinks for lib{cblas,f77blas,atlas,lapack_atlas} out of the
+    libblas.so.3 alternative and make them always present, so that
+    software relying on these libs do not break when another alternative
+    is selected for BLAS
+  * Add libblas.a as slave in the libblas.so alternative (Closes: #701921)
+  * Add symlinks for lib{f77blas,atlas}.a in /usr/lib (Closes: #666203)
   * corei1.diff: remove patch, applied upstream
   * Use my @debian.org email address
   * Remove obsolete DM-Upload-Allowed flag
diff --git a/debian/libatlas-base-dev.links b/debian/libatlas-base-dev.links
new file mode 100644
index 0000000..74d032e
--- /dev/null
+++ b/debian/libatlas-base-dev.links
@@ -0,0 +1,8 @@
+usr/lib/atlas-base/libcblas.so        usr/lib/libcblas.so
+usr/lib/atlas-base/libcblas.a         usr/lib/libcblas.a
+usr/lib/atlas-base/libf77blas.so      usr/lib/libf77blas.so
+usr/lib/atlas-base/libf77blas.a       usr/lib/libf77blas.a
+usr/lib/atlas-base/libatlas.so        usr/lib/libatlas.so
+usr/lib/atlas-base/libatlas.a         usr/lib/libatlas.a
+usr/lib/atlas-base/liblapack_atlas.so usr/lib/liblapack_atlas.so
+usr/lib/atlas-base/liblapack_atlas.a  usr/lib/liblapack_atlas.a
diff --git a/debian/libatlas-base-dev.postinst b/debian/libatlas-base-dev.postinst
index 1fc7057..184a5de 100644
--- a/debian/libatlas-base-dev.postinst
+++ b/debian/libatlas-base-dev.postinst
@@ -4,18 +4,8 @@ set -e
 
 update-alternatives --install /usr/lib/libblas.so libblas.so \
     /usr/lib/atlas-base/atlas/libblas.so 35                  \
-    --slave /usr/lib/libcblas.so libcblas.so                 \
-    /usr/lib/atlas-base/libcblas.so                          \
-    --slave /usr/lib/liblapack_atlas.so liblapack_atlas.so   \
-    /usr/lib/atlas-base/liblapack_atlas.so                   \
-    --slave /usr/lib/libatlas.so libatlas.so                 \
-    /usr/lib/atlas-base/libatlas.so                          \
-    --slave /usr/lib/libcblas.a libcblas.a                   \
-    /usr/lib/atlas-base/libcblas.a                           \
-    --slave /usr/lib/libf77blas.so libf77blas.so             \
-    /usr/lib/atlas-base/libf77blas.so                        \
-    --slave /usr/lib/liblapack_atlas.a liblapack_atlas.a     \
-    /usr/lib/atlas-base/liblapack_atlas.a
+    --slave /usr/lib/libblas.a libblas.a                     \
+    /usr/lib/atlas-base/atlas/libblas.a
 
 update-alternatives --install /usr/lib/liblapack.so liblapack.so \
     /usr/lib/atlas-base/atlas/liblapack.so 5                     \
diff --git a/debian/libatlas-base-dev.preinst b/debian/libatlas-base-dev.preinst
new file mode 100644
index 0000000..4a35f33
--- /dev/null
+++ b/debian/libatlas-base-dev.preinst
@@ -0,0 +1,17 @@
+#! /bin/sh
+
+set -e
+
+# In 3.10.1-1, some symlinks were moved out of the alternatives system
+# The following ensures that they are freed by the alternatives system before unpacking
+if [ $1 = "upgrade" -a `dpkg --compare-versions "$2" ge 3.8.4-4~exp1` -a `dpkg --compare-versions "$2" lt 3.10.1-1` ]
+then
+    update-alternatives --remove libblas.so	/usr/lib/atlas-base/atlas/libblas.so
+fi
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/libatlas3-base.links b/debian/libatlas3-base.links
new file mode 100644
index 0000000..7c8885e
--- /dev/null
+++ b/debian/libatlas3-base.links
@@ -0,0 +1,8 @@
+usr/lib/atlas-base/libcblas.so.3        usr/lib/libcblas.so.3
+usr/lib/atlas-base/libcblas.so.3        usr/lib/libcblas.so.3gf
+usr/lib/atlas-base/libf77blas.so.3      usr/lib/libf77blas.so.3
+usr/lib/atlas-base/libf77blas.so.3      usr/lib/libf77blas.so.3gf
+usr/lib/atlas-base/libatlas.so.3        usr/lib/libatlas.so.3
+usr/lib/atlas-base/libatlas.so.3        usr/lib/libatlas.so.3gf
+usr/lib/atlas-base/liblapack_atlas.so.3 usr/lib/liblapack_atlas.so.3
+usr/lib/atlas-base/liblapack_atlas.so.3 usr/lib/liblapack_atlas.so.3gf
diff --git a/debian/libatlas3-base.postinst b/debian/libatlas3-base.postinst
index 865517d..8370406 100644
--- a/debian/libatlas3-base.postinst
+++ b/debian/libatlas3-base.postinst
@@ -5,30 +5,25 @@ set -e
 
 update-alternatives --install /usr/lib/libblas.so.3 libblas.so.3     \
     /usr/lib/atlas-base/atlas/libblas.so.3 35                        \
-    --slave /usr/lib/libcblas.so.3 libcblas.so.3                     \
-    /usr/lib/atlas-base/libcblas.so.3                                \
-    --slave /usr/lib/libf77blas.so.3 libf77blas.so.3                 \
-    /usr/lib/atlas-base/libf77blas.so.3                              \
-    --slave /usr/lib/libatlas.so.3 libatlas.so.3                     \
-    /usr/lib/atlas-base/libatlas.so.3                                \
-    --slave /usr/lib/liblapack_atlas.so.3 liblapack_atlas.so.3       \
-    /usr/lib/atlas-base/liblapack_atlas.so.3                         \
     --slave /usr/lib/libblas.so.3gf libblas.so.3gf                   \
-    /usr/lib/atlas-base/atlas/libblas.so.3                           \
-    --slave /usr/lib/libcblas.so.3gf libcblas.so.3gf                 \
-    /usr/lib/atlas-base/libcblas.so.3                                \
-    --slave /usr/lib/libf77blas.so.3gf libf77blas.so.3gf             \
-    /usr/lib/atlas-base/libf77blas.so.3                              \
-    --slave /usr/lib/libatlas.so.3gf libatlas.so.3gf                 \
-    /usr/lib/atlas-base/libatlas.so.3                                \
-    --slave /usr/lib/liblapack_atlas.so.3gf liblapack_atlas.so.3gf   \
-    /usr/lib/atlas-base/liblapack_atlas.so.3
+    /usr/lib/atlas-base/atlas/libblas.so.3
 
 update-alternatives --install /usr/lib/liblapack.so.3 liblapack.so.3 \
         /usr/lib/atlas-base/atlas/liblapack.so.3 5                   \
     --slave /usr/lib/liblapack.so.3gf liblapack.so.3gf               \
     /usr/lib/atlas-base/atlas/liblapack.so.3
 
+# In 3.10.1-1, some symlinks were moved out of the alternatives system, and are
+# now shipped as normal symlinks.
+#
+# However, for an unknown reason, dpkg does not re-create the libatlas.so.3gf
+# symlink on upgrade. The following is a workaround for what seems to be a dpkg
+# bug.
+if [ $1 = "configure" -a -n "$2" -a `dpkg --compare-versions "$2" ge 3.8.4-4~exp1` -a `dpkg --compare-versions "$2" lt 3.10.1-1` ]
+then
+    ln -sf atlas-base/libatlas.so.3 /usr/lib/libatlas.so.3gf
+fi
+
 # dh_installdeb will replace this with shell code automatically
 # generated by other debhelper scripts.
 
diff --git a/debian/libatlas3-base.preinst b/debian/libatlas3-base.preinst
index 54cbf1a..3954d29 100644
--- a/debian/libatlas3-base.preinst
+++ b/debian/libatlas3-base.preinst
@@ -8,6 +8,12 @@ update-alternatives --remove libblas.so.3gf /usr/lib/atlas-base/atlas/libblas.so
 # For the transition liblapack3gf => liblapack3
 update-alternatives --remove liblapack.so.3gf /usr/lib/atlas-base/liblapack_atlas.so.3
 
+# In 3.10.1-1, some symlinks were moved out of the alternatives system
+# The following ensures that they are freed by the alternatives system before unpacking
+if [ $1 = "upgrade" -a `dpkg --compare-versions "$2" ge 3.8.4-4~exp1` -a `dpkg --compare-versions "$2" lt 3.10.1-1` ]
+then
+    update-alternatives --remove libblas.so.3 /usr/lib/atlas-base/atlas/libblas.so.3
+fi
 
 # dh_installdeb will replace this with shell code automatically
 # generated by other debhelper scripts.

-- 
ATLAS packaging for Debian



More information about the debian-science-commits mailing list