diff --git a/zilti/packages/tgui.scm b/zilti/packages/tgui.scm new file mode 100644 index 0000000..349ac3e --- /dev/null +++ b/zilti/packages/tgui.scm @@ -0,0 +1,74 @@ +(define-module + (zilti packages tgui) + #:use-module (guix download) + #:use-module (guix gexp) + #:use-module (guix git-download) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module (guix build-system cmake) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages sdl) + ) + +(define-public tgui-sdl + (package + (name "tgui-sdl") + (version "1.2.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/texus/TGUI") + (commit (string-append "v" version)))) + (sha256 + (base32 + "1r63dyj6rl2qnvccl98znid2w67sndzgwqgpn2ch62f4xkyj0sb4")))) + (build-system cmake-build-system) + (arguments + (list + #:phases #~(modify-phases %standard-phases + (delete 'check)) + #:configure-flags #~(list "-DCMAKE_BUILD_TYPE=Release" + "-DTGUI_BACKEND=SDL_RENDERER"))) + (native-inputs + (list + pkg-config + sdl2 + sdl2-ttf)) + (home-page "https://tgui.eu") + (synopsis "TGUI is a cross-platform modern c++ GUI library") + (description "TGUI is a cross-platform modern c++ GUI library. +Although originally a library for SFML, it now also has backends for SDL and GLFW.") + (license license:zlib))) + +(define-public ctgui-sdl + (package + (name "ctgui-sdl") + (version "0.8.8") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/texus/CTGUI") + (commit (string-append "v" version)))) + (sha256 + (base32 + "1nsh9i9s6mcpdffdf3z2507z5mzg3cmmgjs656lckw8033dkrjlb")))) + (build-system cmake-build-system) + (arguments + (list + #:phases #~(modify-phases %standard-phases + (delete 'check)) + #:configure-flags #~(list "-DCTGUI_BACKEND=SDL_RENDERER"))) + (native-inputs + (list + pkg-config)) + (propagated-inputs + (list tgui-sdl)) + (home-page "https://tgui.eu") + (synopsis "C binding for TGUI") + (description "CTGUI is a C binding for the TGUI library, a cross-platform c++ GUI. + +It is intended to simplify creating bindings for TGUI in other languages, but it is also possible to +use CTGUI directly in a C program.") + (license license:zlib)))