gnu: f3d: Update to 1.3.0-pre-0.46df21f.
* gnu/packages/graphics.scm (f3d): Update to 1.3.0-pre-0.46df21f. [source](modules, snippet): New fields. [arguments]<#:configure-flags>: Generate manual page, install various resource files, and enable the now-optional external rendering feature. [native-inputs]: New field. [synopsis]: Add hyphen. [description]: Reword. Signed-off-by: Christopher Baines <mail@cbaines.net>
This commit is contained in:
		
							parent
							
								
									8ba5075192
								
							
						
					
					
						commit
						75febb00a5
					
				
					 1 changed files with 46 additions and 18 deletions
				
			
		| 
						 | 
				
			
			@ -61,6 +61,7 @@
 | 
			
		|||
  #:use-module (gnu packages cdrom)
 | 
			
		||||
  #:use-module (gnu packages check)
 | 
			
		||||
  #:use-module (gnu packages compression)
 | 
			
		||||
  #:use-module (gnu packages cpp)
 | 
			
		||||
  #:use-module (gnu packages crypto)
 | 
			
		||||
  #:use-module (gnu packages datastructures)
 | 
			
		||||
  #:use-module (gnu packages documentation)
 | 
			
		||||
| 
						 | 
				
			
			@ -88,6 +89,7 @@
 | 
			
		|||
  #:use-module (gnu packages logging)
 | 
			
		||||
  #:use-module (gnu packages llvm)
 | 
			
		||||
  #:use-module (gnu packages lua)
 | 
			
		||||
  #:use-module (gnu packages man)
 | 
			
		||||
  #:use-module (gnu packages maths)
 | 
			
		||||
  #:use-module (gnu packages mp3)
 | 
			
		||||
  #:use-module (gnu packages multiprecision)
 | 
			
		||||
