diff options
Diffstat (limited to 'gnu/packages/golang-xyz.scm')
| -rw-r--r-- | gnu/packages/golang-xyz.scm | 561 |
1 files changed, 561 insertions, 0 deletions
diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 3c95cf279b..820647cfdf 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -24362,6 +24362,209 @@ follows the GNU Program Argument Syntax Conventions}.") (license license:gpl3))) +(define-public go-modernc-org-cc-v3 + ;; XXX: Project distributes v2, v3, v4 and v5 as the same source without Golang + ;; subdir tags. + (package + (name "go-modernc-org-cc-v3") + (version "4.27.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/cc") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0hdaaksa2lkad6hfqxcmmmni8pagd8qd5w73gncrr45sj6cj5cg6")))) + (build-system go-build-system) + (arguments + (list + #:import-path "modernc.org/cc/v3" + #:unpack-path "modernc.org/cc" + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'remove-submodules + (lambda* (#:key unpack-path #:allow-other-keys) + (with-directory-excursion (string-append "src/" unpack-path) + (for-each delete-file-recursively + (list "v2" "v4" "v5")))))))) + (native-inputs + (list go-github-com-dustin-go-humanize + go-github-com-google-go-cmp)) + (propagated-inputs + (list go-lukechampine-com-uint128 + go-modernc-org-mathutil + go-modernc-org-strutil + go-modernc-org-token)) + (home-page "https://gitlab.com/cznic/cc") + (synopsis "C99 compiler front end for Golang") + (description + "This package provides a C99 compiler front end.") + (license license:bsd-3))) + +(define-public go-modernc-org-cc-v4 + (package/inherit go-modernc-org-cc-v3 + (name "go-modernc-org-cc-v4") + (arguments + (list + #:import-path "modernc.org/cc/v4" + #:unpack-path "modernc.org/cc" + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'copy-source-assets + ;; TODO: Implement in go-build-system to embed the whole + ;; directory (fix-embed-files procedure). + (lambda _ + ;; Remove symlinks, to resolve embed files. + (delete-file-recursively "src/modernc.org/ccorpus2/assets") + (copy-recursively + (string-append #$(this-package-native-input + "go-modernc-org-ccorpus2") + "/src/modernc.org/ccorpus2/assets") + "src/modernc.org/ccorpus2/assets")))))) + (native-inputs + (list go-github-com-dustin-go-humanize + go-github-com-pbnjay-memory + go-github-com-pmezard-go-difflib + go-modernc-org-ccorpus2)) + (propagated-inputs + (list go-modernc-org-mathutil + go-modernc-org-opt + go-modernc-org-sortutil + go-modernc-org-strutil + go-modernc-org-token)))) + +(define-public go-modernc-org-cc-v5 + (package/inherit go-modernc-org-cc-v4 + (name "go-modernc-org-cc-v5") + (arguments + (list + #:tests? #f ;XXX: tests compile a lot of extra. + #:import-path "modernc.org/cc/v5" + #:unpack-path "modernc.org/cc")))) + +(define-public go-modernc-org-ccgo-v3 + ;; XXX: Project distributes v2, v3 and v4 as the same source without Golang + ;; subdir tags. + (package + (name "go-modernc-org-ccgo-v3") + (version "4.30.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/ccgo") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "11s0n7l10pqbdp8j02naqjiad0xad5s1zlwvy6mnxq00pra7h1b0")))) + (build-system go-build-system) + (arguments + (list + ;; XXX: Test and build require go-modernc-org-ccgo-v4. + #:tests? #f + #:skip-build? #t + #:import-path "modernc.org/ccgo/v3" + #:unpack-path "modernc.org/ccgo")) + (propagated-inputs + (list go-github-com-kballard-go-shellquote + go-golang-org-x-sys + go-golang-org-x-tools + go-modernc-org-libc + go-modernc-org-cc-v3 + go-modernc-org-mathutil + go-modernc-org-opt)) + (home-page "https://gitlab.com/cznic/ccgo") + (synopsis "CC ASTs to Golang source code translator") + (description + "This package implements a functionality to translate C to Go source +code.") + (license license:bsd-3))) + +(define-public go-modernc-org-ccgo-v4 + (package/inherit go-modernc-org-ccgo-v3 + (name "go-modernc-org-ccgo-v4") + (source (origin + (inherit (package-source go-modernc-org-ccgo-v3)) + (modules '((guix build utils) + (ice-9 ftw) + (srfi srfi-26))) + (snippet + #~(begin + (define (delete-all-but directory . preserve) + (with-directory-excursion directory + (let* ((pred (negate (cut member <> + (cons* "." ".." preserve)))) + (items (scandir "." pred))) + (for-each (cut delete-file-recursively <>) items)))) + (delete-all-but "." "v4"))))) + (arguments + (substitute-keyword-arguments + (package-arguments go-modernc-org-ccgo-v3) + ((#:import-path _) "modernc.org/ccgo/v4"))) + (propagated-inputs + (list go-golang-org-x-mod + go-golang-org-x-tools + go-modernc-org-cc-v4 + go-modernc-org-gc-v2 + go-modernc-org-gc-v3 + go-modernc-org-mathutil + go-modernc-org-opt + go-modernc-org-strutil)))) + +(define-public go-modernc-org-ebnf + (package + (name "go-modernc-org-ebnf") + (version "1.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/ebnf") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "089gz09mcch505fkg9dfb480dkd659dlglpyan2qpic8by4xzagw")))) + (build-system go-build-system) + (arguments + (list + #:import-path "modernc.org/ebnf")) + (home-page "https://gitlab.com/cznic/ebnf") + (synopsis "EBNF grammars for Golang") + (description + "This package provides a library for @acronym{extended Backus–Naur form, EBNF} +grammars. The input is text @code{[]byte} satisfying the following +grammar (represented itself in EBNF):.") + (license license:bsd-3))) + +(define-public go-modernc-org-ebnfutil + (package + (name "go-modernc-org-ebnfutil") + (version "1.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/ebnfutil") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "12hwaqy4c83q3yqj7qakysm7wr3l9cn9925pywssmflixm9cw19s")))) + (build-system go-build-system) + (arguments + (list + #:import-path "modernc.org/ebnfutil")) + (propagated-inputs + (list go-modernc-org-ebnf + go-modernc-org-strutil)) + (home-page "https://gitlab.com/cznic/ebnfutil") + (synopsis "Utilities for messing with EBNF grammars") + (description + "This package provides some utilities for messing with @acronym{extended +Backus–Naur form, EBNF} grammars.") + (license license:bsd-3))) + (define-public go-modernc-org-fileutil (package (name "go-modernc-org-fileutil") @@ -24386,6 +24589,171 @@ Program Argument Syntax Conventions}.") (description "Package fileutil collects some file utility functions.") (license license:bsd-3))) +(define-public go-modernc-org-gc + ;; XXX: Project distributes v2 and v3 as the same source without Golang + ;; subdir tags. + (package + (name "go-modernc-org-gc") + (version "3.1.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/gc") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "19z7ihk76rg40l3wgy6ajm819k4mlz8pf5ib3p38mv8pxs7q1y8p")))) + (build-system go-build-system) + (arguments + (list + ;; XXX: Tests, probably, depend on deprecated std submodules: + ;; <...>-go-1.24.3/lib/go/test: no such file or directory + #:tests? #f + #:import-path "modernc.org/gc" + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'remove-submodules + (lambda* (#:key import-path #:allow-other-keys) + (with-directory-excursion (string-append "src/" import-path) + (for-each delete-file-recursively (list "v2" "v3")))))))) + (propagated-inputs + (list go-github-com-edsrzf-mmap-go + go-modernc-org-token)) + (home-page "https://gitlab.com/cznic/gc") + (synopsis "Golang compiler front end") + (description + "This package provides a Go compiler front end.") + (license license:bsd-3))) + +(define-public go-modernc-org-gc-v2 + (package/inherit go-modernc-org-gc + (name "go-modernc-org-gc-v2") + (arguments + (list + #:import-path "modernc.org/gc/v2" + #:unpack-path "modernc.org/gc" + ;; all_test.go:274: open normalized.go.ebnf: permission denied + #:test-flags #~(list "-skip" "Test0"))) + (native-inputs + (list go-github-com-dustin-go-humanize + go-github-com-pmezard-go-difflib + go-modernc-org-ebnf + go-modernc-org-ebnfutil + go-modernc-org-scannertest)) + (propagated-inputs + (list go-modernc-org-token)))) + +(define-public go-modernc-org-gc-v3 + (package/inherit go-modernc-org-gc + (name "go-modernc-org-gc-v3") + (arguments + (list + #:import-path "modernc.org/gc/v3" + #:unpack-path "modernc.org/gc" + #:test-flags + #~(list "-vet=off" ;Go@1.24 forces vet, but tests are not ready yet. + ;; all_test.go:119: open peg.ebnf.fs: permission denied + "-skip" "TestPEGEBNF"))) + (native-inputs + (list go-github-com-pmezard-go-difflib + go-golang-org-x-tools + go-modernc-org-ebnfutil)) + (propagated-inputs + (list go-github-com-dustin-go-humanize + go-github-com-dustin-go-humanize + go-github-com-hashicorp-golang-lru-v2 + go-golang-org-x-exp + go-modernc-org-mathutil + go-modernc-org-strutil + go-modernc-org-token)))) + +(define-public go-modernc-org-goabi0 + (package + (name "go-modernc-org-goabi0") + (version "0.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/goabi0") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1nf3mcql5vjfymhy7l867zan2ynjg3wc3jplh4k1gby077h7jb3h")))) + (build-system go-build-system) + (arguments + (list + #:import-path "modernc.org/goabi0")) + (home-page "https://gitlab.com/cznic/goabi0") + (synopsis "Helpers for generating Go assembler ABI0 code") + (description + "This package provides helpers for generating Go assembler +@url{https://go.dev/doc/asm, ABI0} code.") + (license license:bsd-3))) + +(define-public go-modernc-org-golex + (package + (name "go-modernc-org-golex") + (version "1.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/golex") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "01izinzm5j5210z09r6k8rygybw7s442hrhk0kv726ig9l9si7fi")))) + (build-system go-build-system) + (arguments + (list + #:import-path "modernc.org/golex" + #:test-flags + #~(list "-vet=off" ;Go@1.24 forces vet, but tests are not ready yet. + ;; Cant's parce "\xff". + "-skip" "Example_completeGeneratedProgram"))) + (propagated-inputs + (list go-modernc-org-lex + go-modernc-org-lexer)) + (home-page "https://gitlab.com/cznic/golex") + (synopsis "Lex/flex like (not fully POSIX lex compatible) utility") + (description + "Golex is a lex/flex like (not fully POSIX lex compatible) utility. It +renders @code{.l} +@url{https://westes.github.io/flex/manual/Format.html#Format, formated data} +to Go source code. The @code{.l} data can come from a file named in a command +line argument. If no non-opt args are given, golex reads stdin.") + (license license:bsd-3))) + +(define-public go-modernc-org-lex + (package + (name "go-modernc-org-lex") + (version "1.1.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/lex") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1fad093cdkgdwk3sf0vklk05qzkis1ivri3hig1wigv4z908nmdj")))) + (build-system go-build-system) + (arguments + (list + #:import-path "modernc.org/lex")) + (propagated-inputs + (list go-modernc-org-fileutil + go-modernc-org-lexer)) + (home-page "https://gitlab.com/cznic/lex") + (synopsis "Support for a @code{*nix (f)lex} like tool on @code{.l} sources") + (description + "This package provides a support for a @code{*nix (f)lex} like tool on +@code{.l} sources. The syntax is similar to a subset of @code{}(f)lex}, see +also: @url{https://github.com/westes/flex}.") + (license license:bsd-3))) + (define-public go-modernc-org-lexer (package (name "go-modernc-org-lexer") @@ -24437,6 +24805,47 @@ recognizers) at run time.") (description "Package memory implements a memory allocator.") (license license:bsd-3))) +(define-public go-modernc-org-libc + (package + (name "go-modernc-org-libc") + (version "1.66.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/libc") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "01xj0flqcy5sx75ddcgjvwilbi87gn9wy33k76p88m5f820ldf4d")))) + (build-system go-build-system) + (arguments + (list + #:import-path "modernc.org/libc" + ;; all_musl_test.go:479: FAIL err=exit status 1 out=go: modules disabled + ;; by GO111MODULE=off; see 'go help modules' + #:test-flags #~(list "-skip" "TestLibc"))) + (native-inputs + (list go-golang-org-x-tools + go-modernc-org-ccgo-v4 + go-modernc-org-fileutil + go-modernc-org-goabi0)) + (propagated-inputs + (list go-github-com-dustin-go-humanize + go-github-com-google-uuid + go-github-com-ncruces-go-strftime + go-github-com-remyoudompheng-bigfft + go-golang-org-x-exp + go-golang-org-x-sys + go-modernc-org-mathutil + go-modernc-org-memory)) + (home-page "https://modernc.org/libc") + (synopsis "C standard library implementation in Go") + (description + "Package libc provides a C standard library implementation for use +with ccgo-generated code.") + (license license:bsd-3))) + (define-public go-modernc-org-opt (package (name "go-modernc-org-opt") @@ -24459,6 +24868,61 @@ recognizers) at run time.") (description "Package opt implements command-line flag parsing.") (license license:bsd-3))) +(define-public go-modernc-org-parser + (package + (name "go-modernc-org-parser") + (version "1.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/parser") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0mawi7qqd5pkpg1a9k3isnkm6c524ig83awmpc132x47qsxd2a6g")))) + (build-system go-build-system) + (arguments + (list + #:skip-build? #t + #:import-path "modernc.org/parser")) + (propagated-inputs + (list go-modernc-org-golex + go-modernc-org-scanner + go-modernc-org-strutil)) + (home-page "https://gitlab.com/cznic/parser") + (synopsis "Collection of Golang parsers") + (description + "This package provides an imlementation of @code{nquads} and @code{yacc} +parsers.") + (license license:bsd-3))) + +(define-public go-modernc-org-scanner + (package + (name "go-modernc-org-scanner") + (version "1.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/scanner") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0nj7iy8gr9f5vwmg5fvpvxsjy9668mkm9dyc8ajx8imvlx4n1lvw")))) + (build-system go-build-system) + (arguments + (list + #:import-path "modernc.org/scanner")) + (propagated-inputs + (list go-modernc-org-token)) + (home-page "https://gitlab.com/cznic/scanner") + (synopsis "Common source code scanner for Golang") + (description + ;; XXX: Project provides nearly 0 documentation. + "This package provides some common scanner stuff.") + (license license:bsd-3))) + (define-public go-modernc-org-sortutil (package (name "go-modernc-org-sortutil") @@ -24485,6 +24949,49 @@ recognizers) at run time.") @code{sort} package.") (license license:bsd-3))) +(define-public go-modernc-org-sqlite + (package + (name "go-modernc-org-sqlite") + (version "1.38.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/sqlite") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0579vip4vn488jppjpadryxyimkw2jr8ywr4j0piqcm2zs40h509")))) + (build-system go-build-system) + (arguments + (list + #:import-path "modernc.org/sqlite" + #:phases + #~(modify-phases %standard-phases + (add-after 'check 'post-check-remove-test-data + (lambda* (#:key import-path #:allow-other-keys) + (with-directory-excursion (string-append "src/" import-path) + (delete-file-recursively "testdata"))))))) + (native-inputs + (list go-github-com-google-pprof + go-github-com-mattn-go-sqlite3 + go-modernc-org-fileutil + go-modernc-org-mathutil)) + (propagated-inputs + (list go-github-com-dustin-go-humanize + go-github-com-google-uuid + go-github-com-ncruces-go-strftime + go-github-com-remyoudompheng-bigfft + go-golang-org-x-sys + go-modernc-org-libc + go-modernc-org-memory)) + (home-page "https://modernc.org/sqlite") + (synopsis "CGo-free port of SQLite") + (description + "Package sqlite is a CGo-free port of SQLite. It is a drop-in +replacement for mattn/go-sqlite3.") + (license license:bsd-3))) + (define-public go-modernc-org-strutil (package (name "go-modernc-org-strutil") @@ -24513,6 +25020,35 @@ recognizers) at run time.") @code{strings} package.") (license license:bsd-3))) +(define-public go-modernc-org-y + (package + (name "go-modernc-org-y") + (version "1.1.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/cznic/y") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1vp9dzw7m64yhf8j0sxir9lpn8zis1z06ia95iah62h6p0c3q9ys")))) + (build-system go-build-system) + (arguments + (list + #:import-path "modernc.org/y")) + (propagated-inputs + (list go-modernc-org-mathutil + go-modernc-org-parser + go-modernc-org-sortutil + go-modernc-org-strutil)) + (home-page "https://gitlab.com/cznic/y") + (synopsis "Converter of @code{.y} (yacc) source files") + (description + "This package implements a functionality to convert @code{.y} (yacc[2]) +source files to data suitable for a parser generator.") + (license license:bsd-3))) + (define-public go-mvdan-cc-editorconfig (package (name "go-mvdan-cc-editorconfig") @@ -24733,6 +25269,31 @@ described at https://golang.org/s/re2syntax, except for @code{\\C.}") prints the Go version used to build that executable.") (license license:bsd-3))) +(define-public go-rsc-io-script + (package + (name "go-rsc-io-script") + (version "0.0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rsc/script") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "05yl5nqhcjhp4sjdh7a9m9s6w4lm4qhn4bhi7v6hhsbfn348jxfh")))) + (build-system go-build-system) + (arguments + (list + #:import-path "rsc.io/script")) + (propagated-inputs (list go-golang-org-x-tools)) + (home-page "https://rsc.io/script") + (synopsis "Small scripting language for Go") + (description + "Package script implements a small, customizable, platform-agnostic +scripting language.") + (license license:bsd-3))) + (define-public go-sigs-k8s-io-json (package (name "go-sigs-k8s-io-json") |
