summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ml/lablgl')
-rw-r--r--dev-ml/lablgl/Manifest1
-rw-r--r--dev-ml/lablgl/lablgl-1.06.ebuild92
2 files changed, 93 insertions, 0 deletions
diff --git a/dev-ml/lablgl/Manifest b/dev-ml/lablgl/Manifest
index 4f9c842e5906..1fd832851a19 100644
--- a/dev-ml/lablgl/Manifest
+++ b/dev-ml/lablgl/Manifest
@@ -1 +1,2 @@
DIST lablgl-1.05.tar.gz 296597 BLAKE2B 01fff39607f0b4e965737c6fec53cbd3b154bb2df3528fd37626ac87c6cb46a29f97881a242206310b1bd576fb9dfc72ede1eb24cf287ddfc55194b8d55eb83d SHA512 e8bf7d993610912d50ec3a6c18a24d2ff7d0727a41fe102e745050bb83ee02a9995e8b1b8c7dbd94f6b2a8363145f22e9772e36253dced762a63ec3c6c54379d
+DIST lablgl-1.06.tar.gz 567281 BLAKE2B 90e42d3f131b2a416b5a1fb9933fbf1178911aabfd571274e987c8e7da12a3c57673268b5e0300950f3b03ddb363626ad93fe3e647e5e7058ee48c0b130fcbfc SHA512 169ac4ed8eaf3635c107c57cd03a76a64fc16a8d3ba1ad261b7e4dcda985c0a83059421e72233f645aec21a1ec27b980530b4ffb7013fba31d446b16521b3f4c
diff --git a/dev-ml/lablgl/lablgl-1.06.ebuild b/dev-ml/lablgl/lablgl-1.06.ebuild
new file mode 100644
index 000000000000..1b6cd22e0656
--- /dev/null
+++ b/dev-ml/lablgl/lablgl-1.06.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Objective CAML interface for OpenGL"
+HOMEPAGE="http://wwwfun.kurims.kyoto-u.ac.jp/soft/olabl/lablgl.html"
+SRC_URI="https://github.com/garrigue/lablgl/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc glut +ocamlopt tk"
+
+RDEPEND="
+ >=dev-lang/ocaml-3.10.2:=[ocamlopt?]
+ x11-libs/libXext
+ x11-libs/libXmu
+ x11-libs/libX11
+ virtual/opengl
+ virtual/glu
+ glut? ( media-libs/freeglut )
+ tk? (
+ >=dev-lang/tcl-8.3:0=
+ >=dev-lang/tk-8.3:0=
+ dev-ml/labltk:=
+ )
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ # make configuration file
+ echo "BINDIR=/usr/bin" > Makefile.config || die
+ echo "GLLIBS = -lGL -lGLU" >> Makefile.config || die
+ if use glut; then
+ echo "GLUTLIBS = -lglut" >> Makefile.config || die
+ else
+ echo "GLUTLIBS = " >> Makefile.config || die
+ fi
+ echo "XLIBS = -lXext -lXmu -lX11" >> Makefile.config || die
+ echo "RANLIB = $(tc-getRANLIB)" >> Makefile.config || die
+ echo 'COPTS = -c -O $(CFLAGS)' >> Makefile.config || die
+ echo 'INCLUDES = $(TKINCLUDES) $(GLINCLUDES) $(XINCLUDES)' >> Makefile.config || die
+}
+
+src_compile() {
+ if use tk; then
+ emake togl
+ if use ocamlopt; then
+ emake toglopt
+ fi
+ fi
+
+ emake lib
+ if use ocamlopt; then
+ emake libopt
+ fi
+
+ if use glut; then
+ emake glut
+ if use ocamlopt; then
+ emake glutopt
+ fi
+ fi
+}
+
+src_install() {
+ # Makefile do not use mkdir so the library is not installed
+ # but copied as a 'stublibs' file.
+ dodir /usr/$(get_libdir)/ocaml/stublibs
+
+ # Same for lablglut's toplevel
+ if use tk ; then
+ dodir /usr/bin
+ fi
+
+ BINDIR="${ED}/usr/bin"
+ BASE="${ED}/usr/$(get_libdir)/ocaml"
+ emake BINDIR="${BINDIR}" INSTALLDIR="${BASE}/lablGL" DLLDIR="${BASE}/stublibs" install
+
+ dodoc README CHANGES
+
+ if use doc ; then
+ mv Togl/examples{,.togl} || die
+ dodoc -r Togl/examples.togl
+
+ mv LablGlut/examples{,.glut} || die
+ dodoc -r LablGlut/examples.glut
+ fi
+}