| 
						 | 
				
			
			@ -2307,11 +2309,14 @@ a tetrahedral mesh, isovalue discretization and Lagrangian movement;
 | 
			
		|||
  ;; There have been many improvements since the last tagged version (1.2.1,
 | 
			
		||||
  ;; released in December 2021), including support for the Alembic file
 | 
			
		||||
  ;; format.
 | 
			
		||||
  (let ((commit "9cc79b65ed750b178f58012dbba091aa24722dab")
 | 
			
		||||
  (let ((commit "46df21fe9409349917af5e6f7d1cb931f4c68e59")
 | 
			
		||||
        (revision "0"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "f3d")
 | 
			
		||||
      (version (git-version "1.2.1" revision commit))
 | 
			
		||||
      ;; F3D has not actually been tagged as 1.3.0-pre, but upstream commit
 | 
			
		||||
      ;; 401d4d27b2094568378c07f400fbad48b7af3168 updated the version string
 | 
			
		||||
      ;; to 1.3.0.
 | 
			
		||||
      (version (git-version "1.3.0-pre" revision commit))
 | 
			
		||||
      (source
 | 
			
		||||
       (origin
 | 
			
		||||
         (method git-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -2320,29 +2325,52 @@ a tetrahedral mesh, isovalue discretization and Lagrangian movement;
 | 
			
		|||
               (commit commit)))
 | 
			
		||||
         (file-name (git-file-name name version))
 | 
			
		||||
         (sha256
 | 
			
		||||
          (base32 "041gqi2wfny2br4j68vhifg0bd18kbl0qsaallkz7yywk47njxfi"))))
 | 
			
		||||
          (base32 "0x0jw9vqf1b8pxh84xpr47hzcjynk07dp8q7r2xihh9cd00kglp1"))
 | 
			
		||||
         (modules '((guix build utils)))
 | 
			
		||||
         (snippet
 | 
			
		||||
          '(begin
 | 
			
		||||
             (delete-file "application/cxxopts.hpp")
 | 
			
		||||
             (delete-file "application/json.hpp")
 | 
			
		||||
             (substitute* "application/F3DOptionsParser.cxx"
 | 
			
		||||
               (("^#include \"cxxopts\\.hpp\"")
 | 
			
		||||
                "#include <cxxopts.hpp>")
 | 
			
		||||
               (("^#include \"json\\.hpp\"")
 | 
			
		||||
                "#include <nlohmann/json.hpp>"))))))
 | 
			
		||||
      (build-system cmake-build-system)
 | 
			
		||||
      ;; The package cannot easily be split into out and lib outputs because
 | 
			
		||||
      ;; VTK's vtkModule.cmake complains, and also the CMake files in
 | 
			
		||||
      ;; /lib/cmake/f3d expect the f3d executable and library to be available,
 | 
			
		||||
      ;; as they set up targets for both of them.
 | 
			
		||||
      (arguments
 | 
			
		||||
       (list
 | 
			
		||||
        ;; Many tests require files supplied by git-lfs.
 | 
			
		||||
        ;; Also, some tests segfault (after an exception?) but the tested
 | 
			
		||||
        ;; behavior, i.e., when the program is run manually, does not (for
 | 
			
		||||
        ;; example, TestNonExistentConfigFile and TestInvalidConfigFile).
 | 
			
		||||
        ;; Upstream is aware of occasionally flaky tests (see
 | 
			
		||||
        ;; https://github.com/f3d-app/f3d/issues/92) but the tests run in CI
 | 
			
		||||
        ;; seem to be passing.
 | 
			
		||||
        ;; Upstream is aware of occasionally flaky tests [1], but the tests
 | 
			
		||||
        ;; run in CI seem to be passing.
 | 
			
		||||
        ;; Anyway, the program runs and is able to open at least STL files
 | 
			
		||||
        ;; without issue.
 | 
			
		||||
        ;;
 | 
			
		||||
        ;; [1]: https://github.com/f3d-app/f3d/issues/92
 | 
			
		||||
        #:tests? #f
 | 
			
		||||
        #:configure-flags
 | 
			
		||||
        #~(list "-DBUILD_TESTING=OFF"
 | 
			
		||||
        #~(list (string-append "-DCMAKE_INSTALL_DOCDIR=" #$output
 | 
			
		||||
                               "/share/doc/" #$name "-" #$version)
 | 
			
		||||
                "-DBUILD_TESTING=OFF"
 | 
			
		||||
                "-DF3D_GENERATE_MAN=ON"
 | 
			
		||||
                "-DF3D_INSTALL_DEFAULT_CONFIGURATION_FILE=ON"
 | 
			
		||||
                "-DF3D_INSTALL_DEFAULT_CONFIGURATION_FILE_IN_PREFIX=ON"
 | 
			
		||||
                "-DF3D_INSTALL_MIME_TYPES_FILE=ON"
 | 
			
		||||
                "-DF3D_INSTALL_THUMBNAILER_FILES=ON"
 | 
			
		||||
                "-DF3D_MODULE_ALEMBIC=ON"
 | 
			
		||||
                "-DF3D_MODULE_ASSIMP=ON"
 | 
			
		||||
                "-DF3D_MODULE_OCCT=ON"
 | 
			
		||||
                ;; Prefer Guix's versioned documentation directory to F3D's
 | 
			
		||||
                ;; unversioned one.
 | 
			
		||||
                (string-append "-DCMAKE_INSTALL_DOCDIR=" #$output
 | 
			
		||||
                               "/share/doc/" #$name "-" #$version))))
 | 
			
		||||
                "-DF3D_MODULE_EXTERNAL_RENDERING=ON"
 | 
			
		||||
                "-DF3D_MODULE_OCCT=ON")))
 | 
			
		||||
      (native-inputs
 | 
			
		||||
       (list cxxopts
 | 
			
		||||
             help2man
 | 
			
		||||
             json-modern-cxx))
 | 
			
		||||
      (inputs
 | 
			
		||||
       (list alembic
 | 
			
		||||
             assimp
 | 
			
		||||
| 
						 | 
				
			
			@ -2365,10 +2393,10 @@ a tetrahedral mesh, isovalue discretization and Lagrangian movement;
 | 
			
		|||
             vtk
 | 
			
		||||
             zlib))
 | 
			
		||||
      (home-page "https://f3d-app.github.io/f3d/")
 | 
			
		||||
      (synopsis "VTK based 3D viewer")
 | 
			
		||||
      (description "F3D (pronounced @samp{/fɛd/}) is a VTK-based 3D viewer, it
 | 
			
		||||
has simple interaction mechanisms and is fully controllable using arguments on
 | 
			
		||||
the command line.  It supports a range of file formats (including animated
 | 
			
		||||
glTF, STL, STEP, PLY, OBJ, FBX), and provides numerous rendering and texturing
 | 
			
		||||
options.")
 | 
			
		||||
      (synopsis "VTK-based 3D viewer")
 | 
			
		||||
      (description "F3D (pronounced @samp{/fɛd/}) is a VTK-based 3D viewer
 | 
			
		||||
with simple interaction mechanisms and which is fully controllable using
 | 
			
		||||
arguments on the command line.  It supports a range of file formats (including
 | 
			
		||||
animated glTF, STL, STEP, PLY, OBJ, FBX), and provides numerous rendering and
 | 
			
		||||
texturing options.")
 | 
			
		||||
      (license license:bsd-3))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue