[racket-dev] package-system update

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Fri Jul 19 06:24:57 EDT 2013

At Fri, 19 Jul 2013 07:37:13 +0200, Togan Muftuoglu wrote:
> >>>>> On Thu, 18 Jul 2013 17:07:38 -0600, Matthew Flatt 
> <mflatt-sDh8Nw2yj/+Vc3sceRu5cw at public.gmane.org> said:
>     Matthew> At Fri, 19 Jul 2013 00:48:10 +0200, Togan Muftuoglu wrote:
>     >> 1. configure and Makefile should allow docdir parameter given at as an
>     >> arg [...]
>     >> 
>     >> 2. collects path should be allowed for another location ie. [...]
>     Matthew> I'll work on those.
>     Thanks
>     >> Finally currently build system can't complete the install stage
>     >> 
>     >> ./racketcgc -cu "./collects-path.rkt" \
>     >> 
> "/home/abuild/rpmbuild/BUILDROOT/racket-5.6.0-0.x86_64/usr/lib64/racket/starter"
>     >> \ /usr/lib64/racket/collects
>     Matthew> Is this from a generated Makefile, or it is from some other
>     Matthew> script?
>    That is from the generated Makefile. I use the racket/src/configure to
>    generate the Makefile

I'm missing something, then. The source "Makefile.in" says

 @RUN_RACKET_CGC@ -cu "$(srcdir)/collects-path.rkt" "$(DESTDIR)$(libpltdir)/starter at EXE_SUFFIX@" @COLLECTS_PATH@ @CONFIG_PATH@

and I don't see how `@CONFIG_PATH@' could turn out to be empty.

Can you send me the generated "racket/Makefile"?

>     Matthew> The "collects-path.rkt" script now expects a second path, with is
>     Matthew> the configuration directory path to embed in the executable.
>     Is it necessary the configuration directory path should be embed in the
>     executable. Why can't it be set at load time similar to Emacs init file
>     concept

I'm not sure I understand the question, but the configuration directory
is where Racket finds "config.rktd", which in turn describes the
location of various other directories (i.e., the ones that you want to

The content of "config.rktd" used to be implemented as a module, and so
the configuration resided inside the collection directory. For various
reasons, that has not worked well, so (while rearranging things anyway
for packages) we moved configuration out of the "collects" tree and
into an "etc" configuration directory.

Posted on the dev mailing list.