gnu: Add warsow-qfusion.
* gnu/local.mk (warsow-qfusion): New variable.
This commit is contained in:
		
							parent
							
								
									f59cc03b56
								
							
						
					
					
						commit
						39f1806ca1
					
				
					 2 changed files with 79 additions and 0 deletions
				
			
		|  | @ -1527,6 +1527,7 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/vsearch-unbundle-cityhash.patch		\
 | ||||
|   %D%/packages/patches/vte-CVE-2012-2738-pt1.patch			\
 | ||||
|   %D%/packages/patches/vte-CVE-2012-2738-pt2.patch			\
 | ||||
|   %D%/packages/patches/warsow-qfusion-fix-bool-return-type.patch	\
 | ||||
|   %D%/packages/patches/weasyprint-library-paths.patch		\
 | ||||
|   %D%/packages/patches/websocketpp-fix-for-boost-1.70.patch	\
 | ||||
|   %D%/packages/patches/wicd-bitrate-none-fix.patch		\
 | ||||
|  |  | |||
|  | @ -38,6 +38,7 @@ | |||
| 
 | ||||
| (define-module (gnu packages game-development) | ||||
|   #:use-module (srfi srfi-1) | ||||
|   #:use-module (ice-9 match) | ||||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (guix download) | ||||
|  | @ -2225,3 +2226,80 @@ rigid body physics library written in C.") | |||
| developers providing an advanced true color console, input, and lots of other | ||||
| utilities frequently used in roguelikes.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public warsow-qfusion | ||||
|   ;; As of 2020-04-09, the latest stable version 2.1.0 is deprecated. | ||||
|   ;; The 2.5 beta as published on the homepage is commit | ||||
|   ;; c4de15df559410aff0ca6643724e24cddb0ecbbd | ||||
|   (let ((commit "c4de15df559410aff0ca6643724e24cddb0ecbbd") | ||||
|         (arch (match (or (%current-target-system) | ||||
|                          (%current-system)) | ||||
|                 ("x86_64-linux" "x86_64") | ||||
|                 ("i686-linux" "i386") | ||||
|                 (_ "")))) | ||||
|     (package | ||||
|       (name "warsow-qfusion") | ||||
|       (version (git-version "2.5" "1" commit)) ; 2.5-beta | ||||
|       (source (origin | ||||
|                 (method git-fetch) | ||||
|                 (uri (git-reference | ||||
|                       (url "https://github.com/Warsow/qfusion/") | ||||
|                       (commit commit) | ||||
|                       (recursive? #t))) | ||||
|                 (file-name (git-file-name name version)) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "0xv2yycr43p3xmq7lm6j6zb3cpcr6w00x7qg918faq0mw9j7v48g")) | ||||
|                 ;; Issue reported here: https://github.com/Warsow/qfusion/issues/46 | ||||
|                 (patches (search-patches "warsow-qfusion-fix-bool-return-type.patch")))) | ||||
|       (build-system cmake-build-system) | ||||
|       (arguments | ||||
|        `(#:tests? #f                    ; No tests. | ||||
|          #:configure-flags '("-DQFUSION_GAME=Warsow") | ||||
|          #:phases | ||||
|          (modify-phases %standard-phases | ||||
|            (add-after 'unpack 'change-to-build-dir | ||||
|              (lambda _ | ||||
|                (chdir "source") | ||||
|                #t)) | ||||
|            (add-after 'install 'really-install | ||||
|              (lambda* (#:key outputs #:allow-other-keys) | ||||
|                (let ((out (assoc-ref outputs "out"))) | ||||
|                  (install-file (string-append "../source/build/basewsw/libgame_" | ||||
|                                               ,arch ".so") | ||||
|                                (string-append out "/lib/")) | ||||
|                  (install-file (string-append "../source/build/libui_" ,arch ".so") | ||||
|                                (string-append out "/lib/")) | ||||
|                  (for-each | ||||
|                   (lambda (file) | ||||
|                     (install-file file (string-append out "/bin/"))) | ||||
|                   (append (find-files "../source/build" "warsow") | ||||
|                           (find-files "../source/build" "wsw_server.")))) | ||||
|                #t))))) | ||||
|       (inputs | ||||
|        `(("alsa-lib" ,alsa-lib) | ||||
|          ("curl" ,curl) | ||||
|          ("freetype" ,freetype) | ||||
|          ("ffmpeg" ,ffmpeg) | ||||
|          ("libjpeg" ,libjpeg) | ||||
|          ("libogg" ,libogg) | ||||
|          ("libpng" ,libpng) | ||||
|          ("libtheora" ,libtheora) | ||||
|          ("libvorbis" ,libvorbis) | ||||
|          ("mesa" ,mesa) | ||||
|          ("openal" ,openal) | ||||
|          ("pulseaudio" ,pulseaudio) | ||||
|          ("qtbase" ,qtbase) | ||||
|          ("qtdeclarative" ,qtdeclarative) | ||||
|          ("sdl2" ,sdl2) | ||||
|          ("uuid.h" ,util-linux) | ||||
|          ("zlib" ,zlib))) | ||||
|       (native-inputs | ||||
|        `(("pkg-config" ,pkg-config))) | ||||
|       (home-page "https://github.com/Warsow/qfusion") | ||||
|       (synopsis "Warsow's fork of qfusion, the id Tech 2 derived game engine") | ||||
|       (supported-systems '("i686-linux" "x86_64-linux")) | ||||
|       (description | ||||
|        "This package contains Warsow's fork of qfusion, the id Tech 2 derived | ||||
| game engine.  id Tech 2 is the engine originally behind Quake 2.") | ||||
|       (license license:gpl2+)))) | ||||
|  |  | |||
		Reference in a new issue