[92004] trunk/dports/lang
takeshi at macports.org
takeshi at macports.org
Sun Apr 15 15:06:29 PDT 2012
Revision: 92004
https://trac.macports.org/changeset/92004
Author: takeshi at macports.org
Date: 2012-04-15 15:06:29 -0700 (Sun, 15 Apr 2012)
Log Message:
-----------
omnixmp: adding XcalableMP
Added Paths:
-----------
trunk/dports/lang/omnixmp/
trunk/dports/lang/omnixmp/Portfile
trunk/dports/lang/omnixmp/files/
trunk/dports/lang/omnixmp/files/patch-c-expr.c.diff
trunk/dports/lang/omnixmp/files/patch-configure.diff
trunk/dports/lang/omnixmp/files/patch-ompc_thread.c.diff
Added: trunk/dports/lang/omnixmp/Portfile
===================================================================
--- trunk/dports/lang/omnixmp/Portfile (rev 0)
+++ trunk/dports/lang/omnixmp/Portfile 2012-04-15 22:06:29 UTC (rev 92004)
@@ -0,0 +1,68 @@
+# -*- 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 omnixmp
+version 0.5.4
+categories lang devel parallel
+maintainers takeshi
+description Omni OpenMP/XcalableMP Compiler
+license LGPL-2.1
+long_description \
+ Omni OpenMP/XcalableMP Compiler
+homepage http://www.xcalablemp.org/
+platforms darwin
+master_sites ${homepage}/xmp_files/
+
+checksums rmd160 ba684fab05adccf0fa74eddfe676ca2bcbef3621 \
+ sha256 234202058c4c214b99eeb0c434c466ddf1d18bbf3fc12e4170bcf764fd19ef18
+
+depends_lib port:openmpi \
+ port:flex \
+ port:gmp \
+ port:libxml2
+
+worksrcdir xmp-${version}
+patchfiles patch-configure.diff \
+ patch-ompc_thread.c.diff \
+ patch-c-expr.c.diff
+
+post-patch {
+ if {${build_arch}=="x86_64"} {
+ reinplace "s|CPU=i386|CPU=x86_64|g" ${worksrcpath}/configure
+ }
+}
+
+configure.args --prefix=${prefix}/lib/${name} \
+ --disable-xmpgpu \
+ --with-gmpLibDir=${prefix}/lib \
+ --with-gmpIncDir=${prefix}/include \
+ --with-mpicc=${prefix}/lib/openmpi/bin/mpicc \
+ --with-cflag=${configure.cflags} \
+ --with-cppflag="${configure.cppflags} -I${prefix}/include/libxml2 -I/usr/include -DSIMPLE_SPIN"
+
+if {![variant_isset g95] && ![variant_isset gcc44]} {
+ default_variants +gcc45
+}
+
+use_parallel_build no
+
+variant g95 conflicts gcc44 gcc45 description {use g95 as backend fortran compiler} {
+ depends_lib port:g95
+ configure.fc ${prefix}/bin/g95
+}
+
+variant gcc44 conflicts g95 gcc45 description {use gfortran-mp-4.4 as backend fortran compiler} {
+ depends_lib port:gcc44
+ configure.compiler macports-gcc-4.4
+}
+
+variant gcc45 conflicts g95 gcc44 description {use gfortran-mp-4.5 as backend fortran compiler} {
+ depends_lib port:gcc45
+ configure.compiler macports-gcc-4.5
+}
+
+notes \
+ ${name} is installed in ${prefix}/lib/${name}.\n\
+ Add ${prefix}/lib/${name}/bin to PATH.
Added: trunk/dports/lang/omnixmp/files/patch-c-expr.c.diff
===================================================================
--- trunk/dports/lang/omnixmp/files/patch-c-expr.c.diff (rev 0)
+++ trunk/dports/lang/omnixmp/files/patch-c-expr.c.diff 2012-04-15 22:06:29 UTC (rev 92004)
@@ -0,0 +1,11 @@
+--- C-FrontEnd/src/c-expr.c.orig 2012-04-15 17:44:36.000000000 +0900
++++ C-FrontEnd/src/c-expr.c 2012-04-15 17:46:18.000000000 +0900
+@@ -1309,7 +1309,7 @@
+ int len = strlen(orgToken);
+ char digits[len + 1];
+
+- if(orgToken[0] == '0') {
++ if(orgToken[0] == '0' && len > 2) {
+ char c = orgToken[1];
+ if(c == 'x' || c == 'X' || c == 'b' || c == 'B')
+ strcpy(digits, orgToken + 2); // hex, bin
Added: trunk/dports/lang/omnixmp/files/patch-configure.diff
===================================================================
--- trunk/dports/lang/omnixmp/files/patch-configure.diff (rev 0)
+++ trunk/dports/lang/omnixmp/files/patch-configure.diff 2012-04-15 22:06:29 UTC (rev 92004)
@@ -0,0 +1,38 @@
+--- configure.orig 2012-04-15 17:49:51.000000000 +0900
++++ configure 2012-04-15 17:52:07.000000000 +0900
+@@ -5051,7 +5051,7 @@
+
+ chk=`$BECC --version | head -n1`
+ case $chk in
+-gcc*)
++*gcc* | *clang*)
+ OMC_CONF_LX2X_OPT=""
+ OMC_CONF_NTV_OPT="-std=gnu99 -Wno-implicit"
+ OMC_CONF_LNK_OPT=""
+@@ -5301,7 +5301,7 @@
+ if test "$BEFC" != ""; then
+ chk=`$BEFC --version | head -n1`
+ case $chk in
+- GNU*)
++ GNU* | G95*)
+ OMF_CONF_LX2X_OPT="-gnu"
+ OMF_CONF_NTV_OPT="-ffree-form"
+ OMF_CONF_LNK_OPT=""
+@@ -9229,7 +9229,7 @@
+ # check size of mp_limb_t
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of GNU-MP mp_limb_t" >&5
+ $as_echo_n "checking size of GNU-MP mp_limb_t... " >&6; }
+- lSz=`qcCC utils/csMPlimb.c ./csMPlimb`
++ lSz=`qcCC buildutils/csMPlimb.c ./csMPlimb`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lSz}" >&5
+ $as_echo "${lSz}" >&6; }
+ omniLimbT=""
+@@ -9254,7 +9254,7 @@
+ # check how many mp_limb_t the GNU-MP needed for N bit precision.
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking how many mp_limb_t needed for $omniQPrec bit precision" >&5
+ $as_echo_n "checking how many mp_limb_t needed for $omniQPrec bit precision... " >&6; }
+- omniQRealPrecInLimb=`qcCC utils/cMPlb.c ./cMPlb '' $omniQPrec`
++ omniQRealPrecInLimb=`qcCC buildutils/cMPlb.c ./cMPlb '' $omniQPrec`
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $omniQRealPrecInLimb" >&5
+ $as_echo "$omniQRealPrecInLimb" >&6; }
+ cat >>confdefs.h <<_ACEOF
Added: trunk/dports/lang/omnixmp/files/patch-ompc_thread.c.diff
===================================================================
--- trunk/dports/lang/omnixmp/files/patch-ompc_thread.c.diff (rev 0)
+++ trunk/dports/lang/omnixmp/files/patch-ompc_thread.c.diff 2012-04-15 22:06:29 UTC (rev 92004)
@@ -0,0 +1,16 @@
+--- libompc/src/ompc_thread.c.orig 2012-04-15 17:29:40.000000000 +0900
++++ libompc/src/ompc_thread.c 2012-04-15 17:30:52.000000000 +0900
+@@ -262,11 +262,11 @@
+ */
+ ompc_max_threads = ompc_num_threads;
+
+-#ifdef USE_PTHREAD
++#ifdef USE_PTHREAD_BARRIER
+ pthread_barrier_init(&ompc_thd_bar, 0, ompc_num_threads);
+ #endif
+
+-#if defined(OMNI_OS_IRIX) && defined(USE_PTHREAD)
++#if (defined(OMNI_OS_IRIX) || defined(OMNI_OS_DARWIN)) && defined(USE_PTHREAD)
+ pthread_setconcurrency(ompc_max_threads);
+ #endif /* OMNI_OS_IRIX && USE_PTHREAD */
+
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120415/58b09c07/attachment-0001.html>
More information about the macports-changes
mailing list