Repository 'package_atlas_3_10'
hg clone https://testtoolshed.g2.bx.psu.edu/repos/iuc/package_atlas_3_10

Changeset 5:d5b1c7875b7b (2015-01-23)
Previous changeset 4:196caf0a85e9 (2013-09-20) Next changeset 6:4778b172b895 (2015-05-23)
Commit message:
Uploaded
modified:
tool_dependencies.xml
b
diff -r 196caf0a85e9 -r d5b1c7875b7b tool_dependencies.xml
--- a/tool_dependencies.xml Fri Sep 20 16:23:34 2013 -0400
+++ b/tool_dependencies.xml Fri Jan 23 02:24:34 2015 -0500
b
@@ -1,46 +1,61 @@
 <tool_dependency>
-    <package name="atlas" version="3.10.1">
+    <package name="atlas" version="3.10.2">
         <install version="1.0">
-            <actions>
-                <!-- first action is always downloading -->
-                <!--<action type="download_by_url" target_filename="ATLAS.tar.bz2">http://downloads.sourceforge.net/project/math-atlas/Stable/3.10.1/atlas3.10.1.tar.bz2</action>-->
-                <action type="download_file">http://downloads.sourceforge.net/project/math-atlas/Stable/3.10.1/atlas3.10.1.tar.bz2</action>
-                <action type="shell_command">tar -jxvf atlas3.10.1.tar.bz2</action>
-                <action type="download_file">http://www.netlib.org/lapack/lapack-3.4.2.tgz</action>
-
-                <action type="shell_command">
-                # try to disable cpu throttling
-                if hash cpufreq-selector 2>/dev/null; then
-                    cpufreq-selector -g performance
-                elif hash cpupower 2>/dev/null; then
-                    cpupower frequency-set -g performance
-                else
-                    echo 'Please deactivate CPU throttling by your own, or install cpufreq-selector'
-                    exit
-                fi
-                </action>
-                <action type="shell_command">
-                    cd ATLAS &amp;&amp;
-                    pwd > $INSTALL_DIR/pwd.txt &amp;&amp;
-                    ls -l > $INSTALL_DIR/ls.txt &amp;&amp;
-                    ls -l CONFIG/src/ > $INSTALL_DIR/ls2.txt &amp;&amp;
-
-                    mkdir build &amp;&amp;
-                    cd build &amp;&amp;
-                    mkdir $INSTALL_DIR/atlas/ &amp;&amp;
-                    ../configure -Fa alg -fPIC --prefix=$INSTALL_DIR/atlas/ --with-netlib-lapack-tarfile=../../lapack-3.4.2.tgz &amp;&amp; 
-                    make &amp;&amp; make install
-                </action>
-
-                <action type="set_environment">
-                    <environment_variable name="ATLAS_LIB_DIR" action="set_to">$INSTALL_DIR/atlas/lib</environment_variable>
-                    <environment_variable name="ATLAS_INCLUDE_DIR" action="set_to">$INSTALL_DIR/atlas/include</environment_variable>
-                </action>
-            </actions>
+            <actions_group>
+                <actions architecture="x86_64" os="linux">
+                    <action type="download_by_url">https://depot.galaxyproject.org/package/linux/x86_64/atlas/atlas-3.10.2-Linux-x86_64.tar.gz</action>
+                    <action type="move_directory_files">
+                        <source_directory>.</source_directory>
+                        <destination_directory>$INSTALL_DIR</destination_directory>
+                    </action>
+                    <action type="set_environment">
+                        <environment_variable action="set_to" name="ATLAS_LIB_DIR">$INSTALL_DIR/lib</environment_variable>
+                        <environment_variable action="set_to" name="ATLAS_INCLUDE_DIR">$INSTALL_DIR/include</environment_variable>
+                        <environment_variable action="set_to" name="ATLAS_BLAS_LIB_DIR">$INSTALL_DIR/lib/atlas</environment_variable>
+                        <environment_variable action="set_to" name="ATLAS_LAPACK_LIB_DIR">$INSTALL_DIR/lib/atlas</environment_variable>
+                        <environment_variable action="set_to" name="ATLAS_ROOT_PATH">$INSTALL_DIR</environment_variable>
+                        <environment_variable action="prepend_to" name="LD_LIBRARY_PATH">$INSTALL_DIR/lib</environment_variable>
+                    </action>
+                </actions>
+                <actions architecture="x86_64" os="darwin">
+                    <!-- NOOP: On OS X we will use Apple's vecLib -->
+                </actions>
+                <actions>
+                    <action type="download_file">http://downloads.sourceforge.net/project/math-atlas/Stable/3.10.2/atlas3.10.2.tar.bz2</action>
+                    <action type="download_file">http://www.netlib.org/lapack/lapack-3.5.0.tgz</action>
+                    <action type="download_file">https://depot.galaxyproject.org/patch/atlas/static_full_blas_lapack.diff</action>
+                    <action type="download_file">https://depot.galaxyproject.org/patch/atlas/shared_libraries.diff</action>
+                    <action type="download_file">https://depot.galaxyproject.org/patch/atlas/cpu-throttling-check.diff</action>
+                    <action type="shell_command">tar -jxvf atlas3.10.2.tar.bz2</action>
+                    <!-- a 64-bit architecture is assumed for compilation -->
+                    <action type="shell_command">
+                        cd ATLAS &amp;&amp;
+                        mkdir ATLAS/build &amp;&amp;
+                        patch -p1 &lt;/host/static_full_blas_lapack.diff &amp;&amp;
+                        patch -p1 &lt;/host/shared_libraries.diff &amp;&amp;
+                        patch -p1 &lt;/host/cpu-throttling-check.diff &amp;&amp;
+                        cd build &amp;&amp;
+                        ../configure --prefix="$INSTALL_DIR" -D c -DWALL -b 64 -Fa alg '-fPIC' --with-netlib-lapack-tarfile=../../lapack-3.5.0.tgz -v 2 -t 0 -Si cputhrchk 0 &amp;&amp;
+                        make &amp;&amp;
+                        make install
+                    </action>
+                    <action type="set_environment">
+                        <environment_variable action="set_to" name="ATLAS_LIB_DIR">$INSTALL_DIR/lib</environment_variable>
+                        <environment_variable action="set_to" name="ATLAS_INCLUDE_DIR">$INSTALL_DIR/include</environment_variable>
+                        <environment_variable action="set_to" name="ATLAS_BLAS_LIB_DIR">$INSTALL_DIR/lib/atlas</environment_variable>
+                        <environment_variable action="set_to" name="ATLAS_LAPACK_LIB_DIR">$INSTALL_DIR/lib/atlas</environment_variable>
+                        <environment_variable action="set_to" name="ATLAS_ROOT_PATH">$INSTALL_DIR</environment_variable>
+                        <environment_variable action="prepend_to" name="LD_LIBRARY_PATH">$INSTALL_DIR/lib</environment_variable>
+                    </action>
+                </actions>
+            </actions_group>
         </install>
