Commit graph

16 commits

Author SHA1 Message Date
John Marino
dfb479fcc5 lang/gnatdroid-arm5(7): Fix ARMv7, disable ARMv5
ARMv5 gnatdroid can't currently be built because sigtramp-armdroid.c
uses thumb instructions that ARMv5 doesn't know.  Until this is fixed,
set the port to ignore.

Both gnatdroid ports now using gcc-aux's Makefile.version for it's
portrevision versions.  Both now stop using CONFIGURE_ARGS because it
processes the values in an unexpected way.

Both get a revbump due to gcc-aux's binutils-caused revbump.
2014-04-10 10:33:23 +00:00
John Marino
65f2051631 lang/gnatdroid-*: Support multiple API, base on gcc-aux (gcc 4.9)
This represents major changes with gnatdroid.

The sysroot is no longer API 9 or 19, but a choice of API 8, 9, 15,
16, 17, 18, or 19.  The prefix is not androidX but just "android".
The binutils port had to be adjusted due to the prefix change.

Finally, gnatdroid-armv(5,7) was substancially reworked to use
gcc-aux (4.9) instead of gcc47-aux (4.7).  This means the new ARM
unwinder is in use (zero cost exceptions).  Only 6 ACATS tests are
failing, they are related to the missing stack check capability.

Future work will speed up ACATS remote device testing and hopefully
enable gnat.dg testing too.
2014-04-10 00:34:48 +00:00
John Marino
8ad355d865 lang/gnatdroid-*: Update sysroot to Android API level 9 -> level 19
This is the first of two steps to update the gnatdroid ARM cross-
compilers.  The sysroot was 10 versions behind the current API level
of 19.  The latest API level drops ARMv5 support, but the API is
backwards compatible, so if applications restrict themselves to
level 18 features, then ARMv5 should still be usable.

The next step is to base the cross compilers on GCC 4.9 instead of the
GCC 4.7-based gcc47-aux port.
2014-04-06 11:32:56 +00:00
John Marino
3c8f8d1ffb lang/gnatdroid-armv(5,7): Keep based on gcc47 for now
The new gcc49-based Ada compiler will most likely be an improvement for
this FreeBSD->Android Ada cross-compiler, but it will need extensive
testing.  Keep using gcc47 after gcc49 is brought in until testing is
complete.  Hopefully that will also result in C++ capability too...
2014-03-09 21:47:42 +00:00
John Marino
5b167d4c29 lang/gnatdroid-armv(5,7): Clarify license has GPLv3RLE exception 2014-02-15 16:39:50 +00:00
John Marino
6776e8937d lang/gnatdroid-armv(5,7): Fix build on FreeBSD 10+
Reported by pkg-fallout
Cause: Bad gcc makefile, doesn't properly support cross-compiler build
Workaround: duplicate *-cross executables to the base names so that the
            install target doesn't try to rebuild them
2014-02-03 13:37:19 +00:00
John Marino
e58e7d33c5 lang/gnatdroid-armv(5,7): Use lang/gcc-aux as base, not lang/gnat-aux
After a few additional patches for gcc-aux, gnatdroid-armv5 (and -armv7)
build and execute well when built and based on gcc 4.7-based gcc-aux.
The previous version was based on gcc 4.6-based gnat-aux.  This was the
final port requiring gnat-aux, and now its part of the Ada framework.

Running acats using an ASUS Transformer XF101 (Android 4.0.3) as a target
results in a nearly perfect result.  Only test cb1010a fails, which is
a failure to detect running out of stack space (-fstack-check).  I intend
to investigate further, but as the only problem, gnatdroid remains a
highly capable compiler despite the small regression.  Potentially
zero-cost exceptions were gained as a trade-off.
2014-01-23 20:46:14 +00:00
John Marino
d5057f768f lang/gnatdroid-armv(5,7): Convert to staging
* PORTREVISION bumped because previous package added empty directories.
* GPLv3 LICENSE added, but not installed as it messed up dynamic PLIST
* pkg-message used instead of post-install echoes
* Custom do-build target removed, default works after modifications
* OPTIONS_SUB=yes to handle standard PLIST_SUB conversions
* Auto-PLIST logic improvements
* To simplify Auto-PLIST, non-bin entries were removed from pkg-plist
* It was necessary to add pre-install target to pre-create directories that
  are no longer present when port is installed in clean stage.
