Packaging practices

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Packaging practices

Sunnan
Hi,

What are, in this list's opinion, the recommended best practices for
distributing free software written in Chicken? I'm thinking proper
GNU-style source tar balls, since that's currently the basis for most
further (distro specific and other binary) packaging.

* Do you use autoconf, if so, what do you check for?
* What about automake?
* Do you make one distribution containing the full .scm-files and one
  with just the .c-files, or do you only make the .scm-distribution?
* How do you deal with third-party eggs from the
  call-with-current-continuation repo that your program uses?

I'd love to see example chicken projects, I'm especially interested in
autoconf and automake usage but other solutions are also of interest.

Sunnan



_______________________________________________
Chicken-users mailing list
[hidden email]
http://lists.nongnu.org/mailman/listinfo/chicken-users
Reply | Threaded
Open this post in threaded view
|

Re: Packaging practices

felix winkelmann
On 11/6/05, [hidden email] <[hidden email]> wrote:

> Hi,
>
> What are, in this list's opinion, the recommended best practices for
> distributing free software written in Chicken? I'm thinking proper
> GNU-style source tar balls, since that's currently the basis for most
> further (distro specific and other binary) packaging.
>
> * Do you use autoconf, if so, what do you check for?
> * What about automake?
> * Do you make one distribution containing the full .scm-files and one
>   with just the .c-files, or do you only make the .scm-distribution?
> * How do you deal with third-party eggs from the
>   call-with-current-continuation repo that your program uses?
>

One example of using the autotools is here:

http://chicken.humankraft.com/wiki.ssp?page=Using%20the%20GNU%20Autotools%20with%20compiled%20code

It's rather minimalistic, but should show the general procedure.
Apart from Chicken itself, I try to avoid autoconf/automake as much
as possible, but it certainly is a standard way of handling the build
of source packages.
I would add the .scm sources. Then you can bootstrap the .c files from
those - it's the same as in chicken: the .c files are compiled by default,
only if someone touches the .scm files, they get recompiled.
If you use eggs, things might get a bit tricky, but it is always possible to
include the sources (provided, the license issues are clear) and compile
them into something that can be statically linked into the executable
(try the csc "-E" option). If you have problems figuring out the right
incantations to include the egg of your choice, ask here.


cheers,
felix


_______________________________________________
Chicken-users mailing list
[hidden email]
http://lists.nongnu.org/mailman/listinfo/chicken-users
Reply | Threaded
Open this post in threaded view
|

Re: Packaging practices

Sunnan
> On 11/6/05, [hidden email] <[hidden email]> wrote:
> One example of using the autotools is here:
>
> http://chicken.humankraft.com/wiki.ssp?page=Using%20the%20GNU%20Autotools%20with%20compiled%20code
>
> It's rather minimalistic, but should show the general procedure.

Thank you very much.

> Apart from Chicken itself, I try to avoid autoconf/automake as much
> as possible, but it certainly is a standard way of handling the build
> of source packages.

The standard is using ./configure (preferably accepting --prefix), make
and make install -- whether or not the configure script and makefile was
generated by the autotools doesn't seem to be important.

Thanks again.
Sunnan


_______________________________________________
Chicken-users mailing list
[hidden email]
http://lists.nongnu.org/mailman/listinfo/chicken-users