nixpkgs/pkgs/development/libraries/libatomic_ops/default.nix

34 lines
1.2 KiB
Nix
Raw Normal View History

{ stdenv, fetchurl, autoconf, automake, libtool, hostPlatform }:
2017-06-11 19:20:13 +02:00
stdenv.mkDerivation rec {
name = "libatomic_ops-${version}";
version = "7.6.2";
2014-06-27 14:02:29 +02:00
src = fetchurl {
urls = [
"http://www.ivmaisoft.com/_bin/atomic_ops/libatomic_ops-${version}.tar.gz"
"https://github.com/ivmai/libatomic_ops/releases/download/v${version}/libatomic_ops-${version}.tar.gz"
];
sha256 ="1rif2hjscq5mh639nsnjhb90c01gnmy1sbmj6x6hsn1xmpnj95r1";
2014-06-27 14:02:29 +02:00
};
2018-02-22 15:15:42 +01:00
outputs = [ "out" "dev" "doc" ];
# https://github.com/ivmai/libatomic_ops/pull/32
patches = if hostPlatform.isRiscV then [ ./riscv.patch ] else null;
2017-06-11 19:20:13 +02:00
nativeBuildInputs = stdenv.lib.optionals stdenv.isCygwin [ autoconf automake libtool ];
preConfigure = stdenv.lib.optionalString stdenv.isCygwin ''
sed -i -e "/libatomic_ops_gpl_la_SOURCES/a libatomic_ops_gpl_la_LIBADD = libatomic_ops.la" src/Makefile.am
./autogen.sh
'';
2014-06-27 14:02:29 +02:00
meta = {
description = ''A library for semi-portable access to hardware-provided atomic memory update operations'';
license = stdenv.lib.licenses.gpl2Plus ;
maintainers = [stdenv.lib.maintainers.raskin];
platforms = with stdenv.lib.platforms; unix ++ windows;
2014-06-27 14:02:29 +02:00
};
}