[93299] trunk/dports/math/atlas

vince at macports.org vince at macports.org
Sat May 19 03:37:15 PDT 2012


Revision: 93299
          https://trac.macports.org/changeset/93299
Author:   vince at macports.org
Date:     2012-05-19 03:37:11 -0700 (Sat, 19 May 2012)
Log Message:
-----------
Bump to revision .74. Add gcc47, clang and macports-clang as possible compilers.
Also removes all manual dylib generation since this is done by Atlas now.

Modified Paths:
--------------
    trunk/dports/math/atlas/Portfile

Added Paths:
-----------
    trunk/dports/math/atlas/files/patch-atlcomp_txt.diff
    trunk/dports/math/atlas/files/patch-atlconf_misc_c.diff
    trunk/dports/math/atlas/files/patch-probe_comp_c.diff

Removed Paths:
-------------
    trunk/dports/math/atlas/files/ar2
    trunk/dports/math/atlas/files/patch-ATL_AVgcc-fix.diff
    trunk/dports/math/atlas/files/patch-ATL_dmvnk_c.diff
    trunk/dports/math/atlas/files/patch-ATL_go_parallel_c.diff
    trunk/dports/math/atlas/files/patch-ATL_goparallel_prank_c.diff
    trunk/dports/math/atlas/files/patch-Make_ttune-i386.diff
    trunk/dports/math/atlas/files/patch-Make_ttune.diff
    trunk/dports/math/atlas/files/patch-Makefile_pthreads_misc.diff
    trunk/dports/math/atlas/files/patch-SpewMakeInc_c.diff
    trunk/dports/math/atlas/files/patch-archinfo_freebsd.c.diff
    trunk/dports/math/atlas/files/patch-archinfo_freebsd_c.diff
    trunk/dports/math/atlas/files/patch-atlas_l2g_base.diff
    trunk/dports/math/atlas/files/patch-clang.diff
    trunk/dports/math/atlas/files/patch-emit_mm_c.diff
    trunk/dports/math/atlas/files/patch-mmparse_h.diff
    trunk/dports/math/atlas/files/patch-mvparse_h.diff
    trunk/dports/math/atlas/files/patch-mvtesttime_h.diff
    trunk/dports/math/atlas/files/patch-threads-i386.diff

Modified: trunk/dports/math/atlas/Portfile
===================================================================
--- trunk/dports/math/atlas/Portfile	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/Portfile	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,414 +1,449 @@
 # $Id$
 
-PortSystem			1.0
-PortGroup			muniversal 1.0
+PortSystem                      1.0
+PortGroup                       muniversal 1.0
 
-categories			math
-license				BSD
-name				atlas
-version				3.9.47
+categories                      math
+license                         BSD
+name                            atlas
+version                         3.9.74
 
+set ports_ignore_older          yes
+
 # additional versions
-set lapackversion	3.3.1
-set lapackname		lapack
-set atlasdist		${name}${version}.tar.bz2
-set lapackdist		${lapackname}-${lapackversion}.tgz
+set lapackversion               3.4.0
+set lapackname                  lapack
+set atlasdist                   ${name}${version}.tar.bz2
+set lapackdist                  ${lapackname}-${lapackversion}.tgz
 
-maintainers			jameskyle
-platforms			darwin
+maintainers                     jameskyle
+platforms                       darwin
 
-description			Portable optimal linear algebra software
-long_description	The current version provides a complete BLAS and LAPACK API.\
-					For many operations, ATLAS achieves performance on par with\
-					machine-specific tuned libraries.
+description                     Portable optimal linear algebra software
+long_description                Provides a complete BLAS and LAPACK API.\
+                                ATLAS achieves performance on par\
+                                with machine-specific tuned libraries.
 
-homepage			http://math-atlas.sourceforge.net/
+homepage                        http://math-atlas.sourceforge.net/
 
-master_sites		sourceforge:math-atlas:atlas \
-					http://www.netlib.org/lapack:lapack
+master_sites                    sourceforge:math-atlas:atlas \
+                                http://www.netlib.org/lapack:lapack
 
-distfiles			${atlasdist}:atlas \
-					${lapackdist}:lapack
+distfiles                       ${atlasdist}:atlas \
+                                ${lapackdist}:lapack
 
-patchfiles			patch-SpewMakeInc_c.diff \
-					patch-archinfo_freebsd_c.diff \
-					patch-ATL_goparallel_prank_c.diff \
-					patch-ATL_go_parallel_c.diff \
-					patch-atlas_l2g_base.diff \
-					patch-mmparse_h.diff \
-					patch-mvparse_h.diff \
-					patch-mvtesttime_h.diff \
-					patch-emit_mm_c.diff
+patchfiles                      patch-atlcomp_txt.diff \
+                                patch-probe_comp_c.diff \
+                                patch-atlconf_misc_c.diff
 
 
 
-checksums			atlas${version}.tar.bz2 \
-					sha1    a3a4797669decea28308bd7d3e0adcac44267471 \
-					rmd160  036dbe08784bbda33ce1fa94b20a1999b22772cd \
-					lapack-${lapackversion}.tgz \
-					md5	 	d0d533ec9a5b74933c2a1e84eedc58b4 \
-					sha1	3ce437e05f0e9a3c8148ec41922f6efeef0ebdac \
-					rmd160	5e9d90122110045e07351f3ab30dc4e2b43d52db
+checksums                       atlas3.9.74.tar.bz2 \
+    rmd160  6f1fbc259b55f87cde8d616f62df21a77c621126 \
+    sha256  2b3e9c7c6d9d8ee0119898f97a86ffa6c7841d0c00b4e3129b5536ac06b570cb \
+                                lapack-3.4.0.tgz \
+    rmd160  42599fbc1e9f943454d243097b043daa51668d4e \
+    sha256  a7139ef97004d0e3c4c30f1c52d508fd7ae84b5fbaf0dd8e792c167dc306c3e9
 
 
-use_parallel_build	no
-build.target		build
-build.dir			${workpath}/${name}-${version}/build
+variant gcc47                   conflicts gcc45 gcc46 clang mpclang\
+                                description {build using macports-gcc-4.7} {
 
-variant gcc46 conflicts gcc42 gcc43 gcc44 gcc45 description {build using macports-gcc-4.6} {}
-variant gcc45 conflicts gcc42 gcc43 gcc44 gcc46 description {build using macports-gcc-4.5} {}
-variant gcc44 conflicts gcc42 gcc43 gcc45 gcc46 description {build using macports-gcc-4.4} {}
-variant gcc43 conflicts gcc42 gcc44 gcc45 gcc46 conflicts universal description {build using macports-gcc-4.3} {}
-variant gcc42 conflicts gcc43 gcc44 gcc45 gcc46 conflicts universal description {build using macports-gcc-4.2} {
-	ui_warn 'Use of gcc42 is deprecated. Please upgrade if possible'}
+}
 
