Subject: Re: a few PLIST related questions
To: None <mcmahill@MTL.MIT.EDU>
From: Alistair Crooks <azcb0@amdahl.com>
List: tech-pkg
Date: 08/14/1998 01:26:29
> So I'm now really close to finishing up this (now several month long)
> packaging effort for scilab-2.4. I have created a 6330 entry PLIST for
> this beast and have a couple of questions.
Excellent - thanks for doing this.
> 1) Several subdirectories are created. Should those be listed the same
> way as files or only at the end as
> @dirrm subdirname
Just the @dirrm subdirname, in the correct order so that parent
directories are listed after child subdirectories e.g.
@dirrm parent/child
@dirrm parent
> 2) There has been a lot of talk about checksums lately. I don't
> completely understand where that comes in so I'll ask this one.
> The "normal" install procedure for the program (ie not in our
> package environment) is
> make all
> make tarbindist
> cd final_destination_directory
> tar -zxvf name_of_tarbindist_file_just_created
> make
>
> The final 'make' sees that you have extracted a binary distribution of
> the program and it goes in to a couple of scripts and hard codes the
> path names (using sed).
>
> Anyway, my question is then, is this a problem? I can easily add an
> install target that does this, but the exact contents of a couple of
> the installed files will vary depending on ${PREFIX}. Will this be
> a problem if this is made into a binary package? Do I need to do
> something extra to make it go correctly?
The md5 checksums are done as part of the "fake-pkg" target, which is
performed after the pre-install, do-install, and post-install stages,
when you see the "Registering installation for ${PKGNAME}" message. So
if all the tar steps you mention above are done as part of one of those
*-install targets, you should be OK.
However, this will be a problem for any binary package that is created,
as you suspected, as it will not be possible to run the binary package
on a system different to your own - the pathnames will not be correct. At
the moment, there's nothing that can be done about this. Sorry.
But a quick question - why does it hardcode paths in there? Can't scilab
use environment variables, or run-time checks, to make it much more
portable?
Take care,
Alistair