2013-11-09 12:18:45 +00:00
Gerald Pfeifer
3be3e90f93 Update to libmpc version 1.0.1 which brings the following fixes:
- Switched to automake 1.11.6, see CVE-2012-3386.
 - #14669: Fixed extraction of CC from gmp.h.
 - Fixed case of intermediate zero real or imaginary part in mpc_fma,
   found by hydra with GMP_CHECK_RANDOMIZE=1346362345.

This is on top of the following changes from version 1.0

 - Licence change towards LGPLv3+ for the code and GFDLv1.3+ (with no
   invariant sections) for the documentation.
 - 100% of all lines are covered by tests
 - Renamed functions
   . mpc_mul_2exp to mpc_mul_2ui
   . mpc_div_2exp to mpc_div_2ui
 - 0^0, which returned (NaN,NaN) previously, now returns (1,+0).
 - Removed compatibility with K&R compilers, which was untestable due
   to lack of such compilers.
 - New functions
   . mpc_log10
   . mpc_mul_2si, mpc_div_2si
 - Speed-ups
   . mpc_fma
 - Bug fixes
   . mpc_div and mpc_norm now return a value indicating the effective
     rounding direction, as the other functions.
   . mpc_mul, mpc_sqr and mpc_norm now return correct results even if
     there are over- or underflows during the computation.
   . mpc_asin, mpc_proj, mpc_sqr: Wrong result when input variable has
     infinite part and equals output variable is corrected.
   . mpc_fr_sub: Wrong return value for imaginary part is corrected.

Convert to the new LIB_DEPENDS standard and remove hard-coded
.so versions from a couple of dependent ports.

Bump PORTREVISIONS of all dependent ports.

PR:		183141
Approved by:	portmgr (bdrewery)
2013-10-26 00:52:33 +00:00
Baptiste Daroussin
888ab73a81 Add NO_STAGE all over the place in preparation for the staging support (cat: lang) 2013-09-20 19:53:09 +00:00
Boris Samorodov
9f7e7e1326 Introduce ICONV_CONFIGURE_ARG variable defined at Uses/iconv.mk.
It's value is "--with-libiconv-prefix=/usr/local" for systems
before 100043 with ports libiconv and to use at systems post
100043 with base iconv it's value is "" (NULL).

Co-authors:	bapt, madpilot and bsam (me)
2013-09-04 20:01:05 +00:00
John Marino
5feebd9c74 Replace John Marino email address with FreeBSD version
While I'm here, also trim the headers on a couple of ports and remove
a reference to the Dragonlace mirror which is down indefinitely.

Approved by:	bapt (mentor)
2013-07-12 13:40:50 +00:00
Baptiste Daroussin
6ed50c6a1f Base gnat on new 4.6.4 version of gcc
Sync gnat-aux with changes from gcc-aux
Convert to new options framework
Switch to dynamic plist
No more install libiberty.a for gnatdroid*

PR:		ports/173412
Reported by:	Jinsong Zhao <jszhao@yeah.net>
Submitted by:	John Marino <draco@marino.st> (maintainer)
2013-04-30 12:38:52 +00:00
Frederic Culot
e41d19c5e2 - Update to 20120301 (corresponding to gcc 4.6.3)
PR:		ports/166719
Submitted by:	John Marino <draco@marino.st> (maintainer)
2012-04-23 14:27:21 +00:00
Frederic Culot
9c0c19ebc6 - Add patch to disable symbolic traceback run-time support
(could cause linker breakage)
- Bump PORTREVISION

PR:		ports/160568
Submitted by:	John Marino <draco@marino.st> (maintainer)
2011-09-10 17:53:10 +00:00
Frederic Culot
6d05a639a7 The gnatdroid-armv5 port builds a C/Ada cross-compiler based on GCC 4.6 that
targets the Android operating system (version 2.3, API level 9) running on
ARM architecture (version 5).  This produces binaries that run natively on
Android devices as well as the Android SDK emulator.

WWW: http://www.dragonlace.net

PR:		ports/160426
Submitted by:	John Marino <freebsdml@marino.st>
2011-09-07 05:22:05 +00:00