On 2/6/22 17:35, Olivier Dion via General Guile related discussions wrote:
On Sat, 05 Feb 2022, Christine Lemmer-Webber <cweb...@dustycloud.org> wrote:
Anyway, just some thoughts. Making Guile packages is already much less
intimidating now thanks to Hall's work. Thank you for it!
Here's my two cents. As much as I like hall for pure Guile project,
it's difficult to integrate extension libraries written in C. I've also
never been a fan of the autotools stuffs.
I personnally end up writting something similar to hall for a project of
mine using Guix records. From a description like so:
--------------------------------------------------------------------------------
(project
(name "foo")
(version "1")
(configuration-file "config.scm")
(export-configuration
'(("include/config.h" . "FOO_CONFIG_H")
("foo/config.scm" . "foo config")))
(build-directory "./build")
(cppflags `(-Include ,(pkg-cflags-only-I '(guile-3.0))))
(guile-root "foo")
(guile-tests-root "tests")
(scripts
(list
(script
(name "foo")
(file "scripts/foo")
(install? #t))
(script
(name "debug")
(file "scripts/debug")
(install? #f))))
(c-modules
(list
(c-module
(name "foo")
(files '("core/*.c"))
(packages '(guile-3.0)))
(c-module
(name "bar")
(files '("bar/bar.c"))
(ldflags '(-lsomelib))
(packages '(some-other-lib)))))
--------------------------------------------------------------------------------
this description end up generating a `guix.scm`, `makefile`,
`pre-install-env`, `foo/config.scm` and `include/config.h`. Packaging
is just a matter of shipping the `makefile` with the source codes.
What is this similar to Hall thing you have written, which generates the files
from the code you gave?
--
repositories: https://notabug.org/ZelphirKaltstahl