diff options
Diffstat (limited to 'pkgs/by-name/op/openscad-unstable/package.nix')
-rw-r--r-- | pkgs/by-name/op/openscad-unstable/package.nix | 78 |
1 files changed, 23 insertions, 55 deletions
diff --git a/pkgs/by-name/op/openscad-unstable/package.nix b/pkgs/by-name/op/openscad-unstable/package.nix index 1e14580b42bb5..4d584318c64a7 100644 --- a/pkgs/by-name/op/openscad-unstable/package.nix +++ b/pkgs/by-name/op/openscad-unstable/package.nix @@ -28,6 +28,7 @@ , libsForQt5 , libspnav , libzip +, manifold , mesa , mpfr , python3 @@ -36,60 +37,23 @@ , wayland-protocols , wrapGAppsHook3 , xorg +, mimalloc +, opencsg }: -let - # get cccl from source to avoid license issues - nvidia-cccl = clangStdenv.mkDerivation { - pname = "nvidia-cccl"; - # note that v2.2.0 has some cmake issues - version = "2.2.0-unstable-2024-01-26"; - src = fetchFromGitHub { - owner = "NVIDIA"; - repo = "cccl"; - fetchSubmodules = true; - rev = "0c9d03276206a5f59368e908e3d643610f9fddcd"; - hash = "sha256-f11CNfa8jF9VbzvOoX1vT8zGIJL9cZ/VBpiklUn0YdU="; - }; - nativeBuildInputs = [ cmake pkg-config ]; - buildInputs = [ tbb_2021_11 ]; - cmakeFlags = [ - # only enable what we need - "-DCCCL_ENABLE_CUB=OFF" - "-DCCCL_ENABLE_LIBCUDACXX=ON" - "-DCCCL_ENABLE_THRUST=ON" - "-DCCCL_ENABLE_TESTING=OFF" - "-DCCCL_ENABLE_EXAMPLES=OFF" - - "-DTHRUST_DEVICE_SYSTEM=TBB" - "-DTHRUST_HOST_SYSTEM=CPP" - "-DTHRUST_ENABLE_HEADER_TESTING=OFF" - "-DTHRUST_ENABLE_TESTING=OFF" - "-DTHRUST_ENABLE_EXAMPLES=OFF" - - "-DLIBCUDACXX_ENABLE_CUDA=OFF" - "-DLIBCUDACXX_ENABLE_STATIC_LIBRARY=OFF" - "-DLIBCUDACXX_ENABLE_LIBCUDACXX_TESTS=OFF" - ]; - meta = with lib; { - description = "CUDA C++ Core Libraries"; - homepage = "https://github.com/NVIDIA/cccl"; - license = licenses.asl20; - platforms = platforms.unix; - }; - }; -in # clang consume much less RAM than GCC clangStdenv.mkDerivation rec { pname = "openscad-unstable"; - version = "2024-03-10"; + version = "2024-10-06"; src = fetchFromGitHub { owner = "openscad"; repo = "openscad"; - rev = "db167b1df31fbd8a2101cf3a13dac148b0c2165d"; - hash = "sha256-i2ZGYsNfMLDi3wRd/lohs9BuO2KuQ/7kJIXGtV65OQU="; - fetchSubmodules = true; + rev = "4e4543d85dfb19630ffe499b75828d48d246bd22"; + hash = "sha256-k1RjXwjigQAVKUHeAJAyJxfCr8qNkCDFq9p78sudjgs="; + fetchSubmodules = true; # Only really need sanitizers-cmake and MCAD }; + patches = [ ./test.diff ]; + nativeBuildInputs = [ (python3.withPackages (ps: with ps; [ numpy pillow ])) bison @@ -102,12 +66,10 @@ clangStdenv.mkDerivation rec { pkg-config ]; buildInputs = with libsForQt5; with qt5; [ - # manifold dependencies clipper2 glm tbb_2021_11 - nvidia-cccl - + mimalloc boost cairo cgal_5 @@ -118,17 +80,19 @@ clangStdenv.mkDerivation rec { ghostscript glib gmp + opencsg harfbuzz hidapi lib3mf libspnav libzip + manifold mpfr qscintilla qtbase qtmultimedia ] - ++ lib.optionals clangStdenv.isLinux [ + ++ lib.optionals clangStdenv.hostPlatform.isLinux [ xorg.libXdmcp libICE libSM @@ -137,23 +101,27 @@ clangStdenv.mkDerivation rec { qtwayland libGLU ] - ++ lib.optional clangStdenv.isDarwin qtmacextras + ++ lib.optional clangStdenv.hostPlatform.isDarwin qtmacextras ; cmakeFlags = [ "-DEXPERIMENTAL=ON" # enable experimental options "-DSNAPSHOT=ON" # nightly icons - "-DUSE_BUILTIN_OPENCSG=ON" # bundled latest opencsg + "-DUSE_BUILTIN_OPENCSG=OFF" + "-DUSE_BUILTIN_MANIFOLD=OFF" "-DOPENSCAD_VERSION=\"${builtins.replaceStrings ["-"] ["."] version}\"" - "-DCMAKE_UNITY_BUILD=ON" # faster build + "-DCMAKE_UNITY_BUILD=OFF" # broken compile with unity # IPO "-DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld" "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON" ]; + doCheck = true; + + nativeCheckInputs = [ + mesa.llvmpipeHook + ]; + checkPhase = '' - # for running mesa llvmpipe - export __EGL_VENDOR_LIBRARY_FILENAMES=${mesa.drivers}/share/glvnd/egl_vendor.d/50_mesa.json - export LIBGL_DRIVERS_PATH=${mesa.drivers}/lib:${mesa.drivers}/lib/dri # some fontconfig issues cause pdf output to have wrong font ctest -j$NIX_BUILD_CORES -E pdfexporttest.\* ''; |