localbase: mostly a non user one which enforce the compiler related flags to
lookup in localbase first to find libraries, designed to be used in
other USES
libarchive: to be used each time one is using libarchive from ports. It is
necessary to simplify work for porters dealing with different
versions of libarchive from base and different ways libarchive can
be linked in base (with libmd and/or libcrypto) only dealing with
one libarchive over all the ports tree is easier
libedit: enforce using libedit from ports for the same reasons as for
libarchive
Same things will happen for other base libraries which collides with ports
version later.
Note to self, if patch is lying around for a bit:
1) don't leave experimental code in there.
2) don't assume you didn't muck around with it and perhaps forgot you did so?
Pointyhat to: kwm@
sys/cdefs.h after base r227475 always defines __STDC_CONSTANT_MACROS
for C++11 while Firefox enforces C++11 since 25.0 and also defines
__STDC_CONSTANT_MACROS via mozilla-config.h since 26.0.
PR: 201294
Submitted by: jhibbits
MFH: 2015Q3 (trivial, not on pkg-fallout)
ELIXIR_LIB_ROOT is the default Elixir library path in LOCALBASE.
If MIX_REWRITE is defined, all optional dependencies will be stripped
out (test, doc, etc.), while all required libs will be converted to
actual code paths in ELIXIR_LIB_ROOT.
For example, it will turn the following dependency definitions:
defp deps do
[
{ :inflex, "~> 1.0" },
{ :estree, "~> 2.0" },
{ :shouldi, only: :test },
{ :earmark, "~> 0.1", only: :dev },
{ :ex_doc, "~> 0.7", only: :dev }
]
end
into these:
defp deps do
[
{ :inflex, path: "/usr/local/lib/elixir/lib/inflex", compile: false },
{ :estree, path: "/usr/local/lib/elixir/lib/estree", compile: false },
]
end
Setting MIX_REWRITE allows escriptize to bundle all dependencies in the
script, else it will not be able to pull them from the usual code path.
It already works for all Elixir ports and should make patches to mix.exs
unnecessary, but for now the default is off.
Sneak in a whitespace fix while I'm here.
Move inlined shell code into a proper script taking 2 args in arguments: full or
limited. The code I more simpler and understandable. The argument allows to
factorize the code between CLEAN-DEPENDS-FULL and CLEAN-DEPENDS-LIST
While here, make the code accept dependencies without ${PORTSDIR}
No cdrom distfiles has been shipped for a while, and it causes issues
for users having /cdrom configured in autofs
Reported by: glebius
Tested by: glebius
Approved by: swills
Reviewed by: swills
Differential Revision: https://reviews.freebsd.org/D2888
The benefice beside being more readable is to allow support for dependency line
without ${PORTSDIR}
This is also necessary to be able to easily hack on it for FLAVORS/SUBPACKAGE
support
This is an important step to prepare the ports tree for VARIANTS(aka flavours)
and subpackage by making the dependency code easier to deal with.
Change:
- Externalize in a proper shell script the code that was an inlined shell script
- Add better validation on the syntaxe used
- test after the dependency has been installed that it actually really fulfill
the pattern searched (improving QA)
- Unify lib-depends with other dependency checks
- Make ${PORTSDIR} not mandatory anymore in _DEPENDS lines:
aka pattern:${PORTSDIR}/category/port can now be written pattern:category/port
/!\ Please to not use this syntax yet! poudriere have received a fix to be
able to handle this new syntax (but no new release of poudriere has it yet)
portmaster/portupgrade hasn't been checked. if one cares about those last 2 it
would be really nice to provide patches to them!
- Remove _DEPENDS_ALWAYS it has half broken for a while and did not really make
sense.
- Keep STRICT_DEPENDS for now it might not be necessary anymore given all the
new checks added, but until someone confirms it is worth keeping it.
Note that all the env passed are prefixed by 'dp_' to avoid polluting children
make
Differential Revision: https://reviews.freebsd.org/D2897
Reviewed by: antoine
Exp-run by: antoine
The transition from gcc-aux to gcc5-aux in the Ada framework has been
blocked by the inability to build gtkada3 and, once resolved, GPS (due
to tight locking with compiler).
A few days ago, Adacore made their annual release of their main libre
products, include GPS. However, some products were tightly coupled with
the recent compilers, so in order to upgrade, the compiler had to be
switched and dependencies require many ports to be upgraded at once:
* lang/asis
* devel/gnatcoll
* devel/gps
* x11-toolkits/gtkada3
* www/aws
* www/aws-demos
While the version upgrades were modest in most cases (gps, gtkada3), the
amount of work put into each port was significant. There are too many
improvements to mention here. A few include the removal of dynamic
package lists and incorporating gnatcoll into gps to avoid building it
twice. A private "exp-run" was done all on all 50+ Ada ports to ensure
they still build.
Also, a new argument was added to Uses/ada.mk, "run", that pulls in the
GNAT compiler as a run depends. This was necessary for GPS that will
not launch correctly without the compiler in place.