* [bug#65106] [PATCH] gnu: Add tracy. @ 2023-08-06 5:40 dan 2023-09-05 13:46 ` Maxim Cournoyer 2023-09-24 17:13 ` [bug#65106] [PATCH v2 0/2] gnu: Add tracy and tracy-wayland dan 0 siblings, 2 replies; 6+ messages in thread From: dan @ 2023-08-06 5:40 UTC (permalink / raw) To: 65106 --- gnu/packages/profiling.scm | 48 +++++++++++++++++++++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/gnu/packages/profiling.scm b/gnu/packages/profiling.scm index 8a1c609669..799b333162 100644 --- a/gnu/packages/profiling.scm +++ b/gnu/packages/profiling.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2017 Dave Love <fx@gnu.org> ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2022 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2023 dan <i@dan.games> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,6 +22,7 @@ (define-module (gnu packages profiling) #:use-module (guix packages) #:use-module (guix gexp) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) ; avoid zlib, expat clashes #:use-module (guix download) #:use-module (guix utils) @@ -31,17 +33,20 @@ (define-module (gnu packages profiling) #:use-module (gnu packages bison) #:use-module (gnu packages compression) #:use-module (gnu packages documentation) + #:use-module (gnu packages engineering) #:use-module (gnu packages fabric-management) #:use-module (gnu packages flex) + #:use-module (gnu packages fontutils) #:use-module (gnu packages gawk) #:use-module (gnu packages gcc) + #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages libunwind) #:use-module (gnu packages linux) #:use-module (gnu packages mpi) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) - #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages qt)) @@ -389,3 +394,44 @@ (define (make-scorep mpi) (license license:cpl1.0))) (define-public scorep-openmpi (make-scorep openmpi)) + +(define-public tracy + (package + (name "tracy") + (version "0.9.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/wolfpld/tracy.git") + (commit (string-append "v" version)))) + (sha256 + (base32 + "1znw1r1c4vrb9vrsr08gcwynpjda8xxmb3923yykpymw2hsm0n9b")) + (file-name (git-file-name "tracy" version)))) + (build-system gnu-build-system) + (arguments + (list #:tests? #f ;no test for the profiler + #:make-flags #~(list "LEGACY=1" + (string-append "CC=" + #$(cc-for-target))) + #:phases #~(modify-phases %standard-phases + (replace 'configure + (lambda _ + (chdir "profiler/build/unix"))) + (replace 'install + (lambda _ + (let ((out (string-append #$output "/bin/tracy")) + (bin (string-append #$output "/bin"))) + (mkdir-p bin) + (copy-file "Tracy-release" out) + (wrap-program out + `("LD_LIBRARY_PATH" ":" = + (,(string-append #$mesa "/lib")))))))))) + (inputs (list capstone dbus freetype glfw)) + (native-inputs (list pkg-config)) + (home-page "https://github.com/wolfpld/tracy") + (synopsis "Frame profiler") + (description + "A real time, nanosecond resolution, remote telemetry, hybrid frame and +sampling profiler for games and other applications.") + (license license:bsd-3))) base-commit: c4b9f726e3a1889b92a4b14a2af1c25f10798469 -- 2.41.0 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [bug#65106] [PATCH] gnu: Add tracy. 2023-08-06 5:40 [bug#65106] [PATCH] gnu: Add tracy dan @ 2023-09-05 13:46 ` Maxim Cournoyer 2023-09-24 17:13 ` [bug#65106] [PATCH v2 0/2] gnu: Add tracy and tracy-wayland dan 1 sibling, 0 replies; 6+ messages in thread From: Maxim Cournoyer @ 2023-09-05 13:46 UTC (permalink / raw) To: dan; +Cc: 65106 Hello! dan <i@dan.games> writes: > --- > gnu/packages/profiling.scm | 48 +++++++++++++++++++++++++++++++++++++- > 1 file changed, 47 insertions(+), 1 deletion(-) > > diff --git a/gnu/packages/profiling.scm b/gnu/packages/profiling.scm > index 8a1c609669..799b333162 100644 > --- a/gnu/packages/profiling.scm > +++ b/gnu/packages/profiling.scm > @@ -2,6 +2,7 @@ > ;;; Copyright © 2017 Dave Love <fx@gnu.org> > ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> > ;;; Copyright © 2022 Ludovic Courtès <ludo@gnu.org> > +;;; Copyright © 2023 dan <i@dan.games> > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -21,6 +22,7 @@ > (define-module (gnu packages profiling) > #:use-module (guix packages) > #:use-module (guix gexp) > + #:use-module (guix git-download) > #:use-module ((guix licenses) #:prefix license:) ; avoid zlib, expat clashes > #:use-module (guix download) > #:use-module (guix utils) > @@ -31,17 +33,20 @@ (define-module (gnu packages profiling) > #:use-module (gnu packages bison) > #:use-module (gnu packages compression) > #:use-module (gnu packages documentation) > + #:use-module (gnu packages engineering) > #:use-module (gnu packages fabric-management) > #:use-module (gnu packages flex) > + #:use-module (gnu packages fontutils) > #:use-module (gnu packages gawk) > #:use-module (gnu packages gcc) > + #:use-module (gnu packages gl) > #:use-module (gnu packages glib) > #:use-module (gnu packages libunwind) > #:use-module (gnu packages linux) > #:use-module (gnu packages mpi) > #:use-module (gnu packages ncurses) > #:use-module (gnu packages perl) > - #:use-module (gnu packages perl) > + #:use-module (gnu packages pkg-config) > #:use-module (gnu packages python) > #:use-module (gnu packages qt)) > > @@ -389,3 +394,44 @@ (define (make-scorep mpi) > (license license:cpl1.0))) > > (define-public scorep-openmpi (make-scorep openmpi)) > + > +(define-public tracy > + (package > + (name "tracy") > + (version "0.9.1") > + (source (origin > + (method git-fetch) > + (uri (git-reference > + (url "https://github.com/wolfpld/tracy.git") > + (commit (string-append "v" version)))) > + (sha256 > + (base32 > + "1znw1r1c4vrb9vrsr08gcwynpjda8xxmb3923yykpymw2hsm0n9b")) > + (file-name (git-file-name "tracy" version)))) > + (build-system gnu-build-system) > + (arguments > + (list #:tests? #f ;no test for the profiler > + #:make-flags #~(list "LEGACY=1" Why is LEGACY needed? A comment should say so. > + (string-append "CC=" > + #$(cc-for-target))) > + #:phases #~(modify-phases %standard-phases > + (replace 'configure > + (lambda _ > + (chdir "profiler/build/unix"))) > + (replace 'install > + (lambda _ > + (let ((out (string-append #$output "/bin/tracy")) > + (bin (string-append #$output "/bin"))) > + (mkdir-p bin) > + (copy-file "Tracy-release" out) You can simplify this by using the 'install-file' procedure, which is in scope here (it comes from (guix build utils)). 'Tracy-release' is a weird name for a binary; is this how it's packaged on other system? I'd have expected 'tracy' or similar. > + (wrap-program out > + `("LD_LIBRARY_PATH" ":" = > + (,(string-append #$mesa "/lib"))) Since this is also unusual in Guix (usually RUNPATH is baked in the Elf by the ld-wrapper script and it just works), it deserves an explanatory comment too. -- Thanks, Maxim ^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#65106] [PATCH v2 0/2] gnu: Add tracy and tracy-wayland. 2023-08-06 5:40 [bug#65106] [PATCH] gnu: Add tracy dan 2023-09-05 13:46 ` Maxim Cournoyer @ 2023-09-24 17:13 ` dan 2023-09-24 17:13 ` [bug#65106] [PATCH v2 1/2] gnu: Add tracy-wayland dan 2023-09-24 17:14 ` [bug#65106] [PATCH v2 2/2] gnu: Add tracy dan 1 sibling, 2 replies; 6+ messages in thread From: dan @ 2023-09-24 17:13 UTC (permalink / raw) To: 65106; +Cc: maxim.cournoyer This patch series add two versions of tracy, one for x11 and the other for wayland. Note that the output binary name is "Tracy-release" by default, and changing the name in the makefile breaks the build process. Seems like other things rely on the name. dan (2): gnu: Add tracy-wayland. gnu: Add tracy. gnu/packages/profiling.scm | 81 +++++++++++++++++++++++++++++++++++++- 1 file changed, 79 insertions(+), 2 deletions(-) base-commit: e134686cead6db62ea8b941b2ed7c0bd660804da -- 2.41.0 ^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#65106] [PATCH v2 1/2] gnu: Add tracy-wayland. 2023-09-24 17:13 ` [bug#65106] [PATCH v2 0/2] gnu: Add tracy and tracy-wayland dan @ 2023-09-24 17:13 ` dan 2023-09-26 15:22 ` bug#65106: " Maxim Cournoyer 2023-09-24 17:14 ` [bug#65106] [PATCH v2 2/2] gnu: Add tracy dan 1 sibling, 1 reply; 6+ messages in thread From: dan @ 2023-09-24 17:13 UTC (permalink / raw) To: 65106; +Cc: maxim.cournoyer * gnu/packages/profiling.scm (tracy-wayland): New variable. --- gnu/packages/profiling.scm | 53 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 51 insertions(+), 2 deletions(-) diff --git a/gnu/packages/profiling.scm b/gnu/packages/profiling.scm index 8a1c609669..af79488c30 100644 --- a/gnu/packages/profiling.scm +++ b/gnu/packages/profiling.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2017 Dave Love <fx@gnu.org> ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2022 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2023 dan <i@dan.games> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,6 +22,7 @@ (define-module (gnu packages profiling) #:use-module (guix packages) #:use-module (guix gexp) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) ; avoid zlib, expat clashes #:use-module (guix download) #:use-module (guix utils) @@ -31,19 +33,24 @@ (define-module (gnu packages profiling) #:use-module (gnu packages bison) #:use-module (gnu packages compression) #:use-module (gnu packages documentation) + #:use-module (gnu packages engineering) #:use-module (gnu packages fabric-management) #:use-module (gnu packages flex) + #:use-module (gnu packages fontutils) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages gawk) #:use-module (gnu packages gcc) + #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages libunwind) #:use-module (gnu packages linux) #:use-module (gnu packages mpi) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) - #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) - #:use-module (gnu packages qt)) + #:use-module (gnu packages qt) + #:use-module (gnu packages xdisorg)) ;; Fixme: Separate out lib and fix resulting cycle errors; separate libpfm ;; output(?); build libmsr and add that component. @@ -389,3 +396,45 @@ (define (make-scorep mpi) (license license:cpl1.0))) (define-public scorep-openmpi (make-scorep openmpi)) + +(define-public tracy-wayland + (package + (name "tracy-wayland") + (version "0.9.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/wolfpld/tracy.git") + (commit (string-append "v" version)))) + (sha256 + (base32 + "1znw1r1c4vrb9vrsr08gcwynpjda8xxmb3923yykpymw2hsm0n9b")) + (file-name (git-file-name "tracy" version)))) + (build-system gnu-build-system) + (arguments + (list #:tests? #f ;no test for the profiler + #:make-flags #~(list (string-append "CC=" + #$(cc-for-target))) + #:phases #~(modify-phases %standard-phases + (replace 'configure + (lambda _ + (chdir "profiler/build/unix"))) + (replace 'install + (lambda _ + (let ((bin (string-append #$output "/bin")) + (tracy (string-append #$output "/bin/tracy"))) + (mkdir-p bin) + (copy-file "Tracy-release" tracy))))))) + (inputs (list capstone + dbus + freetype + libxkbcommon + mesa + wayland)) + (native-inputs (list pkg-config)) + (home-page "https://github.com/wolfpld/tracy") + (synopsis "Frame profiler") + (description + "A real time, nanosecond resolution, remote telemetry, hybrid frame and +sampling profiler for games and other applications.") + (license license:bsd-3))) -- 2.41.0 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* bug#65106: [PATCH v2 1/2] gnu: Add tracy-wayland. 2023-09-24 17:13 ` [bug#65106] [PATCH v2 1/2] gnu: Add tracy-wayland dan @ 2023-09-26 15:22 ` Maxim Cournoyer 0 siblings, 0 replies; 6+ messages in thread From: Maxim Cournoyer @ 2023-09-26 15:22 UTC (permalink / raw) To: dan; +Cc: 65106-done Hello! dan <i@dan.games> writes: > * gnu/packages/profiling.scm (tracy-wayland): New variable. > --- > gnu/packages/profiling.scm | 53 ++++++++++++++++++++++++++++++++++++-- > 1 file changed, 51 insertions(+), 2 deletions(-) > > diff --git a/gnu/packages/profiling.scm b/gnu/packages/profiling.scm > index 8a1c609669..af79488c30 100644 > --- a/gnu/packages/profiling.scm > +++ b/gnu/packages/profiling.scm > @@ -2,6 +2,7 @@ > ;;; Copyright © 2017 Dave Love <fx@gnu.org> > ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> > ;;; Copyright © 2022 Ludovic Courtès <ludo@gnu.org> > +;;; Copyright © 2023 dan <i@dan.games> > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -21,6 +22,7 @@ > (define-module (gnu packages profiling) > #:use-module (guix packages) > #:use-module (guix gexp) > + #:use-module (guix git-download) > #:use-module ((guix licenses) #:prefix license:) ; avoid zlib, expat clashes > #:use-module (guix download) > #:use-module (guix utils) > @@ -31,19 +33,24 @@ (define-module (gnu packages profiling) > #:use-module (gnu packages bison) > #:use-module (gnu packages compression) > #:use-module (gnu packages documentation) > + #:use-module (gnu packages engineering) > #:use-module (gnu packages fabric-management) > #:use-module (gnu packages flex) > + #:use-module (gnu packages fontutils) > + #:use-module (gnu packages freedesktop) > #:use-module (gnu packages gawk) > #:use-module (gnu packages gcc) > + #:use-module (gnu packages gl) > #:use-module (gnu packages glib) > #:use-module (gnu packages libunwind) > #:use-module (gnu packages linux) > #:use-module (gnu packages mpi) > #:use-module (gnu packages ncurses) > #:use-module (gnu packages perl) > - #:use-module (gnu packages perl) > + #:use-module (gnu packages pkg-config) > #:use-module (gnu packages python) > - #:use-module (gnu packages qt)) > + #:use-module (gnu packages qt) > + #:use-module (gnu packages xdisorg)) > > ;; Fixme: Separate out lib and fix resulting cycle errors; separate libpfm > ;; output(?); build libmsr and add that component. > @@ -389,3 +396,45 @@ (define (make-scorep mpi) > (license license:cpl1.0))) > > (define-public scorep-openmpi (make-scorep openmpi)) > + > +(define-public tracy-wayland > + (package > + (name "tracy-wayland") > + (version "0.9.1") > + (source (origin > + (method git-fetch) > + (uri (git-reference > + (url "https://github.com/wolfpld/tracy.git") > + (commit (string-append "v" version)))) > + (sha256 > + (base32 > + "1znw1r1c4vrb9vrsr08gcwynpjda8xxmb3923yykpymw2hsm0n9b")) > + (file-name (git-file-name "tracy" version)))) > + (build-system gnu-build-system) > + (arguments > + (list #:tests? #f ;no test for the profiler > + #:make-flags #~(list (string-append "CC=" > + #$(cc-for-target))) > + #:phases #~(modify-phases %standard-phases > + (replace 'configure > + (lambda _ > + (chdir "profiler/build/unix"))) > + (replace 'install > + (lambda _ > + (let ((bin (string-append #$output "/bin")) > + (tracy (string-append #$output "/bin/tracy"))) > + (mkdir-p bin) > + (copy-file "Tracy-release" tracy))))))) > + (inputs (list capstone > + dbus > + freetype > + libxkbcommon > + mesa > + wayland)) > + (native-inputs (list pkg-config)) > + (home-page "https://github.com/wolfpld/tracy") > + (synopsis "Frame profiler") > + (description > + "A real time, nanosecond resolution, remote telemetry, hybrid frame and > +sampling profiler for games and other applications.") > + (license license:bsd-3))) Looking at this package more closely, I found it was bundling imgui and zstd, so I tried unbundling both, and was successful for zstd: --8<---------------cut here---------------start------------->8--- modified gnu/packages/profiling.scm @@ -402,35 +402,61 @@ (define-public tracy-wayland (package (name "tracy-wayland") (version "0.9.1") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/wolfpld/tracy") - (commit (string-append "v" version)))) - (sha256 - (base32 - "1znw1r1c4vrb9vrsr08gcwynpjda8xxmb3923yykpymw2hsm0n9b")) - (file-name (git-file-name "tracy" version)))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/wolfpld/tracy") + (commit (string-append "v" version)))) + (sha256 + (base32 + "1znw1r1c4vrb9vrsr08gcwynpjda8xxmb3923yykpymw2hsm0n9b")) + (file-name (git-file-name "tracy" version)) + (modules '((guix build utils))) + (snippet + '(begin + ;; XXX: Sadly, the ImGui loaders appear to have been customized by + ;; the project and the build fails when using the 'imgui' Guix + ;; package due to a missing GL_TEXTURE_WRAP_S definition, so keep + ;; the bundled copy. + + ;; Unbundle Zstd. + (delete-file-recursively "zstd") + ;; Adjust the include directives. + (substitute* (find-files "server" "\\.(c|h)pp$") + (("#include \".*zstd/(zstd|zdict).h\"" _ header) + (format #f "#include \"~a.h\"" header))) + ;; De-register source files from Visual Code project. + (substitute* "profiler/build/win32/Tracy.vcxproj" + ((".*Include=\"..\\\\..\\\\..\\\\zstd\\\\.*") "")))))) + ;; Note: There is also CMake and Meson support, but only to build the + ;; tracy library, not the profiler command. (build-system gnu-build-system) (arguments - (list #:tests? #f ;no test for the profiler - #:make-flags #~(list (string-append "CC=" #$(cc-for-target))) - #:phases #~(modify-phases %standard-phases - (replace 'configure - (lambda _ - (chdir "profiler/build/unix"))) - (replace 'install - (lambda _ - (let ((bin (string-append #$output "/bin")) - (tracy (string-append #$output "/bin/tracy"))) - (mkdir-p bin) - (copy-file "Tracy-release" tracy))))))) + (list + #:tests? #f ;no test for the profiler + #:make-flags + #~(list (string-append "CC=" #$(cc-for-target)) + (string-append "CFLAGS=-lzstd")) + #:phases + #~(modify-phases %standard-phases + (add-before 'build 'chdir + (lambda _ + (chdir "profiler/build/unix"))) + (delete 'configure) ;the profiler has no configure script + (replace 'install + (lambda _ + (let ((bin (string-append #$output "/bin")) + (tracy (string-append #$output "/bin/tracy"))) + (mkdir-p bin) + (copy-file "Tracy-release" tracy))))))) (inputs (list capstone dbus freetype libxkbcommon mesa - wayland)) + wayland + `(,zstd "lib"))) (native-inputs (list pkg-config)) (home-page "https://github.com/wolfpld/tracy") (synopsis "Frame profiler") --8<---------------cut here---------------end--------------->8--- For the X11 variant working around packaging problems in glfw (dlopen) with LD_LIBRARY_PATH, I've fixed these in glfw (by patching the so names in its source with their absolute paths) and removed the workaround: --8<---------------cut here---------------start------------->8--- @@ -443,29 +469,13 @@ (define-public tracy (package (inherit tracy-wayland) (name "tracy") - (inputs (modify-inputs (package-inputs tracy-wayland) - (delete "libxkbcommon" "wayland") - (prepend glfw))) (arguments (substitute-keyword-arguments (package-arguments tracy-wayland) - ((#:make-flags flags - #~'()) + ((#:make-flags flags #~'()) #~(append #$flags - ;; The LEGACY flag indicate we want to build tracy with glfw - (list "LEGACY=1"))) - ((#:phases phases) - #~(modify-phases #$phases - ;; Tracy depends on glfw to load libGL.so, but glfw doesn't have - ;; mesa in its rpath. Thus, we need to manually modify tracy's - ;; LD_LIBRARY_PATH. - (add-after 'install 'wrap-program - (lambda _ - (let ((out (string-append #$output "/bin/tracy")) - (mesa (string-append #$(this-package-input "mesa") - "/lib"))) - (wrap-program out - `("LD_LIBRARY_PATH" ":" = - (,mesa)))))))))) + ;; The LEGACY flag indicate we want to build tracy with glfw. + (list "LEGACY=1"))))) (inputs (modify-inputs (package-inputs tracy-wayland) - (append bash-minimal))) + (delete "libxkbcommon" "wayland") + (prepend glfw))) (synopsis "Frame profiler (X11 version)"))) --8<---------------cut here---------------end--------------->8--- It at least still runs for me, though I'm not sure how to use it (it seems to require the target application to be built with libtracy and act as a server?). Closing, thank you for contributing to Guix! -- Thanks, Maxim ^ permalink raw reply [flat|nested] 6+ messages in thread
* [bug#65106] [PATCH v2 2/2] gnu: Add tracy. 2023-09-24 17:13 ` [bug#65106] [PATCH v2 0/2] gnu: Add tracy and tracy-wayland dan 2023-09-24 17:13 ` [bug#65106] [PATCH v2 1/2] gnu: Add tracy-wayland dan @ 2023-09-24 17:14 ` dan 1 sibling, 0 replies; 6+ messages in thread From: dan @ 2023-09-24 17:14 UTC (permalink / raw) To: 65106; +Cc: maxim.cournoyer * gnu/packages/profiling.scm (tracy): New variable. --- gnu/packages/profiling.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/profiling.scm b/gnu/packages/profiling.scm index af79488c30..5f5b4b07d0 100644 --- a/gnu/packages/profiling.scm +++ b/gnu/packages/profiling.scm @@ -438,3 +438,31 @@ (define-public tracy-wayland "A real time, nanosecond resolution, remote telemetry, hybrid frame and sampling profiler for games and other applications.") (license license:bsd-3))) + +(define-public tracy + (package + (inherit tracy-wayland) + (name "tracy") + (inputs (modify-inputs (package-inputs tracy-wayland) + (delete "libxkbcommon" "wayland") + (prepend glfw))) + (arguments + (substitute-keyword-arguments (package-arguments tracy-wayland) + ((#:make-flags flags + #~'()) + #~(append #$flags + ;; The LEGACY flag indicate we want to build tracy with glfw + (list "LEGACY=1"))) + ((#:phases phases) + #~(modify-phases #$phases + ;; Tracy depends on glfw to load libGL.so, but glfw doesn't have + ;; mesa in its rpath. Thus, we need to manually modify tracy's + ;; LD_LIBRARY_PATH. + (add-after 'install 'wrap-program + (lambda _ + (let ((out (string-append #$output "/bin/tracy")) + (mesa (string-append #$(this-package-input "mesa") + "/lib"))) + (wrap-program out + `("LD_LIBRARY_PATH" ":" = + (,mesa)))))))))))) -- 2.41.0 ^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-09-26 15:24 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-08-06 5:40 [bug#65106] [PATCH] gnu: Add tracy dan 2023-09-05 13:46 ` Maxim Cournoyer 2023-09-24 17:13 ` [bug#65106] [PATCH v2 0/2] gnu: Add tracy and tracy-wayland dan 2023-09-24 17:13 ` [bug#65106] [PATCH v2 1/2] gnu: Add tracy-wayland dan 2023-09-26 15:22 ` bug#65106: " Maxim Cournoyer 2023-09-24 17:14 ` [bug#65106] [PATCH v2 2/2] gnu: Add tracy dan
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).