#32897 closed submission (fixed)
Request for new science port whizard
Reported by: | Romendakil | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | ryandesign (Ryan Carsten Schmidt), Romendakil | |
Port: | whizard |
Description
This is a request to include the new science port whizard, depending on the two ports gcc46 and ocaml.
Attachments (6)
Change History (30)
Changed 13 years ago by Romendakil
Attachment: | whizard.portfile added |
---|
comment:1 follow-up: 2 Changed 13 years ago by mf2k (Frank Schima)
Keywords: | new port removed |
---|---|
Milestone: | MacPorts 2.0.4 |
Type: | request → submission |
Version: | 2.0.3 |
A few quick notes:
- The md5 and sha1 checksums should be removed and a sha256 checksum added.
- The gcc46 dependency should probably be a build dep, not a library dep.
- "jrr" is not a valid maintainer.
- The extract.suffix line can be removed as that is the default.
- The blank "configure.pre_args" and "build.args" should be removed as they default to blank.
- Are you sure you want to clear "configure.env"? See the guide on the configure phase.
- Why make "test" a variant? In other words, why not always run the tests?
comment:2 follow-up: 3 Changed 13 years ago by Romendakil
Replying to macsforever2000@…:
A few quick notes:
- The md5 and sha1 checksums should be removed and a sha256 checksum added.
Done that.
- The gcc46 dependency should probably be a build dep, not a library dep.
You are right, I did the same for ocaml, where the binaries have to be there, too. In principle, there is an option which uses latex and post, but I don't want to include the whole of texlive as a dependency.
I added a new PortFile (whizard.portfile.2) to superseed the first one. Please let me know of any flaws in the file.
- "jrr" is not a valid maintainer.
I removed the shortcut, and kept my email address.
- The extract.suffix line can be removed as that is the default.
Done that.
- The blank "configure.pre_args" and "build.args" should be removed as they default to blank.
Done that.
- Are you sure you want to clear "configure.env"? See the guide on the configure phase.
Ok, I don't need environment variables at all, so I removed the line.
- Why make "test" a variant? In other words, why not always run the tests?
comment:3 Changed 13 years ago by Romendakil
Replying to juergen.reuter@…:
Replying to macsforever2000@…:
A few quick notes:
- The md5 and sha1 checksums should be removed and a sha256 checksum added.
Done that.
- The gcc46 dependency should probably be a build dep, not a library dep.
You are right, I did the same for ocaml, where the binaries have to be there, too. In principle, there is an option which uses latex and post, but I don't want to include the whole of texlive as a dependency.
I added a new PortFile (whizard.portfile.2) to superseed the first one. Please let me know of any flaws in the file.
- "jrr" is not a valid maintainer.
I removed the shortcut, and kept my email address.
- The extract.suffix line can be removed as that is the default.
Done that.
- The blank "configure.pre_args" and "build.args" should be removed as they default to blank.
Done that.
- Are you sure you want to clear "configure.env"? See the guide on the configure phase.
Ok, I don't need environment variables at all, so I removed the line.
- Why make "test" a variant? In other words, why not always run the tests?
Forgot to say: changed the test settings accordingly.
comment:4 Changed 13 years ago by mf2k (Frank Schima)
Thanks for the update. One more question. Is gcc 4.6 required or will gcc 4.5 or even 4.7 work too? If so, then the usual way to handle this - and all ports that require Fortran - is to add variants so the user can choose one version of gcc to compile. See atlas or root as examples of ports which have variants for gcc. The standard is currently to have a variant for gcc45 and make it the default.
comment:5 Changed 13 years ago by Romendakil
Wow, you are really fast. We need at least gcc 4.5, it creates certain memory leaks/runtime errors, also in our test suites. But we catch this, so the corresponding tests are not run when gcc 4.5 is used. Otherwise we are fine, and we in general demand from our developpers that there code must be compilable and executable with gcc 4.5. So you could use 4.5 as the default, though I personally would prefer 4.6. We test usually against regressions with the newest gcc 4.7 (which is in its final phase at the moment), that is also fine. Shall I add the variants to the portfile (I have seen them also in the gsl portfile), or could you do that?
comment:6 Changed 13 years ago by mf2k (Frank Schima)
Please add the variants to the portfile. To set your default gcc locally, add "+gcc46" to /opt/local/etc/macports/variants.conf
comment:7 follow-up: 8 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Instead of individually setting configure.fc
, configure.cc
, configure.cxx
, configure.cpp
, why net just set configure.compiler
? That's its purpose -- to set all these at once. Instructions for adding gcc variants are at wiki:PortfileRecipes#gcc .
The default for configure.pre_args is not blank; it's "--prefix=${prefix}
". If the configure script is not a standard autoconf script, and has a problem with the --prefix
argument, you may very well need to clear configure.pre_args or set it to some other value.
Placing the test directives in the main part of the Portfile, instead of in a test variant, is indeed recommend, but that does not cause the tests to run; to run the tests, you still have to ask for them with "sudo port test
".
comment:8 follow-up: 9 Changed 13 years ago by mf2k (Frank Schima)
Replying to ryandesign@…:
The default for configure.pre_args is not blank; it's "
--prefix=${prefix}
". If the configure script is not a standard autoconf script, and has a problem with the--prefix
argument, you may very well need to clear configure.pre_args or set it to some other value.
I got my information from the guide which clearly needs to be updated.
comment:9 Changed 13 years ago by Romendakil
Replying to macsforever2000@…:
Replying to ryandesign@…:
The default for configure.pre_args is not blank; it's "
--prefix=${prefix}
". If the configure script is not a standard autoconf script, and has a problem with the--prefix
argument, you may very well need to clear configure.pre_args or set it to some other value.I got my information from the guide which clearly needs to be updated.
Ok we are using standard autotools, so that is fine.
Changed 13 years ago by Romendakil
Attachment: | whizard.portfile.3 added |
---|
New WHIZARD Portfile including variants and configure.compiler settings.
comment:10 follow-up: 17 Changed 13 years ago by Romendakil
Ok, I added the configure.compiler and the variants. I did not add the configure.compiler before because the Ports manual says that only macports-gcc-4.5 is available, but I assume that both macports-gcc-4.6 and macports-gcc-4.7 are also valid. The new Portfile is attached as whizard.portfile.3. What are the next steps?
comment:11 Changed 13 years ago by Romendakil
When is there any progress? I mean what is the standard time when a new port gets included?
comment:12 Changed 13 years ago by mf2k (Frank Schima)
Sorry for the delay. gcc46 should also be a variant, so please add it. You can make it the default though. Use something like this:
if { ![variant_isset gcc45] &![variant_isset gcc47] } { default_variants +gcc46 }
comment:14 Changed 12 years ago by Romendakil
Guys, is there ANY chance to get this included somehow. This was 5 months from now, nothing is happening. I'm getting a bit angry, I have to say. There were at least two new versions of MacPorts now, and still this port is not in there!
comment:15 Changed 12 years ago by Romendakil
I just sent an email to the MACPorts mailing list asking for the general policies. I have NEVER seen any progress on this, NEVER got any timescale, and meanwhile this try to get this included is almost half a year old. So, finally my question: WHAT exactly is the procedure to get something included in the MACPorts setup!? And what is the general timescale?
comment:16 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Sorry for the delay. I've committed the port in r94626 with these changes:
- updated to 2.1.0 because 2.0.6 did not install (
install: ./gamelan.mem: No such file or directory
) - fixed license
- fixed syntax error in long_description (semicolons must be escaped by a backslash)
- updated homepage and master_sites URLs
- removed global gcc46 dependency and configure.compiler directive since those already in the gcc46 variant where they belong
- removed "experimental" designation from gcc47 variant description since the gcc47 port is no longer in beta
- made the default gcc version gcc45 to match other ports (see wiki:PortfileRecipes#gcc for why it's important that they all match)
- made gcc4x variants depends_lib instead of depends_build because whizard does link with gcc4x's libraries (sorry we gave incorrect advice about that above)
- fixed syntax in specifying default_variants
- fixed livecheck
- minor whitespace changes
In the future, if tickets do not get answered expediently, please write to the macports-dev mailing list. That's also a good place to ask if you need help developing or testing a portfile.
comment:17 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to macsforever2000@…:
Replying to ryandesign@…:
The default for configure.pre_args is not blank; it's "
--prefix=${prefix}
". If the configure script is not a standard autoconf script, and has a problem with the--prefix
argument, you may very well need to clear configure.pre_args or set it to some other value.I got my information from the guide which clearly needs to be updated.
The guide appears to already be correct on this point. It says:
configure.pre_args, defaults to: --prefix=${prefix}
Replying to juergen.reuter@…:
I did not add the configure.compiler before because the Ports manual says that only macports-gcc-4.5 is available, but I assume that both macports-gcc-4.6 and macports-gcc-4.7 are also valid.
I've updated the guide to correct this omission in r94627.
Changed 10 years ago by Romendakil
Attachment: | patch.whizard.portfile added |
---|
Patch file for version upgrade from 2.1.1 to 2.2.0
comment:18 Changed 10 years ago by Romendakil
Resolution: | fixed |
---|---|
Status: | closed → reopened |
Request to update the Portfile from revision 2 to 3, as the WHIZARD package software version has been changed from 2.1.1 to 2.2.0. Also new compiler dependencies (gcc versions). The patch file is attached.
comment:20 Changed 10 years ago by mf2k (Frank Schima)
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
Please do not re-open this ticket. Instead you should open a new "Update" ticket for this port and attach your patch as a unified diff.
comment:21 follow-up: 23 Changed 10 years ago by mf2k (Frank Schima)
Also, the revision
field should be removed when increasing the version so it resets to the default of 0.
comment:23 follow-up: 24 Changed 10 years ago by Romendakil
Replying to mf2k@…:
Also, the
revision
field should be removed when increasing the version so it resets to the default of 0.
Actually, how long does it take to be available. At the moment I still get
$ port search whizard whizard @2.1.1_1 (science) Generator of high-energy physics events
comment:24 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to juergen.reuter@…:
Actually, how long does it take to be available. At the moment I still get
$ port search whizard whizard @2.1.1_1 (science) Generator of high-energy physics events
Run sudo port selfupdate
or sudo port sync
to receive changes we've committed. If your ports are fetching from the main rsync server (the default), changes should be available to you within 30 minutes of being committed. If using a mirror rsync server elsewhere in the world, it may be delayed by some hours more. If using a Subversion working copy from our main repository, changes are available instantly.
PortFile for new port whizard