[MacPorts] #37844: Port submission: leveldb
MacPorts
noreply at macports.org
Thu Jan 31 05:47:27 PST 2013
#37844: Port submission: leveldb
-------------------------+--------------------------------
Reporter: dw@… | Owner: macports-tickets@…
Type: submission | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: |
-------------------------+--------------------------------
Comment (by dw@…):
Thanks for taking the time to reply to a noob.. :P~
> * The distname line can be removed; that's the default.
> * "configure {}" should be replaced with "use_configure no"; see "port
lint"
Fixed.
> * You're hardcoding the list of architectures to use in the universal
variant, and not setting any architecture when not using the universal
variant; you need to always set architectures, and use the list of
architectures the user requested. The [get_canonical_archflags] procedure
is useful for this. Ensure you define at least an empty universal variant
("variant universal {}") before invoking [get_canonical_archflags] (and in
this portfile I don't think you'll need more than an empty universal
variant).
> * In the universal variant, the second build.env statement overrides
the first. If you want to append to the environment rather than
overwriting it, use build.env-append, but note that you can set multiple
environment variables in a single build.env invocation, which is usually
preferable.
> * The snappy variant only adds a dependency; it does nothing to ensure
that snappy will ''not'' be used if the snappy variant is ''not''
selected. Is there a reason why snappy needs to be a variant? Couldn't
snappy support just be enabled all the time?
In this case, leveldb's build_detect_platform notices the libraries and
enables them, so all required is to ensure they exist. I concur that just
removing the variant makes more sense: snappy is a motivating feature of
LevelDB and it can still be disabled at runtime. The alternative is
battling the simplistic build_detect_platform into ignoring it.
> * In destroot, you don't need to create the lib directory; MacPorts
automatically creates all the directories of the standard mtree for you.
Removed.
> * What's the "platform darwin" block all about? Why is INSTALL_PATH set
to ${prefix}/lib only on Darwin? What will happen on other OSes?
Blindly copying examples from other Portfiles. :( I've moved it to the
single remaining build.end-append statement. It controls -rpath via
build_detect_platform.
> * +universal should usually not be a default variant, unless there are
extenuating circumstances.
Fixed.
Please find a revised Portfile attached.
--
Ticket URL: <https://trac.macports.org/ticket/37844#comment:3>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list