summaryrefslogtreecommitdiff
path: root/pkgs/hdl-convertor/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/hdl-convertor/default.nix')
-rw-r--r--pkgs/hdl-convertor/default.nix45
1 files changed, 45 insertions, 0 deletions
diff --git a/pkgs/hdl-convertor/default.nix b/pkgs/hdl-convertor/default.nix
new file mode 100644
index 0000000..12581aa
--- /dev/null
+++ b/pkgs/hdl-convertor/default.nix
@@ -0,0 +1,45 @@
+{
+ antlr,
+ buildPythonPackage,
+ cmake,
+ cython,
+ fetchFromGitHub,
+ hdl-convertor-ast,
+ jre,
+ python3,
+ scikit-build,
+}:
+buildPythonPackage {
+ pname = "hdl-convertor";
+ version = "master-2023-03-21";
+
+ src = fetchFromGitHub {
+ repo = "hdlConvertor";
+ owner = "Nic30";
+
+ rev = "b6ba0f4e61adf776cad8ed08760f8d232a4fc663";
+ sha256 = "sha256-Ketz5r7Z8kjshr7mjfdqF+QAOHGM/iTDpT6TMbYl6QU=";
+ };
+
+ nativeBuildInputs = [antlr cmake jre cython];
+ propagatedBuildInputs = [antlr.runtime.cpp hdl-convertor-ast];
+ propagatedNativeBuildInputs = [scikit-build];
+
+ postPatch = ''
+ sed -i 's/antlr4\(-complete\)/${antlr.name}\1/g' src/CMake_antlr4.txt
+ '';
+
+ doCheck = false;
+ dontUseCmakeConfigure = true;
+
+ # src/CMake_antlr4.txt espera una env var, no hay otra forma
+ ANTLR_COMPLETE_PATH = "${antlr}/share/java";
+
+ # No usamos cmakeArgs ya que esto lo interpreta skbuild y no el cmake hook de nixpkgs
+ CMAKE_ARGS = [
+ "-DHDLCONVERTOR_PYTHON=true"
+ "-DANTLR_COMPLETE_PATH=${antlr}/share/java"
+ "-DANTLR4CPP_LIBRARIES=${antlr.runtime.cpp}/lib/libantlr4-runtime.so"
+ "-DANTLR4CPP_INCLUDE_DIRS=${antlr.runtime.cpp.dev}/include/antlr4-runtime"
+ ];
+}