[94486] trunk/dports/science

jmr at macports.org jmr at macports.org
Wed Jun 20 16:09:33 PDT 2012


Revision: 94486
          https://trac.macports.org/changeset/94486
Author:   jmr at macports.org
Date:     2012-06-20 16:09:33 -0700 (Wed, 20 Jun 2012)
Log Message:
-----------
New port: raxml (#32050)

Added Paths:
-----------
    trunk/dports/science/raxml/
    trunk/dports/science/raxml/Portfile
    trunk/dports/science/raxml/files/
    trunk/dports/science/raxml/files/Makefiles.patch

Added: trunk/dports/science/raxml/Portfile
===================================================================
--- trunk/dports/science/raxml/Portfile	                        (rev 0)
+++ trunk/dports/science/raxml/Portfile	2012-06-20 23:09:33 UTC (rev 94486)
@@ -0,0 +1,83 @@
+# -*- 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
+
+name            raxml
+version         7.2.9
+description     Estimation of phylogenetic trees
+long_description        RAxML is a program for sequential and parallel estimation of\
+        phylogenetic trees written by Alexandros Stamatakis. By default the Pthreads\
+        implementation will be installed, use -pthreads +mpi for the MPI variant.
+license         GPL-2+
+maintainers     gmail.com:mattoates
+categories      science
+homepage        http://sco.h-its.org/exelixis
+platforms       darwin
+master_sites    ${homepage}/software/
+distfiles       RAxML-${version}.tar.bz2
+checksums       md5     028b70c7c96900e1f70cdc2c2acab449 \
+                sha1    a038b72e197434d7fa8a7c35687b70adb4b0750b
+use_bzip2       yes
+
+patchfiles      Makefiles.patch
+
+use_configure   no
+
+#Strings used by the variant options
+set HPCm ""
+set HPCb ""
+set SSEm ""
+set SSEb ""
+
+#Use the MPI implementation
+variant mpi conflicts pthreads description {MPI implementation} {
+        depends_lib port:openmpi
+        set HPCm ".MPI"
+        set HPCb "-MPI"
+        configure.cc    ${prefix}/bin/openmpicc
+}
+
+#Use the pthreads implementation (default)
+variant pthreads conflicts mpi description {Pthreads implementation} {
+        set HPCm ".PTHREADS"
+        set HPCb "-PTHREADS"
+}
+
+if {![variant_isset mpi]} {
+    default_variants        +pthreads
+}
+
+#For Intel machines add SSE as a variant and use it by default with pthreads
+if {$build_arch == "i386" || $build_arch == "x86_64"} {
+
+variant sse3 description {Use the SSE3 extended instruction set from Intel since 2004} {
+        set SSEm ".SSE3"
+        set SSEb "-SSE3"
+}
+
+if {![catch {sysctl hw.optional.sse3} result] && $result == 1} {
+    default_variants-append  +sse3
+}
+} else {
+    post-patch {
+        reinplace "s/-msse//" ${worksrcpath}/Makefile.gcc \
+                              ${worksrcpath}/Makefile.PTHREADS.gcc \
+                              ${worksrcpath}/Makefile.MPI.gcc
+    }
+}
+
+#Pass in architecture information
+build.args  EXTRA_CFLAGS="${configure.cc_archflags}" \
+            LDFLAGS="${configure.ld_archflags}"
+
+#Make sure we are using the correct Makefile for this variant combo
+pre-build {
+        build.pre_args  -f Makefile${SSEm}${HPCm}.gcc
+        build.args-append CC="${configure.cc}"
+}
+
+#We only need the single raxml binary
+destroot {
+        copy ${worksrcpath}/raxmlHPC${HPCb}${SSEb} ${destroot}${prefix}/bin/raxml
+}


Property changes on: trunk/dports/science/raxml/Portfile
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Added: trunk/dports/science/raxml/files/Makefiles.patch
===================================================================
--- trunk/dports/science/raxml/files/Makefiles.patch	                        (rev 0)
+++ trunk/dports/science/raxml/files/Makefiles.patch	2012-06-20 23:09:33 UTC (rev 94486)
@@ -0,0 +1,120 @@
+--- Makefile.MPI.gcc.orig	2011-04-07 06:42:34.000000000 +1000
++++ Makefile.MPI.gcc	2012-06-21 09:01:59.000000000 +1000
+@@ -3,7 +3,7 @@
+ CC = mpicc 
+ 
+ 
+-CFLAGS = -D_WAYNE_MPI -D_GNU_SOURCE -fomit-frame-pointer -funroll-loops -O2  -msse
++CFLAGS = -D_WAYNE_MPI -D_GNU_SOURCE -fomit-frame-pointer -funroll-loops -O2  -msse  $(EXTRA_CFLAGS)
+ 
+ 
+ LIBRARIES = -lm
+@@ -17,7 +17,7 @@
+ GLOBAL_DEPS = axml.h globalVariables.h
+ 
+ raxmlHPC-MPI : $(objs)
+-	$(CC) -o raxmlHPC-MPI $(objs) $(LIBRARIES) 
++	$(CC) $(LDFLAGS) -o raxmlHPC-MPI $(objs) $(LIBRARIES) 
+ 
+ classify.o : classify.c $(GLOBAL_DEPS)
+ evaluatePartialSpecialGeneric.o : evaluatePartialSpecialGeneric.c $(GLOBAL_DEPS)
+--- Makefile.PTHREADS.gcc.orig	2011-04-07 06:42:34.000000000 +1000
++++ Makefile.PTHREADS.gcc	2012-06-21 09:01:51.000000000 +1000
+@@ -4,7 +4,7 @@
+ CC = gcc 
+ 
+ 
+-CFLAGS = -D_GNU_SOURCE -fomit-frame-pointer -funroll-loops -O2  -D_USE_PTHREADS -msse
++CFLAGS = -D_GNU_SOURCE -fomit-frame-pointer -funroll-loops -O2  -D_USE_PTHREADS -msse $(EXTRA_CFLAGS)
+ 
+ 
+ LIBRARIES = -lm -pthread
+@@ -18,7 +18,7 @@
+ GLOBAL_DEPS = axml.h globalVariables.h
+ 
+ raxmlHPC-PTHREADS : $(objs)
+-	$(CC) -o raxmlHPC-PTHREADS $(objs) $(LIBRARIES) 
++	$(CC) $(LDFLAGS) -o raxmlHPC-PTHREADS $(objs) $(LIBRARIES) 
+ 
+ classify.o : classify.c $(GLOBAL_DEPS)
+ evaluatePartialSpecialGeneric.o : evaluatePartialSpecialGeneric.c $(GLOBAL_DEPS)
+--- Makefile.SSE3.MPI.gcc.orig	2012-06-21 09:01:23.000000000 +1000
++++ Makefile.SSE3.MPI.gcc	2012-06-21 09:01:34.000000000 +1000
+@@ -2,7 +2,7 @@
+ 
+ CC = mpicc 
+ 
+-CFLAGS = -D_WAYNE_MPI -D__SIM_SSE3 -O2 -D_GNU_SOURCE -msse3 -fomit-frame-pointer -funroll-loops  
++CFLAGS = -D_WAYNE_MPI -D__SIM_SSE3 -O2 -D_GNU_SOURCE -msse3 -fomit-frame-pointer -funroll-loops $(EXTRA_CFLAGS)
+ 
+ LIBRARIES = -lm
+ 
+@@ -15,7 +15,7 @@
+ GLOBAL_DEPS = axml.h globalVariables.h
+ 
+ raxmlHPC-MPI-SSE3 : $(objs)
+-	$(CC) -o raxmlHPC-MPI-SSE3 $(objs) $(LIBRARIES) 
++	$(CC) $(LDFLAGS) -o raxmlHPC-MPI-SSE3 $(objs) $(LIBRARIES) 
+ 
+ classify.o : classify.c $(GLOBAL_DEPS)
+ evaluatePartialSpecialGeneric.o : evaluatePartialSpecialGeneric.c $(GLOBAL_DEPS)
+--- Makefile.SSE3.PTHREADS.gcc.orig	2011-04-07 06:42:34.000000000 +1000
++++ Makefile.SSE3.PTHREADS.gcc	2012-06-21 09:00:59.000000000 +1000
+@@ -3,7 +3,7 @@
+ 
+ CC = gcc 
+ 
+-CFLAGS = -D_USE_PTHREADS -D__SIM_SSE3 -O2 -D_GNU_SOURCE -msse3 -fomit-frame-pointer -funroll-loops  #-Wall -pedantic -Wunused-parameter -Wredundant-decls  -Wreturn-type  -Wswitch-default -Wunused-value -Wimplicit  -Wimplicit-function-declaration  -Wimplicit-int -Wimport  -Wunused  -Wunused-function  -Wunused-label -Wno-int-to-pointer-cast -Wbad-function-cast  -Wmissing-declarations -Wmissing-prototypes  -Wnested-externs  -Wold-style-definition -Wstrict-prototypes  -Wdeclaration-after-statement -Wpointer-sign -Wextra -Wredundant-decls -Wunused -Wunused-function -Wunused-parameter -Wunused-value  -Wunused-variable -Wformat  -Wformat-nonliteral -Wparentheses -Wsequence-point -Wuninitialized -Wundef -Wbad-function-cast
++CFLAGS = -D_USE_PTHREADS -D__SIM_SSE3 -O2 -D_GNU_SOURCE -msse3 -fomit-frame-pointer -funroll-loops $(EXTRA_CFLAGS)  #-Wall -pedantic -Wunused-parameter -Wredundant-decls  -Wreturn-type  -Wswitch-default -Wunused-value -Wimplicit  -Wimplicit-function-declaration  -Wimplicit-int -Wimport  -Wunused  -Wunused-function  -Wunused-label -Wno-int-to-pointer-cast -Wbad-function-cast  -Wmissing-declarations -Wmissing-prototypes  -Wnested-externs  -Wold-style-definition -Wstrict-prototypes  -Wdeclaration-after-statement -Wpointer-sign -Wextra -Wredundant-decls -Wunused -Wunused-function -Wunused-parameter -Wunused-value  -Wunused-variable -Wformat  -Wformat-nonliteral -Wparentheses -Wsequence-point -Wuninitialized -Wundef -Wbad-function-cast
+ 
+ 
+ LIBRARIES = -lm -pthread 
+@@ -17,7 +17,7 @@
+ GLOBAL_DEPS = axml.h globalVariables.h
+ 
+ raxmlHPC : $(objs)
+-	$(CC) -o raxmlHPC-PTHREADS-SSE3 $(objs) $(LIBRARIES) 
++	$(CC) $(LDFLAGS) -o raxmlHPC-PTHREADS-SSE3 $(objs) $(LIBRARIES) 
+ 
+ #rev_functions.o : rev_functions.c $(GLOBAL_DEPS)
+ classify.o : classify.c $(GLOBAL_DEPS)
+--- Makefile.SSE3.gcc.orig	2011-04-07 06:42:34.000000000 +1000
++++ Makefile.SSE3.gcc	2012-06-21 09:00:41.000000000 +1000
+@@ -3,7 +3,7 @@
+ 
+ CC = gcc 
+ 
+-CFLAGS = -D__SIM_SSE3 -msse3 -D_GNU_SOURCE -O2 -fomit-frame-pointer -funroll-loops
++CFLAGS = -D__SIM_SSE3 -msse3 -D_GNU_SOURCE -O2 -fomit-frame-pointer -funroll-loops $(EXTRA_CFLAGS)
+ 
+ LIBRARIES = -lm
+ 
+@@ -16,7 +16,7 @@
+ GLOBAL_DEPS = axml.h globalVariables.h
+ 
+ raxmlHPC : $(objs)
+-	$(CC) -o raxmlHPC-SSE3 $(objs) $(LIBRARIES) 
++	$(CC) $(LDFLAGS) -o raxmlHPC-SSE3 $(objs) $(LIBRARIES) 
+ 
+ classify.o : classify.c $(GLOBAL_DEPS)
+ evaluatePartialSpecialGeneric.o : evaluatePartialSpecialGeneric.c $(GLOBAL_DEPS)
+--- Makefile.gcc.orig	2012-06-21 09:00:26.000000000 +1000
++++ Makefile.gcc	2012-06-21 09:00:34.000000000 +1000
+@@ -4,7 +4,7 @@
+ CC = gcc 
+ 
+ 
+-CFLAGS = -D_GNU_SOURCE  -fomit-frame-pointer -funroll-loops -O2 -msse 
++CFLAGS = -D_GNU_SOURCE  -fomit-frame-pointer -funroll-loops -O2 -msse $(EXTRA_CFLAGS)
+ #-Wall -pedantic -Wunused-parameter -Wredundant-decls  -Wreturn-type  -Wswitch-default -Wunused-value -Wimplicit  -Wimplicit-function-declaration  -Wimplicit-int -Wimport  -Wunused  -Wunused-function  -Wunused-label -Wno-int-to-pointer-cast -Wbad-function-cast  -Wmissing-declarations -Wmissing-prototypes  -Wnested-externs  -Wold-style-definition -Wstrict-prototypes  -Wdeclaration-after-statement -Wpointer-sign -Wextra -Wredundant-decls -Wunused -Wunused-function -Wunused-parameter -Wunused-value  -Wunused-variable -Wformat  -Wformat-nonliteral -Wparentheses -Wsequence-point -Wuninitialized -Wundef -Wbad-function-cast
+ 
+ LIBRARIES = -lm
+@@ -18,7 +18,7 @@
+ GLOBAL_DEPS = axml.h globalVariables.h
+ 
+ raxmlHPC : $(objs)
+-	$(CC) -o raxmlHPC $(objs) $(LIBRARIES) 
++	$(CC) $(LDFLAGS) -o raxmlHPC $(objs) $(LIBRARIES) 
+ 
+ classify.o : classify.c $(GLOBAL_DEPS)
+ evaluatePartialSpecialGeneric.o : evaluatePartialSpecialGeneric.c $(GLOBAL_DEPS)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120620/ccf8a8ff/attachment-0001.html>


More information about the macports-changes mailing list