-        <readme>ATLAS_LIB_DIR and ATLAS_INCLUDE_DIR (including libatlas.a) will be exported for later use.
-        During ATLAS library compilation, ATLAS performs code efficiency checks. These checks can only provide optimal results, if "frequency scaling" is disabled on the CPU, and no other load-intense processes are running. 
-        Ideally, you should compile on an empty cluster node with CPU frequency scaling disabled (see "cpufreq-selector" or "cpufreq-set").
+        <readme>Compiling ATLAS requires a C and Fortran compiler (typically gcc and gfortran). The base ATLAS installation path can be is exported as ATLAS_ROOT_PATH, libraries as ATLAS_LIB_DIR, and headers as ATLAS_INCLUDE_DIR.
+        This ATLAS build includes patches from the Debian ATLAS packages which enable additional features:
+            1. Shared versions of the standard ATLAS libraries are built in addition to the static versions
+            2. Full BLAS and LAPACK libraries are built, which can be found in the ATLAS_BLAS_LIB_DIR and ATLAS_LAPACK_LIB_DIR directories
+        This package also includes a bundled libgfortran and export LD_LIBRARY_PATH=$ATLAS_LIB_DIR so that any dependent packages which link to ATLAS will be able to resolve all necessary libraries at runtime.
+        On Mac OS X, this package is a dummy package - BLAS and LAPACK libraries are already provided in Apple's vecLib.
         </readme>
     </package>
 </tool_dependency>