unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#58236] [PATCH] gnu: genie: Add genie.
@ 2022-10-01 22:15 J. Sims via Guix-patches via
  2022-10-03  6:45 ` Liliana Marie Prikler
  0 siblings, 1 reply; 7+ messages in thread
From: J. Sims via Guix-patches via @ 2022-10-01 22:15 UTC (permalink / raw)
  To: 58236

Hello,

This is a patch to add the GENie project generator to Guix. It's a fork of Premake 4.4 that some other projects, notably the Scopes programming language, use.

I'm submitting it independently instead of as part of a patch series with Scopes because I've already packaged it then accidentally deleted that package twice before. Scopes has some rough edges around packaging in a Guix-friendly way and I don't suspect I will have its package ready very soon. All of this together means I'd like to avoid repeating my previous mistakes and go ahead and get it into Guix.

Thanks,
Juli

--------------------------BEGIN-PATCH------------------------------

* gnu/packages/build-tools.scm (genie): Add genie.
---
 gnu/packages/build-tools.scm | 44 ++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
index 84a62d0fd6..55bec5f817 100644
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@ -14,6 +14,7 @@
 ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2021 qblade <qblade@protonmail.com>
 ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2022 Juliana Sims <jtsims@protonmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -763,3 +764,46 @@ (define-public build
 @item Extensible language/compiler framework.
 @end itemize")
     (license license:gpl2+)))
+
+(define-public genie
+  (let ((commit "b139103697bbb62db895e4cc7bfe202bcff4ff25")
+        (ver "1167"))
+    (package
+      (name "genie")
+      (version ver)
+      (home-page "https://github.com/bkaradzic/genie")
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url home-page)
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "16plshzkyjjzpfcxnwjskrs7i4gg0qn92h2k0rbfl4a79fgmwvwv"))))
+      (build-system gnu-build-system)
+      (arguments
+       `(#:phases
+         (modify-phases %standard-phases
+           (delete 'configure)
+           (replace 'install
+             (lambda* (#:key outputs #:allow-other-keys)
+               (let ((out (assoc-ref outputs "out")))
+                 (install-file "bin/linux/genie"
+                               (string-append out "/bin"))))))
+         #:parallel-build? #t
+         #:tests? #f)) ;; tests have not been updated since Premake fork
+      (synopsis "Project generator tool")
+      (description "GENie (pronounced as Jenny) is project generator tool. It
+automagically generates project from Lua script, making applying the same
+settings for multiple projects easy.
+
+Supported project generators:
+@itemize
+@item GNU Makefile
+@item JSON Compilation Database
+@item Ninja (experimental)
+@item Visual Studio 2010, 2012, 2013, 2015, 2017, 2019
+@item XCode
+@end itemize")
+      (license license:bsd-3))))

base-commit: 461b1e490935e720999e78dc29656ae3c9ea2ea3
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-10-09 20:22 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-10-01 22:15 [bug#58236] [PATCH] gnu: genie: Add genie J. Sims via Guix-patches via
2022-10-03  6:45 ` Liliana Marie Prikler
2022-10-04 19:37   ` J. Sims via Guix-patches via
2022-10-05 10:34     ` Liliana Marie Prikler
2022-10-06  1:06       ` J. Sims via Guix-patches via
2022-10-06  1:12         ` J. Sims via Guix-patches via
2022-10-09 20:20           ` bug#58236: " Ludovic Courtès

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).