]> git.pld-linux.org Git - packages/mpich.git/commitdiff
- add x32 fix from debian-x32.org auto/th/mpich-3.1.3-3
authorJan Rękorajski <baggins@pld-linux.org>
Thu, 11 Jun 2015 19:28:13 +0000 (21:28 +0200)
committerJan Rękorajski <baggins@pld-linux.org>
Thu, 11 Jun 2015 19:28:13 +0000 (21:28 +0200)
- rel 3

mpich.spec
x32-misdetected-as-i386.patch [new file with mode: 0644]

index 745ad6ed31eb7c2864a11aaf872b86abc77f9124..3c9ac839e0f788270c348728e47cf54484ad0f6d 100644 (file)
@@ -2,13 +2,14 @@ Summary:      Portable MPI Model Implementation
 Summary(pl.UTF-8):     Przenośna implementacja standardu MPI
 Name:          mpich
 Version:       3.1.3
-Release:       2
+Release:       3
 License:       BSD-like
 Group:         Development/Libraries
 Source0:       http://www.mpich.org/static/downloads/%{version}/%{name}-%{version}.tar.gz
 # Source0-md5: 93cb17f91ac758cbf9174ecb03563778
 Patch0:                %{name}-sh.patch
 Patch1:                %{name}-opalink.patch
+Patch2:                x32-misdetected-as-i386.patch
 URL:           http://www.mpich.org/
 BuildRequires: autoconf >= 2.63
 BuildRequires: automake >= 1:1.12.3
@@ -72,6 +73,7 @@ Biblioteki statyczne MPICH.
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 
 %build
 %{__libtoolize}
diff --git a/x32-misdetected-as-i386.patch b/x32-misdetected-as-i386.patch
new file mode 100644 (file)
index 0000000..8bf023d
--- /dev/null
@@ -0,0 +1,29 @@
+--- mpich-3.1.orig/configure.ac
++++ mpich-3.1/configure.ac
+@@ -4434,7 +4434,7 @@ long int oldval = 10;
+ long int newval = 20;
+ char ret;
+ long int readval;
+-__asm__ __volatile__ ("lock; cmpxchgl %3, %1; sete %0"
++__asm__ __volatile__ ("push %%ecx; pop %%ecx; lock; cmpxchgl %3, %1; sete %0"
+       : "=q" (ret), "=m" (*p), "=a" (readval)
+       : "r" (newval), "m" (*p), "a" (oldval) : "memory");
+ return (compval == 20) ? 0 : -1;
+@@ -4454,12 +4454,12 @@ AC_MSG_CHECKING([for gcc __asm__ and AMD
+ AC_TRY_RUN([
+ int main(int argc, char *argv[])
+ {
+-long int compval = 10;
+-volatile long int *p = &compval;
+-long int oldval = 10;
+-long int newval = 20;
++long long int compval = 10;
++volatile long long int *p = &compval;
++long long int oldval = 10;
++long long int newval = 20;
+ char ret;
+-long int readval;
++long long int readval;
+ __asm__ __volatile__ ("lock; cmpxchgq %3, %1; sete %0"
+       : "=q" (ret), "=m" (*p), "=a" (readval)
+       : "r" (newval), "m" (*p), "a" (oldval) : "memory");
This page took 0.085051 seconds and 4 git commands to generate.