guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#77071: [PATCH] gnu: ogre-next: Fix build on riscv64.


From: Z572
Subject: bug#77071: [PATCH] gnu: ogre-next: Fix build on riscv64.
Date: Sun, 30 Mar 2025 11:26:01 +0800
User-agent: mu4e 1.12.9; emacs 30.0.92

Zheng Junjie <z572@z572.online> writes:

> * gnu/packages/graphics.scm (ogre-next): Fix build on riscv64.
> [source]: Add ogre-next-add-riscv64-support.patch.
> [argument]<#:configure-flags>: When target riscv64, Add -DOGRE_SIMD_SSE2=OFF
> and -DOGRE_SIMD_NEON=OFF.
> * gnu/packages/patches/ogre-next-add-riscv64-support.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it.
>
> Change-Id: I77279f3f5ed238f8b6526b5eceea5751f86ea6e1
> ---
>  gnu/local.mk                                  |  1 +
>  gnu/packages/graphics.scm                     | 12 ++++++--
>  .../ogre-next-add-riscv64-support.patch       | 28 +++++++++++++++++++
>  3 files changed, 39 insertions(+), 2 deletions(-)
>  create mode 100644 gnu/packages/patches/ogre-next-add-riscv64-support.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 01d13a11ae8..c9533507eac 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -1918,6 +1918,7 @@ dist_patch_DATA =                                       
>         \
>    %D%/packages/patches/nyacc-binary-literals.patch           \
>    %D%/packages/patches/obs-modules-location.patch            \
>    %D%/packages/patches/ocaml-multiple-definitions.patch              \
> +  %D%/packages/patches/ogre-next-add-riscv64-support.patch           \
>    %D%/packages/patches/ocaml-4.07-dynamically-allocate-signal-stack.patch    
> \
>    %D%/packages/patches/ocaml-4.09-dynamically-allocate-signal-stack.patch    
> \
>    %D%/packages/patches/ocaml-4.09-multiple-definitions.patch \
> diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
> index 9d7ec2933a9..82057adf680 100644
> --- a/gnu/packages/graphics.scm
> +++ b/gnu/packages/graphics.scm
> @@ -29,7 +29,7 @@
>  ;;; Copyright © 2021, 2022 Vinicius Monego <monego@posteo.net>
>  ;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
>  ;;; Copyright © 2022, 2023, 2024 John Kehayias <john.kehayias@protonmail.com>
> -;;; Copyright © 2022, 2024 Zheng Junjie <873216071@qq.com>
> +;;; Copyright © 2022, 2024, 2025 Zheng Junjie <z572@z572.online>
>  ;;; Copyright © 2022 Tobias Kortkamp <tobias.kortkamp@gmail.com>
>  ;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
>  ;;; Copyright © 2022 dan <i@dan.games>
> @@ -1351,6 +1351,7 @@ (define-public ogre-next
>                      (url "https://github.com/OGRECave/ogre-next";)
>                      (commit (string-append "v" version))))
>                (file-name (git-file-name name version))
> +              (patches (search-patches 
> "ogre-next-add-riscv64-support.patch"))
>                (sha256
>                 (base32
>                  "1yrlg3s654xbp95208h9a2b8jcwdk69r6sjvll0aiyvxm4c056cw"))))
> @@ -1358,7 +1359,14 @@ (define-public ogre-next
>                   ((#:tests? _ #f)
>                    ;; The test suite is currently disabled by the build system
>                    ;; (see: https://github.com/OGRECave/ogre-next/issues/466).
> -                  #f)))
> +                  #f)
> +                 ((#:configure-flags flags #~(list))
> +                  (if (target-riscv64?)
> +                      #~(cons*
> +                         "-DOGRE_SIMD_SSE2=OFF"
> +                         "-DOGRE_SIMD_NEON=OFF"
> +                         #$flags)
> +                      flags))))
>      (inputs
>       (modify-inputs (package-inputs ogre)
>         (append rapidjson)))))
> diff --git a/gnu/packages/patches/ogre-next-add-riscv64-support.patch 
> b/gnu/packages/patches/ogre-next-add-riscv64-support.patch
> new file mode 100644
> index 00000000000..37251eaaf20
> --- /dev/null
> +++ b/gnu/packages/patches/ogre-next-add-riscv64-support.patch
> @@ -0,0 +1,28 @@
> +from https://github.com/OGRECave/ogre-next/pull/478
> +
> +From 12081a8f1a0e676ac618dd7c4c1d2e8390c07278 Mon Sep 17 00:00:00 2001
> +From: Eric Long <i@hack3r.moe>
> +Date: Mon, 18 Nov 2024 21:56:13 +0800
> +Subject: [PATCH] Add riscv64 to 64-bit architectures
> +
> +---
> + OgreMain/include/OgrePlatform.h | 3 ++-
> + 1 file changed, 2 insertions(+), 1 deletion(-)
> +
> +diff --git a/OgreMain/include/OgrePlatform.h 
> b/OgreMain/include/OgrePlatform.h
> +index f9f7a12e46..a977aa2958 100644
> +--- a/OgreMain/include/OgrePlatform.h
> ++++ b/OgreMain/include/OgrePlatform.h
> +@@ -81,7 +81,8 @@ THE SOFTWARE.
> + #if defined( __x86_64__ ) || defined( _M_X64 ) || defined( _M_X64 ) || 
> defined( _M_AMD64 ) || \
> +     defined( __ppc64__ ) || defined( __PPC64__ ) || defined( __arm64__ ) || 
> defined( __aarch64__ ) || \
> +     defined( _M_ARM64 ) || defined( __mips64 ) || defined( __mips64_ ) || 
> defined( __alpha__ ) || \
> +-    defined( __ia64__ ) || defined( __e2k__ ) || defined( __s390__ ) || 
> defined( __s390x__ )
> ++    defined( __ia64__ ) || defined( __e2k__ ) || defined( __s390__ ) || 
> defined( __s390x__ ) || \
> ++    (defined(__riscv) && __riscv_xlen == 64)
> + #    define OGRE_ARCH_TYPE OGRE_ARCHITECTURE_64
> + #else
> + #    define OGRE_ARCH_TYPE OGRE_ARCHITECTURE_32
> +-- 
> +2.47.1
> +
>
> base-commit: cb386c3c70212252ddcdb0bb9f6a8ecfd22378a6
pushed, closing.

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]