On Nov 11, 2008, at 03:57, Bryan Blackburn wrote:

On Tue, Nov 11, 2008 at 01:20:51AM -0800, Scott Haneda said:

Since this is just moving files around, I have set
use_configure           no
but that seems misleading to me, if it is set to no, how come configure
still gets run?

Since ASSP doesn't have a configure script, if it were being run you'd see
an error message about it; I'm guessing you're talking about the line

   DEBUG: Executing org.macports.configure (assp)

which is a bit misleading because once it does that, it does nothing else...

Yes, but his port says "use_configure no" but then also has "configure {...}" (with actual code in place of "..."). In this case, since you did write a configure phase, you should not say "use_configure no".


pre-patch, configrue, build, and destroot all appear to be what I would call tcl functions, does the order of placement in the port file make any difference at all, or are the parsed and ran in the order they need to be?
 I think the logical order would be

Order in the Portfile doesn't matter for those, they are run in the logical order (fetch, extract, patch, configure, build, destroot, install, activate)
with pre- and post- phases for each available.

Right. But it can be clearer to put them in order in the Portfile, too.



Other comments on your portfile:

Near the top you still define:

set assp_base           ${prefix}/var/assp

And you use this in reinplace:

reinplace "s%/usr/local/assp%${assp_base}%" ${worksrcpath}/$file

However in the destroot you deal with ${prefix}/var/ASSP:

file delete -force "${prefix}/var/ASSP"

Which case is correct? You must use the correct case, for the benefit of users running on case-sensitive filesystems. In the destroot, you should probably reuse the assp_base variable again.


Also, to this question:

I am a little confused on the ideal way to use pre-patch, configure, build, and destroot.

Taking a cue from the original port, I put the first reinplace, to delete DOS endings in pre-patch, this makes sense to me to be here.

The change to the line endings was done before the patch phase, because in the patch phase, those files needed to be patched, but the patchfiles themselves used UNIX line endings. The files to be patched needed to be changed to have the same line endings as the patchfile.

The patchfile could have been stored with DOS line endings, but that would be weird on Mac OS X, and someone's editor might screw it up when changing it in the future. Also not sure how the UNIX command- line diff utilities fare with DOS line endings. Better to use UNIX line endings; we're sure how that works.

Since your new portfile doesn't do any patching, you may not need to muck with the line ending of these files anymore. Not sure.


I then put the reinplace of the perl path, as well as the /usr/ local/assp path replacement in configure. Is this correct? To me, it seems a pre-patch thing. I fail to locate docs that tell me what is most ideal for each action.


Yeah, it might make sense to do that in the patch phase too. And then to not have a configure phase (by using "use_configure no"). It probably doesn't make a lot of difference here though.

_______________________________________________
macports-users mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macports-users

Reply via email to