[126961] trunk/dports/lang/g95

takeshi at macports.org takeshi at macports.org
Sat Oct 18 03:53:19 PDT 2014


Revision: 126961
          https://trac.macports.org/changeset/126961
Author:   takeshi at macports.org
Date:     2014-10-18 03:53:19 -0700 (Sat, 18 Oct 2014)
Log Message:
-----------
g95: enable build with clang

Modified Paths:
--------------
    trunk/dports/lang/g95/Portfile

Added Paths:
-----------
    trunk/dports/lang/g95/files/patch-libf95-intrinsics-dot_product10.c.diff
    trunk/dports/lang/g95/files/patch-libf95-intrinsics-matmul10.c.diff
    trunk/dports/lang/g95/files/patch-libf95-intrinsics-random.c.diff
    trunk/dports/lang/g95/files/patch-libf95-io-read.c.diff
    trunk/dports/lang/g95/files/patch-libf95-math-ff.c.diff
    trunk/dports/lang/g95/files/patch-libf95-math-x87.S.diff
    trunk/dports/lang/g95/files/patch-libf95-quad-power16.c.diff

Modified: trunk/dports/lang/g95/Portfile
===================================================================
--- trunk/dports/lang/g95/Portfile	2014-10-18 07:32:43 UTC (rev 126960)
+++ trunk/dports/lang/g95/Portfile	2014-10-18 10:53:19 UTC (rev 126961)
@@ -5,7 +5,7 @@
 
 name            g95
 version         0.93
-revision        3
+revision        4
 platforms       darwin
 categories      lang
 license         GPL-2
@@ -61,7 +61,14 @@
 
 patchfiles      patch-Makefile.in.diff \
                 patch-darwin.h.diff \
-                patch-lang.opt.diff
+                patch-lang.opt.diff \
+                patch-libf95-intrinsics-dot_product10.c.diff \
+                patch-libf95-intrinsics-matmul10.c.diff \
+                patch-libf95-intrinsics-random.c.diff \
+                patch-libf95-io-read.c.diff \
+                patch-libf95-math-ff.c.diff \
+                patch-libf95-math-x87.S.diff \
+                patch-libf95-quad-power16.c.diff
 
 universal_variant no
 use_parallel_build  no
@@ -87,8 +94,7 @@
     }
 }
 
