manifest.scm 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. (use-modules (guix packages)
  2. (guix profiles)
  3. (guix build-system gnu)
  4. (guix build utils)
  5. (guix gexp)
  6. (guix git)
  7. (guix utils)
  8. ((guix licenses) #:prefix license:)
  9. (gnu packages autotools)
  10. (gnu packages base)
  11. (gnu packages commencement)
  12. (gnu packages llvm)
  13. (gnu packages pkg-config)
  14. (gnu packages scheme)
  15. (gnu packages sdl)
  16. (gnu packages texinfo)
  17. (ice-9 popen)
  18. (ice-9 textual-ports))
  19. (define-public scheme48-r7rs
  20. (package
  21. (name "scheme48-r7rs")
  22. (version "0.1")
  23. (source (git-checkout
  24. (url "https://codeberg.org/prescheme/s48-r7rs.git")
  25. (recursive? #t)))
  26. (build-system gnu-build-system)
  27. (inputs
  28. (list scheme48))
  29. (native-inputs
  30. (list autoconf-2.69 automake))
  31. (native-search-paths
  32. (list (search-path-specification
  33. (variable "SCHEME48_LOAD_PATH")
  34. (files '("share/scheme48-r7rs-0.1")))))
  35. (home-page "https://codeberg.org/prescheme/s48-r7rs")
  36. (synopsis "Incomplete R7RS implementation for Scheme 48")
  37. (description
  38. "This package provides an (incomplete) implementation of R7RS Small on
  39. top of the venerable Scheme 48, providing:
  40. - support for loading R7RS libraries from the filesystem
  41. - support for running R7RS programs (aka. scripts)
  42. - implementations of the majority of R7RS-small core libraries
  43. - implementations of a handful of newer SRFIs (hash-tables, generators, etc.)")
  44. (license license:bsd-3)))
  45. (define-public scheme48-prescheme
  46. (package
  47. (name "scheme48-prescheme")
  48. (version "0.1")
  49. (source (git-checkout
  50. (url "https://codeberg.org/prescheme/prescheme.git")))
  51. (build-system gnu-build-system)
  52. (inputs
  53. (list scheme48-r7rs))
  54. (native-inputs
  55. (list autoconf-2.69 automake libtool texinfo))
  56. (home-page "https://prescheme.org")
  57. (synopsis "Pre-Scheme compiler from Scheme 48, ported to R7RS")
  58. (description
  59. "Pre-Scheme is a statically compilable dialect of Scheme, originally used
  60. to implement the Scheme 48 virtual machine. This version of the compiler has been ported
  61. to run on R7RS Scheme implementations, and runs on top of the Scheme 48 R7RS compatibility layer.")
  62. (license license:bsd-3)))
  63. (packages->manifest
  64. (list scheme48-r7rs
  65. scheme48-prescheme
  66. gcc-toolchain
  67. gnu-make
  68. pkg-config
  69. clang ;; for clang-format
  70. sdl2
  71. ))