Opened 10 years ago

Closed 10 years ago

#26568 closed update (fixed)

Updated yap portfile

Reported by: pmoura (Paulo Moura) Owned by: ryandesign (Ryan Schmidt)
Priority: Normal Milestone:
Component: ports Version: 1.9.1
Keywords: haspatch maintainer Cc:
Port: yap


Added some of the most used variants to the portfile. Changes the default variants as the threads one is currently broken.

Attachments (1)

Portfile-yap.diff (1.2 KB) - added by pmoura (Paulo Moura) 10 years ago.

Download all attachments as: .zip

Change History (12)

comment:1 Changed 10 years ago by pmoura (Paulo Moura)

Oops! the port field is wrongly set to "yap-devel" instead of "yap"! But I have no permission to correct it.

comment:2 Changed 10 years ago by ryandesign (Ryan Schmidt)

Port: yap added; yap-devel removed
$ port lint yap
--->  Verifying Portfile for yap
Warning: Variant tabling does not have a description
Warning: Variant threads does not have a description
Error: Variant name depth-limit is not valid; use [A-Za-z0-9_]+ only
Warning: Variant cplint does not have a description
Warning: Variant coroutining does not have a description
--->  1 errors and 4 warnings found.

Also, fewer variants would be better... Can any of these variants be removed and just be always on or always off? Does the user really want control over all these options?

comment:3 Changed 10 years ago by pmoura (Paulo Moura)

I'm afraid this is just an initial set of variants that don't cover all the the possible configuration options. YAP is widely used in the area of Logic Programming research and supports a large set of optional packages. I only defined variants for the most commonly used optional packages. I didn't add descriptions to the variants are their name is quite descriptive for YAP users. I will correct the error with the variant name after this reply. I'm going to contact the YAP main developer and ask him about which variants are useful to define. Please hold the commit of this portfile and of the "yap-devel" portfile for a couple of days until I sort this out.

comment:4 Changed 10 years ago by pmoura (Paulo Moura)

Talked with the YAP developer today and updated the portfile patch accordingly.

comment:5 Changed 10 years ago by ryandesign (Ryan Schmidt)

I am not a YAP user so you will have to bear with me. :) None of these variants add dependencies, so they appear to just be adding internal YAP features. Is there any disadvantage to enabling them all the time, or any advantage to disabling them?

For example, you have defined a variant "tabling" which is in the default_variants. Is there any reason why a user would ever want to disable this?

And you have defined the variant "condor" but it's not on by default. Why would a user not want this?

Just trying to understand why YAP is different from other software, where we prefer to always compile in all possible options (unless they bring in big dependencies, in which case we might make variants).

comment:6 Changed 10 years ago by pmoura (Paulo Moura)

Some of the features are not stable or hurt performance or are incompatible with dynamic loading. So, you only enable them if you absolutely need it. I'm chatting with the YAP developer on Skype about it. He prefers that tabling is not a default so I'm going to submit updated portfiles for yap and yap-devel next.

Changed 10 years ago by pmoura (Paulo Moura)

Attachment: Portfile-yap.diff added

comment:7 Changed 10 years ago by pmoura (Paulo Moura)

Just upload a new patch file that removes tabling from the default variants as, accordingly to the YAP developer, is not stable enough to be a default.

comment:8 Changed 10 years ago by ryandesign (Ryan Schmidt)

Owner: changed from macports-tickets@… to ryandesign@…
Status: newassigned

Ok, we'll add the variants.

I tried to build it with this patch and the first thing the configure script says is

configure: WARNING: unrecognized options: --with-java

It builds, but if that configure argument is unrecognized, I wonder if the +java variant is actually doing anything. Looking at the output of "./configure --help" I see:

--with-jpl=JAVA_HOME       use Java instalation in JAVA_HOME

Is that the option you meant?

We'll also want to increase the port's revision since this patch changes the contents of the installed files.

comment:9 Changed 10 years ago by pmoura (Paulo Moura)

Your message above about the Java option confused me a bit. It turns out that the option is named "--with-jpl" on YAP 6.05 but renamed to "--with-java" in 6.0.6 stable (which give a build error when using MacPorts) and 6.0.7 (the current development version, which fixes the build issue in 6.0.6). Thus, for the "yap" port, we need "--with-jpl". Can you make the change or do you prefer that I submit a corrected patch? Sorry for the trouble.

comment:10 Changed 10 years ago by ryandesign (Ryan Schmidt)

It's fine; you don't need to attach another patch.

comment:11 Changed 10 years ago by ryandesign (Ryan Schmidt)

Resolution: fixed
Status: assignedclosed

Updated yap in r71889, using mostly your patch with a few changes.

Note: See TracTickets for help on using tickets.