The FreeBSD Python Team warmly welcomes Python 3.4 to the Ports tree:
- Add lang/python34
- Add devel/py-setuptools34
- Add Python 3.4.0 docs to lang/python-doc
Release Announcement and Major Features:
https://www.python.org/download/releases/3.4.0/
This also marks the next stage of a cleaner, much-closer-to-upstream
approach to Python on FreeBSD, that builds upon the hard work of the
entire FreeBSD Python team over the last year.
This port is built "entirely" from scratch, retiring as much of the
legacy, workarounds, patches and hacks from the existing Python
ports as possible.
Of particular note: static + shared dual-build is gone, as it was flaky
at best, grossly untested upstream and caused more issues than it
solved. It is replaced by a shared build by default. The static python
library remains installed and usable.
Major changes in this structure are:
- Replace dual static and shared in-tree build with shared-only.
- Use options helpers
- Replace plat-freebsd* hacks with a lighter weight alternative
- Strip all libraries and shared extensions
- Only retain patches that are absolutely necessary
- Replace static disabled_module_list with one from upstream
- Retain NIS and sparc64 workarounds from python33
- Deprecate SEM option, no longer optional.
- Deprecate PTH option, no longer maintained or supported upstream
- Deprecate FPECTL option, no longer maintained or supported upstream
- Add upstream issue references & breadcrumb annotations where possible
Tested by: many (Special thanks to Andrew Berg)
Reviewed by: xmj, nemysis, antoine
Simplify what need to be defined by directly using the cc in the sysroot instead of the one in LOCALBASE/bin
which might call ${LOCALBASE}/bin/ld instead of the cross build ld (same for as) if binutils from ports is installed and a build system messes up with the CFLAGS
This means that files referrencing stagedir or linked to stagedir will
now be fatal errors as intended.
- Stop polluting global namespace with IFS changes
- Speedup find(1) -exec usage by execing far less
- Ignore known false-positive/harmless stagedir files in paths() [2]
Reported by: eadler [1]
Discussed with: antoine [2]
With hat: portmgr
KDE ports:
- Convert to USES=tar:xz
devel/p5-perlqt, multimedia/kdemultimedia4-ffmpegthumbs:
- Convert LIB_DEPENDS to new style
devel/p5-perlqt, devel/p5-perlkde:
- Don't remove directories installed by perl port
net/kdnssd:
- moved to net/zeroconf-ioslave (renamed upstream)
x11/kdelibs4:
- Clean up non-standard shared mime files and directories after deinstall
The area51 repository features commits by Alonso Schaich
<alonsoschaich@fastmail.fm> and makc.
with simple ports for now, lots of improvements are pending
cd devel/pkgconf; make X_BUILD_FOR=armv6-freebsd10.0 package
Will create a armv6 ready package
Note that right now the generated package does not have the proper ABI defined
But the content is the right one
not match LOCALBASE. This is needed for qmail ports where they install
to a different PREFIX (/var/qmail), but only the main qmail port should
remove and own the dir. Otherwise permissions are incorrectly set when
using staging.
With hat: portmgr
This will silence warnings from pkg about files already removed by "ocamlfind remove" during "pkg remove".
Note: I am not convinced that running "ocamlfind remove" during uninstall is necessary as all files are tracked.
-DLIBICONV_PLUG from USES=iconv and always use libc iconv when it is
available.
- Remove the iconv dependency from Qt5. It uses icu instead.
PR: ports/186707
Approved by: kde (makc)
If that fails, copy it. This fixes packaging as non-root when not able to
write to the PACKAGES dir which causes the following warning:
pkg-static: archive_write_open_filename(/usr/ports/packages/All/myport-1.2.3.txz): Bad file descriptor
We do the same thing for pkg_install already.
With hat: portmgr
- Update Firefox ESR to 24.4.0
- Update Thunderbird to 24.4.0
- Update NSPR to 4.10.4
- Update NSS to 3.15.5
- Switch GSTREAMER option for non-esr ports to depend on
multimedia/gstreamer1 [2]
- Switch to Uses/compiler.mk, defaults to lang/gcc47 on 8.x and 9.x
- Use port dependencies for libogg, libvorbis, libopus, harfbuzz, graphite2
- Enable readahead in url-classifier, asmjs, download resume like on Linux
- Build www/firefox and www/seamonkey faster using unified compilation
- Unbreak build on sparc64 [1]
- Workaround OPTIMIZED_CFLAGS startup crash on 8.x and 9.x
- OPTIMIZED_CFLAGS is enabled by default
- A few DEBUG build fixes
- Add clang 3.2/3.3/3.4 workarounds for i386
- Mention known GSTREAMER issue in pkg-message
Submitted by: Jan Beich
PR: ports/186580 [1]
Requested by: kwm [2]
Security: http://www.vuxml.org/freebsd/610de647-af8d-11e3-a25b-b4b52fce4ce8.html
GCC 4.6.4 to GCC 4.7.3. This entails updating the lang/gcc port as
well as changing the default in Mk/bsd.default-versions.mk.
This adds powerpc64 as a supported architecture (and removes ia64,
though it can be supported by manually installing lang/gcc48).
New binaries %%GNU_HOST%%-gcc-ar47, %%GNU_HOST%%-gcc-nm47, and
%%GNU_HOST%%-gcc-ranlib47 are provided to support link-time
optimization (LTO) which scales significantly better.
And it adds support for indirect functions (IFUNCS), experimental
support for transactional memory in the compiler as well as a supporting
run-time library called libitm, a new string length optimization pass,
and support for atomic operations specifying the C++11/C11 memory model.
Version 3.1 of the OpenMP specification is now supported for the C,
C++, and Fortran compilers.
GCC accepts the options -std=c11 and -std=gnu11 for the C11 revision
of the ISO C standard which inlcude support for unicode strings,
nonreturning functions (_Noreturn and <stdnoreturn.h>), alignment
support (_Alignas, _Alignof, max_align_t, <stdalign.h>), and a
__builtin_complex built-in function.
The C++ frontend now accepts the -std=c++11, -std=gnu++11, and
-Wc++11-compat options and implements many C++11 features of the
language including extended friends syntax, explicit override
control, non-static data member initializers, user-defined literals,
alias declarations, delegating constructors, atomic classes, and more.
The C++ standard library and Fortran frontend have received many
improvements. See http://gcc.gnu.org/gcc-4.7/changes.html for an
extense list of changes; http://gcc.gnu.org/gcc-4.7/porting_to.html
for information on how to port to that new version.
PR: 182136
Supported by: Christoph Moench-Tegeder <cmt@burggraben.net> (fixing many ports)
Tested by: bdrewery (two -exp runs)
Currently the Ada framework uses a single compiler based on gcc47.
Soon this compiler will be updated to the gcc49 base, but not all Ada
ports are currently happy about this.
This update to ada.mk induces the ARGS of "47" which causes the port to
use the newly-created lang/gcc47-aux port which is currently a clone
of lang/gcc-aux. When the latter is updated, the Ada Framework will
use it except for those ports that feature "USES+= ada:47"
deskutils/kdepim4:
- Add depedency on coreutils, kleopatra needs md5sum and sha1sum programs [1]
misc/kdehier4:
- add tests directory (r343428 commit to Templates/BSD.local.dist)
security/kwallet:
- moved to security/kwalletmanager (renamed upstream)
x11/kdelibs:
- remove workaround, which is not needed after global fix in
Mk/bsd.kde4.mk (r315373)
PR: ports/187259 [1]
Submitted by: Tobias Berner <tcberner@gmail.com>
Alberto Villa (avilla@) has done all the hard work to create Qt 5 ports.
Trivial update from 5.2.0-beta1 to 5.2.1 by me.
Special thanks for Adriaan de Groot <groot@kde.org> for his assistance for
Qt-5.2.0 update.
Approved by: portmgr (bapt) (for Mk/bsd.port.mk)
version calls "gcc" in two places. Replace that with $CC.
- r346193 added -B${LOCALBASE}/bin in Uses/fortran.mk, just like
compiler.mk, but libtool doesn't recognise this flag and discards it.
Patch ltmain.sh so it passes the flag to the linker unmodified.
This only works on libtool 2.x for now, but that's good enough to fix
the PRs below and a linker error in math/octave on FreeBSD/i386 8.x.
(When those ports set USES=libtool.)
PR: ports/186946, ports/187000
Approved by: bapt
linking problems when base system cc/c++ is used to link object files
generated by gfortran. This affects FreeBSD/i386 8.x and all versions of
FreeBSD/ia64.
PR: ports/186946
definition of the former from Mk/bsd.gcc.mk and add the latter --
still set to 4.6 -- to Mk/bsd.default-versions.mk.
Include Mk/bsd.default-versions.mk from Mk/bsd.gcc.mk to tie the
two together.
of some ports using this unexpectedly. There are no further instances
in the tree any more.
If there is an absolute need to refer to the GCC runtime directory that
cannot be covered by CFLAGS, LDFLAGS or the like, use _GCC_RUNTIME.
This hardly ever should be necessary, though. Avoid whenever possible!
This change is no-op for FreeBSD but is needed for DragonFly support.
It has been run in dports for a year. Also unneeded trailing slashes were
removed from bsd.efl.mk (also tested for a year).
Approved by: portmgr (bapt)
Among changes:
- Switch KDE4_PREFIX to ${LOCALBASE}
- Remove now needless misc/kde4-shared-mime-info port
- Add stage support
- Remove ancient CONFLICTS (KDE 4.9 and less) and LATEST_LINK
- Squeeze MASTER_SITES/MASTER_SITE_SUBDIR
- Convert LIB_DEPENDS to new style
- Use options helpers
- Drop support for FreeBSD 7.x
- Remove Qt/KDE 3 related workarounds
- Remove local patches and use upstream version scheme for libraries
- sysutils/kdeadmin4, net/kdenetwork4, devel/kdesdk4,
and x11-clocks/kdetoys4 ports have been split.
- devel/kcachegrind is now a part of KDE SC [1]
- more logs in area51 repo...
New ports:
devel/kde-dev-scripts: KDE development scripts
devel/kde-dev-utils: KDE development utilities
games/klickety: Tetris themed solitaire
games/picmi: Single player logic-based puzzle game
textproc/libkomparediff2: Library to compare files and strings
The area51 repository features commits by Schaich Alonso, avilla, rakuco
and myself.
PR: ports/186491
Exp-run: by bdrewery
Approved by: beat (former maintainer) [1]
By default, /usr/bin/tclsh and /usr/bin/wish will be substituted with ${TCLSH}
and ${WISH}, respectively. This only works when USES contains 'tcl' or 'tk'.
Approved by: portmgr (bapt)
USE_GCC=yes has been omitted though.
Remove USE_FORTRAN handling from bsd.port.mk and bsd.gcc.mk.
Minor cleanups in some ports like USE_GMAKE, NOPORTDOCS,...
Exp-run: bdrewery
Approved by: portmgr (bdrewery)
pkg_resources module from setuptools at run time. This generally means
anything that installs a CLI utility.
Package-only users do not get setuptools installed when they install
the packages of these ports currently, because USE_PYDISTUTILS=yes doesnt set
a RUN_DEPENDS on it.
This breaks console script invocation, with the following error:
Traceback (most recent call last):
File "/usr/local/bin/<script-name>", line 5, in <module>
from pkg_resources import load_entry_point
ImportError: No module named pkg_resources
The FreeBSD Python team has recently standardised on a consistent
installation pattern for all python software, whether pure-distutils or
setuptools based, and this run-time requirement is currently not being
satisfied, breaking ports that use that functionality.
This commit moves RUN_DEPENDS+=setuptools from the =easy_install *only*
case, to the default case. This does mean that py27-setuptools and
py33-setuptools cannot be installed concurrently, precluding dual stack
Python installations.
The FreeBSD Python team is working hard towards a future where multiple
python and packages versions *can* be installed concurrently, but it is
not explicitly supported in the current state. Improvements to FreeBSD's
ports and package frameworks will help achieve that goal.
[1] http://lists.freebsd.org/pipermail/freebsd-python/2014-February/006592.html
[2] http://lists.freebsd.org/pipermail/freebsd-python/2014-February/006609.html
PR: ports/186706
Reported by: Scott Sturdivant <scott dot sturdivant at gmail.com>
Reviewed by: antoine, rm, mva
MFH: 2014Q1
The GNAT Modified General Public Licence is an older license that is
commonly used with Ada programs, specifically to address legal quirks
with the Ada generics feature.
It is meant to be used as "multi" licence in combination with GPL or
GPLv2. It is not typically seen combined with GPLv3 to my knowledge.
Approved by: portmgr (bapt)
- In libtool 1.3 set deplibs_check_method=pass_all like it is in later
versions. This avoids checking every library with file(1) to see if
it's really a library and avoids some incorrect uses of expr(1)
("expr $var" instead of "expr -- $var" where $var can start with -l).
The parsing of file(1) output is also tested during configure on
/usr/lib/libc.so.* which doesn't exist so configure printed a big (but
harmless) warning.
Approved by: bapt
The GCC ports either do not have any license defined, or they are defined
as GPLv3 which is not completely correct. The runtime libraries in the
FSF-issued GCC releases have a standard exception to the GPLv3 license.
In order to properly reflect this, the GCC ports can define a "multi"
license, GPLv3 and GPLv3RLE, which are both in effect.
Concerns PR: ports/185970
Approved by: portmgr (bapt)
They must be built with the proper prefix, but at install
phase they should be passed --prefix=STAGEDIR. It will
already install to the previously used PREFIX so this
will end up installing into ${STAGEDIR}${PREFIX}
With hat: ruby
- Update Firefox ESR to 24.3.0
- Update Thunderbird to 24.3.0
- Update NSPR to 4.10.3
- Update NSS to 3.15.4
- Depend on yasm when building with bundled libvpx or libjpeg-turbo
- Prepare gstreamer conditional for upcoming Firefox versions
- Improve jemalloc3 conditional
- Break build unless alsa-lib port installs new config file
- Chase USE_DOS2UNIX deprecation
- Temporarily disable system cairo over screen corruption with
smoothScroll [1]
Submitted by: Jan Beich
Reported by: flo [1]
Security: http://www.vuxml.org/freebsd/1753f0ff-8dd5-11e3-9b45-b4b52fce4ce8.html
Add a end user NO_WARNING_PKG_INSTALL_EOL to allow users willing to stay a bit more with pkg_install
to not get bothered all the time with the warning
With hat: portmgr
iconv extensions that the base system iconv doesn't support yet:
* wchar_t: port uses the special WCHAR_T character conversion.
* translit: port uses //TRANSLIT or //IGNORE conversion options.
Adding one or both of these arguments makes the port depend on
converters/libiconv for now.
- Allow installation of converters/libiconv on FreeBSD 10+.
- Use ICONV_CONFIGURE_ARG in devel/gettext instead of defining CPPFLAGS
and LDFLAGS to fix compilation with libiconv installed.
- Stage converters/libiconv and devel/gettext.
Approved by: bapt (on trust)
positives as some .o files may embed the source path [1]
- Only check shebang of files with executable bit set
Requested by: bapt [1]
With hat: portmgr
Unlike USE_AUTOTOOLS=libtool which makes a port use libtool from
devel/libtool, this just patches the copy of libtool included in the
port. This allows adding it to all ports that use libtool including
ports that build Fortran libraries and ports that use different
compilers or binutils than the ones used to build devel/libtool.
USES=libtool also changes the library naming specification similar
to what USE_GNOME=ltverhack does. Given the libtool version info
$current:$revision:$age and $major=$current-$age the library will be
named libname.so.$major.$age.$revision instead of libname.so.$current
and libname.so.$major becomes a symlink. Because $major increases
less frequently than $current this reduces the number of library
version bumps which means fewer rebuilds of dependent packages.
To ease the conversion from USE_AUTOTOOLS=libtool this naming spec
can be disabled with USES=libtool:oldver but the intention is that
all libtool ports eventually use the new naming.
Another change is that only libraries that are listed on the command
line will be linked into executables. Normally libtool would link in
the entire tree of library dependencies. This reduces the number of
direct dependencies on a given library which means fewer packages
need to be rebuilt on a library version bump.
Approved by: portmgr (bapt)
${OPT}_${TYPE}_DEPENDS_OFF=<something> will automatically add:
${TYPE_DEPENDS}+=<something> in case OPT is 'off'
${OPT}_${FLAG}_OFF=<something> will automatically add:
${FLAG}+=<something> in case OPT is 'off'
With hat: portmgr
Sponsored by: Absolight
This allow to pass DESTDIR through configure --prefix to ports that are
not destdir aware
Obtained from: OpenBSD ports tree (discussed in Malta with Marc Espie)
* Add WEBUI to the standard option descriptions
* Use PHP only if WebUI option selected
* Specify proper php database driver depending on database selected
between mysql, pgsql, or sqlite
* Port revision bumped because it fixes bug depending on options selected
Due to bitrot caused by staging work, this patch had to be rewritten
from scratch. I believe the intent has been maintained.
PR: ports/184503
Submitted by: Christopher Davis
Approved by: maintainer (Chifeng)
Rewritten b: marino@
of SSP_UNSAFE [1]
- take advantage of rmdir -p to remove nested instances of KMODDIR if
empty. Some ports have KMODDIR=dir1/dir2
Submitted by: antoine [1]
Approved by: portmgr (bapt)
CDN redirection is not working well with IPv6 (it either times out or fails
with 'No address record'), so back out the commit until there's time to
investigate this issue.
Now that FETCH_ARGS accepts redirections by default, we can use only the
official CDNs used by KDE and Qt, and they care of choosing an appropriate
mirror.
We didn't keep our lists very up-to-date, nor did we correctly prioritize
the entries there anyway.
With hat: kde@, acknowledged by makc@.
This is a workaround to fix eclipse port download:
=> <distfile> doesn't seem to exist in /distfiles/.
eval: ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/: not found
*** [do-fetch] Error code 2
ports to Mk/bsd.octave.mk. Also add LD_CXX="${CXX}" DL_LD="${CXX}" to
MAKE_ARGS, as this fixes the build of several octave-forve-* ports by
setting these variables properly in ${PREFIX}/bin/mkoctfile.
All the cs.pu.edu.tw addresses, http and ftp, have been down for at
least three weeks. It doesn't appear to be a transient outage.
Affects gcc, x, kde, openbsd, sourceware MASTER_SITES