-compiler.blacklist  clang
-
+configure.cflags-append -std=gnu89
 pre-configure {
     file mkdir ${workpath}/gcc-${version_gcc}/${name}
     reinplace "s|tjmp %%edx|tjmp *%%edx|" ${workpath}/gcc-${version_gcc}/gcc/config/i386/i386.c

Added: trunk/dports/lang/g95/files/patch-libf95-intrinsics-dot_product10.c.diff
===================================================================
--- trunk/dports/lang/g95/files/patch-libf95-intrinsics-dot_product10.c.diff	                        (rev 0)
+++ trunk/dports/lang/g95/files/patch-libf95-intrinsics-dot_product10.c.diff	2014-10-18 10:53:19 UTC (rev 126961)
@@ -0,0 +1,56 @@
+--- libf95.a-0.93/intrinsics/dot_product10.c.orig	2008-06-23 10:45:50.000000000 +0900
++++ libf95.a-0.93/intrinsics/dot_product10.c	2014-10-18 11:32:49.000000000 +0900
+@@ -225,7 +225,7 @@
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "movsbl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (bp), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (bp), "m" (temp) : EAX
+ 
+ #include "dot_product10.c"
+ 
+@@ -237,7 +237,7 @@
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "movswl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (bp), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (bp), "m" (temp) : EAX
+ 
+ #include "dot_product10.c"
+ 
+@@ -247,7 +247,7 @@
+                  "fldt ( %" EAX ")\n" : : "m" (ap) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+-                 "fild ( %" EAX ")\n" : : "m" (bp), "m" (temp) : EAX
++                 "fildl ( %" EAX ")\n" : : "m" (bp), "m" (temp) : EAX
+ 
+ #include "dot_product10.c"
+ 
+@@ -286,7 +286,7 @@
+ #define LOAD_A   "mov %0, %" EAX "\n" \
+                  "movsbl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (ap), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (ap), "m" (temp) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "fldt ( %" EAX ")\n" : : "m" (bp) : EAX
+@@ -299,7 +299,7 @@
+ #define LOAD_A   "mov %0, %" EAX "\n" \
+                  "movswl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (ap), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (ap), "m" (temp) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "fldt ( %" EAX ")\n" : : "m" (bp) : EAX
+@@ -309,7 +309,7 @@
+ #define SUBROUTINE     prefix(dot_product_i4_r10)
+ 
+ #define LOAD_A   "mov %0, %" EAX "\n" \
+-                 "fild ( %" EAX ")\n" : : "m" (ap), "m" (temp) : EAX
++                 "fildl ( %" EAX ")\n" : : "m" (ap), "m" (temp) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "fldt ( %" EAX ")\n" : : "m" (bp) : EAX

Added: trunk/dports/lang/g95/files/patch-libf95-intrinsics-matmul10.c.diff
===================================================================
--- trunk/dports/lang/g95/files/patch-libf95-intrinsics-matmul10.c.diff	                        (rev 0)
+++ trunk/dports/lang/g95/files/patch-libf95-intrinsics-matmul10.c.diff	2014-10-18 10:53:19 UTC (rev 126961)
@@ -0,0 +1,110 @@
+--- libf95.a-0.93/intrinsics/matmul10.c.orig	2008-06-23 10:44:29.000000000 +0900
++++ libf95.a-0.93/intrinsics/matmul10.c	2014-10-18 11:32:28.000000000 +0900
+@@ -899,7 +899,7 @@
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "movsbl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (q), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (q), "m" (temp) : EAX
+ 
+ #include "matmul10.c"
+ 
+@@ -913,7 +913,7 @@
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "movswl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (q), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (q), "m" (temp) : EAX
+ 
+ #include "matmul10.c"
+ 
+@@ -925,7 +925,7 @@
+                  "fldt ( %" EAX ")\n" : : "m" (p) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+-                 "fild ( %" EAX ")\n" : : "m" (q) : EAX
++                 "fildl ( %" EAX ")\n" : : "m" (q) : EAX
+ 
+ #include "matmul10.c"
+ 
+@@ -972,7 +972,7 @@
+ #define LOAD_A   "mov %0, %" EAX "\n" \
+                  "movsbl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (p), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (p), "m" (temp) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "fldt ( %" EAX ")\n" : : "m" (q) : EAX
+@@ -987,7 +987,7 @@
+ #define LOAD_A   "mov %0, %" EAX "\n" \
+                  "movswl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (p), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (p), "m" (temp) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "fldt ( %" EAX ")\n" : : "m" (q) : EAX
+@@ -999,7 +999,7 @@
+ #define SUBROUTINE22     prefix(matmul22_i4r10)
+ 
+ #define LOAD_A   "mov %0, %" EAX "\n" \
+-                 "fild ( %" EAX ")\n" : : "m" (p), "m" (temp) : EAX
++                 "fildl ( %" EAX ")\n" : : "m" (p), "m" (temp) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "fldt ( %" EAX ")\n" : : "m" (q) : EAX
+@@ -1113,7 +1113,7 @@
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "movsbl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (q), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (q), "m" (temp) : EAX
+ 
+ #define LOAD_RESULT "mov %0, %" EAX "\n" \
+                     "fldt (%" EAX ")\n" \
+@@ -1140,7 +1140,7 @@
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "movswl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (q), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (q), "m" (temp) : EAX
+ 
+ #define LOAD_RESULT "mov %0, %" EAX "\n" \
+                     "fldt (%" EAX ")\n" \
+@@ -1166,7 +1166,7 @@
+                   : : "m" (p) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+-                 "fild (%" EAX ")\n" : : "m" (q) : EAX
++                 "fildl (%" EAX ")\n" : : "m" (q) : EAX
+ 
+ #define LOAD_RESULT "mov %0, %" EAX "\n" \
+                     "fldt (%" EAX ")\n" \
+@@ -1340,7 +1340,7 @@
+ #define LOAD_A   "mov %0, %" EAX "\n" \
+                  "movsbl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (p), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (p), "m" (temp) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "fldt ( %" EAX ")\n" \
+@@ -1368,7 +1368,7 @@
+ #define LOAD_A   "mov %0, %" EAX "\n" \
+                  "movswl (%" EAX "), %%eax\n" \
+                  "mov %%eax, %1\n" \
+-                 "fild %1\n" : : "m" (p), "m" (temp) : EAX
++                 "filds %1\n" : : "m" (p), "m" (temp) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "fldt ( %" EAX ")\n" \
+@@ -1394,7 +1394,7 @@
+ #define SUBROUTINE22    prefix(matmul22_i4z10)
+ 
+ #define LOAD_A   "mov %0, %" EAX "\n" \
+-                 "fild (%" EAX ")\n" : : "m" (p) : EAX
++                 "fildl (%" EAX ")\n" : : "m" (p) : EAX
+ 
+ #define LOAD_B   "mov %0, %" EAX "\n" \
+                  "fldt ( %" EAX ")\n" \

Added: trunk/dports/lang/g95/files/patch-libf95-intrinsics-random.c.diff
===================================================================
--- trunk/dports/lang/g95/files/patch-libf95-intrinsics-random.c.diff	                        (rev 0)
+++ trunk/dports/lang/g95/files/patch-libf95-intrinsics-random.c.diff	2014-10-18 10:53:19 UTC (rev 126961)
@@ -0,0 +1,11 @@
+--- libf95.a-0.93/intrinsics/random.c.orig	2008-06-23 10:42:51.000000000 +0900
++++ libf95.a-0.93/intrinsics/random.c	2014-10-18 12:00:44.000000000 +0900
+@@ -208,7 +208,7 @@
+     harvest[0] = xorshf96();
+     harvest[1] = xorshf96() & 0x7FFFFFFF;
+ 
+-    asm("fild %0\n"
++    asm("fildl %0\n"
+ 	"mov %1, %" EAX "\n"
+ 	"fildll (%" EAX ")\n"
+ 	"fscale\n"

Added: trunk/dports/lang/g95/files/patch-libf95-io-read.c.diff
===================================================================
--- trunk/dports/lang/g95/files/patch-libf95-io-read.c.diff	                        (rev 0)
+++ trunk/dports/lang/g95/files/patch-libf95-io-read.c.diff	2014-10-18 10:53:19 UTC (rev 126961)
@@ -0,0 +1,11 @@
+--- libf95.a-0.93/io/read.c.orig	2008-11-19 01:13:37.000000000 +0900
++++ libf95.a-0.93/io/read.c	2014-10-18 11:34:15.000000000 +0900
+@@ -102,7 +102,7 @@
+ 
+ #if HAVE_REAL_10
+     case 10:
+-	asm("fild %0\n"
++	asm("fildl %0\n"
+ 	    "mov %1, %" EAX "\n"
+ 	    "fstpt (%" EAX ")\n" : : "m" (value), "m" (dest) : EAX);
+ 	break;

Added: trunk/dports/lang/g95/files/patch-libf95-math-ff.c.diff
===================================================================
--- trunk/dports/lang/g95/files/patch-libf95-math-ff.c.diff	                        (rev 0)
+++ trunk/dports/lang/g95/files/patch-libf95-math-ff.c.diff	2014-10-18 10:53:19 UTC (rev 126961)
@@ -0,0 +1,29 @@
+--- libf95.a-0.93/math/ff.c.orig	2009-03-25 02:27:34.000000000 +0900
++++ libf95.a-0.93/math/ff.c	2014-10-18 11:35:35.000000000 +0900
+@@ -790,7 +790,7 @@
+ 
+     exp = *i - 1;
+ 
+-    asm("fild %0\n"        /* i */
++    asm("fildl %0\n"        /* i */
+ 	"fldt %1\n"        /* x : i */
+ 	"fxtract\n"        /* sig(x) : exp(x) : i */
+ 	"fstp %%st(1)\n"   /* sig(x) : i */
+@@ -961,7 +961,7 @@
+ 
+     exp = *i;
+ 
+-    asm("fild %0\n"
++    asm("fildl %0\n"
+ 	"fldt %1\n"
+ 	"fscale\n"
+ 	"fstp %%st(1)\n" : : "m" (exp), "m" (*x));
+@@ -1069,7 +1069,7 @@
+     case FF_REGULAR:
+ 	exp = MAN10_LEN - 1;
+ 
+-	asm("fild %0\n"             /* p */
++	asm("fildl %0\n"             /* p */
+ 	    "fldt %1\n"             /* x . p */
+ 	    "fxam\n"
+ 	    "fnstsw\n"

Added: trunk/dports/lang/g95/files/patch-libf95-math-x87.S.diff
===================================================================
--- trunk/dports/lang/g95/files/patch-libf95-math-x87.S.diff	                        (rev 0)
+++ trunk/dports/lang/g95/files/patch-libf95-math-x87.S.diff	2014-10-18 10:53:19 UTC (rev 126961)
@@ -0,0 +1,56 @@
+--- libf95.a-0.93/math/x87.S.orig	2010-04-05 03:49:02.000000000 +0900
++++ libf95.a-0.93/math/x87.S	2014-10-18 13:08:16.000000000 +0900
+@@ -250,7 +250,7 @@
+ 	fldcw	(SP)
+ 	frndint
+ 	fldcw	4(SP)
+-	fistp	(SP)
++	fistps	(SP)
+ 	mov	(SP), %al
+ 	SIGNX_AL
+ 	add	$8, SP
+@@ -266,7 +266,7 @@
+ 	fldcw	(SP)
+ 	frndint
+ 	fldcw	4(SP)
+-	fistp	(SP)
++	fistps	(SP)
+ 	mov	(SP), %ax
+ 	SIGNX_AX
+ 	add	$8, SP
+@@ -675,7 +675,7 @@
+ 	fldcw	(SP)
+ 	frndint
+ 	fldcw	4(SP)
+-	fistp	(SP)
++	fistps	(SP)
+ 	mov	(SP), %al
+ 	SIGNX_AL
+ 	add	$8, SP
+@@ -691,7 +691,7 @@
+ 	fldcw	(SP)
+ 	frndint
+ 	fldcw	4(SP)
+-	fistp	(SP)
++	fistps	(SP)
+ 	mov	(SP), %ax
+ 	SIGNX_AX
+ 	add	$8, SP
+@@ -833,7 +833,7 @@
+ 	frndint
+ 	fldcw	4(SP)
+ 
+-	fistp	(SP)
++	fistps	(SP)
+ 	movb	(SP), %al
+ 	SIGNX_AL
+ 	add	$8, SP
+@@ -861,7 +861,7 @@
+ 	frndint
+ 	fldcw	4(SP)
+ 
+-	fistp	(SP)
++	fistps	(SP)
+ 	movw	(SP), %ax
+ 	SIGNX_AX
+ 	add	$8, SP

Added: trunk/dports/lang/g95/files/patch-libf95-quad-power16.c.diff
===================================================================
--- trunk/dports/lang/g95/files/patch-libf95-quad-power16.c.diff	                        (rev 0)
+++ trunk/dports/lang/g95/files/patch-libf95-quad-power16.c.diff	2014-10-18 10:53:19 UTC (rev 126961)
@@ -0,0 +1,11 @@
+--- libf95.a-0.93/quad/power16.c.orig	2009-01-13 10:29:12.000000000 +0900
++++ libf95.a-0.93/quad/power16.c	2014-10-18 12:44:49.000000000 +0900
+@@ -39,7 +39,7 @@
+ 
+ /* int_power16()-- Core of integer powers. */
+ 
+-static int_power16(unpacked16 *base, long long e0, unpacked16 *result) {
++static void int_power16(unpacked16 *base, long long e0, unpacked16 *result) {
+ int negative, negative_exp;
+ unsigned long long exp;
+ unpacked16 one;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20141018/9c180c2d/attachment.html>


More information about the macports-changes mailing list