dev-ada/gnatcoll: fix discover of atomic inc/dec
authorTupone Alfredo <tupone@gentoo.org>
Thu, 6 Apr 2017 06:44:35 +0000 (08:44 +0200)
committerTupone Alfredo <tupone@gentoo.org>
Thu, 6 Apr 2017 06:44:35 +0000 (08:44 +0200)
Package-Manager: Portage-2.3.3, Repoman-2.3.1

dev-ada/gnatcoll/files/gnatcoll-2016-gentoo.patch
dev-ada/gnatcoll/gnatcoll-2016.ebuild

index 0d3d958c79167cd62e4d0af22c8e6661e6ff9ab6..bb2112a058fc6bec5caacb83acb56202d2fde991 100644 (file)
  
        case GnatColl_Shared.Atomics is
           when "intrinsic" =>
+--- gnatcoll-gpl-2016-src/aclocal.m4.old       2017-04-06 08:25:14.796699365 +0200
++++ gnatcoll-gpl-2016-src/aclocal.m4   2017-04-06 08:25:36.622318016 +0200
+@@ -45,7 +45,7 @@
+    cat > conftest.ada <<EOF
+ [$3]
+ EOF
+-   if AC_TRY_COMMAND([gnatchop -q conftest.ada && $1 $2 >/dev/null 2>conftest.out])
++   if AC_TRY_COMMAND([${GNATCHOP} -q conftest.ada && $1 $2 >/dev/null 2>conftest.out])
+    then
+       : Success
+       $4
+@@ -68,7 +68,7 @@
+ AC_DEFUN(AM_HAS_INTRINSIC_SYNC_COUNTERS,
+ [
+   AC_MSG_CHECKING([whether platform supports atomic inc/dec])
+-  AM_TRY_ADA([gnatmake], [check.adb],
++  AM_TRY_ADA([${GNATMAKE}], [check.adb],
+ [
+ with Interfaces; use Interfaces;
+ procedure Check is
index 3f8a8fb505a4d6d4a6230637e5790aee98b77def..36e52edb12192bb61b464108017305014234c654 100644 (file)
@@ -3,7 +3,7 @@
 
 EAPI=6
 
-inherit multilib multiprocessing
+inherit multilib multiprocessing autotools
 
 MYP=${PN}-gpl-${PV}
 
@@ -38,6 +38,23 @@ S="${WORKDIR}"/${MYP}-src
 
 PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
 
+pkg_setup() {
+       GCC=${ADA:-$(tc-getCC)}
+       GNATMAKE="${GCC/gcc/gnatmake}"
+       GNATCHOP="${GCC/gcc/gnatchop}"
+       if [[ -z "$(type ${GNATMAKE} 2>/dev/null)" ]] ; then
+               eerror "You need a gcc compiler that provides the Ada Compiler:"
+               eerror "1) use gcc-config to select the right compiler or"
+               eerror "2) set ADA=gcc-4.9.4 in make.conf"
+               die "ada compiler not available"
+       fi
+}
+
+src_prepare() {
+       default
+       eautoreconf
+}
+
 src_configure() {
        local myConf=""
        if use sqlite; then
@@ -46,6 +63,8 @@ src_configure() {
                myConf="$myConf --without-sqlite"
        fi
        econf \
+               GNATCHOP="${GNATCHOP}" \
+               GNATMAKE="${GNATMAKE}" \
                $(use_with gmp) \
                $(use_with iconv) \
                $(use_with postgresql) \