There have been manual outstanding PRs on OCAML that have dragged on
for well more than a year. In the meantime, FreeBSD has been painfully
stucking on version 3.12 of Ocaml. Meanwhile, DragonFly's dports have
been maintaining version 4.00.
With a "Just do it" attitude, the dports version of Ocaml has been brought
in. This doesn't have stage support, nor is the the latest version
available. The idea is just get a working base Ocaml 4.00 in ports and
then have the maintainer update the appropriate PRs.
As a consequence, updates to omake, ocaml-findlib, and ocaml-images is
also required and upcoming.
Urged by: portmgr (bapt)
Related PR: ports/173364
Related PR: ports/173453
Only files installed in the post-install target were being placed in
stage directory. All the files installed in the install target were
being put at ${PREFIX}, and this is most of them. Strangely, portsmon
never complained about this.
The cause for the build errors are due to a GCC makefile bug.
C++ is now required to build gnattools, but libstdc++ was not listed
as a dependency. The fix for this bug will be posted to GCC's bugzilla
shortly. While here, bump gcc-aux to the latest snapshot (16 March).
Now gcc-aux passes Redports 8x.
Reported by: pkg-fallout
Changes:
* The documentation file doc/install.txt has been improved to describe
the command 'make install'.
* The chapter about the foreign function interface in the manual has
been improved.
* In striutl.h the macros os_stri_alloc and os_stri_free have been
improved to use a stack like allocation. Allocations done with
os_stri_alloc must be freed with os_stri_free in the reverse order
of their creation. The new macros reduce the runtime of
stri_to_os_stri and cp_to_os_path to 66% of the old time. This
reduces the time used by operating system calls. E.g.: The CPU time
used by the program sydir7 is reduced to 83% of the old time.
* The targets 'install' and 'uninstall' have been added to makefile,
mk_linux.mak, mk_osx.mak, mk_clang.mak, mk_cygw.mak, mk_mingw.mak,
mk_msys.mak, mk_nmake.mak, mk_msvc.mak, mk_bcc32.mak and
mk_bccv5.mak.
* The program setwpath.c has been added. This program sets the search
path (PATH variable) under Windows.
* The obsolete target 'hi' has been removed from the makefiles.
* The functions initEmulatedCwd, cmdSetenv (both in cmd_rtl.c),
setEmulatedCwd (in striutl.c) and freeArgVector (in cmd_unx.c) have
been adjusted to work with the stack like allocation of
os_stri_alloc and os_stri_free.
* The functions heapAllocOsStri and heapFreeOsStri have been added to
striutl.c.
* Usages of MAX_SYMLINK_PATH_LENGTH in cmd_rtl.c have been replaced
with MAX_OS_STRI_LEN.
Mono was set to build via clang unconditionally. Other than have
a large, unnecessary dependency on clang33, this didn't bother
DragonFly until recently. The 3.2.8 version has a conftest to test
for a working __thread implementation (which DragonFly has), but for
some reason the test locks up when built by clang. I built the conftest
manually with gcc and it returned fine.
In any case, DragonFly's gcc47 base compiler builds mono fine, so to
unbreak the port on DragonFly, only specify clang on FreeBSD.
The ASIS source has to be matched with the compiler source of the compiler
that builds it. ASIS is always tricky because it's matched to annual
releases of GNAT GPL, and never to GNAT FSF. However, after disabling the
useless (and faulty) strong version check, ASIS 2013 seems to work okay
with gcc49. At least the two ports that use it seem to work ok.
While the version remains the same, AdaControl comes with two flavors of
distfiles: "old" and "new". The "old" distfile was appropriate for
gcc47-aux, but the "new" one is required for the gcc49-based ada compiler.
This change updates the distfile to be used to build adacontrol.
GCC4.9 hasn't been released yet, but the Ada portion of it is pretty
stable and perfectly passes ACATS and gnat.dg testsuites. The only
trick was to change the unwind mechanism on i386 away from KERN_PS_STRINGS
because it will not work with 32-bit compatability mode on AMD64. This
is because on AMD64, the signal trampoline is located on a random area
on a shared page rather than a fixed location before KERN_PS_STRINGS. To
support both true i386 and AMD64-32 compatibility mode, unwind now looks
for frame pattern in all cases. Apparently stack checking has been broken
on AMD64-32 until now.
It is important to get the Ada Framework in ports to be based on gcc49
because this compiler supports the full Ada-2012 standard implementation,
and in fact some new programs require this already.
This port will stay on snapshots until 4.9.0 is released, then it will
return to be based on releases.
The Ada and C++ options have been removed. These are now always built.
In fact, GCC now requires C++ to build, so new bootstraps had to be
created. FreeBSD8 has its own bootstrap, and FreeBSD 9+ uses a pure
static bootstrap (including GNAT tools) which should last a long time.
Additionally a "Bootstrap" option was added, but this overrides all
other options to create new bootstraps. It is not intended for general
use.
Most of the Ada Framework in ports has been pretested and adjusted to
work with gcc49 out of the box, but some ports will need to be updated
immediately, which will happen right after this one. The update to
lang/gnat_util had to be synchronized with lang/gcc-aux because they
share version information and the PORTREVISION needed to be reset.
Rather than specify gnat_util every time ASIS is a dependency, set it
as a library dependency for ASIS. LIB_DEPENDS doesn't work because it
is a static library, so just manually add libgnat_util.a to BUILD_DEPENDS
and RUN_DEPENDS, then adjust 3 ports accordingly.
Changes:
* The function setSockOpt and the constant SO_REUSEADDR have been
added to sockbase.s7i. Many thanks go to Domingo Alvarez Duarte
for pointing out that this functionality was missing.
* The function openInetListener in listener.s7i has been improved
to succeed when the socket is reused (it calls setSockOpt with
SO_REUSEADDR now).
* The functions opendir and wopendir in dir_win.c and the function
opendir in dir_dos.c have been improved to check for the maximum
path length supported by Windows and DOS.
* The functions act_string and act_okay have been removed from
actutl.c.
* The function exec_action in exec.c has been improved to use
get_primact instead of act_okay. This results in a significant
performance improvement in the case when WITH_ACTION_CHECK is
defined and the option -tc is used.
* The function str1Split has been removed from strlib.c.
* Documentation comments have been added to arr_rtl.c, arrutl.c,
cmd_unx.c, cmd_win.c, dir_dos.c, dir_rtl.c, dir_win.c, kbd_inf.c,
kbd_poll.c, scanner.c and ut8_rtl.c.
* Interpreter and compiler have been improved to support the action
SOC_SET_OPT_BOOL.
In python the 'purelib' and 'platlib' paths should contain 'site-packages'
however the original pypy code does not thus the patch did not either however
this is not consistent with distutils/sysconfig.py.
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.
Part II, Bump PORTREVISIONs.
PR: 182136
Supported by: Christoph Moench-Tegeder <cmt@burggraben.net> (fixing many ports)
Tested by: bdrewery (two -exp runs)
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)
2014-03-10 deskutils/libopensync-plugin-synce: No more public distfiles
2014-03-10 irc/irchat-pj-xemacs21-mule: No more public distfiles
2014-03-10 irc/pure-xemacs21-mule: No more public distfiles
2014-03-10 lang/dice: No more public distfiles
2014-03-10 irc/dcc: No more public distfiles
2014-03-10 sysutils/backupme: No more public distfiles
2014-03-10 net/freeswitch-curl-devel: No more public distfiles
2014-03-10 misc/freeswitch-pizzademo-devel: No more public distfiles
2014-03-10 emulators/cygne-sdl: No more public distfiles
2014-03-10 mail/newmail: No more public distfiles
2014-03-10 x11-toolkits/xscoop: No more public distfiles
2014-03-10 security/didentd: No more public distfiles
2014-03-10 sysutils/wait_on: No more public distfiles
2014-03-10 net/freeswitch-sbc-devel: No more public distfiles
2014-03-10 multimedia/gxanim: No more public distfiles
2014-03-10 www/nd: No more public distfiles
2014-03-10 lang/fbbi: No more public distfiles
2014-03-10 textproc/csv2xml: No more public distfiles
2014-03-10 www/trac-calendar: No more public distfiles
2014-03-10 misc/stan: No more public distfiles
2014-03-10 japanese/gtkicq: No more public distfiles
2014-03-10 net/nc6: No more public distfiles
2014-03-10 net/jpcap: No more public distfiles
2014-03-10 games/quake-extras: No more public distfiles
2014-03-10 net/asfrecorder: No more public distfiles
2014-03-10 sysutils/pyrenamer: No more public distfiles
2014-03-10 palm/synce-sync-engine: No more public distfiles
2014-03-10 www/linux-mplayer-plugin: No more public distfiles
2014-03-10 net-mgmt/airport: No more public distfiles
2014-03-10 textproc/manued.el: No more public distfiles
2014-03-10 sysutils/jailer: No more public distfiles
2014-03-10 sysutils/blimitd: No more public distfiles
2014-03-10 print/abntex: No more public distfiles
2014-03-10 sysutils/monkeytail: No more public distfiles
2014-03-10 dns/dns_mre: No more public distfiles
2014-03-10 japanese/libjcode: No more public distfiles
2014-03-10 sysutils/jailutils: No more public distfiles
2014-03-10 net/freeswitch-vanilla-devel: No more public distfiles
2014-03-10 sysutils/hdup: No more public distfiles
2014-03-10 print/cups-smb-backend: No more public distfiles
2014-03-10 x11/settitle: No more public distfiles
2014-03-10 sysutils/anteater: No more public distfiles
2014-03-10 www/trac-pendingticket: No more public distfiles
2014-03-10 www/admuser: No more public distfiles
2014-03-10 x11-themes/gnome-icons-snowish: No more public distfiles
2014-03-10 www/metacafe_dl: No more public distfiles
2014-03-10 irc/irchat-pj-emacs21: No more public distfiles
2014-03-10 www/horde3-wicked: No more public distfiles
2014-03-10 java/drexelsnmp: No more public distfiles
2014-03-10 mail/sigit: No more public distfiles
2014-03-10 misc/freeswitch-scripts-devel: No more public distfiles
2014-03-10 www/vtiger-customerportal: No more public distfiles
2014-03-10 irc/pure-emacs21: No more public distfiles
2014-03-10 www/extsm: No more public distfiles
2014-03-10 misc/cwish: No more public distfiles
2014-03-10 www/phpscheduleit: No more public distfiles
2014-03-10 palm/synce-serial: No more public distfiles
2014-03-10 palm/synce-vdccm: No more public distfiles
2014-03-10 net/freeswitch-insideout-devel: No more public distfiles
2014-03-10 sysutils/fusefs-fur: No more public distfiles
2014-03-10 mail/clamfilter: No more public distfiles
2014-03-10 textproc/cost: No more public distfiles
2014-03-10 palm/synce-gvfs: No more public distfiles
2014-03-10 net/nxserver: No more public distfiles
2014-03-10 sysutils/throttle: No more public distfiles
2014-03-10 japanese/aterm: No more public distfiles
2014-03-10 mail/teapop: No more public distfiles
2014-03-10 www/eldav.el: No more public distfiles
2014-03-10 graphics/gsnapshot: No more public distfiles
2014-03-10 japanese/zangband: No more public distfiles
2014-03-10 audio/xmms-wma: No more public distfiles
2014-03-10 misc/projectionlib: No more public distfiles