RE: Post-install script
by Jan Dubois other posts by this author
May 24 2008 8:13AM messages near this date
view in the new Beta List Site
Post-install script
|
Re: Post-install script
On Sat, 24 May 2008, Sisyphus wrote:
>
> Hi,
> When PDL is built from source, 'make install' does the following:
> 1) Firstly it installs the files - nothing unusual about that;
> 2) It then runs a perl script (scantree.pl) that generates some
> documentation files (eg pdldoc.db) for the perldl shell.
>
> If PDL is installed using PPM, then that second step is currently not
> performed - and the perldl shell cannot access that documentation. Attempts
> to access the documentation at the perldl prompt result in an error message
> that pdldoc.db could not be found. (Hardly surprising since pdldoc.db didn't
> get built.)
Is there a reason you couldn't build pdldoc.db on your build machine and
include it in the tarball? Or does it contain absolute file paths to
additional files?
Generally speaking it is preferable to have all files included in the
tarball. That way these files will get recorded in .packlist files
during installation. The PPM client will then also remove them automatically
when you uninstall the package.
> So ... I need to:
> 1) Include scantree.pl in the ppm package. (Or does it need to be stored as
> a separate file on the ppm server ?)
The script can be included inside the <INSTALL> </INSTALL> tags directly in
the PPD (you need to escape it properly to make everything valid XML).
At least it is supposed to work; I don't know of anyone using it, and I
haven't checked if it is still implemented in PPM4. It is documented
though if you check `perldoc ActivePerl::PPM::PPD`.
> 2) After the PDL files have been installed by 'ppm install', run 'perl
> scantree.pl'.
>
> Can this be handled automatically by the ppd file ?
> Is there an example somewhere of a ppd file that runs a perl script (post
> installation) on the ppm client machine ?
>
> I'm more or less familiar with post-install scripts that are run on the ppm
> server, but in this instance, uim, the post-install script needs to be run
> on the ppm client.
I don't understand this. *All* post-install scripts are run on the client,
not on the server. Generally (except for PPM3 style SOAP repositories) the
server is a passive file server.
Cheers,
-Jan
_______________________________________________
PPM mailing list
PPM@[...].com
http://listserv.ActiveState.com/mailman/listinfo/ppm
Thread:
Sisyphus
Jan Dubois
Sisyphus
|