about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/boehm-gc/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/boehm-gc/default.nix')
-rw-r--r--nixpkgs/pkgs/development/libraries/boehm-gc/default.nix85
1 files changed, 0 insertions, 85 deletions
diff --git a/nixpkgs/pkgs/development/libraries/boehm-gc/default.nix b/nixpkgs/pkgs/development/libraries/boehm-gc/default.nix
deleted file mode 100644
index 6da88ee8258f..000000000000
--- a/nixpkgs/pkgs/development/libraries/boehm-gc/default.nix
+++ /dev/null
@@ -1,85 +0,0 @@
-{ lib
-, stdenv
-, fetchFromGitHub
-, autoreconfHook
-# doc: https://github.com/ivmai/bdwgc/blob/v8.2.4/doc/README.macros (LARGE_CONFIG)
-, enableLargeConfig ? false
-, enableMmap ? true
-, enableStatic ? false
-, nixVersions
-}:
-
-stdenv.mkDerivation (finalAttrs: {
-  pname = "boehm-gc";
-  version = "8.2.4";
-
-  src = fetchFromGitHub {
-    owner = "ivmai";
-    repo = "bdwgc";
-    rev = "v${finalAttrs.version}";
-    hash = "sha256-KHijT4BBKfDvTpHpwognN+3ZXoC6JabBTFSYFyOUT9o=";
-  };
-
-  outputs = [ "out" "dev" "doc" ];
-  separateDebugInfo = stdenv.isLinux && stdenv.hostPlatform.libc != "musl";
-
-  nativeBuildInputs = [
-    autoreconfHook
-  ];
-
-  configureFlags = [
-    "--enable-cplusplus"
-    "--with-libatomic-ops=none"
-  ]
-  ++ lib.optional enableStatic "--enable-static"
-  ++ lib.optional enableMmap "--enable-mmap"
-  ++ lib.optional enableLargeConfig "--enable-large-config";
-
-  # This stanza can be dropped when a release fixes this issue:
-  #   https://github.com/ivmai/bdwgc/issues/376
-  # The version is checked with == instead of versionAtLeast so we
-  # don't forget to disable the fix (and if the next release does
-  # not fix the problem the test failure will be a reminder to
-  # extend the set of versions requiring the workaround).
-  makeFlags = lib.optionals (stdenv.hostPlatform.isPower64 &&
-                  finalAttrs.version == "8.2.4")
-    [
-      # do not use /proc primitives to track dirty bits; see:
-      # https://github.com/ivmai/bdwgc/issues/479#issuecomment-1279687537
-      # https://github.com/ivmai/bdwgc/blob/54522af853de28f45195044dadfd795c4e5942aa/include/private/gcconfig.h#L741
-      "CFLAGS_EXTRA=-DNO_SOFT_VDB"
-    ];
-
-  # `gctest` fails under emulation on aarch64-darwin
-  doCheck = !(stdenv.isDarwin && stdenv.isx86_64);
-
-  enableParallelBuilding = true;
-
-  passthru.tests = nixVersions;
-
-  meta = with lib; {
-    homepage = "https://hboehm.info/gc/";
-    description = "The Boehm-Demers-Weiser conservative garbage collector for C and C++";
-    longDescription = ''
-      The Boehm-Demers-Weiser conservative garbage collector can be used as a
-      garbage collecting replacement for C malloc or C++ new.  It allows you
-      to allocate memory basically as you normally would, without explicitly
-      deallocating memory that is no longer useful.  The collector
-      automatically recycles memory when it determines that it can no longer
-      be otherwise accessed.
-
-      The collector is also used by a number of programming language
-      implementations that either use C as intermediate code, want to
-      facilitate easier interoperation with C libraries, or just prefer the
-      simple collector interface.
-
-      Alternatively, the garbage collector may be used as a leak detector for
-      C or C++ programs, though that is not its primary goal.
-    '';
-    # non-copyleft, X11-style license
-    changelog = "https://github.com/ivmai/bdwgc/blob/v${finalAttrs.version}/ChangeLog";
-    license = "https://hboehm.info/gc/license.txt";
-    maintainers = with maintainers; [ AndersonTorres ];
-    platforms = platforms.all;
-  };
-})