at 18.03-beta 34 lines 1.3 kB view raw
1{ stdenv, fetchurl, file }: 2 3stdenv.mkDerivation rec { 4 pname = "openpa"; 5 version = "1.0.4"; 6 name = "${pname}-${version}"; 7 8 src = fetchurl { 9 url = "https://trac.mpich.org/projects/${pname}/raw-attachment/wiki/Downloads/${name}.tar.gz"; 10 sha256 = "0flyi596hm6fv7xyw2iykx3s65p748s62bf15624xcnwpfrh8ncy"; 11 }; 12 13 prePatch = ''substituteInPlace configure --replace /usr/bin/file ${file}/bin/file''; 14 15 doCheck = true; 16 17 meta = { 18 description = "Atomic primitives for high performance, concurrent software"; 19 homepage = https://trac.mpich.org/projects/openpa; 20 license = stdenv.lib.licenses.mit; 21 maintainers = with stdenv.lib.maintainers; [ leenaars ]; 22 platforms = with stdenv.lib.platforms; linux; 23 longDescription = '' 24 OPA (or sometimes OpenPA or Open Portable Atomics) is an 25 open source library intended to provide a consistent C API for performing 26 atomic operations on a variety of platforms. The main goal of the project is to 27 enable the portable usage of atomic operations in concurrent software. 28 Developers of client software can worry about implementing and improving their 29 concurrent algorithms instead of fiddling with inline assembly syntax and 30 learning new assembly dialects in order improve or maintain application 31 portability. 32 ''; 33 }; 34}