diff --git a/pkgs/applications/science/misc/openmvs/default.nix b/pkgs/applications/science/misc/openmvs/default.nix new file mode 100644 index 000000000000..031f1655b0af --- /dev/null +++ b/pkgs/applications/science/misc/openmvs/default.nix @@ -0,0 +1,34 @@ +{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, eigen, opencv, cgal, ceres-solver, boost, vcg, glfw, zstd }: + +let + boostWithZstd = boost.overrideAttrs (old: { + buildInputs = old.buildInputs ++ [ zstd ]; + }); +in +stdenv.mkDerivation rec { + version = "2.1.0"; + pname = "openmvs"; + + src = fetchFromGitHub { + owner = "cdcseacave"; + repo = "openmvs"; + rev = "v${version}"; + sha256 = "sha256-eqNprBgR0hZnbLKLZLJqjemKxHhDtGblmaSxYlmegsc="; + fetchSubmodules = true; + }; + + # SSE is enabled by default + cmakeFlags = lib.optional (!stdenv.isx86_64) "-DOpenMVS_USE_SSE=OFF"; + + buildInputs = [ eigen opencv cgal ceres-solver vcg glfw boostWithZstd ]; + + nativeBuildInputs = [ cmake pkg-config ]; + + meta = { + description = "Open Multi-View Stereo reconstruction library"; + homepage = "https://github.com/cdcseacave/openMVS"; + license = lib.licenses.agpl3Only; + platforms = lib.platforms.unix; + maintainers = with lib.maintainers; [ bouk ]; + }; +} diff --git a/pkgs/development/libraries/CGAL/4.nix b/pkgs/development/libraries/CGAL/4.nix index 9c0305ec077d..d30492c89061 100644 --- a/pkgs/development/libraries/CGAL/4.nix +++ b/pkgs/development/libraries/CGAL/4.nix @@ -12,6 +12,7 @@ stdenv.mkDerivation rec { }; patches = [ + ./cgal_path.patch # Pull upstream fix for c++17 (gcc-12): # https://github.com/CGAL/cgal/pull/6109 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4c4edafb0e0b..718e941b508c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10289,6 +10289,8 @@ with pkgs; openmvg = callPackage ../applications/science/misc/openmvg { }; + openmvs = callPackage ../applications/science/misc/openmvs { }; + openntpd = callPackage ../tools/networking/openntpd { }; openntpd_nixos = openntpd.override {