- Do not silence installation message
- Use . instead of \* for COPYTREE_SHARE
- Use do-test:
- Use MAKE_CMD
- Remove validate:
- Cosmetic change
Differential Revision: https://reviews.FreeBSD.org/D4749
PR: 205774
Exp-run by: antoine
MFH: 2016Q1
This is similar to what we did for Qt4 in r362770. Some C++11 features actually
depend on the C++ standard library, such as <initializer_list> or std::move().
So far, ports with USES=compiler:c++0x and similar failed to build with Qt5 on
FreeBSD 9.x, as base libstdc++ is very old and does not support those C++11
features.
Piggyback on a check that is already present upstream for OS X, which has the
same ancient libstdc++ version. Apple's version has a custom patch with version
macros that we can't use, so we make a broader check and disable the features
that depend on a modern standard library if libc++ is not used.
Some ports may need to use Python for their testing suite but otherwise
do not need it at all (ie, not for build or run). This patch adds
support for the test argument to be used in the USES clause, such as
python:3.2+,test. This enables the relevant Python environment and
modifies TEST_DEPENDS as necessary.
For non-Python ports that use Python as their testing suite, add
python:<ver>,test as required to the USES clause.
PR: 205616
Submitted by: Brendan Molloy <brendan+freebsd bbqsrc net>
Reviewed by: mat, miwi, koobs, antoine
Approved by: koobs (python)
Differential Revision: https://reviews.freebsd.org/D4711
There are some inefficiencies in python.mk that significantly slow down
full tree scanning. The use of bmake to obtain the current version of
a specific python is responsible for the majority of the slow done.
This commit splits out the PYTHON_PORTVERSION definition (which is the
same as the lang/python* PORTVERSION) into separate files. With this
change, python.mk can simple include the makefile fragment instead of
spawning a new instance of make.
Different Revision: https://reviews.freebsd.org/D4660
Approved by: antoine (python), mva (python)
This is another shot at fixing the linkage problems that have plagued our
users particularly when upgrading from Qt 5.x to 5.(x+1). Quick recap: in
Qt5, qmake will by default pass QMAKE_LIBDIR to the linker before other
directories such as ${WRKSRC}/lib, which is where the port's libraries are
built. When a user is upgrading Qt, we can end up with the following linker
line:
c++ -o SomeBinary -lfoo1 -L/usr/local/lib -L${WRKSRC}/lib -lfoo2 -lfoo3
If libfoo2.so is being built by the port and an older version is currently
installed on the system, /usr/local/lib/libfoo2.so will be picked up instead
of the newly-built ${WRKSRC}/lib/libfoo2.so. At best things just work, at
worst SomeBinary needs some new symbol that is not present in the old
libfoo2.so and linking fails. Case in point: bug 198720.
The previous approach, adopted when fixing bug 194088, was to stop setting
QMAKE_{INC,LIB}DIR in the FreeBSD mkspecs and set the CPATH and LIBRARY_PATH
environment variables in Uses/qmake.mk. This way we just did not pass
-L/usr/local/lib to the linker at all and things mostly worked. However,
people using Qt to build their own software without the ports tree were out
of luck, as they would then need need to deal with passing
/usr/local/{include,lib} to the compiler/linker themselves (bug 195105). Not
only that, but if a dependency mentioned /usr/local/lib we would still have
problems anyway (in bug 198720, the GStreamer pkg-config files contain
-L/usr/local/lib, for example).
We now solve the issue by setting the QMAKE_LIBDIR_FLAGS variable in
.qmake.cache to ${WRKSRC}/lib instead. qmake appends the value of
QMAKE_LIBDIR to QMAKE_LIBDIR_FLAGS, so we are always sure -L${WRKSRC}/lib
will come before -L/usr/local/lib in the linker options. Moreover, qmake is
smart enough to automatically call sed(1) and remove references to
${WRKSRC}/lib from .prl and .pc files when installing them.
PR: 194088
PR: 195105
PR: 198720
MFH: 2015Q4
This is the latest Calligra release, and the 2.9 series will be the last
KDE4-based release series.
As usual, huge thanks to Tobias Berner <tcberner@gmail.com> for working on this
in kde@'s area51 experimental repository (including previous Calligra releases
between 2.7.5 and 2.9.10).
Notable changes from a packaging perspective:
- Several dependencies have been updated to use more recent ports versions.
- Old translations not shipped by the current Calligra release have been
removed.
- The dependency on sysutils/nepomuk-core has been dropped, following what
upstream has done.
- The dependency on Qt3-compatibility Qt4 ports has been dropped, following
upstream.
- CONFLICTS with ancient ports have been removed.
- Support for G'MIC (GREYC's Magic for Image Computing), introduced after
2.7.5, is disabled by default, as building the code with clang requires
insane (>24GB) amounts of memory. We reported this bug to the LLVM developers
(bug 22199) almost a year ago, but there has been no activity upstream.
- Stopped depending on graphics/pstoedit in an unorthodox way: just follow what
every major Linux distribution does and unconditionally depend on it. I could
not figure out why we were originally depending on the port if it was already
installed.
- Stop playing tricks with PACKAGE_BUILDING: we do not package Vc
(https://github.com/VcDevel/Vc) so it does not make sense to turn on support
for it when building packages. Not only that, but the CMake option name was
wrong (it should be PACKAGERS_BUILD, not WITH_PACKAGERS_BUILD).
${PERL5} points to a specific version of perl, say, perl5.22.1, it is
fine to use it in a ports Makefile to do Perly things, but ports using
it must use ${PERL}, that points to /usr/local/bin/perl so that if the
minor version is updated, the shebang keep working.
While there, make some ports use shebangfix, regen a few patches, and
bump PORTREVISION where a shebang went from PERL5 to PERL.
PR: 205367
With hat: portmgr
Sponsored by: Absolight
The next major release of mysql.
MySQL is a very fast, multi-threaded, multi-user and robust SQL
(Structured Query Language) database server.
WWW: http://www.mysql.com/
PR: 204607
Submitted by: mokhi64@gmail.com
Reviewed by: koobs, brnrd
Approved by: mat
Until now, the only way to obtain information on the valid port options
and the current selection states is by using the pretty-print-config
target. It would look something like this:
> make -C /usr/ports/lang/gcc5-aux print-print-config
Standard[ +FORT +OBJC +NLS -TESTSUITE -ALLSTAGES -STATIC ] \
Bootstrap[ -BOOTSTRAP ]
To process the total options and the selection state of each option
requires additional processing, e.g. with awk and/or sed. Moreover, if
other information is needed about the port it question, it would require
a second execution of "make" to reveal variable values. There simply is
no other way to obtain the option selection information in a single pass
(this limitation came when options framework was brought in).
This enhancement allows the option selection information to revealed with
make -V so that all port information can be acquired in a single pass.
Moreover, they won't require piping through sed or awk. Two read-only
variables are introduced:
SELECTED_OPTIONS (list of all "on" options)
DESELECTED_OPTIONS (liss of all "off" options)
Here's an example of a single pass acquisition:
> make -C /usr/dports/lang/gcc5-aux -V PKGNAME -V SELECTED_OPTIONS \
-V DESELECTED_OPTIONS
gcc5-aux-20150716
NLS OBJC FORT
BOOTSTRAP STATIC ALLSTAGES TESTSUITE
Obviously the grouping information seen in pretty-print-config is lost,
so these new variables will not help if option group information is
required.
Approved by: portmgr (bapt)
Add the required bits to Uses/pyqt.mk along with all the PyQt5 ports.
Thankfully this commit is mostly adding new ports, as the hard work was
already done in r403297 and r403662.
Huge kudos to Tobias Berner <tcberner@gmail.com> and, most importantly,
Guido Falsi (madpilot@) for their initial work on these ports (see D2910 in
Phabricator for an earlier version of the PyQt5 patch set).
PR: 204672
Bring in some long overdue updates, some of which are required for us to
later land the PyQt5 ports.
One big change with this update is that the PyQt4 ports now install their
.sip files into share/py-sip/PyQt4 instead of share/py-sip. This way we do
not end up with directories like share/py-sip/QtCore, which are especially
confusing once PyQt5 lands and starts installing files with the same names.
Other noteworthy items:
- PORTREVISION has been bumped on ports depending on devel/qscintilla2
because libqscintilla2.so's SOVERSION has changed.
- graphics/seexpr has been converted to USE_PYQT, as the file it used to
define a build-time dependency on x11-toolkits/py-qt4-gui has moved.
Once again, big thanks to Tobias Berner <tcberner@gmail.com> and Guido Falsi
(madpilot@) for their initial work on these ports as part of the effort to
land PyQt5 into the tree (see D2910 in Phabricator for an earlier version of
the PyQt5 patch set).
PR: 205143
debug symbols are split out and extra files are generated that are not
expected by the plist. This is after the base system enabled DEBUG_FILES
by default in r291955.
I have pending patches to handle debug symbol splitting for ports, that will
benefit all ports, not just the ones using /usr/share/mk.
With hat: portmgr
Sponsored by: EMC / Isilon Storage Division
In preparation for landing PyQt5 ports, generalize devel/py-qt4's
bsd.pyqt.mk and make it a proper file in Uses/.
Ports wishing to depend on PyQt4 ports can now do the following:
USES= pyqt:4
USE_PYQT= foo bar_build baz_run
Other changes include the renaming of the PYQT4_DIST variable to PYQT_DIST
and the introduction of the PYQT_SIPDIR plist substitution variable. The
rest of the contents of Uses/pyqt.mk are pretty much identical to what we
had in bsd.pyqt.mk with additional processing of USE_PYQT.
Even though this patch touches files in many different ports, the goal is
for it to be a no-op from an end-user perspective (so that the basic
infrastructure is landed before the other, riskier changes): no dependencies
have been changed, PyQt/SIP/QScintilla have not been upgraded and the plists
should remain exactly the same, since PYQT_SIPDIR currently contains the
same value that used to be hardcoded in the plists.
Huge thanks to Guido Falsi (madpilot@) for spearheading most of the work: he
took the initiative to work on PyQt5 and sent D2910 to Phabricator with the
original version of this patch. Tobias Berner (tcberner@gmail.com) later
applied it to kde@'s experimental area51 repositories and did some more work
on it.
This is the first major release of FreePascal in nearly four years.
There are a ton of new features, way more to list here. see:
http://wiki.freepascal.org/FPC_New_Features_3.0
Several new unit ports were added, some were contracted. Most of
those were absorbed into the main FPC packages, but two units are
no longer supported: sndfile and matroshka.
All 99 remaining ports (including Lazarus ports) were build tested
on FreeBSD i386 and amd64 Release 10.2
This fixes errors when PORTSDIR is not set and /usr/ports is not used. The
/usr/share/bsd.port.mk logic will auto set PORTSDIR, but this was not being
passed into children in the dependency scripts.
With hat: portmgr
Reported by: bapt
There were two issues with the new smart_makepatch script.
1) use of "local" declaration
All function variables were declared "local" during the review. This
caused the script to break, at least on FreeBSD 9.2. Given that it's
not being seen on 9.3R or later, it might be a bug in Bourne shell that
has since been fixed.
e.g. This resulted in stderr error on second iteration:
local contains=$(grep "^+++ " ${existing_patch} | awk '{x++; print x}')
however, this works fine:
local contains
contains=$(grep "^+++ " ${existing_patch} | awk '{x++; print x}')
To be safe, all local variables are assigned with $(<shell cmd>) on
separate lines now.
2) The comment extraction was flawed for files that contain multiple
patches. It was not counting the hunk lines properly which caused some
portion of a patch to be considered as a comment for the next patch. The
hunk traversal algorithm has been fixed.
Since 1) involved the introduction of local declarations that broke the
script and since only Scripts/smart_makepatch.sh is touched, I will
piggy-back on the original approval. The fix was tested with devel/nspr,
the port listed in the PR, which uses multi-patch files.
Approved by: portmgr
Differential Revision: D4136
PR: 204725
- Remove out-of-tree build (in favor of D4157)
- Remove custom do-install (config/nsinstall works fine) [1]
- Convert to new testing framework
- Refresh patches with |make makepatch| but leave damage out [2]
[1] Requires PORTREVISION per new entry in plist and DEBUG builds
no longer embedding WRKDIR in source file name
[2] Here's a list with * indicating severity:
*** Lost original ptthread.c hunk from patch-bug301986
*** Mixed patch-bug782111 into patch-bug301986
** Duplicated context lines
* Wrong timestamps with USES=pathfix
- MariaDB is based on the vulnerable MySQL 5.1 version
- No new versions since 2013
- Simplify Mk/bsd.databases.mk
Reviewed by: koobs (mentor), feld
Approved by: koobs (mentor)
Differential Revision: https://reviews.freebsd.org/D4099
typically pipe it through ${FMT} 75 79 command to ensure that if it gets
overly long, it would be wrapped nicely. Do the same when outputting IGNORE
message which often gets very long. While here, add missing section number
in sed(1) references in comments.
Differential Revision: D4116
Approved by: portmgr (bapt)
This update to the "makepatch" target adds the following enhancements:
1) Conserves comments
If the existing patch has comments, they will be transferred to the
regenerated patch.
2) Supports multiple patches per file
If the patch file contains concatenated patches, the makepatch
target will keep these patches together. It may change the order
of the patches the first time, but every time after the multi-patch
will be assembled in the same order.
Behavioral changes:
A) The "old" patches are not overwritten, but rather archived at:
${WRKDIR}/makepatch-tmp/archived-patches
B) Any patch that was not replaced or renamed is deleted by makepatch
(but it is archived first, see paragraph above)
C) There regeneration messages for the user will show them which patches
are using "legacy" names formats.
D) Makepatch will do a great job at "cleaning" git patches; it removes
lines starting with "diff" and "index" in the comments section.
Notes:
E) Should a source file be modified by multiple patches (e.g. two separate
multi-patches), a composite patch will be generated. In the above
example of two multi-patches, one would get the full patch and the
other no longer patch the source file.
Approved by: portmgr (mat)
Differential Revision: D4136
satisfied and needed to be installed. This restores older behavior of
allowing a partial checkout where dependencies are already installed. [1]
- Delay fatal errors show that all can be shown at once.
With hat: portmgr
Reported by: lev [1]
Test target doesn't produce anything and nothing depends on it.
Also it's often useful to run tests multiple times in a row, so
having a cookie which remembers that the tests were already ran
and inhibits subsequent test runs is needless. It also eliminates
the need for retest target.
Approved by: portmgr (mat)
Differential Revision: D3875
Make it depend on stage, and point people to adding DEVELOPER=yes to
their environment.
Discussed with: bapt
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D4082
WANT_SDL/HAVE_SDL macros allowed a port to check which SDL components
are installed. This goes against the policy of avoiding automatic
dependencies, and there are actually no cases in the portstree where
these knobs are used properly, so axe them out.
Approved by: portmgr (mat)
Differential Revision: D4093
Right now, NO_WRKSUBDIR means that the extraction does not produce a
subdirectory, and that everything goes straight into WRKDIR. It is
problematic, because during the build of a port, quite a few files are
created in there, and then, a stage directory, where everything is
installed, and then a pkg directory where the package is created, and
those often conflict, or get in the way, of the building process.
With this, NO_WRKSUBDIR will extract the distfiles directly into WRKSRC
instead of WRKDIR. In this case, WRKSRC is artificial and is based on
PKGNAME and not DISTNAME, mitigate conflicts with rc files.
PR: 204056
Submitted by: mat
Reviewed by: bapt
Exp-run: antoine
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D2735
due to $PW not being set. This only occurred when just a user was being
created without a group. Solve this by setting $PW outside of the group
creation and above both the user and group creation parts.
PR: 203489
Reviewed by: bapt
Approved by: portmgr (bapt)
Approved by: bdrewery (mentor)
PEP-449 [1] describes the 'Removal of the PyPI Mirror Auto Discovery and
Naming Scheme'.
The main elements of this (Accepted) proposal are:
Removal of [a-z].pypi.python.org DNS CNAMES
Replacing individual mirrors with a single Geo-aware CDN service
Previous revisions 365159, 347895, 342514 deprecated several individual
mirrors and *.pypi.python.org aliases. The following changes (Part III)
completes the (PEP-449 compatibility) transition:
Remove pypi.crate.io (NXDOMAIN)
Remove pypi.python.jp (Outdated, Broken for DISTNAMEs w/ hyphens
Switch to TLS (HTTPS) MASTER_SITE by default
Leave a non-TLS (HTTP) MASTER_SITE for fallback (proxy environments)
This change is also likely to fix PyPI (CHEESESHOP) update detection in
Portscout, at least until upcoming changes for the portscout port add a
dedicated sitehandler for it (and GitHub).
[1] https://www.python.org/dev/peps/pep-0449/
MFH: 2015Q4
Differential Revision: https://reviews.freebsd.org/D3972
PKG_ROOTDIR is set. This will enable help support pkg cross installs.
PR: 203489
Reviewed by: bapt
Approved by: portmgr (bapt)
Approved by: bdrewery (mentor)
In some basic benchmarks this sped up 'all-depends-list' about 20%. x11/kde4
went from 52 seconds to 41 seconds. More improvement is expected once
more command executions are cached in the 'export_ports_env' function.
With hat: portmgr
This is only missing the bsd.port.mk pieces to hook it up fully. A blocker
for hooking that up has been sub-packages, even though some implementation
could be made without them. For now just commit what I have so it is not
forgotten.
Obtained from: OneFS
Sponsored by: EMC / Isilon Storage Division
With hat: portmgr
This has been slightly faster in my tests since readelf(1) will fail on the
file much quicker if it doesn't find the ELF headers. This also more directly
finds the symbol table.
With hat: portmgr
- Support multiple values in *_OLD_CMD, i.e. we can now fix both "/usr/bin/python" and "/usr/bin/env python" at the same time
- Default *_OLD_CMD values are now always appended, so you don't need to specify them in individual ports
- Add lua support (depends on USES=lua)
- Add more default values, such as "/usr/bin/env foo" for python, perl, bash, ruby and lua
- Shebangfix now matches whole words, e.g. we will no longer (erroneously) replace "/usr/bin/perl5.005" with "${perl_CMD}5.005" (but "/usr/bin/perl -tt" is still (correctly) replaced with "${perl_CMD} -tt")
Note that *_OLD_CMD items containing spaces must now be quoted (e.g. perl_OLD_CMD=/bin/perl /usr/bin/perl "/usr/bin/env perl")
Update shebangfix usage according to new rules in many ports:
- Remove *_OLD_CMD for patterns now replaced by default
- Quote custom *_OLD_CMD which contain spaces
Fix shebangfix usage in many ports (irrelevant to infrastructure change):
- Remove redundant SHEBANG_LANG (no need to duplicate default langs)
- Remove redundant *_CMD (such as python_CMD=${LOCALBASE}/bin/python${PYTHON_VER} when USES=python is present)
- Never use *_OLD_CMD in REINPLACE_CMD matchers, these should always look for exact string
Approved by: portmgr (bapt)
Differential Revision: D3756
Modify make describe to automatically prepend ${PORTSDIR} if the path for the
port is not absolute
Checked with poudriere, portmaster, portupgrade
PR: 203685
Exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D3866
Update fontproto to 2.1.3.
Update libXfont to 1.5.1.
Update xf86-input-keyboard 1.8.1.
Update xf86-input-vmmouse to 13.1.0.
Update xf86-input-void to 1.4.1.
Update xf86-video-chips to 1.2.6.
Update xf86-video-cirrus to 1.5.3.
Update xf86-video-mach64 to 6.9.5.
Update xf86-video-neomagic to 1.2.9.
Update xf86-video-r128 to 6.10.0.
Update xf86-video-s3virge to 1.10.7.
Update xf86-video-savage to 2.3.8.
Update xf86-video-siliconmotion to 1.7.8.
Update xf86-video-sis to 0.10.8.
Update xf86-video-trident to 1.3.7.
Update xf86-video-vesa to 2.3.4.
* All other xf86-* drivers where bump and/or patched to allow them to
compile and work with the new xorg-server.
* The ATI-ums driver is removed because the API it depends on was
removed from the xorg-server.
* Add patch to sunffb to make the lack of XAA non-fatal
(not build/run tested due to lack of hardware).
* Remove the extra patches in xorg-server for arm. The code seems to
support it now natively. Please file a bug if this is not the case.
* Update the xorg-server support in virtualbox-ose-additions for vboxmouse. [1]
Submitted by: jkim@ [1]
Obtained from: Graphics devel repo
This will be useful in Poudriere to avoid needless fork/exec for every
port when gathering dependencies.
Example usage:
MAKE=make sh -c '. Mk/Scripts/functions.sh; export_index_env; export PACKAGE_BUILDING=1; truss -f make -C sysutils/zfstools -V BUILD_DEPENDS 2>&1' | grep exec
This eliminates 14 exec/fork calls for this example, when PACKAGE_BUILDING
is also set during -V.
Care should be taken with UID not being passed down into actual builds as it
may conflict with non-root builds.
With hat: portmgr
Package building always builds Pkg first. If someone downgrades their
pkg locally this change will hurt them, but then they are already
running an unsupported configuration.
With hat: portmgr
This will only include the descriptions file if needed to very slightly
lower overhead with -V lookups and package building dependency calculations.
With hat: portmgr
These were FreeBSD specific aliases for libiconv(), libiconv_open() and
libiconv_close() that are now also provided by libc which complicates
writing configure tests that work correctly when both libc iconv and
libiconv are available.
Also, because the libiconv iconv.h header redefines iconv* to libiconv*
correct use of the header implies that the aliases aren't used.
The following ports needed fixes because there was something wrong with
the way they tried to detect or use iconv:
audio/deadbeef: Remove LIBICONV_PLUG from a source file. It's a
compile-time option and should not be set in source code.
comms/hidapi: Use standard AM_ICONV configure macro to look for iconv.
deskutils/fbreader: Let ports framework deal with LIBICONV_PLUG.
deskutils/ljclive: Override configure test for iconv.
deskutils/owncloudclient: Add USES=iconv and patch test for iconv.
devel/aegis: Bump PORTREVISION because it no longer uses libiconv.
devel/libexplain: Add USES=iconv and override test for iconv.
devel/sdl20: Override configure test for iconv.
emulators/vmw: Replace OSVERSION checks with ICONV_LIB checks and include
<iconv.h> instead of <sys/iconv.h>.
irc/scrollz: Override configure test for iconv.
japanese/chasen-base: Override configure test for iconv and patch
configure so it no longer adds -liconv to linker flags just because it
happens to be installed.
japanses/eb: Patch configure test for iconv.
japanses/eblook: Override configure test for iconv.
java/jikes: Override configure test for iconv.
multimedia/transcode: Bump PORTREVISION because only one plugin links with
libiconv now.
net/c3270: Override configure test for iconv.
net/samba4*: Bump PORTREVISION because it no longer uses libiconv. The
configure script will always add -liconv to the linker flags when it
happens to be installed which would be wrong but later on binaries are
linked with -Wl,--as-needed and the linker discards -liconv because it
finds iconv*() functions in libc now and no longer in libiconv.
net-mgmt/icinga-*: Remove dependency on iconv.
net-mgmt/netxms: Patch configure so it no longer adds -liconv to linker
flags just because it happens to be installed.
net/asterisk11: Patch configure so it no longer adds -liconv to linker
flags just because it happens to be installed.
net-p2p/transmission-*: Override configure test for iconv.
www/htmlcxx: Override configure test for iconv.
www/httrack: Override configure test for iconv.
www/xapian-omega: Override configure test for iconv.
x11/mrxvt(-devel): Add USES=iconv and override configure test for iconv.
x11/x3270: Override configure test for iconv.
x11-wm/jwm: Override configure test for iconv.
PR: 202838
Exp-run by: antoine
Approved by: portmgr (antoine)
ldconfig file is always installed into LOCALBASE-based directory
(${LOCALBASE}/${LDCONFIG_DIR}) which is first created. When a port
redefines PREFIX (PREFIX != LOCALBASE), this directory needs to be
mentioned in pkg-plist.
Add the directory to the plist. While here, add identation to nested
make conditions and loops to improve readability and simplify one
empty .if body.
This fixes stage-qa for biology/emboss and cad/brlcad
Approved by: portmgr (bapt)
Differential Revision: D3815
TEST option is used when a port needs extra depends or flags for
build phase to enable tests (so TEST_DEPENDS don't work). Enable
it by default for DEVELOPER builds, so interested parties and Q/A
can have all tests available.
Approved by: portmgr (bapt)
Differential Revision: D3844
This database contains compiled terminfo entries and is merged from
a large part which comes with ncurses themselves and compiled
.terminfo files installed by other ports (currently only rxvt-unicode
and jfbterm)
- Now the database is always kept up to date, regardless of port
installation order (both ncurses installed before .terminfo files
and the other way around work as expected)
- All affected ports now support clean deinstallation and do not
produce stage-qa errors
- Affected ports are simplified, as they now only need to define
USES=terminfo
- rxvt-unicode no longer pulls in ncurses: the dependency is not
really needed for anything beside updating it's own database
- The patch contains Q/A test to check whether a port needs, or
needs not USES=terminfo
Approved by: portmgr (mat, bapt)
Differential Revision: D3747
perl5's do-test: target should only be enabled when USE_PERL5=configure
or USE_PERL5=modbuild* are used, otherwise it'll end up being empty
and will prevent other tests from running.
Remove NO_PERL5_TEST as it isn't really needed after this fix.
Approved by: mat, sunpoet
Differential Revision: D3830
Due to the way .for loop work, opt_VARS was being expanded too early
evaluation, which made it impossible to use vars that are set/modifies
afterwards (such as PREFIX or PKGDIR)
Fix this by changing opt_VARS handling logic so that the right side is
not prematurely expanded:
- Loop not by words (each word here is single VAR=val / VAR+=val tuple)
but by unique left sides of assignments (VAR, VAR+ here)
- Using the left side, extract all corresponding right sides and
append/assign them to a variable
This changes the way this opt_VARS line work, which behavior is between
invalid and undefined:
opt_VARS= FOO=bar FOO=baz
Before it would end up with "FOO=baz", now it ends up with "FOO=bar baz"
Submitted by: amdmi3
Reviewed by: antoine, mat
Approved by: my portmgr hat
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D3729
Qt 5 does the following during the build of qt5-multimedia:
--- qt-post-install ---
echo "# define QT_GSTREAMER" >> /wrkdirs/usr/ports/multimedia/qt5-multimedia/
work/stage/usr/local/include/qt5/QtCore/modules/qconfig-multimedia.h
echo "# define QT_GST_VERSION=1.0" >> /wrkdirs/usr/ports/multimedia/
qt5-multimedia/work/stage/usr/local/include/qt5/QtCore/modules/qconfig-multimedia.h
echo "# define QT_XVIDEO" >> /wrkdirs/usr/ports/multimedia/qt5-multimedia/
work/stage/usr/local/include/qt5/QtCore/modules/qconfig-multimedia.h
That's (second line) not how #define works in C of C++
The resulting qconfig-multimedia.h file contains this:
#if !defined(QT_GST_VERSION=1.0) && !defined(QT_NO_GST_VERSION=1.0)
# define QT_GST_VERSION=1.0
#endif
This patch filters out the "=1.0" from the define. Bump qt5-multimedia
since the installed header needs to be corrected.
Reported by: antoine@
Patch submitted by: Adriaan de Groot <groot@kde.org>
You can now `make test' on any port to run test sequence, no-op by default.
If a port defines TEST_TARGET, it'll run sub-make with specified target,
usually `check' or `test', useful if upstream supports that. The port may
instead define custom do-test target, as well as usual satellite targets:
{pre,do,post}-test, {pre,do,post}-test-OPT, {pre,do,post}-test-OPT-off
`make test' builds and stages port first, so test may use both WRKDIR and
STAGEDIR, and both BUILD and RUN depends are available for test target.
Additionally, TEST_DEPENDS is now properly supported and may be used to
define additional depends specifically for testing.
Framework may define default tests for specific cases. For instance,
perl5.mk and cran.mk already provide default test target on their own.
This commit also converts my ports which have tests to this new framework.
Approved by: portmgr (bapt)
Differential Revision: D3680
* gstreamer1-libav now uses ffmpeg from ports.
* New ports:
* gstreamer1-validate: Tools to detect if elements are not behaving
as expected, mainly aimed at developers, or advanced debugging.
* gstreamer1-rtsp-server: Base foundation for building a rtsp
server ontop of GStreamer
* Bunch of new plugins like: mpg123, rsvg, libde265, openh264, x265 and dtls.
Release announcement:
http://lists.freedesktop.org/archives/gstreamer-announce/2015-September/000357.html
Obtained from: gnome devel repo
Maintainers can now use @sample sample_file target_file for all cases
that does not fall into the usual @sample something.sample
Reviewed by: antoine
Differential Revision: https://reviews.freebsd.org/D3734
- TLPDB and tlmgr.log are located in /var/db/tlpkg.
- "tlmgr conf texmf" modifies /var/db/tlpkg/texmf.cnf.
libkpathsea looks up it first if it exists and ignore the standard ones
in PREFIX/share/texmf-dist/web2c/texmf.cnf or
PREFIX/share/texmf-local/web2c/texmf.cnf.
- "tlmgr update" can still break consistency of the installed texmf-*
hierarchy by FreeBSD Ports Collection if it runs by root.