diff options
Diffstat (limited to 'dev-ml/camlidl')
-rw-r--r-- | dev-ml/camlidl/Manifest | 7 | ||||
-rw-r--r-- | dev-ml/camlidl/camlidl-1.05-r1.ebuild | 53 | ||||
-rw-r--r-- | dev-ml/camlidl/files/META.camlidl | 5 | ||||
-rw-r--r-- | dev-ml/camlidl/files/includes.patch | 12 | ||||
-rw-r--r-- | dev-ml/camlidl/files/nowarn.patch | 13 | ||||
-rw-r--r-- | dev-ml/camlidl/files/tests.patch | 36 | ||||
-rw-r--r-- | dev-ml/camlidl/metadata.xml | 8 |
7 files changed, 134 insertions, 0 deletions
diff --git a/dev-ml/camlidl/Manifest b/dev-ml/camlidl/Manifest new file mode 100644 index 000000000000..dea5eb29bb18 --- /dev/null +++ b/dev-ml/camlidl/Manifest @@ -0,0 +1,7 @@ +AUX META.camlidl 123 BLAKE2B ac345245b30f6df1f4ada64526e0f27b68c02311d8b426bee6eb62f91de34df868dacce3a7ba755c1924d5846790c9f90f6a46500b71fb347eea7828749f9476 SHA512 196727adb64e11b4f486419147c2d711a0d278f4f340dcec61318cd76fb816deea78e85c814f6fd4f14dae168a843fe41b0ecca3086d42387475f196519cb850 +AUX includes.patch 361 BLAKE2B 9e04253feb45286142c41bfa83482d9e85ed46a0e37d20f47d6d38f59c5cb5833a1aaa54cba0b241cc23efe497671d788960a294bb5305f5fa96aab4dc05a72c SHA512 e76690bba23d6ac3a4ef0f15feed6826cd203c38919b8fdf043c46c6f7311eef768c9c85b9855d217e1014b0b55086c7dfcea4c132320035aeafcb8e7de2bcd3 +AUX nowarn.patch 347 BLAKE2B 810cff7b2dbb40bac0b998a16684590747e6397195487ed4677a9dffdb778dfbc4a38599d54f5981226481fbf3e50b3f97bb4d88d7beda26a47f6b6da08fd604 SHA512 b436490d97b63ac428ddea2a473c3bf7c027331699234b875dd6215b5f39a3a6aaa5cc2ff7d841cf0ef8d012edcdff98a519437c857676fe6d8407c3610e3303 +AUX tests.patch 1061 BLAKE2B 45519125064c2be10be8e9b5e44b65c67fc70b58499d8cecb9abdcea2e312e03036c7a17861dd0a755d8773cf1b925b5a25ef962107cf6bb14a46c6dd8d6b036 SHA512 72234478b420edbebf48aaba4ab0078c35c3d8eced6634092b8ca605ba93a5791249e2f271ea656e86c62ac45561c25100a5e786f7827b8545ea4996e0f2850e +DIST camlidl-1.05.tar.gz 100640 BLAKE2B 38cbcebd43ced26c44803608aabdacfbd33734357097a542ee2558223b9699d89cf7be388feba59630b10e4dc3977bffd08c669d3cf676d2136f54a6a8d52aab SHA512 e8857aca818a06f8c861e5f55dddd7e8e3ab1efae51647534460b4f092166709d86c6de1215c792a0489d668d72064ccfb7635e9a6d3854cd5a62f74541a9d18 +EBUILD camlidl-1.05-r1.ebuild 1292 BLAKE2B 21364af50b590384377442f95c58de1ce15e78b68cda2f52cdbf772ec5bcb9583c7698dd93a82447762e3f949470122329400dd17c73df66dde372e49499018c SHA512 21da9d939f6b867b786ca80b488e080ceb6c4e29a8b3b8b65fa4d2fbd72809317ad81886a2499c91d47ae7ac16f080431952fbe6b80e755ad08630a9bc3c2a8a +MISC metadata.xml 253 BLAKE2B c787c1044c3f674eb5d2d7a0e830965ad53c7a2c8cdfcd95bece6b0557e35237f62afe28464ebe4c88468cd1fd543627349fd41a0aa760fceed1a7d52386eda2 SHA512 9285e04d22e8e41631e6de00e0ba02842cf0e772cd17a1d7ba3864e50eeea50abb06077ea4f9ac920eab3d520bfe28d389b3d04d5c3529af23a68ca68b6857d4 diff --git a/dev-ml/camlidl/camlidl-1.05-r1.ebuild b/dev-ml/camlidl/camlidl-1.05-r1.ebuild new file mode 100644 index 000000000000..6dd3e9f5d3d3 --- /dev/null +++ b/dev-ml/camlidl/camlidl-1.05-r1.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +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/" +SRC_URI="http://caml.inria.fr/distrib/bazar-ocaml/${P}.tar.gz" +LICENSE="QPL-1.0 LGPL-2" +SLOT="0/${PV}" +KEYWORDS="amd64 ~ppc x86 ~amd64-linux ~x86-linux" +IUSE="" +DEPEND=">=dev-lang/ocaml-3.10.2:=[ocamlopt]" +RDEPEND="${DEPEND}" + +src_prepare() { + epatch "${FILESDIR}/tests.patch" + epatch "${FILESDIR}/includes.patch" + epatch "${FILESDIR}/nowarn.patch" +} + +src_compile() { + # Use the UNIX makefile + libdir=`ocamlc -where` + sed -i -e "s|OCAMLLIB=.*|OCAMLLIB=${libdir}|" config/Makefile.unix + sed -i -e "s|BINDIR=.*|BINDIR=${EPREFIX}/usr/bin|" config/Makefile.unix + ln -s Makefile.unix config/Makefile + + # Make + emake -j1 +} + +src_test() { + einfo "Running tests..." + cd tests + emake CCPP="$(tc-getCXX)" +} + +src_install() { + libdir=`ocamlc -where` + dodir ${libdir#${EPREFIX}}/caml + dodir /usr/bin + # Install + emake BINDIR="${ED}/usr/bin" OCAMLLIB="${D}${libdir}" install + + # Add package header + sed -e "s/@VERSION/${P}/g" "${FILESDIR}/META.camlidl" > "${D}${libdir}/META.camlidl" || die + + # Documentation + dodoc README Changes +} diff --git a/dev-ml/camlidl/files/META.camlidl b/dev-ml/camlidl/files/META.camlidl new file mode 100644 index 000000000000..b0aeaf231415 --- /dev/null +++ b/dev-ml/camlidl/files/META.camlidl @@ -0,0 +1,5 @@ +description = "Stub generator" +version = "@VERSION" +directory = "^" +archive(byte) = "com.cma" +archive(native) = "com.cmxa" 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/nowarn.patch b/dev-ml/camlidl/files/nowarn.patch new file mode 100644 index 000000000000..8b457cf7ed1e --- /dev/null +++ b/dev-ml/camlidl/files/nowarn.patch @@ -0,0 +1,13 @@ +Index: camlidl-1.05/compiler/Makefile +=================================================================== +--- camlidl-1.05.orig/compiler/Makefile ++++ camlidl-1.05/compiler/Makefile +@@ -29,7 +29,7 @@ PROG=camlidl$(EXE) + all: $(PROG) + + $(PROG): $(OBJS) +- $(OCAMLC) -o $(PROG) $(OBJS) ++ $(OCAMLC) -w -a -o $(PROG) $(OBJS) + + clean:: + rm -f $(PROG) 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, diff --git a/dev-ml/camlidl/metadata.xml b/dev-ml/camlidl/metadata.xml new file mode 100644 index 000000000000..ffa6c6b4395b --- /dev/null +++ b/dev-ml/camlidl/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>ml@gentoo.org</email> + <name>Gentoo ML Project</name> + </maintainer> +</pkgmetadata> |