perl6-internals
[Top] [All Lists]

Re: pdd19_pir.pod: See C<docs/imcc/macros.pod>

To: "Parrot Porters" <parrot-porters@perl.org>
Subject: Re: pdd19_pir.pod: See C<docs/imcc/macros.pod>
From: "Reini Urban" <rurban@x-ray.at>
Date: Thu, 28 Aug 2008 14:10:27 +0200
Delivered-to: mailing list perl6-all@perl.org
Delivered-to: perl6-all-poster@perl.org
Delivered-to: mailing list perl6-internals@perl.org
Delivered-to: perl6-internals@perl.org
Delivered-to: perlmail-parrot-porters@onion.perl.org
Delivered-to: parrot-porters@perl.org
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:sender :to:subject:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references :x-google-sender-auth; bh=4rwkvUyBxNoTVSeTaWtlMJfiaEevUwGvzk12clQbB6I=; b=mFwHzPxfNcU+VjnAhzoYlZ6hWPl8G6pswCOaBm7DGNj41uHGsWwaiWkuLgovBL21d1 zIsMrRriQVhRKIp9FKMPrelGZM9KbcPkoUwy+ZLjcEcGPvBWpu7BWXDBTtqkOVYLijIq 7Mhuf26u5/WwYZHncDxyIiEiYj9qp+zsoStr0=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:sender:to:subject:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references:x-google-sender-auth; b=kzfjqrELtqQVXDMmohMJyAVVgMXbMxYNKA7jImvDm8Bw298Pk2JjEdjv6o3w+oOFk2 U2xGYUMw+mXQ63+OQLFCeGd6bv1aP76GD9VrE91szBxcsLaIfMDOn70/89TAHh++luVD wXS17VQdLBPhFztHBMUnSGD3XZkNxqnGqt5YQ=
In-reply-to: <48B670B2.8080603@casella.verplant.org>
List-help: <mailto:perl6-all-help@perl.org>
List-id: <perl6-all.perl.org>
List-id: <perl6-internals.perl.org>
List-post: <mailto:perl6-all@perl.org>
List-subscribe: <mailto:perl6-all-subscribe@perl.org>
List-unsubscribe: <mailto:perl6-all-unsubscribe@perl.org>
Mailing-list: contact perl6-all-help@perl.org; run by ezmlm
References: <6910a60808250108t65dda8bfqeaf6454a62d839d6@mail.gmail.com> <48B2F14B.6040409@casella.verplant.org> <a45468e30808251105i4cf17896saa335f3e083ab8dc@mail.gmail.com> <48B30D43.9060703@perl.org> <6910a60808260633u1c325040u3d87c4ea7370ebe7@mail.gmail.com> <48B670B2.8080603@casella.verplant.org>
Sender: reini.urban@gmail.com
2008/8/28 Moritz Lenz <moritz@casella.verplant.org>:
>> +=head1 DESCRIPTION
>> +
>> +Parrot installation mechanisms are more powerful than perl5's.
>> +MANIFEST contains also the end location, tools/dev/install_files.pl is 
>> driven
>> +by this definition.
>
> To me it's not clear what the "end location" is - care to elaborate?

The end location by make install is a string concatation of

* the $(DESTDIR) as defined per Makefile argument,
* plus the respective Configure defined directoy (prefix,bin_dir, lib_dir,
  include_dir, mandir, doc_dir, ...)
  where the directores are defined by default to follow the FHS convention
  and optional Configure.pl arguments,
  and the files as defined in one of the three MANIFEST files in the format
    <filename> \t [<package>]lib,doc,include,bin
  - files from the [library] package go to prefix/lib_dir and either
dynext, library or include,
* plus the filename as defined by the three MANIFEST files.
There's additional logic in the tools/dev/install_files.pl script.

prefix defaults to "/usr/local" and packages define them as "/usr"
lib_dir defaults to prefix + "/lib"
  and libraries go to parrot/dynext for shared libs (flat)
                             parrot/library for pbc files (structured
according to the namespace)
                             parrot/include for pir and pasm files (flat)
bin_dir to prefix + "/bin"
doc_dir to  prefix + "/share/doc/parrot"
mandir to prefix + "/man", but it should be prefix + "/share/man"
according to the FHS
include_dir to prefix + "/include/parrot"
pkgconfig_dir to prefix + "/lib/pkgconfig"

What is missing is the end location of language pbc's and installable exe's.
The convention by fedora and cygwin for parrot-language installables is
  $(DESTDIR)@bin_dir@/parrot-$(LANG)@exe@

Open problem:
For language pbc's a new dir like script_dir or lib_dir/parrot/bin
would be required.
They could also pollute $(DESTDIR)@lib_dir@/parrot/library where the other
pbc's are.
The language group and op shared libs go to $(DESTDIR)@lib_dir@/parrot/dynext
for sure.
e.g. tclsh.pbc, APL.pbc, ...
-- 
Reini Urban
http://phpwiki.org/ http://murbreak.at/


<Prev in Thread] Current Thread [Next in Thread>