summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2009-04-15 04:55:39 +0000
committerAlexis Ballier <aballier@gentoo.org>2009-04-15 04:55:39 +0000
commit39a551f8b548ae1b7436274ff7ea8025e1197f00 (patch)
treec289f7628962feddc275411a6fa53b2efedef8dc /dev-ml/camlidl
parentmask ortp-0.15.0 because it breaks compatibility with older releases (diff)
downloadgentoo-2-39a551f8b548ae1b7436274ff7ea8025e1197f00.tar.gz
gentoo-2-39a551f8b548ae1b7436274ff7ea8025e1197f00.tar.bz2
gentoo-2-39a551f8b548ae1b7436274ff7ea8025e1197f00.zip
Fix tests build and implicit declarations of functions for bug #263305
(Portage version: 2.2_rc30/cvs/Linux x86_64)
Diffstat (limited to 'dev-ml/camlidl')
-rw-r--r--dev-ml/camlidl/ChangeLog8
-rw-r--r--dev-ml/camlidl/camlidl-1.05.ebuild15
-rw-r--r--dev-ml/camlidl/files/includes.patch12
-rw-r--r--dev-ml/camlidl/files/tests.patch36
4 files changed, 65 insertions, 6 deletions
diff --git a/dev-ml/camlidl/ChangeLog b/dev-ml/camlidl/ChangeLog
index 547c1a3bfe11..5c85f7fa7997 100644
--- a/dev-ml/camlidl/ChangeLog
+++ b/dev-ml/camlidl/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for dev-ml/camlidl
-# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-ml/camlidl/ChangeLog,v 1.3 2008/01/03 19:33:58 aballier Exp $
+# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-ml/camlidl/ChangeLog,v 1.4 2009/04/15 04:55:39 aballier Exp $
+
+ 15 Apr 2009; Alexis Ballier <aballier@gentoo.org> +files/includes.patch,
+ +files/tests.patch, camlidl-1.05.ebuild:
+ Fix tests build and implicit declarations of functions for bug #263305
03 Jan 2008; Alexis Ballier <aballier@gentoo.org> camlidl-1.05.ebuild:
ocamlopt is required here, there is no option to disable it
diff --git a/dev-ml/camlidl/camlidl-1.05.ebuild b/dev-ml/camlidl/camlidl-1.05.ebuild
index da88e110ddb7..f11cbf52094b 100644
--- a/dev-ml/camlidl/camlidl-1.05.ebuild
+++ b/dev-ml/camlidl/camlidl-1.05.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2008 Gentoo Foundation
+# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-ml/camlidl/camlidl-1.05.ebuild,v 1.2 2008/01/03 19:33:58 aballier Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-ml/camlidl/camlidl-1.05.ebuild,v 1.3 2009/04/15 04:55:39 aballier Exp $
-inherit eutils
+inherit eutils toolchain-funcs
DESCRIPTION="CamlIDL is a stub code generator for using C/C++ libraries from O'Caml"
HOMEPAGE="http://caml.inria.fr/camlidl/"
@@ -22,6 +22,13 @@ pkg_setup() {
fi
}
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/tests.patch"
+ epatch "${FILESDIR}/includes.patch"
+}
+
src_compile() {
# Use the UNIX makefile
libdir=`ocamlc -where`
@@ -36,7 +43,7 @@ src_compile() {
src_test() {
einfo "Running tests..."
cd tests
- ( make CCPP=g++ && einfo "Tests finished successfully" ) || die "Tests failed"
+ ( emake CCPP="$(tc-getCXX)" && einfo "Tests finished successfully" ) || die "Tests failed"
}
src_install() {
diff --git a/dev-ml/camlidl/files/includes.patch b/dev-ml/camlidl/files/includes.patch
new file mode 100644
index 000000000000..060aceefd0a5
--- /dev/null
+++ b/dev-ml/camlidl/files/includes.patch
@@ -0,0 +1,12 @@
+Index: camlidl-1.05/runtime/comerror.c
+===================================================================
+--- camlidl-1.05.orig/runtime/comerror.c
++++ camlidl-1.05/runtime/comerror.c
+@@ -22,6 +22,7 @@
+ #include <caml/callback.h>
+ #include <caml/fail.h>
+ #include <caml/alloc.h>
++#include <caml/printexc.h>
+ #include "camlidlruntime.h"
+ #include "comstuff.h"
+
diff --git a/dev-ml/camlidl/files/tests.patch b/dev-ml/camlidl/files/tests.patch
new file mode 100644
index 000000000000..f7272424be80
--- /dev/null
+++ b/dev-ml/camlidl/files/tests.patch
@@ -0,0 +1,36 @@
+Index: camlidl-1.05/tests/unix.idl
+===================================================================
+--- camlidl-1.05.orig/tests/unix.idl
++++ camlidl-1.05/tests/unix.idl
+@@ -15,16 +15,16 @@ quote (C, "
+
+ union process_status { int code; };
+
+- enum { WEXITED, WSIGNALED, WSTOPPED };
++ enum { WEXITED2, WSIGNALED, WSTOPPED2 };
+
+ static void decode_status(int status, int * kind, union process_status * p)
+ {
+ if (WIFEXITED(status)) {
+- *kind = WEXITED; p->code = WEXITSTATUS(status);
++ *kind = WEXITED2; p->code = WEXITSTATUS(status);
+ } else if (WIFSIGNALED(status)) {
+ *kind = WSIGNALED; p->code = WTERMSIG(status);
+ } else {
+- *kind = WSTOPPED; p->code = WSTOPSIG(status);
++ *kind = WSTOPPED2; p->code = WSTOPSIG(status);
+ }
+ }
+
+@@ -59,9 +59,9 @@ int execve([in,string] char * path,
+ int fork(void);
+
+ union process_status {
+- case WEXITED: int code;
++ case WEXITED2: int code;
+ case WSIGNALED: int code;
+- case WSTOPPED: int code;
++ case WSTOPPED2: int code;
+ };
+
+ int wait([out] int * kind,