[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: source and compiled file installtion locations
From: |
David Pirotte |
Subject: |
Re: source and compiled file installtion locations |
Date: |
Sun, 6 May 2018 19:17:42 -0300 |
Hi Chris,
> On Sat, 5 May 2018 21:03:14 -0300
> David Pirotte <address@hidden> wrote:
> > Hello Guilers,
> >
> > > 1- no --use-guile-site
> > >
> > > in this case, imo, locations should be
> > >
> > > $(datarootdir)/<project-name> [ source
> >
> > FWIW,
> >
> > This is what guile-gnome does, and it also does it in $(libdir),
> > $(includedir) ...,
> >
> > It does it using guile-gnome API version, not guile effective version,
> > which I
> > also think 'projects' should do, so currently, guile-gnome pure scheme
> > modules
> > land in:
> >
> > $(datarootdir)/guile-gnome-2
> >
> > [ except for the doc, installed in
> > [ $(docdor)/guile-gnome-platform/
> >
> > The only module that guile-gnome installs in $(datarootdir)/guile/site (and
> > not
> > $(datarootdir)/guile/site/GUILE_EFFECTIVE_VERSION as I also claim we should
> > not
> > do this) is gnome-2, a module that users import to 'inform' guile of
> > source, lib
> > locations (which they also can do sing the guile-gnome-2 script ...)
> Instead of using the project's $(libdir), $(datarootdir), and so forth,
> I use pkgconfig to interogate guile-2.2.pc or guile-2.0.pc, and install
> source (.scm) files in its revealed 'sitedir' and compiled (.go) files
> in its revealed 'siteccachedir', with the base project module name
> added to the path in each case. That way, even if the project
> (including any of its shared library files) are installed in, say,
> the /usr/local prefix, the scheme files are installed in the correct
> prefix for guile.
Yes, we all do this, as said in my first email, though we generally use
variables
defined by the guile m4 macros instead, GUILE_SITE .... for those who would not
know, the complete set of these variables is also in %guile-build-info ...
But as I wrote in the first email as well, I believe this not the right thing
to do:
(1) it does not respect GNU standards (without the user consent, to me this is
wrong) and (2) because, and that is a real problem, it disrespect --prefix if
given
(it is very often given), and Daniel Llorens recently complained about this (wrt
guile-lib), and I agree with him ...
So I started to think a bit more about this :), and came to the conclusion that
unless the user explicitly ask to 'disrespect' the GNU standards (filesystem),
through an option, --with-guile-site or --use-guile-site [1], all projects
should
respect it, which is what guile-gnome does ... This way, both --prefix and/or
--use-guile-site would work ... This approach actually correctly honors all
demands.
David
[1] I asked on #autotools, and they answered that although the manual
implies
--with-* is for enabling external libraries, they actually use this
prefix
for 'what ever...' :)
I still thnk --use-guile-site is better though
pgpDCxKO2FMeR.pgp
Description: OpenPGP digital signature