summaryrefslogtreecommitdiff
blob: 8713ff0aeb94248737e397984a307e588eabcdd1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-games/ode/ode-0.5-r4.ebuild,v 1.2 2006/01/05 19:05:36 wolf31o2 Exp $

inherit eutils

DESCRIPTION="Open Dynamics Engine SDK"
HOMEPAGE="http://ode.org/"
SRC_URI="mirror://sourceforge/opende/${P}.tgz"

LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="amd64 ppc x86"
IUSE="doc debug double-precision"

RDEPEND="virtual/opengl
	|| (
		(
			x11-libs/libX11
			virtual/glut )
		virtual/x11 )
	virtual/glu"

DEPEND="${RDEPEND}
	|| (
		x11-proto/xproto
		virtual/x11 )"

config_use() {
	use $1 && echo $2 || echo $3
}

src_unpack() {
	unpack ${A}
	cd "${S}"
	echo 'C_FLAGS+=$(E_CFLAGS) -fPIC' >> config/makefile.unix-gcc
	epatch "${FILESDIR}"/${P}-PIC.patch
	sed -i -e "s/..\/..\/drawstuff\/textures/\/usr\/share\/${PF}\/examples/" ode/test/*.c*
	sed -i -e "s/fn.path_to_textures = 0/fn.path_to_textures = \"\/usr\/share\/${PF}\/examples\"/" drawstuff/dstest/dstest.cpp
	sed -i \
		-e "s/#OPCODE_DIRECTORY/OPCODE_DIRECTORY/" \
		-e "/^BUILD=/s:=.*:=$(config_use debug debug release):" \
		-e "/^PRECISION=/s:=.*:=$(config_use double-precision DOUBLE SINGLE):" \
		config/user-settings
	sed -i -e "s/inline_[\t]*void[\t*]ResetCountDown/void ResetCountDown/" OPCODE/OPC_TreeCollider.h
}

src_compile() {
	emake \
		-j1 \
		E_CFLAGS="${CFLAGS}" \
		PLATFORM=unix-gcc \
		|| die "emake failed"
}

src_install() {
	insinto /usr/include/ode
	doins include/ode/*.h || die "doins failed"
	insinto /usr/include/drawstuff
	doins include/drawstuff/*.h || die "doins failed"
	dolib lib/libode.a lib/libdrawstuff.a || die "dolib failed"
	dodir /usr/share/${P}/config
	insinto /usr/share/${P}/config
	doins config/user-settings
	if use doc; then
		dodoc README CHANGELOG ode/doc/ode.pdf
		dohtml ode/doc/ode.html
		dodir /usr/share/doc/${PF}/html/pix/
		insinto /usr/share/doc/${PF}/html/pix/
		doins ode/doc/pix/*.jpg
		# install examples
		dodir /usr/share/${PF}/examples
		exeinto /usr/share/${PF}/examples
		doexe ode/test/*.exe
		doexe drawstuff/dstest/dstest.exe
		insinto /usr/share/${PF}/examples
		doins ode/test/*.c ode/test/*.cpp
		doins drawstuff/textures/*.ppm
		doins drawstuff/dstest/dstest.cpp
	fi
}