obliv-c: drop
Broken on supported compilers when parsing system headers, with no obvious‐to-me fix from a quick search of the codebase; see <https://github.com/samee/obliv-c/issues/110>. No upstream activity since 2021.
This commit is contained in:
@@ -1,63 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
libgcrypt,
|
||||
fetchFromGitHub,
|
||||
ocamlPackages,
|
||||
perl,
|
||||
}:
|
||||
stdenv.mkDerivation {
|
||||
pname = "obliv-c";
|
||||
|
||||
version = "0.0pre20210621";
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
perl
|
||||
]
|
||||
++ (with ocamlPackages; [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
]);
|
||||
buildInputs = [ ocamlPackages.num ];
|
||||
propagatedBuildInputs = [ libgcrypt ];
|
||||
src = fetchFromGitHub {
|
||||
owner = "samee";
|
||||
repo = "obliv-c";
|
||||
rev = "e02e5c590523ef4dae06e167a7fa00037bb3fdaf";
|
||||
sha256 = "sha256:02vyr4689f4dmwqqs0q1mrack9h3g8jz3pj8zqiz987dk0r5mz7a";
|
||||
};
|
||||
|
||||
hardeningDisable = [ "fortify" ];
|
||||
|
||||
patches = [ ./ignore-complex-float128.patch ];
|
||||
|
||||
# https://github.com/samee/obliv-c/issues/76#issuecomment-438958209
|
||||
env.OCAMLBUILD = "ocamlbuild -package num -ocamlopt 'ocamlopt -dontlink num' -ocamlc 'ocamlc -dontlink num'";
|
||||
|
||||
preBuild = ''
|
||||
patchShebangs .
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
mkdir -p "$out/bin"
|
||||
cp bin/* "$out/bin"
|
||||
mkdir -p "$out/share/doc/obliv-c"
|
||||
cp -r doc/* README* CHANGE* Change* LICEN* TODO* "$out/share/doc/obliv-c"
|
||||
mkdir -p "$out/share/obliv-c"
|
||||
cp -r test "$out/share/obliv-c"
|
||||
mkdir -p "$out/include"
|
||||
cp src/ext/oblivc/*.h "$out/include"
|
||||
mkdir -p "$out/lib"
|
||||
gcc $(ar t _build/libobliv.a | sed -e 's@^@_build/@') --shared -o _build/libobliv.so
|
||||
cp _build/lib*.a _build/lib*.so* "$out/lib"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "GCC wrapper that makes it easy to embed secure computation protocols inside regular C programs";
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = [ lib.maintainers.raskin ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
--- a/src/frontc/clexer.mll
|
||||
+++ b/src/frontc/clexer.mll
|
||||
@@ -134,9 +134,11 @@ let init_lexicon _ =
|
||||
(* WW: see /usr/include/sys/cdefs.h for why __signed and __volatile
|
||||
* are accepted GCC-isms *)
|
||||
("_Bool", fun loc -> BOOL loc);
|
||||
+ ("_Complex", fun loc -> COMPLEX loc);
|
||||
("char", fun loc -> CHAR loc);
|
||||
("int", fun loc -> INT loc);
|
||||
("float", fun loc -> FLOAT loc);
|
||||
+ ("__float128", fun loc -> FLOAT128 loc);
|
||||
("double", fun loc -> DOUBLE loc);
|
||||
("void", fun loc -> VOID loc);
|
||||
("enum", fun loc -> ENUM loc);
|
||||
--- a/src/frontc/cparser.mly
|
||||
+++ b/src/frontc/cparser.mly
|
||||
@@ -269,6 +269,8 @@ let oblivState (s:statement): statement =
|
||||
%token<Cabs.cabsloc> VOLATILE EXTERN STATIC CONST RESTRICT AUTO REGISTER FROZEN
|
||||
%token<Cabs.cabsloc> THREAD
|
||||
|
||||
+%token<Cabs.cabsloc> COMPLEX FLOAT128
|
||||
+
|
||||
%token<Cabs.cabsloc> SIZEOF ALIGNOF
|
||||
|
||||
%token EQ PLUS_EQ MINUS_EQ STAR_EQ SLASH_EQ PERCENT_EQ
|
||||
@@ -1002,7 +1004,11 @@ type_spec: /* ISO 6.7.2 */
|
||||
| LONG { Tlong, $1 }
|
||||
| INT64 { Tint64, $1 }
|
||||
| FLOAT { Tfloat, $1 }
|
||||
+| FLOAT128 { Tfloat, $1 }
|
||||
| DOUBLE { Tdouble, $1 }
|
||||
+| COMPLEX FLOAT { Tfloat, $2 }
|
||||
+| COMPLEX FLOAT128{ Tfloat, $2 }
|
||||
+| COMPLEX DOUBLE { Tdouble, $2 }
|
||||
| SIGNED { Tsigned, $1 }
|
||||
| UNSIGNED { Tunsigned, $1 }
|
||||
| STRUCT id_or_typename
|
||||
@@ -1672,6 +1672,7 @@ mapAliases {
|
||||
o = orbiton; # Added 2023-04-09
|
||||
oathToolkit = oath-toolkit; # Added 2022-04-04
|
||||
oauth2_proxy = throw "'oauth2_proxy' has been renamed to/replaced by 'oauth2-proxy'"; # Converted to throw 2024-10-17
|
||||
obliv-c = throw "obliv-c has been removed from Nixpkgs, as it has been unmaintained upstream for 4 years and does not build with supported GCC versions"; # Added 2025-08-18
|
||||
ocis-bin = throw "ocis-bin has been renamed to ocis_5-bin'. Future major.minor versions will be made available as separate packages"; # Added 2025-03-30
|
||||
odoo15 = throw "odoo15 has been removed from nixpkgs as it is unsupported; migrate to a newer version of odoo"; # Added 2025-05-06
|
||||
offrss = throw "offrss has been removed due to lack of upstream maintenance; consider using another rss reader"; # Added 2025-06-01
|
||||
|
||||
@@ -5706,11 +5706,6 @@ with pkgs;
|
||||
enableGui = true;
|
||||
};
|
||||
|
||||
obliv-c = callPackage ../development/compilers/obliv-c {
|
||||
stdenv = gcc10Stdenv;
|
||||
ocamlPackages = ocaml-ng.ocamlPackages_4_14;
|
||||
};
|
||||
|
||||
ocaml-ng = callPackage ./ocaml-packages.nix { };
|
||||
ocaml = ocamlPackages.ocaml;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user