diff options
Diffstat (limited to 'pkgs/development/compilers/p4c/default.nix')
-rw-r--r-- | pkgs/development/compilers/p4c/default.nix | 100 |
1 files changed, 0 insertions, 100 deletions
diff --git a/pkgs/development/compilers/p4c/default.nix b/pkgs/development/compilers/p4c/default.nix deleted file mode 100644 index 54d2875d1bc3..000000000000 --- a/pkgs/development/compilers/p4c/default.nix +++ /dev/null @@ -1,100 +0,0 @@ -{ lib -, stdenv -, fetchFromGitHub -, fetchpatch -, cmake -, boehmgc -, bison -, flex -, protobuf -, gmp -, boost -, python3 -, doxygen -, graphviz -, libbpf -, libllvm -, enableDocumentation ? true -, enableBPF ? true -, enableDPDK ? true -, enableBMV2 ? true -, enableGraphBackend ? true -, enableP4Tests ? true -, enableGTests ? true -, enableMultithreading ? false -}: -let - toCMakeBoolean = v: if v then "ON" else "OFF"; -in -stdenv.mkDerivation (finalAttrs: { - pname = "p4c"; - version = "1.2.4.1"; - - src = fetchFromGitHub { - owner = "p4lang"; - repo = "p4c"; - rev = "v${finalAttrs.version}"; - hash = "sha256-Whdryz1Gt0ymE7cj+mI95lW3Io9yBvLqcWa04gu5zEw="; - fetchSubmodules = true; - }; - - patches = [ - # Fix gcc-13 build: - # https://github.com/p4lang/p4c/pull/4084 - (fetchpatch { - name = "gcc-13.patch"; - url = "https://github.com/p4lang/p4c/commit/6756816100b7c51e3bf717ec55114a8e8575ba1d.patch"; - hash = "sha256-wWM1qjgQCNMPdrhQF38jzFgODUsAcaHTajdbV7L3y8o="; - }) - ]; - - postFetch = '' - rm -rf backends/ebpf/runtime/contrib/libbpf - rm -rf control-plane/p4runtime - ''; - - cmakeFlags = [ - "-DENABLE_BMV2=${toCMakeBoolean enableBMV2}" - "-DENABLE_EBPF=${toCMakeBoolean enableBPF}" - "-DENABLE_UBPF=${toCMakeBoolean enableBPF}" - "-DENABLE_DPDK=${toCMakeBoolean enableDPDK}" - "-DENABLE_P4C_GRAPHS=${toCMakeBoolean enableGraphBackend}" - "-DENABLE_P4TEST=${toCMakeBoolean enableP4Tests}" - "-DENABLE_DOCS=${toCMakeBoolean enableDocumentation}" - "-DENABLE_GC=ON" - "-DENABLE_GTESTS=${toCMakeBoolean enableGTests}" - "-DENABLE_PROTOBUF_STATIC=OFF" # static protobuf has been removed since 3.21.6 - "-DENABLE_MULTITHREAD=${toCMakeBoolean enableMultithreading}" - "-DENABLE_GMP=ON" - ]; - - checkTarget = "check"; - - strictDeps = true; - - nativeBuildInputs = [ - bison - flex - cmake - ] - ++ lib.optionals enableDocumentation [ doxygen graphviz ] - ++ lib.optionals enableBPF [ libllvm libbpf ]; - - buildInputs = [ - protobuf - boost - boehmgc - gmp - flex - python3 - ]; - - meta = { - changelog = "https://github.com/p4lang/p4c/releases"; - description = "Reference compiler for the P4 programming language"; - homepage = "https://github.com/p4lang/p4c"; - license = lib.licenses.asl20; - maintainers = with lib.maintainers; [ raitobezarius govanify ]; - platforms = lib.platforms.linux; - }; -}) |