[143637] trunk/dports

mojca at macports.org mojca at macports.org
Wed Dec 16 05:56:33 PST 2015


Revision: 143637
          https://trac.macports.org/changeset/143637
Author:   mojca at macports.org
Date:     2015-12-16 05:56:33 -0800 (Wed, 16 Dec 2015)
Log Message:
-----------
root: upgrade root6 to 6.06.00, fix gsl in root5 (closes #50007, #50011)

root6:
  * upgrade to version 6.06.00
  * `cocoa` is always the default variant
    (the Portfile currently doesn't support 10.6 anyway)
  * introduce a new variant `cxx14`
    (enabled by default on Xcode 6.3 and later)
  * add support for compiling with clang 3.8
  * (closes #50011)

root5:
  * fix compatibility with GSL v2
  * make `+gsl` the default variant again (reverts r142498)
  * (closes #50007)

root_select:
  * add more files from the new `root6` version

Revision Links:
--------------
    https://trac.macports.org/changeset/142498

Modified Paths:
--------------
    trunk/dports/science/root5/Portfile
    trunk/dports/science/root5/files/root5
    trunk/dports/science/root6/Portfile
    trunk/dports/science/root6/files/root6
    trunk/dports/sysutils/root_select/Portfile
    trunk/dports/sysutils/root_select/files/base
    trunk/dports/sysutils/root_select/files/none

Added Paths:
-----------
    trunk/dports/science/root5/files/patch-math-mathmore-src-GSLMultiFit.h.diff

Modified: trunk/dports/science/root5/Portfile
===================================================================
--- trunk/dports/science/root5/Portfile	2015-12-16 13:36:54 UTC (rev 143636)
+++ trunk/dports/science/root5/Portfile	2015-12-16 13:56:33 UTC (rev 143637)
@@ -10,7 +10,7 @@
 
 github.setup        root-mirror root 5-34-34 v
 version             5.34.34
-revision            1
+revision            2
 
 set version_major   [lindex [split ${version} .] 0]
 
@@ -50,6 +50,8 @@
 select.group        root
 select.file         ${filespath}/${name}
 
+patchfiles-append   patch-math-mathmore-src-GSLMultiFit.h.diff
+
 post-patch {
 #   reinplace "s|-lfreetype| \`freetype-config --libs\`|g" ${worksrcpath}/config/root-config.in
     reinplace "s|\"/usr/include\"|\"${prefix}/include /usr/include\"|g" ${worksrcpath}/configure
@@ -187,7 +189,7 @@
 
 universal_variant   no
 
-default_variants    +ssl +xml +minuit2 +tmva +roofit +graphviz +opengl +soversion +http
+default_variants    +ssl +xml +gsl +minuit2 +tmva +roofit +graphviz +opengl +soversion +http
 
 # Since ROOT 5.34.15 the cocoa backend is default on OSX 10.8 or newer
 # We also make it default on 10.7

Added: trunk/dports/science/root5/files/patch-math-mathmore-src-GSLMultiFit.h.diff
===================================================================
--- trunk/dports/science/root5/files/patch-math-mathmore-src-GSLMultiFit.h.diff	                        (rev 0)
+++ trunk/dports/science/root5/files/patch-math-mathmore-src-GSLMultiFit.h.diff	2015-12-16 13:56:33 UTC (rev 143637)
@@ -0,0 +1,77 @@
+From 850a56cad37733694a6858314e30e3dafbacc220 Mon Sep 17 00:00:00 2001
+From: Pere Mato <pere.mato at cern.ch>
+Date: Tue, 15 Dec 2015 11:58:24 +0100
+Subject: [PATCH] Fix for ROOT-7776 - Integrate GSL 2.0 in ROOT.
+
+---
+ math/mathmore/src/GSLMultiFit.h | 40 ++++++++++++++++++++++++++--------------
+ 1 file changed, 26 insertions(+), 14 deletions(-)
+
+diff --git a/math/mathmore/src/GSLMultiFit.h b/math/mathmore/src/GSLMultiFit.h
+index a1cb348..e2570a0 100644
+--- math/mathmore/src/GSLMultiFit.h
++++ math/mathmore/src/GSLMultiFit.h
+@@ -31,6 +31,7 @@
+ #include "gsl/gsl_matrix.h"
+ #include "gsl/gsl_multifit_nlin.h"
+ #include "gsl/gsl_blas.h"
++#include "gsl/gsl_version.h"
+ #include "GSLMultiFitFunctionWrapper.h"
+ 
+ #include "Math/IFunction.h"
+@@ -127,20 +128,24 @@ class GSLMultiFit {
+    int Iterate() { 
+       if (fSolver == 0) return -1; 
+       return gsl_multifit_fdfsolver_iterate(fSolver); 
+-   }
+-
+-   /// parameter values at the minimum 
+-   const double * X() const { 
+-      if (fSolver == 0) return 0; 
+-      gsl_vector * x =  gsl_multifit_fdfsolver_position(fSolver);       
+-      return x->data; 
+    } 
+ 
+-   /// gradient value at the minimum 
+-   const double * Gradient() const { 
+-      if (fSolver == 0) return 0; 
+-      gsl_multifit_gradient(fSolver->J, fSolver->f,fVec);       
+-      return fVec->data; 
++   /// parameter values at the minimum
++   const double * X() const {
++      if (fSolver == 0) return 0;
++      gsl_vector * x =  gsl_multifit_fdfsolver_position(fSolver);
++      return x->data;
++   }
++
++   /// gradient value at the minimum
++   const double * Gradient() const {
++      if (fSolver == 0) return 0;
++#if GSL_MAJOR_VERSION  > 1
++      fType->gradient(fSolver->state, fVec);
++#else
++      gsl_multifit_gradient(fSolver->J, fSolver->f,fVec);
++#endif
++      return fVec->data;
+    }
+ 
+    /// return covariance matrix of the parameters
+@@ -150,9 +155,16 @@ class GSLMultiFit {
+       unsigned int npar = fSolver->fdf->p; 
+       fCov = gsl_matrix_alloc( npar, npar ); 
+       static double kEpsrel = 0.0001;
++#if GSL_MAJOR_VERSION > 1
++      gsl_matrix* J = gsl_matrix_alloc(npar,npar);
++      gsl_multifit_fdfsolver_jac (fSolver, J);
++      int ret = gsl_multifit_covar(J, kEpsrel, fCov);
++      gsl_matrix_free(J);
++#else
+       int ret = gsl_multifit_covar(fSolver->J, kEpsrel, fCov);
+-      if (ret != GSL_SUCCESS) return 0; 
+-      return fCov->data; 
++#endif
++      if (ret != GSL_SUCCESS) return 0;
++      return fCov->data;
+    }
+ 
+    /// test gradient (ask from solver gradient vector)

Modified: trunk/dports/science/root5/files/root5
===================================================================
--- trunk/dports/science/root5/files/root5	2015-12-16 13:36:54 UTC (rev 143636)
+++ trunk/dports/science/root5/files/root5	2015-12-16 13:56:33 UTC (rev 143637)
@@ -28,6 +28,14 @@
 libexec/root5/bin/thisroot.sh
 libexec/root5/bin/xpdtest
 -
+-
+-
+-
+-
+-
+-
+-
+-
 libexec/root5/share/man/man1/cint.1.gz
 libexec/root5/share/man/man1/g2root.1.gz
 libexec/root5/share/man/man1/g2rootold.1.gz

Modified: trunk/dports/science/root6/Portfile
===================================================================
--- trunk/dports/science/root6/Portfile	2015-12-16 13:36:54 UTC (rev 143636)
+++ trunk/dports/science/root6/Portfile	2015-12-16 13:56:33 UTC (rev 143637)
@@ -1,4 +1,4 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
+    # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
 # $Id$
 
 PortSystem          1.0
@@ -8,18 +8,19 @@
 PortGroup           compiler_blacklist_versions 1.0
 PortGroup           github 1.0
 PortGroup           select 1.0
+PortGroup           xcodeversion 1.0
 
 # don't forget to update both the git tag and the version
 #github.setup       root-mirror root <sha>
-github.setup        root-mirror root 6-04-12 v
-version             6.04.12
+github.setup        root-mirror root 6-06-00 v
+version             6.06.00
 
 # this could be a better way to set the version (unless we use a sha sum for the git tag ;)
 # version           [string map {- .} $version]
 set version_major   [lindex [split ${version} .] 0]
 
-checksums           rmd160  a607eb11c3e84c8e61c1c7dcdad5de7daa0c998c \
-                    sha256  140de60f190970453dd0c53aa27b33fa73fe1c8a6e863620a4c6fb9ac9a975a2
+checksums           rmd160  84ce0e3b637e2cc81cc4d6c598118e50d5f18125 \
+                    sha256  90416cd4d836b8ca48c2e31cc7774a5e35ee21f0748596487e39fa0af2cf2324
 
 name                root${version_major}
 categories          science
@@ -60,9 +61,10 @@
 select.file         ${filespath}/${name}
 
 # Force a compatible compiler
+#compiler.blacklist-append *gcc* {clang < 602}  macports-clang-3.4 macports-clang-3.3
+#compiler.fallback-append  macports-clang-3.7 macports-clang-3.6 macports-clang-3.5
 compiler.blacklist-append *gcc* {clang < 500} macports-clang-3.3
-compiler.fallback-append  macports-clang-3.7 macports-clang-3.6 macports-clang-3.5 \
-                          macports-clang-3.4
+compiler.fallback-append  macports-clang-3.7 macports-clang-3.6 macports-clang-3.5
 
 # port specific location
 set install_prefix ${prefix}/libexec/root${version_major}
@@ -124,6 +126,7 @@
                     -Dvc=OFF \
                     -Dastiff=ON \
                     -Dgeocad=OFF \
+                    -Dr=OFF \
                     -DPNG_LIBRARY=${prefix}/lib/libpng.dylib \
                     -DPNG_PNG_INCLUDE_DIR=${prefix}/include
 
@@ -169,9 +172,12 @@
 }
 
 post-destroot {
-    # create versioned symlinks for the content of libexec
-    # bin dir
+    # Temporary - Set execute flag on binaries (broken in 6.06.00)
     foreach f [glob -directory ${destroot}${install_prefix}/bin *] {
+        system "chmod +x $f"
+    }
+    # create versioned symlinks for the content of libexec bin dir
+    foreach f [glob -directory ${destroot}${install_prefix}/bin *] {
         set filename  [file tail $f]
         set extension [file extension $filename]
         set base      [file rootname $filename]
@@ -224,22 +230,13 @@
 
 universal_variant   no
 
-default_variants    +ssl +xml +gsl +minuit2 +tmva +roofit +graphviz +opengl +soversion +http
+default_variants    +cocoa +ssl +xml +gsl +minuit2 +tmva +roofit +graphviz +opengl +soversion +http
 
-# Since ROOT 5.34.15 the cocoa backend is default on OSX 10.8 or newer
-# We also make it default on 10.7
-if {${os.major} > 10} {
-    set default_gui_variant +cocoa
-} else {
-    set default_gui_variant +x11
+# Enable C++14 by default when Xcode allows (Xcode 6.3 onwards)
+if { [vercmp $xcodeversion "6.3"] >= 0 } {
+    default_variants-append +cxx14
 }
 
-# variant geocad description {Enable CAD Interface} {
-#     configure.args-replace  -Dgeocad=OFF -Dgeocad=ON
-#     depends_lib-append      port:oce
-#     configure.args-append   -DOCC_INCLUDE_DIR="${prefix}/include/oce"
-# }
-
 variant qt4 description {Enable QT4 support} {
     configure.args-replace  -Dqt=OFF -Dqt=ON
     PortGroup qt4 1.0
@@ -247,6 +244,8 @@
 
 variant cxx14 description {Enable c++14 compiler support} {
     configure.args-replace  -Dcxx14=OFF -Dcxx14=ON
+    # Update compiler blacklist to force use of MP's Clang 3.7 when required
+    compiler.blacklist-append {clang < 602} macports-clang-3.4
 }
 
 variant valgrind description {Build internal LLVM library with valgrind support} {
@@ -423,6 +422,9 @@
             foreach f [ exec find ${destroot}${install_prefix} -type f -and -name "*.py" ] {
                 reinplace "s|${pystringtoreplace}|${prefix}/bin/python${active_python_version}|g" $f
             }
+            foreach f [ exec find ${destroot}${install_prefix}/bin -type f | xargs grep -Il ${pystringtoreplace} ] {
+                reinplace "s|${pystringtoreplace}|${prefix}/bin/python${active_python_version}|g" $f
+            }
         }
 
     }
@@ -487,14 +489,14 @@
 variant postgresql90 conflicts postgresql92 description {Build with PostgreSQL 9.0 support} {
     configure.args-replace -Dpgsql=OFF -Dpgsql=ON
     configure.args-append  -DPOSTGRESQL_INCLUDE_DIR="${prefix}/include/postgresql90"\
-                           -DPOSTGRESQL_LIBRARIES="${prefix}/lib/postgresql90/libpq.dylib"
+                           -DPOSTGRESQL_LIBRARY="${prefix}/lib/postgresql90/libpq.dylib"
     depends_lib-append      port:libpqxx port:postgresql90
 }
 
 variant postgresql92 conflicts postgresql90 description {Build with PostgreSQL 9.2 support} {
     configure.args-replace -Dpgsql=OFF -Dpgsql=ON
     configure.args-append  -DPOSTGRESQL_INCLUDE_DIR="${prefix}/include/postgresql92" \
-                           -DPOSTGRESQL_LIBRARIES="${prefix}/lib/postgresql92/libpq.dylib"
+                           -DPOSTGRESQL_LIBRARY="${prefix}/lib/postgresql92/libpq.dylib"
     depends_lib-append      port:libpqxx port:postgresql92
 }
 
@@ -540,17 +542,12 @@
                             -DOPENGL_glu_LIBRARY=${prefix}/lib/libGLU.dylib
 }
 
-# If neither graphical variant is set, use default
-if { ![variant_isset cocoa] && ![variant_isset x11] } {
-    default_variants-append ${default_gui_variant}
-}
-
 # ========================================================================================
 # Setup various clang variants, to provide alternative C++ compilers that support cocoa
 # ========================================================================================
 
 # List of possible clang versions that work
-set clang_versions { 3.4 3.5 3.6 3.7 }
+set clang_versions { 3.4 3.5 3.6 3.7 3.8 }
 
 # Define the available variants
 foreach clang_ver ${clang_versions} {
@@ -567,12 +564,12 @@
 
 # make sure that the proper variant is automatically selected
 # (ROOT crashes if the compiler it was built with doesn't exist)
-if { ![variant_isset clang33] && ![variant_isset clang34] &&
-     ![variant_isset clang35] && ![variant_isset clang36] &&
-     ![variant_isset clang37] } {
-    if       { ${configure.compiler} eq "macports-clang-3.3" } {
-        default_variants-append +clang33
-    } elseif { ${configure.compiler} eq "macports-clang-3.4" } {
+if { ![variant_isset clang34] &&
+     ![variant_isset clang35] &&
+     ![variant_isset clang36] &&
+     ![variant_isset clang37] &&
+     ![variant_isset clang38] } {
+    if       { ${configure.compiler} eq "macports-clang-3.4" } {
         default_variants-append +clang34
     } elseif { ${configure.compiler} eq "macports-clang-3.5" } {
         default_variants-append +clang35
@@ -580,6 +577,8 @@
         default_variants-append +clang36
     } elseif { ${configure.compiler} eq "macports-clang-3.7" } {
         default_variants-append +clang37
+    } elseif { ${configure.compiler} eq "macports-clang-3.8" } {
+        default_variants-append +clang38
     }
 }
 
@@ -655,7 +654,8 @@
 
 # ========================================================================================
 
-# Problems finding includes ...
+# Various variants etc. with problems. Work in progress...
+
 # variant ruby description {Build with ruby support} {
 #     configure.args-replace  -Druby=OFF -Druby=ON
 #     depends_lib-append      port:ruby
@@ -665,3 +665,14 @@
 # livecheck.type              regex
 # livecheck.url               http://root.cern.ch/svn/root/trunk
 # livecheck.regex             ${name}_v(\[0-9a-z.\]+)\\.source
+
+# variant geocad description {Enable CAD Interface} {
+#     configure.args-replace  -Dgeocad=OFF -Dgeocad=ON
+#     depends_lib-append      port:oce
+#     configure.args-append   -DOCC_INCLUDE_DIR="${prefix}/include/oce"
+# }
+
+# variant r description {Enable R support} {
+#     configure.args-replace  -Dr=OFF -Dr=ON
+#     depends_lib-append  port:R
+# }

Modified: trunk/dports/science/root6/files/root6
===================================================================
--- trunk/dports/science/root6/files/root6	2015-12-16 13:36:54 UTC (rev 143636)
+++ trunk/dports/science/root6/files/root6	2015-12-16 13:56:33 UTC (rev 143637)
@@ -28,12 +28,20 @@
 libexec/root6/bin/thisroot.sh
 -
 libexec/root6/bin/rootcling
+libexec/root6/bin/rootbrowse
+libexec/root6/bin/rootcp
+libexec/root6/bin/rooteventselector
+libexec/root6/bin/rootls
+libexec/root6/bin/rootmkdir
+libexec/root6/bin/rootmv
+libexec/root6/bin/rootprint
+libexec/root6/bin/rootrm
 -
 libexec/root6/share/man/man1/g2root.1.gz
 libexec/root6/share/man/man1/g2rootold.1.gz
 libexec/root6/share/man/man1/genmap.1.gz
-libexec/root6/share/man/man1/genreflex-rootcint.1.gz
-libexec/root6/share/man/man1/genreflex.1.gz
+-
+-
 libexec/root6/share/man/man1/h2root.1.gz
 libexec/root6/share/man/man1/hadd.1.gz
 libexec/root6/share/man/man1/hist2workspace.1.gz
@@ -54,7 +62,7 @@
 libexec/root6/share/man/man1/proofd.1.gz
 libexec/root6/share/man/man1/proofserv.1.gz
 libexec/root6/share/man/man1/proofserva.1.gz
-libexec/root6/share/man/man1/rlibmap.1.gz
+-
 libexec/root6/share/man/man1/rmkdepend.1.gz
 libexec/root6/share/man/man1/root-config.1.gz
 libexec/root6/share/man/man1/root.1.gz
@@ -69,7 +77,7 @@
 libexec/root6/share/man/man1/system.rootdaemonrc.1.gz
 libexec/root6/share/man/man1/xpdtest.1.gz
 libexec/root6/share/man/man1/xproofd.1.gz
-libexec/root6/share/man/man1/rootcling.1.gz
+-
 libexec/root6/etc/root
 libexec/root6/include/root
 libexec/root6/share

Modified: trunk/dports/sysutils/root_select/Portfile
===================================================================
--- trunk/dports/sysutils/root_select/Portfile	2015-12-16 13:36:54 UTC (rev 143636)
+++ trunk/dports/sysutils/root_select/Portfile	2015-12-16 13:56:33 UTC (rev 143637)
@@ -5,7 +5,7 @@
 PortGroup           select 1.0
 
 name                root_select
-version             1.1
+version             1.2
 
 categories          sysutils science
 platforms           darwin

Modified: trunk/dports/sysutils/root_select/files/base
===================================================================
--- trunk/dports/sysutils/root_select/files/base	2015-12-16 13:36:54 UTC (rev 143636)
+++ trunk/dports/sysutils/root_select/files/base	2015-12-16 13:56:33 UTC (rev 143637)
@@ -28,6 +28,14 @@
 bin/thisroot.sh
 bin/xpdtest
 bin/rootcling
+bin/rootbrowse
+bin/rootcp
+bin/rooteventselector
+bin/rootls
+bin/rootmkdir
+bin/rootmv
+bin/rootprint
+bin/rootrm
 share/man/man1/cint.1.gz
 share/man/man1/g2root.1.gz
 share/man/man1/g2rootold.1.gz

Modified: trunk/dports/sysutils/root_select/files/none
===================================================================
--- trunk/dports/sysutils/root_select/files/none	2015-12-16 13:36:54 UTC (rev 143636)
+++ trunk/dports/sysutils/root_select/files/none	2015-12-16 13:56:33 UTC (rev 143637)
@@ -73,3 +73,11 @@
 -
 -
 -
+-
+-
+-
+-
+-
+-
+-
+-
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20151216/0c3d797a/attachment.html>


More information about the macports-changes mailing list