unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
From: David Pirotte <david@altosw.be>
To: Chris Vine <vine.chris@gmail.com>
Cc: guile-devel@gnu.org
Subject: Re: source and compiled file installtion locations
Date: Sun, 6 May 2018 19:17:42 -0300	[thread overview]
Message-ID: <20180506191742.27548736@capac> (raw)
In-Reply-To: <20180506095655.19db65e8414956e1a91aff38@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2829 bytes --]

Hi Chris,

> On Sat, 5 May 2018 21:03:14 -0300
> David Pirotte <david@altosw.be> 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



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

      reply	other threads:[~2018-05-06 22:17 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-03  5:15 source and compiled file installtion locations David Pirotte
2018-05-06  0:03 ` David Pirotte
2018-05-06  8:56   ` Chris Vine
2018-05-06 22:17     ` David Pirotte [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180506191742.27548736@capac \
    --to=david@altosw.be \
    --cc=guile-devel@gnu.org \
    --cc=vine.chris@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).