-if { ${os.major} < 11 || ![variant_isset dragonegg45] } {
-	if { [variant_isset gcc42] } {
-		set gccversion	4.2
-	} elseif { [variant_isset gcc43] } {
-		set gccversion	4.3
-	} elseif { [variant_isset gcc44] } {
-		set gccversion	4.4
-	} elseif { [variant_isset gcc45 ] } {
-		set gccversion	4.5
-	} elseif { [variant_isset gcc46] } {
-		set gccversion	4.6
-	} else {
-	default_variants	+gcc45
-	set gccversion		4.5
-	}
+variant gcc46                   conflicts gcc45 gcc47 clang mpclang\
+                                description {build using macports-gcc-4.6} {
+    
+}
+
+variant gcc45                   conflicts gcc46 gcc47 clang mpclang\
+                                description {build using macports-gcc-4.5} { 
+                                
+}
+
+variant clang                   conflicts gcc45 gcc46 gcc47 mpclang\
+                                description {build using clang and gfortran} {
+                                
+}
+    
+variant mpclang                 conflicts gcc45 gcc46 gcc47 clang\
+                                description {build using MPclang and gfortran} { 
+    
+    depends_build-append        port:clang
+}
+    
+variant dragonegg               conflicts gcc45 gcc46 gcc47\
+                                description {use dragonegg with gcc46} {
+
+}
+
+variant nofortran               description {Forgo use of fortran compiler} {
+
+}
+
+# Select proper gcc version (or clang)
+
+if {${os.major} < 11} {
+
+    # On SL or earlier, clang did not exist
+    if {[variant_isset clang] || [variant_isset dragonegg46]} {
+    
+        return -code error "Use of Clang is disabled on this version of MacOS."
+    }
+    
+    if {[variant_isset gcc45]} {
+    
+        set                     gccversion  4.5
+    } elseif {[variant_isset gcc46]} {
+    
+        set                     gccversion  4.6
+    } elseif {[variant_isset gcc47]} {
+    
+        set                     gccversion  4.7
+    } elseif {[variant_isset mpclang]} {
+    
+        configure.compiler      macports-clang
+    } else {
+    
+        # Defaults to gcc46
+        set                     gccversion  4.6
+    }
 } else {
-	# On Lion, we can also select clang and llvm-gcc42 since these compilers
-	# give performance at least as good as gcc.
-	# Fortran compiler remains gcc (dragonegg to come?)
-	if { [variant_isset gcc42] } {
-		set gccversion	4.2
-	} elseif { [variant_isset gcc43] } {
-		set gccversion	4.3
-	} elseif { [variant_isset gcc44] } {
-		set gccversion	4.4
-	} elseif { [variant_isset gcc45 ] } {
-		set gccversion	4.5
-	} elseif { [variant_isset gcc46] } {
-	    pre-fetch {
-		    return -code error "GCC/GFortran 4.6 is not yet available on Lion"
-		}
-	} elseif { [variant_isset dragonegg45] } {
-		configure.compiler	clang
-		configure.f77		${prefix}/bin/gfortran-mp-4.5
-		patchfiles-append	patch-clang.diff
-	} else {
-		default_variants	+gcc45
-		set gccversion		4.5
-	}
+    # Lion or newer
+    if {[variant_isset gcc45]} {
+    
+        set                     gccversion  4.5
+    } elseif {[variant_isset gcc46]} {
+    
+        set                     gccversion  4.6
+    } elseif {[variant_isset gcc47]} {
+    
+        set                     gccversion  4.7
+    } elseif {[variant_isset dragonegg]} {
+    
+        set                     gccversion  4.6
+    } elseif {[variant_isset mpclang]} {
+    
+        configure.compiler      macports-clang
+    } else {
+        
+        # Defaults to clang
+        configure.compiler      clang
+        default_variants        +clang
+    }
 }
 
-destroot.dir			${build.dir}
-destroot.destdir		DESTDIR=${destroot}${prefix}
-depends_lib				port:bzip2 \
-						port:gzip
+depends_build                   port:bzip2 \
+                                port:gzip
 
-if { [info exists gccversion] } {
-	set gccnumber		[join [split ${gccversion} .] ""]
-	configure.compiler	macports-gcc-${gccversion}
-	depends_lib-append	port:gcc${gccnumber}
+if {[info exists gccversion]} {
+
+    set gccnumber               [join [split ${gccversion} .] ""]
+    configure.compiler          macports-gcc-${gccversion}
+    
+    depends_build-append        port:gcc${gccnumber}
 }
 
+# Clang is not officially supported, so we must add a line to the
+# atlcomp.txt file specifying the flags used for compilation
+
+if {[info exists depends_skip_archcheck] && [info exists gccversion]} {
+
+    depends_skip_archcheck      gcc${gccnumber}
+}
+
 # No cross-compilation possible
-if { ${os.arch} == "i386" } {
-	set universal_archs_supported { i386 x86_64 }
+if {${os.arch} == "i386"} {
+
+    set universal_archs_supported {i386 x86_64}
 } else {
-	set universal_archs_supported { ppc  ppc64 }
+
+    set universal_archs_supported {ppc  ppc64}
 }
 
 if {${build_arch} == "x86_64" || ${build_arch} == "ppc64" } {
-	set my_arch 64
+
+    set my_arch 64
 } else {
-	set my_arch 32
+
+    set my_arch 32
 }
 
-configure.args		-C xc ${configure.cc} \
-					-C gc ${configure.cc} \
-					-C if ${configure.f77} \
-					-C ic ${configure.cc} \
-					-C dm ${configure.cc} \
-					-C sm ${configure.cc} \
-					-C dk ${configure.cc} \
-					-C sk ${configure.cc} \
-					--cc=${configure.cc} \
-					--with-netlib-lapack-tarfile=${distpath}/${lapackdist} \
-					-O 12 \
-					-b ${my_arch} \
-					-Fa alg -fPIC
-
+configure.args \
+    -C ac ${configure.cc} \
+    --with-netlib-lapack-tarfile=${distpath}/${lapackdist} \
+    -O 12 \
+    -v 5 \
+    -b ${my_arch} \
+    -Fa alg -fPIC \
+    --dylibs
+    
 # Dragonegg
-if { [variant_isset dragonegg45] } {
-	configure.args-append -Fa if -fplugin=${prefix}/lib/dragonegg45.so
+if {[variant_isset dragonegg]} {
+    configure.args-delete -Fa alg -fPIC
+    configure.args-append -Fa alg '-fPIC -fplugin=${prefix}/lib/dragonegg46.so'
 }
 
+# Add the appropriate configure flag to specify if we do
+# or don’t have a fortran compiler
+
+if {[variant_isset nofortran]} {
+
+    configure.args-append       --nof77
+}
+
 # At this point, no threading for ppc/ppc64
 
 if {${build_arch} == "ppc" || ${build_arch} == "ppc64"} {
-	configure.args-append	-t 0
+
+    configure.args-append       -t 0
 }
 
-# MacPorts defaults to ppc on G4 and G5, so we must override 64-bit detection
-# by Atlas, even if we are on a G5
+# MacPorts defaults to ppc on G4 and G5, so we must override 64-bit
+# detection by Atlas, even if we are on a G5
 
 if {${build_arch} == "ppc" && ! [variant_isset universal]} {
-	configure.args-delete	--cc=${configure.cc} \
-							-Fa alg -fPIC
 
-	configure.args-append	--cc='${configure.cc} -m32' \
-							-A 4 \
-							-Fa alg '-fPIC -m32 -force_cpusubtype_ALL'
-	
-	# On Leopard, we may warn the user that ppc is not as efficient as ppc64
-	if {${os.major} == 9} {
-	    pre-configure {
+    configure.args-delete       --cc=${configure.cc} \
+                                -Fa alg -fPIC
+
+    configure.args-append       --cc='${configure.cc} -m32' \
+                                -A 4 \
+                                -Fa alg '-fPIC -m32 -force_cpusubtype_ALL'
+    
+    # On Leopard, we may warn the user that ppc is not as efficient as ppc64
+    if {${os.major} == 9} {
+
+        pre-configure {
+        
             if {![catch {sysctl hw.cpu64bit_capable} result] && $result == 1} {
-                ui_msg "--- Compiling for G4 arch (ppc) on a G5 (ppc64) machine."
-                ui_msg "--- This will lead to inferior performance."
+
+                ui_msg "Compiling for G4 arch (ppc) on a G5 (ppc64) machine."
+                ui_msg "This could lead to inferior performance."
             }
-		}
-	}
-		
+        }
+    }
 }
 
-platform darwin {
-    if { (${os.major} >= 11 && ![catch {sysctl hw.optional.avx1_0} result] && $result == 1) || \
-         (${os.major} > 8 && ![catch {sysctl hw.cpufamily} result] && $result == 1418770316) } {
-        # Corei2 is not supported yet because gcc4.5 does not
-        # support AVX instructions and gcc4.6 does not compile yet.
-        # Set CPU to Corei1 instead
-        configure.args-append -A 18
+if {(${os.major} >= 11 && [sysctl hw.optional.avx1_0] == 1) || \
+    (${os.major} > 8 && [sysctl hw.cpufamily] == 1418770316)} {
+    
+    # Core i2 processors (AVX)
+    # AVX instruction can’t be used with GCC because Apple bundled as (1)
+    # does not support it. Use clang instead.
+    
+    if {![variant_isset clang] && ![variant_isset mpclang]} {
+    
+        # Force Core i1 arch
+        ui_warn "GCC compilers on OS X do not support AVX instructions."
+        configure.args-append   -A 25
+    } else {
+    
+        configure.args-append   -Fa acg -fPIC
     }
 }
 
-if { [variant_isset universal] } {
-	configure.universal_args-delete			--disable-dependency-tracking
-	configure.args-delete					--cc=${configure.cc} \
-											-b ${my_arch} \
-											-Fa alg -fPIC
-					
-	lappend merger_configure_args(ppc)		--cc='${configure.cc} -m32' \
-											-b 32 \
-											-A 4 \
-											-t 0 \
-											-s gas_ppc \
-											-Fa alg '-fPIC -m32 \
-											-force_cpusubtype_ALL'
-	lappend merger_configure_args(ppc64)	--cc='${configure.cc} -m64' \
-											-b 64 \
-											-A 5 \
-											-t 0 \
-											-s gas_ppc \
-											-Fa alg '-fPIC -m64 \
-											-force_cpusubtype_ALL'
-	lappend merger_configure_args(i386) 	--cc='${configure.cc} -m32' \
-											-b 32 \
-											-A 15 \
-											-s gas_x86_32 \
-											-Fa alg '-fPIC -m32'
-	lappend merger_configure_args(x86_64) 	--cc='${configure.cc} -m64' \
-											-b 64 \
-											-s gas_x86_64 \
-											-Fa alg '-fPIC -m64'
+if {[variant_isset universal]} {
+
+    configure.universal_args-delete         --disable-dependency-tracking
+    configure.args-delete                   --cc=${configure.cc} \
+                                            -b ${my_arch} \
+                                            -Fa alg -fPIC
+                    
+    lappend merger_configure_args(ppc)      --cc='${configure.cc} -m32'\
+                                            -b 32 \
+                                            -A 4 \
+                                            -t 0 \
+                                            -s gas_ppc \
+                                            -Fa alg '-fPIC -m32 \
+                                            -force_cpusubtype_ALL'
+                                            
+    lappend merger_configure_args(ppc64)    --cc='${configure.cc} -m64'\
+                                            -b 64 \
+                                            -A 5 \
+                                            -t 0 \
+                                            -s gas_ppc \
+                                            -Fa alg '-fPIC -m64 \
+                                            -force_cpusubtype_ALL'
+                                            
+    lappend merger_configure_args(i386)     --cc='${configure.cc} -m32'\
+                                            -b 32 \
+                                            -A 22 \
+                                            -s gas_x86_32 \
+                                            -Fa alg '-fPIC -m32'
+                                            
+    lappend merger_configure_args(x86_64)   --cc='${configure.cc} -m64'\
+                                            -b 64 \
+                                            -s gas_x86_64 \
+                                            -Fa alg '-fPIC -m64'
 } else {
-	lappend merger_configure_args(ppc)
-	lappend merger_configure_args(ppc64)
-	lappend merger_configure_args(i386)
-	lappend merger_configure_args(x86_64)
+
+    lappend merger_configure_args(ppc)
+    lappend merger_configure_args(ppc64)
+    lappend merger_configure_args(i386)
+    lappend merger_configure_args(x86_64)
 }
 
-build.env-append	"CC=${configure.cc} CXX=${configure.cxx}"
 
-# we are configuring from the build directory
-configure.dir			${workpath}/${name}-${version}/build
-configure.cmd			../configure
-
-
-# change the default compilers to those of gcc and make into shared library
 extract {
-	# extract atlas and move to a consistent working directory name
-	system	"cd ${workpath} && bunzip2 -dc ${distpath}/${atlasdist} | \
-			 gnutar --no-same-owner -xf -"
-	system	"mv ${workpath}/ATLAS ${workpath}/${name}-${version}"
+    # extract atlas and move to a consistent working directory name
+    system -W ${workpath} "bunzip2 -dc ${distpath}/${atlasdist} | \
+             gnutar --no-same-owner -xf -"
+    system    "mv ${workpath}/ATLAS ${workpath}/${name}-${version}"
 }
 
 post-patch {
-	reinplace	"s|__MACPORTS_GCC__|${configure.cc}|g" \
-				 ${workpath}/${name}-${version}/CONFIG/src/SpewMakeInc.c
-	
-	reinplace	"s|XXXXX|${configure.cc}|g" \
-				${workpath}/${name}-${version}/include/atlas_mvtesttime.h
+    reinplace    "s|__MACPORTS_GCC__|${configure.cc}|g" \
+                 ${worksrcpath}/CONFIG/src/SpewMakeInc.c
+    
+    reinplace    "s|XXXXX|${configure.cc}|g" \
+                ${worksrcpath}/include/atlas_mvtesttime.h
 
-	if { ${build_arch} == "ppc" || ${build_arch} == "ppc64" } {
-		reinplace \
-		"s|cMVFLAGS=\\\\\"%s\\\\\"|cMVFLAGS=\\\\\"-force_cpusubtype_ALL\ %s\\\\\"|" \
-		 ${workpath}/${name}-${version}/include/atlas_mvtesttime.h
-	}
-	# ar -r / ranlib / libtool seems to be buggy, so we have to supply a
-	# workaround to link properly.
-	reinplace	"s|XXXXX|${filespath}/ar2|" \
-				${workpath}/${name}-${version}/CONFIG/src/SpewMakeInc.c
+    if { ${build_arch} == "ppc" || ${build_arch} == "ppc64" } {
+        reinplace \
+        "s|cMVFLAGS=\\\\\"%s\\\\\"|cMVFLAGS=\\\\\"-force_cpusubtype_ALL\ %s\\\\\"|" \
+         ${worksrcpath}/include/atlas_mvtesttime.h
+    }
 }
 
+# change the default compilers
 pre-configure {
 
-	# i386 builds must be patch otherwise threading does not work.
-	if { [variant_isset universal] } {
-		foreach arch ${universal_archs_to_use} {
-			copy ${workpath}/${name}-${version} \
-			 ${workpath}/${name}-${version}-${arch}
-			if { ${arch} == "i386" } {
-				ui_msg	"Patching Make.ttune for i386 universal build"
-				system	"cd ${workpath}/${name}-${version}-i386/makes && \
-						 patch < ${filespath}/patch-Make_ttune-i386.diff"
-			}
-		}
-	}
-	
-	if { ${build_arch} == "i386" && ! [variant_isset universal] } {
-		ui_msg	"Patching Make.ttune for i386 build"
-		system	"cd ${workpath}/${name}-${version}/makes && \
-				 patch < ${filespath}/patch-Make_ttune-i386.diff"
-	}
+    set cc [lindex [split ${configure.cc} '/'] end]
+    
+    # Make gcc-mp-4.x and gfortran-mp-4.x be detected as GCC variants
+    if {[info exists gccnumber]} {
+        set ff [lindex [split ${configure.f77} '/'] end]
+        reinplace "s|-MPGCC-|${cc}|" ${worksrcpath}/CONFIG/src/probe_comp.c
+        reinplace "s|-MPFORTRAN-|${ff}|" ${worksrcpath}/CONFIG/src/probe_comp.c
+        reinplace "s|-MPPATH-|${prefix}/bin|" ${worksrcpath}/CONFIG/src/probe_comp.c
+        reinplace "s|XXX|'${cc}' '-fomit-frame-pointer \
+                    -mfpmath=sse -O2 -fno-schedule-insns2'|" \
+            ${worksrcpath}/CONFIG/src/atlcomp.txt
+    } else {
+        reinplace "s|XXX|'${cc}' '-O3 -fomit-frame-pointer'|" \
+             ${worksrcpath}/CONFIG/src/atlcomp.txt
+    }
+    
+    # If we use clang, we must grasp a gfortran compiler to build
+    # Fortran sources (do not impact overall Atlas performance)
 
-	reinplace	"s|cc=gcc|cc=${configure.cc}|g" ${worksrcpath}/configure
-	reinplace	"s|-no-cpp-precomp||g" \
-				 ${workpath}/${name}-${version}/CONFIG/src/atlcomp.txt
+    if {![info exists gccnumber]} {
+        ui_msg "Use of clang is still experimental and may result in\
+                reduced performance or misbehavior. Use with caution."
+    }
+    
+    # If we use clang and +nofortran is not set, seek a fortran compiler
+    if {![info exists gccnumber] && ![variant_isset nofortran]} {
 
-	# Get some system specific variables for maximum optimization
-	set			cpufreq [expr {[sysctl hw.cpufrequency]/1000000}]
-	ui_debug	"Setting CPU Frequency for: ${cpufreq}"
+        set gflist                  [glob -noc ${prefix}/bin/gfortran-mp-4.*]
+        
+        if {[llength ${gflist}] == 0} {
+    
+            # No fortran compiler found. Act as if +nofortran was set.
+            ui_msg "No fortran compiler found. Disabling fortran interface."
+            configure.args-append       --nof77
+        } else {
 
-	if { ${os.arch} == "powerpc" } {
-		configure.args-append	-D c -DWALL
-	} else {
-		configure.args-append	-D c -DPentiumCPS=${cpufreq}
-	}
+            # Select most recent gfortran
+            global gccnumber
+            
+            configure.f77           [lindex [lsort -dec ${gflist}] 0]
+            set gccnumber    \
+                [join [split [string range ${configure.f77} end-2 end] "."] ""]
+            ui_msg "Selected gfortran${gccnumber}."
+            
+            configure.args-append   -C if ${configure.f77}
+            configure.args-append   -Ss f77lib ${prefix}/lib/gcc${gccnumber}
+        }
+    }
 
-	if { [variant_isset universal] } {
-		set	archs ${universal_archs_to_use}
-	} else {
-		set	archs ${build_arch}
-	}
+    if {![variant_isset nofortran]} {
+        configure.args-append       -C if ${configure.f77}
+        configure.args-append       -Ss f77lib ${prefix}/lib/gcc${gccnumber}
+    }
 
-	foreach arch ${archs} {
-		if { ! [variant_isset universal] } {
-			set	atlas_path ${workpath}/${name}-${version}
-		} else {
-			set	atlas_path ${workpath}/${name}-${version}-${arch}
-		}
+    if {[variant_isset universal]} {
+        foreach arch ${universal_archs_to_use} {
+            copy ${workpath}/${name}-${version} \
+             ${workpath}/${name}-${version}-${arch}
+        }
+    }
+    
+    reinplace    "s|cc=gcc|cc=${configure.cc}|g" ${worksrcpath}/configure
+    reinplace    "s|-no-cpp-precomp||g" \
+                 ${workpath}/${name}-${version}/CONFIG/src/atlcomp.txt
 
-		file mkdir ${atlas_path}/build
-	}
-}
+    # Get some system specific variables for maximum optimization
+    set            cpufreq [expr {[sysctl hw.cpufrequency]/1000000}]
+    ui_debug    "Setting CPU Frequency for: ${cpufreq}"
 
-post-configure {
-	if { [variant_isset universal] } {
-		set	archs ${universal_archs_to_use}
-	} else {
-		set	archs ${build_arch}
-	}
+    if {${os.arch} == "powerpc"} {
+        configure.args-append    -D c -DWALL
+    } else {
+        configure.args-append    -D c -DPentiumCPS=${cpufreq}
+    }
 
-	foreach arch ${archs} {
-		if { ! [variant_isset universal] } {
-			set	atlas_path ${workpath}/${name}-${version}
-		} else {
-			set	atlas_path ${workpath}/${name}-${version}-${arch}
-		}
+    if {[variant_isset universal]} {
+        set    archs ${universal_archs_to_use}
+    } else {
+        set    archs ${build_arch}
+    }
 
-		# recursively remove directories
-		ui_debug	"patch to recursively remove directories on clean"
-		reinplace	"s|rm -f|rm -rf|g" ${atlas_path}/build/Makefile
+    foreach arch ${archs} {
+        if { ! [variant_isset universal] } {
+            set    atlas_path ${workpath}/${name}-${version}
+        } else {
+            set    atlas_path ${workpath}/${name}-${version}-${arch}
+        }
 
-		system	"cd ${atlas_path}/build/src/pthreads/misc && \
-				patch < ${filespath}/patch-Makefile_pthreads_misc.diff"
-
-		#Second patch for i386
-		if { ${arch} == "i386" } {
-			system	"cd ${atlas_path}/build/src/threads && \
-					 patch < ${filespath}/patch-threads-i386.diff"
-		}
-	}
+        file mkdir ${atlas_path}/build
+    }
 }
 
-proc make_dylib { lib lib_dir arch libs } {
-	global destroot prefix gccnumber
-	system "cd ${lib_dir} && \
-			( test ! -e ${lib}.a || \
-			  /usr/bin/ld -arch ${arch} -dynamic -dylib -single_module -dead_strip \
-			  -x -all_load -L. -L${prefix}/lib/gcc${gccnumber}/${arch} \ -L${prefix}/lib/gcc${gccnumber} -ldylib1.o \
-			  -dylib_install_name ${prefix}/lib/${lib}.dylib \
-			  ${lib}.a -o ${lib}.dylib ${libs} )"
-}
+# We configure from the build directory
+configure.dir            ${workpath}/${name}-${version}/build
+configure.cmd            ../configure
 
-post-build {
-  # We have to manually create the dylib shared libs as the default build does not do this
+post-configure {
+    if {[variant_isset universal]} {
+    
+        set         archs ${universal_archs_to_use}
+    } else {
+    
+        set         archs ${build_arch}
+    }
 
-  set ncpu [sysctl hw.ncpu]
+    foreach arch ${archs} {
+        if {![variant_isset universal]} {
+        
+            set     atlas_path ${workpath}/${name}-${version}
+        } else {
+        
+            set     atlas_path ${workpath}/${name}-${version}-${arch}
+        }
 
-	if { [variant_isset universal] } {
-		set	archs ${universal_archs_to_use}
-	} else {
-		set	archs ${build_arch}
-	}
-
-	foreach arch ${archs} {
-		if { ! [variant_isset universal] } {
-			set	atlas_path  ${workpath}/${name}-${version}
-		} else {
-			set	atlas_path ${workpath}/${name}-${version}-${arch}
-		}
-
-		set			lib_dir ${atlas_path}/build/lib
-		make_dylib	libatlas ${lib_dir} ${arch} { -lSystem }
-
-		if { ${ncpu} == "1" } {
-	# there are no threaded libraries (libpt*) on single-core machines
-			make_dylib	libcblas   ${lib_dir} ${arch} { -latlas -lSystem }
-			make_dylib	libf77blas ${lib_dir} ${arch} { -lgfortran -latlas -lSystem }
-		} else {
-			make_dylib	libptcblas   ${lib_dir} ${arch} { -latlas -lSystem }
-			make_dylib	libptf77blas ${lib_dir} ${arch} { -lgfortran -latlas -lSystem }
-		}
-
-		make_dylib	liblapack ${lib_dir} ${arch} { -lf77blas -lcblas -latlas -lgfortran -lgcc_s.1 -lSystem }
-	}
+        # recursively remove directories
+        ui_debug    "patch to recursively remove directories on clean"
+        reinplace    "s|rm -f|rm -rf|g" ${atlas_path}/build/Makefile
+        
+        # Workaround a bug in dylib generation
+        if {[info exists gccnumber]} {
+            reinplace \
+            "s|F77SYSLIB.*|F77SYSLIB = ${prefix}/lib/gcc${gccnumber}/libgfortran.dylib|" \
+            ${atlas_path}/build/Make.inc
+        }
+    }
 }
 
-pre-destroot {
-	if { [variant_isset universal] } {
-		set	archs ${universal_archs_to_use}
-	} else {
-		set	archs ${build_arch}
-	}
+build.env-append        "CC=${configure.cc} CXX=${configure.cxx}"
+use_parallel_build      no
+build.target            build
+build.dir               ${workpath}/${name}-${version}/build
 
-	foreach arch ${archs} {
-		if { ! [variant_isset universal] } {
-			set	atlas_path  ${workpath}/${name}-${version}
-			set	dest_path   ${destroot}${prefix}/lib/
-		} else {
-			set	atlas_path ${workpath}/${name}-${version}-${arch}
-			set	dest_path  ${destroot}-${arch}${prefix}/lib/
-		}
 
-		set		lib_dir ${atlas_path}/build/lib
-		file	mkdir ${dest_path}
-		eval	xinstall -m 755 [glob ${lib_dir}/*.dylib] ${dest_path}
-	}
-}
+destroot.dir            ${build.dir}
+destroot.destdir        DESTDIR=${destroot}${prefix}
 
-post-destroot {
-	if { ![file exists ${destroot}${prefix}/lib/libcblas.dylib] && [file exists ${destroot}${prefix}/lib/libptcblas.dylib]} {
-		ln -s libptcblas.dylib ${destroot}${prefix}/lib/libcblas.dylib
-	}
-	if { ![file exists ${destroot}${prefix}/lib/libf77blas.dylib] && [file exists ${destroot}${prefix}/lib/libptf77blas.dylib]} {
-		ln -s libptf77blas.dylib ${destroot}${prefix}/lib/libf77blas.dylib
-	}
-}
-
-livecheck.name		math-atlas
-livecheck.distname	Stable
+livecheck.name        math-atlas
+livecheck.distname    Stable

Deleted: trunk/dports/math/atlas/files/ar2
===================================================================
--- trunk/dports/math/atlas/files/ar2	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/ar2	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,24 +0,0 @@
-#!/bin/sh
-#Simulates ar r with libtool
-
-#If another option is given, just call ar and bail out
-if [ $1 != 'r' ]; then
-	ar $@
-	exit $?
-fi
-
-#Skips the first two arguments (r libname)
-libname=$2
-shift
-shift
-
-#All objects name are collected in $obj
-if [ -e $libname ]; then
-	ar d $libname $@
-    mv $libname $libname.tmp
-    libtool -static -o $libname $libname.tmp $@
-	rm $libname.tmp
-	ranlib $libname
-else
-	libtool -static -o $libname $@
-fi

Deleted: trunk/dports/math/atlas/files/patch-ATL_AVgcc-fix.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-ATL_AVgcc-fix.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-ATL_AVgcc-fix.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,17 +0,0 @@
---- CONFIG/src/SpewMakeInc.c.orig	2009-02-18 19:47:37.000000000 +0100
-+++ CONFIG/src/SpewMakeInc.c	2009-12-15 22:05:56.000000000 +0100
-@@ -579,11 +579,11 @@
- /*
-  * Need up update handling of apple vs. gnu gcc for altivec
-  */
--#if 0
-+/*#if 0
-    if (ISAX == ISA_AV && strstr(CC, "gcc") && strstr(MCC, "gcc") &&
--       !GccIsApple(CC))
-+       !GccIsApple(CC))*/
-       fprintf(fpout, " -DATL_%s -DATL_AVgcc", ISAXNAM[ISAX]);
--#endif
-+/*#endif*/
-    fprintf(fpout, "\n\n");
- 
-    fprintf(fpout,

Deleted: trunk/dports/math/atlas/files/patch-ATL_dmvnk_c.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-ATL_dmvnk_c.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-ATL_dmvnk_c.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,11 +0,0 @@
---- build/tune/blas/gemv/ATL_dmvnk.c.orig	2011-07-24 13:50:01.000000000 +0200
-+++ build/tune/blas/gemv/ATL_dmvnk.c	2011-07-24 13:50:29.000000000 +0200
-@@ -109,7 +109,7 @@
-    movl   $3*8, -56(%rsp)       /* mem = MU */
-    fildl  -56(%rsp)                     /* ST = MU */
-    movl   %edi, -56(%rsp)               /* mem = M */
--   fidivr -56(%rsp)                     /* ST = M/MU */
-+   fidivrl -56(%rsp)                     /* ST = M/MU */
-    fisttpl -60(%rsp)                    /* mem = TRUNC(M/MU) */
-    movl    -60(%rsp), %ebx              /* rbx = TRUNC(M/MU) */
-    imul    $3*8, %ebx, %ebx     /* rbx = MU*TRUNC(M/MU) */

Deleted: trunk/dports/math/atlas/files/patch-ATL_go_parallel_c.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-ATL_go_parallel_c.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-ATL_go_parallel_c.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,21 +0,0 @@
---- src/threads/ATL_goparallel.c.orig	2011-04-29 19:18:55.000000000 +0200
-+++ src/threads/ATL_goparallel.c	2011-04-30 08:35:51.000000000 +0200
-@@ -1,4 +1,5 @@
- #ifndef ATL_NOAFFINITY
-+   #define DONT
-    #include "atlas_taffinity.h"  /* include this file first! */
- #endif
- #include "atlas_misc.h"
-@@ -63,8 +64,10 @@
- #endif
- #if defined(ATL_TUNING) && defined(ATL_NOAFFINITY)
-    void *ATL_log2tlaunch_noaff(void *vp);
--   #define ATL_goparallel ATL_goparallel_noaff
--   #define ATL_dyntlaunch ATL_log2tlaunch_noaff
-+	#ifndef DONT
-+   		#define ATL_goparallel ATL_goparallel_noaff
-+   		#define ATL_dyntlaunch ATL_log2tlaunch_noaff
-+   	#endif
-    #define ATL_USE_DYNAMIC 0
- #elif defined(ATL_TUNING)
-    #if defined(ATL_LAUNCH_LINEAR)

Deleted: trunk/dports/math/atlas/files/patch-ATL_goparallel_prank_c.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-ATL_goparallel_prank_c.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-ATL_goparallel_prank_c.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,20 +0,0 @@
---- src/threads/ATL_goparallel_prank.c.orig	2011-05-03 16:09:03.000000000 +0200
-+++ src/threads/ATL_goparallel_prank.c	2011-05-03 16:10:37.000000000 +0200
-@@ -7,14 +7,16 @@
- 
-   int myRetn=-1;
-   __asm__ __volatile__ ("\n"
-+	"movl %%ebx,(%%esp)\n"
-     "movl $1, %%eax\n"
-     "cpuid\n"
-     "shrl $24, %%ebx\n"
-     "movl %%ebx, %0\n"
-+	"movl (%%esp),%%ebx\n"
-     : "=m" (myRetn)
-     :
- #if defined(ATL_GAS_x8632)
--    :"%eax", "%ebx", "%edx", "%ecx"
-+    :"%eax", "%edx", "%ecx"
- #elif defined(ATL_GAS_x8664)
-     :"%rax", "%rbx", "%rdx", "%rcx"
- #endif

Deleted: trunk/dports/math/atlas/files/patch-Make_ttune-i386.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-Make_ttune-i386.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-Make_ttune-i386.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,27 +0,0 @@
---- Make.ttune.orig	2011-07-31 08:03:24.000000000 +0200
-+++ Make.ttune	2011-07-31 08:05:13.000000000 +0200
-@@ -125,22 +125,14 @@
-            $(MAKE) iFind_atomic_arch ; \
-         fi
- iFind_atomic_arch :
--	if $(MAKE) xprobe_atomic_amd64 ; then \
--           cp $(myTHRdir)/ATL_*AtomicCount_arch.c . ; \
--           cp $(myTHRdir)/ATL_ResetAtomicCount_amd64.S \
--              ATL_ResetAtomicCount_arch.S ; \
--           cp $(myTHRdir)/ATL_DecAtomicCount_amd64.S \
--              ATL_DecAtomicCount_arch.S ; \
--           rm $(BLDdir)/src/threads/atomic.inc ; \
--           echo "aobj = ATL_SetAtomicCount_arch.o ATL_ResetAtomicCount_amd64.o ATL_DecAtomicCount_amd64.o ATL_FreeAtomicCount_arch.o" > $(BLDdir)/src/threads/atomic.inc ; \
--	elif $(MAKE) xprobe_atomic_ia32 ; then \
-+	if $(MAKE) xprobe_atomic_ia32 ; then \
-            cp $(myTHRdir)/ATL_*AtomicCount_arch.c . ; \
-            cp $(myTHRdir)/ATL_ResetAtomicCount_ia32.S \
-               ATL_ResetAtomicCount_arch.S ; \
-            cp $(myTHRdir)/ATL_DecAtomicCount_ia32.S \
-               ATL_DecAtomicCount_arch.S ; \
-            rm $(BLDdir)/src/threads/atomic.inc ; \
--           echo "aobj = ATL_SetAtomicCount_arch.o ATL_ResetAtomicCount_ia32.o ATL_DecAtomicCount_ia32.o ATL_FreeAtomicCount_arch.o" > $(BLDdir)/src/threads/atomic.inc ; \
-+           echo "aobj = ATL_SetAtomicCount_arch.o ATL_ResetAtomicCount_ia32.o ATL_FreeAtomicCount_arch.o" > $(BLDdir)/src/threads/atomic.inc ; \
- 	elif $(MAKE) xprobe_atomic_ppc ; then \
-            cp $(myTHRdir)/ATL_*AtomicCount_arch.c . ; \
-            cp $(myTHRdir)/ATL_ResetAtomicCount_ppc.S \

Deleted: trunk/dports/math/atlas/files/patch-Make_ttune.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-Make_ttune.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-Make_ttune.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,12 +0,0 @@
---- makes/Make.ttune.orig	2011-05-03 10:29:43.000000000 +0200
-+++ makes/Make.ttune	2011-05-03 10:29:46.000000000 +0200
-@@ -197,7 +197,8 @@
-              ATL_thread_start_noaff.o ATL_thread_start.o
- 	$(CC) $(CCFLAGS) -o xtune_aff tune_aff.o ATL_goparallel_noaff.o \
-               ATL_goparallel_aff.o ATL_log2tlaunch_noaff.o ATL_log2tlaunch.o \
--              ATL_thread_start_noaff.o ATL_thread_start.o $(ATLASlib) $(LIBS)
-+              ATL_thread_start_noaff.o ATL_thread_start.o \
-+			  -Wl,-undefined,suppress,-flat_namespace $(ATLASlib) $(LIBS)
- 
- ATL_goparallel_aff.o : $(myTHRdir)/ATL_goparallel.c
- 	$(CC) $(CCFLAGS) -o $@ -DATL_TUNING -c $(myTHRdir)/ATL_goparallel.c

Deleted: trunk/dports/math/atlas/files/patch-Makefile_pthreads_misc.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-Makefile_pthreads_misc.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-Makefile_pthreads_misc.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,17 +0,0 @@
---- Makefile.orig	2011-08-18 20:27:47.000000000 +0200
-+++ Makefile	2011-08-18 20:28:16.000000000 +0200
-@@ -86,10 +86,10 @@
- zlvlm : zlib
- #
- alib  : alib.grd
--slib  : slib.grd
--dlib  : dlib.grd
--clib  : clib.grd
--zlib  : zlib.grd
-+slib  : slib.grd alib.grd
-+dlib  : dlib.grd alib.grd
-+clib  : clib.grd alib.grd
-+zlib  : zlib.grd alib.grd
- #
- alib.grd  : $(ATL_alvlmobj)
- 	$(ARCHIVER) $(ARFLAGS) $(ATLASlib) $(ATL_alvlmobj)

Deleted: trunk/dports/math/atlas/files/patch-SpewMakeInc_c.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-SpewMakeInc_c.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-SpewMakeInc_c.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,22 +0,0 @@
---- CONFIG/src/SpewMakeInc.c.orig	2011-07-24 15:00:11.000000000 +0200
-+++ CONFIG/src/SpewMakeInc.c	2011-07-24 15:00:55.000000000 +0200
-@@ -679,7 +679,7 @@
-           comps[i][j-2] == 'c' && comps[i][j-1] == 'c')
-          break;
-    }
--   goodgcc = (i < NCOMP) ? comps[i] : "gcc";
-+   goodgcc = "__MACPORTS_GCC__";
-    fprintf(fpout, "   GOODGCC = %s", goodgcc);
-    if (gccflags)
-       fprintf(fpout, " %s", gccflags);
-@@ -727,8 +727,8 @@
-    if (OS == OSWinNT && ptrbits == 64)
-       fprintf(fpout, "\n   ARCHIVER = $(BLDdir)/mgwar\n");
-    else
--      fprintf(fpout, "\n   ARCHIVER = ar\n");
--   fprintf(fpout, "   ARFLAGS  = r\n");
-+      fprintf(fpout, "\n   ARCHIVER = XXXXX\n");
-+   fprintf(fpout, "   ARFLAGS  = r\n");
- /*
-  * JF Mertens says that even x86 OS X still need ranlib for safety
-  */

Deleted: trunk/dports/math/atlas/files/patch-archinfo_freebsd.c.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-archinfo_freebsd.c.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-archinfo_freebsd.c.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,11 +0,0 @@
---- CONFIG/src/backend/archinfo_freebsd.c.orig	2009-02-18 18:47:37.000000000 +0000
-+++ CONFIG/src/backend/archinfo_freebsd.c	2010-01-01 11:45:22.000000000 +0000
-@@ -69,7 +69,7 @@
-             if (strstr(res,"c1,2")||strstr(res,"c3,1")||strstr(res,"c3,2")||
-                 strstr(res,"c3,3")||strstr(res,"c3,4")||strstr(res,"c3,5")||
-                 strstr(res,"c3,6")||strstr(res,"c4,2")||strstr(res,"c4,5")||
--                strstr(res,"c5,1"))
-+                strstr(res,"c5,1")||strstr(res,"c10,1"))
-                mach = PPCG4;
-             else if (strstr(res,"c11,2")|| strstr(res,"c12,1")||
-                      strstr(res,"c7,2") || strstr(res,"c7,3") ||

Deleted: trunk/dports/math/atlas/files/patch-archinfo_freebsd_c.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-archinfo_freebsd_c.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-archinfo_freebsd_c.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,12 +0,0 @@
---- CONFIG/src/backend/archinfo_freebsd.c.orig  2009-02-18 18:47:37.000000000 +0000
-+++ CONFIG/src/backend/archinfo_freebsd.c       2010-01-01 11:45:22.000000000 +0000
-@@ -69,7 +69,7 @@
-             if (strstr(res,"c1,2")||strstr(res,"c3,1")||strstr(res,"c3,2")||
-                 strstr(res,"c3,3")||strstr(res,"c3,4")||strstr(res,"c3,5")||
-                 strstr(res,"c3,6")||strstr(res,"c4,2")||strstr(res,"c4,5")||
--                strstr(res,"c5,1")||strstr(res,"c10,1"))
-+                strstr(res,"c5,1")||strstr(res,"c10,1")||strstr(res,"c4,4"))
-                mach = PPCG4;
-             else if (strstr(res,"c11,2")|| strstr(res,"c12,1")||
-                      strstr(res,"c7,2") || strstr(res,"c7,3") ||
-

Deleted: trunk/dports/math/atlas/files/patch-atlas_l2g_base.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-atlas_l2g_base.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-atlas_l2g_base.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,11 +0,0 @@
---- tune/blas/gemv/atlas-l2g.base.orig	2011-07-24 14:32:15.000000000 +0200
-+++ tune/blas/gemv/atlas-l2g.base	2011-07-24 14:32:32.000000000 +0200
-@@ -1577,7 +1577,7 @@
-    movl   $@(MU)*@(CL), -56(%rsp)       /* mem = MU */
-    fildl  -56(%rsp)                     /* ST = MU */
-    movl   %edi, -56(%rsp)               /* mem = M */
--   fidivr -56(%rsp)                     /* ST = M/MU */
-+   fidivrl -56(%rsp)                     /* ST = M/MU */
-    fisttpl -60(%rsp)                    /* mem = TRUNC(M/MU) */
-    movl    -60(%rsp), %ebx              /* rbx = TRUNC(M/MU) */
-    imul    $@(MU)*@(CL), %ebx, %ebx     /* rbx = MU*TRUNC(M/MU) */

Added: trunk/dports/math/atlas/files/patch-atlcomp_txt.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-atlcomp_txt.diff	                        (rev 0)
+++ trunk/dports/math/atlas/files/patch-atlcomp_txt.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -0,0 +1,34 @@
+--- CONFIG/src/atlcomp.txt.orig	2012-05-05 18:11:44.000000000 +0200
++++ CONFIG/src/atlcomp.txt	2012-05-18 21:24:03.000000000 +0200
+@@ -43,16 +43,20 @@
+    'gcc-4' '-fomit-frame-pointer -mfpmath=sse -O2 -fno-schedule-insns2'
+ MACH=Corei2 OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc,icc,gcc,xcc
+    'gcc' '-fomit-frame-pointer -mfpmath=sse -O2 -fno-schedule-insns2'
+-MACH=Corei2 OS=ALL LVL=50 COMPS=skc,dkc,icc,xcc
+-    'clang' '-fomit-frame-pointer -mavx -O2 -m64 -Wno-parentheses'
++MACH=Corei2 OS=ALL LVL=1010 COMPS=smc,dmc,skc,dkc,icc,gcc,xcc
++    XXX 
+ MACH=Corei1 OS=Win9x,WinNT LVL=1005 COMPS=smc,dmc,skc,dkc,icc,gcc
+    'gcc-4' '-fomit-frame-pointer -mfpmath=sse -O2 -fno-schedule-insns2'
+ MACH=Corei1 OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc,icc,gcc
+    'gcc' '-fomit-frame-pointer -mfpmath=sse -O2 -fno-schedule-insns2'
++MACH=Corei1 OS=ALL LVL=1010 COMPS=smc,dmc,skc,dkc,icc,gcc,xcc
++    XXX 
+ MACH=Core2 OS=Win9x,WinNT LVL=1005 COMPS=smc,dmc,skc,dkc,icc
+    'gcc-4' '-fomit-frame-pointer -mfpmath=sse -O2'
+ MACH=Core2 OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc,icc,gcc
+    'gcc' '-fomit-frame-pointer -mfpmath=sse -O2'
++MACH=Core2 OS=ALL LVL=1010 COMPS=smc,dmc,skc,dkc,icc,gcc,xcc
++    XXX 
+ MACH=Atom OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc
+    'gcc' '-O3 -fno-schedule-insns2 -funroll-all-loops -fno-tree-ch'
+ MACH=Atom OS=ALL LVL=1000 COMPS=icc,gcc
+@@ -106,6 +110,8 @@
+    'gcc-4' '-fomit-frame-pointer -O3 -mfpmath=387'
+ MACH=CoreSolo,CoreDuo OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc,icc,gcc
+    'gcc' '-fomit-frame-pointer -O3 -mfpmath=387'
++MACH=CoreSolo,CoreDuo OS=ALL LVL=1010 COMPS=smc,dmc,skc,dkc,icc,gcc,xcc
++    XXX 
+ # 3rd generation opteron (Barcelona and descendents)
+ MACH=AMD64K10h OS=ALL LVL=1000 COMPS=f77
+    'gfortran' '-fomit-frame-pointer -mfpmath=sse -O2'

Added: trunk/dports/math/atlas/files/patch-atlconf_misc_c.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-atlconf_misc_c.diff	                        (rev 0)
+++ trunk/dports/math/atlas/files/patch-atlconf_misc_c.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -0,0 +1,10 @@
+--- CONFIG/src/atlconf_misc.c.orig	2012-05-18 13:20:52.000000000 +0200
++++ CONFIG/src/atlconf_misc.c	2012-05-18 13:21:43.000000000 +0200
+@@ -715,6 +715,7 @@
+  *    match with pgcc
+  */
+       if (strstr(res, "(GCC)") || strstr(res, " GCC ") ||
++		  strstr(res, "gcc-mp") ||
+           strstr(res, "GNU Fortran") || strstr(res, "(GCC ") ||
+           (res[0] == 'g' && res[1] == 'c' && res[2] == 'c' && res[3] == ' ')
+          )

Deleted: trunk/dports/math/atlas/files/patch-clang.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-clang.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-clang.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,14 +0,0 @@
---- CONFIG/src/atlcomp.txt.orig	2011-08-17 22:10:42.000000000 +0200
-+++ CONFIG/src/atlcomp.txt	2011-08-17 22:12:53.000000000 +0200
-@@ -49,8 +49,10 @@
-    'gcc' '-fomit-frame-pointer -mfpmath=sse -msse3 -O2 -fno-schedule-insns2'
- MACH=Core2 OS=Win9x,WinNT LVL=1005 COMPS=smc,dmc,skc,dkc,icc
-    'gcc-4' '-fomit-frame-pointer -mfpmath=sse -msse3 -O2'
--MACH=Core2 OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc,icc
-+MACH=Core2 OS=ALL LVL=950 COMPS=smc,dmc,skc,dkc,icc
-    'gcc' '-fomit-frame-pointer -mfpmath=sse -msse3 -O2'
-+MACH=Core2 OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc,icc,xcc
-+   'clang' '-fomit-frame-pointer -msse3 -O3'
- MACH=Atom OS=ALL LVL=1000 COMPS=smc,dmc,skc,dkc
-    'gcc' '-O3 -fno-schedule-insns2 -funroll-all-loops -fno-tree-ch'
- MACH=Atom OS=ALL LVL=1000 COMPS=icc

Deleted: trunk/dports/math/atlas/files/patch-emit_mm_c.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-emit_mm_c.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-emit_mm_c.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,17 +0,0 @@
---- tune/blas/gemm/emit_mm.c.orig	2011-08-19 08:35:58.000000000 +0200
-+++ tune/blas/gemm/emit_mm.c	2011-08-19 08:37:27.000000000 +0200
-@@ -2688,10 +2688,12 @@
-       {
-          if (wp->CC[0])  /* need non-default compilation rule */
-          {
--            char *comp = (wp->CC[0] == 'g' && wp->CC[1] == 'c'
-+      /*      char *comp = (wp->CC[0] == 'g' && wp->CC[1] == 'c'
-                           && wp->CC[2] == 'c' &&
-                           (wp->CC[3] == '\0' || wp->CC[3] == ' '))
--                         ? "$(GOODGCC)" : wp->CC;
-+                         ? "$(GOODGCC)" : wp->CC; */
-+			char *comp = "$(GOODGCC)";
-+
-             for (j=0; j < nbetas; j++)
-             {
-                for(k=0; k < wp->ncomps; k++)

Deleted: trunk/dports/math/atlas/files/patch-mmparse_h.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-mmparse_h.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-mmparse_h.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,38 +0,0 @@
---- include/atlas_mmparse.h.orig	2011-08-17 22:35:24.000000000 +0200
-+++ include/atlas_mmparse.h	2011-08-17 22:35:57.000000000 +0200
-@@ -243,17 +243,6 @@
-  *  use an old GOODGCC that lacks something like -pg.
-  */
- {
--   ATL_mmnode_t *kp;  /* queue to make sub in */
--   char *gcc;
--   gcc = GetGoodGcc();
--   for (kp=bp; kp; kp = kp->next)
--   {
--      if (kp->comp && !strcmp(kp->comp, gcc))
--      {
--         free(kp->comp);
--	 kp->comp = DupString("gcc");
--      }
--   }
- }
- 
- /* procedure 11 */
-@@ -266,17 +255,6 @@
-  * to help portability
-  */
- {
--   ATL_mmnode_t *kp;  /* queue to make sub in */
--   char *gcc;
--   gcc = GetGoodGcc();
--   for (kp=bp; kp; kp = kp->next)
--   {
--      if (kp->comp && !strcmp(kp->comp, gcc))
--      {
--         free(kp->comp);
--	 kp->comp = DupString("gcc");
--      }
--   }
- }
- 
- /* procedure 12 */

Deleted: trunk/dports/math/atlas/files/patch-mvparse_h.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-mvparse_h.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-mvparse_h.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,38 +0,0 @@
---- include/atlas_mvparse.h.orig	2011-08-17 22:36:13.000000000 +0200
-+++ include/atlas_mvparse.h	2011-08-17 22:36:42.000000000 +0200
-@@ -243,17 +243,6 @@
-  *  use an old GOODGCC that lacks something like -pg.
-  */
- {
--   ATL_mvnode_t *kp;  /* queue to make sub in */
--   char *gcc;
--   gcc = GetGoodGcc();
--   for (kp=bp; kp; kp = kp->next)
--   {
--      if (kp->comp && !strcmp(kp->comp, gcc))
--      {
--         free(kp->comp);
--	 kp->comp = DupString("gcc");
--      }
--   }
- }
- 
- /* procedure 11 */
-@@ -266,17 +255,6 @@
-  * to help portability
-  */
- {
--   ATL_mvnode_t *kp;  /* queue to make sub in */
--   char *gcc;
--   gcc = GetGoodGcc();
--   for (kp=bp; kp; kp = kp->next)
--   {
--      if (kp->comp && !strcmp(kp->comp, gcc))
--      {
--         free(kp->comp);
--	 kp->comp = DupString("gcc");
--      }
--   }
- }
- 
- /* procedure 12 */

Deleted: trunk/dports/math/atlas/files/patch-mvtesttime_h.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-mvtesttime_h.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-mvtesttime_h.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,11 +0,0 @@
---- include/atlas_mvtesttime.h.orig	2011-08-05 17:27:48.000000000 +0200
-+++ include/atlas_mvtesttime.h	2011-08-18 10:47:43.000000000 +0200
-@@ -100,7 +100,7 @@
-    if (1)   /* NOTE: replace with test on restrict or not! */
-       i += sprintf(ln+i, " incy=1");
-    if (kn->comp)
--      i += sprintf(ln+i, " %cMVCC=\"%s\"", pre, kn->comp);
-+      i += sprintf(ln+i, " %cMVCC=\"XXXXX\"", pre);
-    if (kn->cflags)
-       i += sprintf(ln+i, " %cMVFLAGS=\"%s\"", pre, kn->cflags);
-    i += sprintf(ln+i, " Mt=%d Nt=%d ldat=%d", M, N, lda);

Added: trunk/dports/math/atlas/files/patch-probe_comp_c.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-probe_comp_c.diff	                        (rev 0)
+++ trunk/dports/math/atlas/files/patch-probe_comp_c.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -0,0 +1,23 @@
+--- CONFIG/src/probe_comp.c.orig	2012-05-18 17:24:27.000000000 +0200
++++ CONFIG/src/probe_comp.c	2012-05-18 17:27:09.000000000 +0200
+@@ -901,9 +901,9 @@
+                   ucomp = "gcc";
+             }
+             else if (i == F77_)
+-               ucomp = "gfortran";
++               ucomp = "gfortran";
+             else
+-               ucomp = "gcc";
++               ucomp = "-MPGCC-";
+          }
+          for (p=comps[i]; p; p = p->next)
+          {
+@@ -1130,7 +1130,7 @@
+  */
+    if (OS == OSOSX)  /* /sw is for fink, /opt is for macports */
+    {
+-      OSpaths = "/sw/bin /opt/local/bin /opt/local/sbin";
++      OSpaths = "-MPPATH-";
+    }
+ /*
+  * We first look in any high-priority OS-specific spots for the right files

Deleted: trunk/dports/math/atlas/files/patch-threads-i386.diff
===================================================================
--- trunk/dports/math/atlas/files/patch-threads-i386.diff	2012-05-19 07:35:25 UTC (rev 93298)
+++ trunk/dports/math/atlas/files/patch-threads-i386.diff	2012-05-19 10:37:11 UTC (rev 93299)
@@ -1,12 +0,0 @@
---- Makefile.orig	2011-07-30 14:38:58.000000000 +0200
-+++ Makefile	2011-07-30 14:39:47.000000000 +0200
-@@ -12,7 +12,8 @@
-       ATL_ResetGlobalAtomicCount.o ATL_SetGlobalAtomicCount.o \
-       ATL_thread_yield.o ATL_mutex_free.o ATL_mutex_trylock.o \
-       ATL_mutex_unlock.o ATL_mutex_lock.o ATL_mutex_init.o ATL_goparallel.o \
--      ATL_thread_start.o ATL_thread_exit.o ATL_thread_join.o
-+      ATL_thread_start.o ATL_thread_exit.o ATL_thread_join.o \
-+      ATL_DecAtomicCount_ia32.o
- 
- all : lib
- lib : lib.grd l3thr l2thr
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120519/668f42a2/attachment-0001.html>


More information about the macports-changes mailing list