mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-22 19:50:05 +02:00
Convert ocaml to working recipe
It's only had minor testing with 'unison' which works fine aside from some minor locking issues.
This commit is contained in:
@@ -1,25 +1,92 @@
|
||||
DESCRIPTION="Implementation of the Caml language"
|
||||
SUMMARY="Implementation of the Caml language"
|
||||
DESCRIPTION="
|
||||
Caml is a general-purpose programming language, designed with program
|
||||
safety and reliability in mind. It is very expressive, yet easy to
|
||||
learn and use. Caml supports functional, imperative, and
|
||||
object-oriented programming styles. It has been developed and
|
||||
distributed by INRIA, a French research institute in computer science
|
||||
and applied mathematics, since 1985.
|
||||
|
||||
The OCaml system is the main implementation of the Caml language. It
|
||||
features a powerful module system and a full-fledged object-oriented
|
||||
layer. It comes with a native-code compiler that supports numerous
|
||||
architectures, for high performance; a bytecode compiler, for
|
||||
increased portability; and an interactive loop, for experimentation
|
||||
and rapid development."
|
||||
LICENSE="GNU LGPL v2"
|
||||
COPYRIGHT="1996-2012 Institut National de Recherche en Informatique et en Automatique (INRIA)."
|
||||
HOMEPAGE="http://caml.inria.fr/index.en.html"
|
||||
SRC_URI="http://caml.inria.fr/pub/distrib/ocaml-4.00/ocaml-4.00.0.tar.gz"
|
||||
CHECKSUM_MD5="fa11560a45793bd9fa45c1295a6f4a91"
|
||||
REVISION="1"
|
||||
STATUS_HAIKU="untested"
|
||||
DEPEND=""
|
||||
ARCHITECTURES="?x86 ?x86_gcc2"
|
||||
|
||||
SOURCE_DIR="ocaml-4.00.0"
|
||||
|
||||
PROVIDES="
|
||||
ocaml = $portVersion compat >= 4
|
||||
cmd:camlp4 = $portVersion compat >= 4
|
||||
cmd:camlp4boot = $portVersion compat >= 4
|
||||
cmd:camlp4o = $portVersion compat >= 4
|
||||
cmd:camlp4o.opt = $portVersion compat >= 4
|
||||
cmd:camlp4of = $portVersion compat >= 4
|
||||
cmd:camlp4of.opt = $portVersion compat >= 4
|
||||
cmd:camlp4oof = $portVersion compat >= 4
|
||||
cmd:camlp4oof.opt = $portVersion compat >= 4
|
||||
cmd:camlp4orf = $portVersion compat >= 4
|
||||
cmd:camlp4orf.opt = $portVersion compat >= 4
|
||||
cmd:camlp4prof = $portVersion compat >= 4
|
||||
cmd:camlp4r = $portVersion compat >= 4
|
||||
cmd:camlp4r.opt = $portVersion compat >= 4
|
||||
cmd:camlp4rf = $portVersion compat >= 4
|
||||
cmd:camlp4rf.opt = $portVersion compat >= 4
|
||||
cmd:mkcamlp4 = $portVersion compat >= 4
|
||||
cmd:ocaml = $portVersion compat >= 4
|
||||
cmd:ocamlbuild = $portVersion compat >= 4
|
||||
cmd:ocamlbuild.byte = $portVersion compat >= 4
|
||||
cmd:ocamlbuild.native = $portVersion compat >= 4
|
||||
cmd:ocamlc = $portVersion compat >= 4
|
||||
cmd:ocamlc.opt = $portVersion compat >= 4
|
||||
cmd:ocamlcp = $portVersion compat >= 4
|
||||
cmd:ocamldebug = $portVersion compat >= 4
|
||||
cmd:ocamldep = $portVersion compat >= 4
|
||||
cmd:ocamldep.opt = $portVersion compat >= 4
|
||||
cmd:ocamldoc = $portVersion compat >= 4
|
||||
cmd:ocamldoc.opt = $portVersion compat >= 4
|
||||
cmd:ocamllex = $portVersion compat >= 4
|
||||
cmd:ocamllex.opt = $portVersion compat >= 4
|
||||
cmd:ocamlmklib = $portVersion compat >= 4
|
||||
cmd:ocamlmktop = $portVersion compat >= 4
|
||||
cmd:ocamlobjinfo = $portVersion compat >= 4
|
||||
cmd:ocamlopt = $portVersion compat >= 4
|
||||
cmd:ocamlopt.opt = $portVersion compat >= 4
|
||||
cmd:ocamloptp = $portVersion compat >= 4
|
||||
cmd:ocamlprof = $portVersion compat >= 4
|
||||
cmd:ocamlrun = $portVersion compat >= 4
|
||||
cmd:ocamlyacc = $portVersion compat >= 4
|
||||
"
|
||||
|
||||
REQUIRES="
|
||||
haiku >= $haikuVersion
|
||||
cmd:gcc
|
||||
"
|
||||
|
||||
BUILD_PREREQUIRES="
|
||||
haiku_devel >= $haikuVersion
|
||||
cmd:make
|
||||
cmd:gcc
|
||||
"
|
||||
|
||||
PATCHES="ocaml-4.00.0.patchset"
|
||||
|
||||
BUILD()
|
||||
{
|
||||
cd ocaml-4.00.0
|
||||
COMMON_DOCS=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`
|
||||
./configure --prefix `finddir B_COMMON_DIRECTORY` \
|
||||
--mandir $COMMON_DOCS/man
|
||||
./configure --prefix $prefix \
|
||||
--mandir $manDir
|
||||
make world.opt
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
cd ocaml-4.00.0
|
||||
COMMON_DOCS=`finddir B_COMMON_DOCUMENTATION_DIRECTORY`
|
||||
make install PREFIX=${DESTDIR}`finddir B_COMMON_DIRECTORY` \
|
||||
MANDIR=${DESTDIR}$COMMON_DOCS/man
|
||||
make install
|
||||
}
|
||||
LICENSE="GNU LGPL v2"
|
||||
COPYRIGHT="1996-2012 Institut National de Recherche en Informatique et en Automatique (INRIA)."
|
||||
|
||||
@@ -1,7 +1,14 @@
|
||||
diff -ruN ocaml-4.00.0/configure ocaml-4.00.0/configure
|
||||
--- ocaml-4.00.0/configure 2012-06-26 15:33:50.060555264 +0000
|
||||
+++ ocaml-4.00.0/configure 2012-09-25 21:21:50.419168256 +0000
|
||||
@@ -285,6 +285,10 @@
|
||||
From 392fc2240718d68c1e0ce62cc11c1e894ba2cd95 Mon Sep 17 00:00:00 2001
|
||||
From: Chris Roberts <cpr420@gmail.com>
|
||||
Date: Wed, 30 Oct 2013 21:35:40 -0600
|
||||
Subject: import old patch
|
||||
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index e08bbce..a39e9e4 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -285,6 +285,10 @@ case "$bytecc,$host" in
|
||||
bytecccompopts="-fno-defer-pop $gcc_warnings"
|
||||
# No -lm library
|
||||
mathlib="";;
|
||||
@@ -12,7 +19,7 @@ diff -ruN ocaml-4.00.0/configure ocaml-4.00.0/configure
|
||||
gcc,alpha*-*-osf*)
|
||||
bytecccompopts="-fno-defer-pop $gcc_warnings"
|
||||
if cc="$bytecc" sh ./hasgot -mieee; then
|
||||
@@ -614,6 +618,9 @@
|
||||
@@ -614,6 +618,9 @@ if test $withsharedlibs = "yes"; then
|
||||
byteccrpath="-Wl,-rpath,"
|
||||
mksharedlibrpath="-Wl,-rpath,"
|
||||
shared_libraries_supported=true;;
|
||||
@@ -22,15 +29,15 @@ diff -ruN ocaml-4.00.0/configure ocaml-4.00.0/configure
|
||||
esac
|
||||
fi
|
||||
|
||||
@@ -679,6 +686,7 @@
|
||||
@@ -679,6 +686,7 @@ case "$host" in
|
||||
arch=i386; system=solaris
|
||||
fi;;
|
||||
i[3456]86-*-beos*) arch=i386; system=beos;;
|
||||
+ i[3456]86-*-haiku*) arch=i386; system=beos;;
|
||||
i[3456]86-*-cygwin*) arch=i386; system=cygwin;;
|
||||
i[3456]86-*-darwin*) if $arch64; then
|
||||
arch=amd64; system=macosx
|
||||
@@ -901,6 +909,11 @@
|
||||
arch=amd64; system=macosx
|
||||
@@ -901,6 +909,11 @@ elif sh ./hasgot -lnsl -lsocket socket socketpair bind listen accept connect; th
|
||||
cclibs="$cclibs -lnsl -lsocket"
|
||||
echo "#define HAS_SOCKETS" >> s.h
|
||||
has_sockets=yes
|
||||
@@ -42,10 +49,11 @@ diff -ruN ocaml-4.00.0/configure ocaml-4.00.0/configure
|
||||
fi
|
||||
|
||||
if sh ./hasgot -i sys/socket.h -t socklen_t; then
|
||||
diff -uN ocaml-4.00.0/otherlibs/unix/nice.c ocaml-4.00.0/otherlibs/unix/nice.c
|
||||
--- ocaml-4.00.0/otherlibs/unix/nice.c 2012-09-25 21:31:10.443809792 +0000
|
||||
+++ ocaml-4.00.0/otherlibs/unix/nice.c 2012-09-25 21:31:51.582221824 +0000
|
||||
@@ -24,7 +24,11 @@
|
||||
diff --git a/otherlibs/unix/nice.c b/otherlibs/unix/nice.c
|
||||
index 400543c..94aa025 100644
|
||||
--- a/otherlibs/unix/nice.c
|
||||
+++ b/otherlibs/unix/nice.c
|
||||
@@ -24,7 +24,11 @@ CAMLprim value unix_nice(value incr)
|
||||
{
|
||||
int ret;
|
||||
errno = 0;
|
||||
@@ -57,3 +65,6 @@ diff -uN ocaml-4.00.0/otherlibs/unix/nice.c ocaml-4.00.0/otherlibs/unix/nice.c
|
||||
if (ret == -1 && errno != 0) uerror("nice", Nothing);
|
||||
return Val_int(ret);
|
||||
}
|
||||
--
|
||||
1.8.3.4
|
||||
|
||||
Reference in New Issue
Block a user