From a5ebf4ad9a7eb222f59bd9501e3ee966bef5b567 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov Date: Thu, 15 Feb 2018 12:39:57 +0300 Subject: [PATCH] mprime: 28.7 -> 29.4b --- pkgs/tools/misc/mprime/default.nix | 21 ++++++------ pkgs/tools/misc/mprime/makefile.patch | 47 ++++++++++++--------------- 2 files changed, 31 insertions(+), 37 deletions(-) diff --git a/pkgs/tools/misc/mprime/default.nix b/pkgs/tools/misc/mprime/default.nix index 3ef039507d4..556d21ee2fc 100644 --- a/pkgs/tools/misc/mprime/default.nix +++ b/pkgs/tools/misc/mprime/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, unzip, pkgconfig, curl }: +{ stdenv, lib, fetchurl, unzip, curl, hwloc, gmp }: let srcDir = @@ -14,25 +14,24 @@ let else throwSystem; in -stdenv.mkDerivation { - name = "mprime-28.7"; +stdenv.mkDerivation rec { + name = "mprime-${version}"; + version = "29.4b7"; src = fetchurl { - url = http://www.mersenne.org/ftp_root/gimps/p95v287.source.zip; - sha256 = "1k3gxhs3g8hfghzpmidhcwpwyayj8r83v8zjai1z4xgsql4jwby1"; + url = "http://www.mersenne.org/ftp_root/gimps/p95v${lib.replaceStrings ["."] [""] version}.source.zip"; + sha256 = "0idaqm46m4yis7vl014scx57lpccvjbnyy79gmj8caxghyajws0m"; }; - unpackCmd = "unzip -d src -q $curSrc"; + unpackCmd = "unzip -d src -q $curSrc || true"; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ unzip curl ]; + nativeBuildInputs = [ unzip ]; + buildInputs = [ curl hwloc gmp ]; patches = [ ./makefile.patch ]; buildPhase = '' make -C gwnum -f ${gwnum} - echo 'override CFLAGS := $(CFLAGS)' $(pkg-config --cflags libcurl) >> ${srcDir}/makefile - echo 'override LIBS := $(LIBS)' $(pkg-config --libs libcurl) >> ${srcDir}/makefile make -C ${srcDir} ''; @@ -48,7 +47,7 @@ stdenv.mkDerivation { client. It is identical to Prime95 in functionality, except it lacks a graphical user interface. ''; - homepage = http://www.mersenne.org/; + homepage = "http://www.mersenne.org/"; # Unfree, because of a license requirement to share prize money if you find # a suitable prime. http://www.mersenne.org/legal/#EULA license = stdenv.lib.licenses.unfree; diff --git a/pkgs/tools/misc/mprime/makefile.patch b/pkgs/tools/misc/mprime/makefile.patch index 7f758af7b7c..6ed9cf69384 100644 --- a/pkgs/tools/misc/mprime/makefile.patch +++ b/pkgs/tools/misc/mprime/makefile.patch @@ -1,46 +1,41 @@ -diff -ru orig/linux/makefile patched/linux/makefile ---- orig/linux/makefile 2015-08-09 21:06:18.000000000 +0100 -+++ patched/linux/makefile 2016-02-16 16:25:45.988662423 +0000 -@@ -25,8 +25,8 @@ +diff -dur src.old/linux/makefile src.new/linux/makefile +--- src.old/linux/makefile 2018-01-04 20:49:00.000000000 +0300 ++++ src.new/linux/makefile 2018-02-15 12:32:02.913011604 +0300 +@@ -28,8 +28,8 @@ CPP = g++ CPPFLAGS = -I.. -I../gwnum -O2 -march=i486 -malign-double -LFLAGS = -Wl,-M -Wl,-L/usr/local/lib --LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread -Wl,-Bstatic -lcurl -Wl,-Bdynamic -lrt -lstdc++ -ldl +-LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread -Wl,-Bstatic -lhwloc -Wl,-Bstatic -lcurl -Wl,-Bdynamic -lrt -lstdc++ -ldl -lgmp +LFLAGS = -+LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread -lrt -lstdc++ -ldl ++LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread -lhwloc -lcurl -lrt -lstdc++ -ldl -lgmp FACTOROBJ = factor32.o LINUXOBJS = prime.o menu.o -diff -ru orig/linux64/makefile patched/linux64/makefile ---- orig/linux64/makefile 2015-08-09 21:06:20.000000000 +0100 -+++ patched/linux64/makefile 2016-02-16 16:25:57.076531585 +0000 -@@ -13,13 +13,13 @@ - # LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread -Wl,-Bstatic $(shell pkg-config --static --libs libcurl) -lstdc++ -Wl,-Bdynamic -ldl - - CC = gcc --CFLAGS = -I.. -I../gwnum -I/usr/local/include -DX86_64 -O2 -+CFLAGS = -I.. -I../gwnum -I/usr/local/include -DX86_64 -O2 - +diff -dur src.old/linux64/makefile src.new/linux64/makefile +--- src.old/linux64/makefile 2018-01-04 20:49:00.000000000 +0300 ++++ src.new/linux64/makefile 2018-02-15 12:32:28.836286995 +0300 +@@ -26,9 +26,9 @@ CPP = g++ CPPFLAGS = -I.. -I../gwnum -DX86_64 -O2 -LFLAGS = -Wl,-M -Wl,-L/usr/local/lib --LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread -Wl,-Bstatic -lcurl -Wl,-Bdynamic -lrt -lstdc++ -ldl +LFLAGS = -+LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread -lrt -lstdc++ -ldl + #LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread -Wl,-Bstatic -lhwloc -Wl,-Bstatic -lcurl -Wl,-Bdynamic -lrt -lstdc++ -lz -lxml2 -ldl -lgmp +-LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread -Wl,-Bstatic -lhwloc -Wl,-Bstatic -lcurl -Wl,-Bdynamic -lrt -lstdc++ -ldl -lgmp ++LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread -lhwloc -lcurl -lrt -lstdc++ -ldl -lgmp FACTOROBJ = factor64.o LINUXOBJS = prime.o menu.o -diff -ru orig/macosx64/makefile patched/macosx64/makefile ---- orig/macosx64/makefile 2015-08-09 21:06:22.000000000 +0100 -+++ patched/macosx64/makefile 2016-02-16 16:19:03.988415925 +0000 -@@ -10,7 +10,7 @@ +diff -dur src.old/macosx64/makefile src.new/macosx64/makefile +--- src.old/macosx64/makefile 2018-01-04 20:49:02.000000000 +0300 ++++ src.new/macosx64/makefile 2018-02-15 12:33:32.401902535 +0300 +@@ -12,7 +12,7 @@ + CPP = g++ CPPFLAGS = -I.. -I../gwnum -I../linux -O2 -DX86_64 -DCOMMAND_LINE_MPRIME -m64 - LFLAGS = -m64 -Wl,-no_pie --LIBS = ../gwnum/amd64/release/gwnum.a -lm -lpthread -lcurl -framework IOKit -framework CoreFoundation -lstdc++ -+LIBS = ../gwnum/amd64/release/gwnum.a -lm -lpthread -framework IOKit -framework CoreFoundation -lstdc++ +-LFLAGS = -m64 -Wl,-no_pie -L/usr/local/lib ++LFLAGS = -m64 -Wl,-no_pie + LIBS = ../gwnum/amd64/release/gwnum.a -lm -lpthread -lhwloc -lcurl -framework IOKit -framework CoreFoundation -lstdc++ -lgmp FACTOROBJ = ../prime95/macosx64/factor64.o - OBJS = prime.o menu.o