summaryrefslogtreecommitdiff
blob: 862822fb608a3147a3f7ff453581973bbb91918a (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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/dev-lisp/cl-sdl/cl-sdl-0.2.1-r1.ebuild,v 1.4 2004/06/24 23:54:41 agriffis Exp $

inherit common-lisp eutils

DESCRIPTION="Common Lisp bindings to the SDL graphics library, and OpenGL libraries"
HOMEPAGE="http://cl-sdl.sourceforge.net/"
SRC_URI="mirror://sourceforge/cl-sdl/${PN}_${PV}.tar.gz"

LICENSE="MIT"
SLOT="0"
KEYWORDS="~x86"
IUSE=""

DEPEND="dev-lisp/cl-uffi
	=media-libs/libsdl-1.2*
	=media-libs/sdl-ttf-2*
	=media-libs/sdl-mixer-1.2*
	=media-libs/sdl-image-1.2*
	virtual/commonlisp
	virtual/opengl"

S=${WORKDIR}/${PN}

SUB_PACKAGES="opengl sdl sdl-ttf sdl-img sdl-mix"

src_unpack() {
	unpack ${A}
	epatch ${FILESDIR}/${P}-gentoo.patch
}

src_compile() {
	make clean
	make || die
}

src_install() {
	insinto /usr/lib/cl-sdl
	doins build/*.so

	insinto /usr/share/common-lisp/source/sdl-ffi/ffi
	doins ffi/uffi.lisp
	insinto /usr/share/common-lisp/source/sdl-ffi
	doins sdl-ffi.asd

	insinto /usr/share/common-lisp/source/sdl-demos/examples/nehe
	doins examples/nehe/*.lisp
	insinto /usr/share/common-lisp/source/sdl-demos/examples
	doins examples/*.lisp
	insinto /usr/share/common-lisp/source/sdl-demos
	doins sdl-demos.asd

	dodir /usr/share/common-lisp/systems

	dosym /usr/share/common-lisp/source/sdl-ffi/sdl-ffi.asd \
		/usr/share/common-lisp/systems/sdl-ffi.asd
	dosym /usr/share/common-lisp/source/sdl-demos/sdl-demos.asd \
		/usr/share/common-lisp/systems/sdl-demos.asd

	for i in ${SUB_PACKAGES} ; do
		# install lisp
		insinto /usr/share/common-lisp/source/$i/$i
		doins $i/*.lisp
		insinto /usr/share/common-lisp/source/$i
		doins $i.asd
		# install system
		dosym /usr/share/common-lisp/source/$i/$i.asd \
			/usr/share/common-lisp/systems/$i.asd
	done

	insinto /usr/share/cl-sdl-demos/data
	doins examples/data/cl-sdl.bmp examples/data/cl-sdl.xcf \
		examples/data/star.bmp examples/data/tut10.world
}

pkg_postinst() {
	/usr/sbin/register-common-lisp-source sdl-ffi
	for i in ${SUB_PACKAGES} ; do
		/usr/sbin/register-common-lisp-source $i
	done
	/usr/sbin/register-common-lisp-source sdl-demos
}

pkg_prerm() {
	/usr/sbin/unregister-common-lisp-source sdl-ffi
	for i in ${SUB_PACKAGES} ; do
		/usr/sbin/unregister-common-lisp-source $i
	done
	/usr/sbin/unregister-common-lisp-source sdl-demos
}

pkg_preinst() {
	rm -rf /usr/lib/common-lisp/*/sdl* || true
	rm -rf /usr/lib/common-lisp/*/opengl || true
}

pkg_postrm() {
	rm -rf /usr/lib/common-lisp/*/sdl* || true
	rm -rf /usr/lib/common-lisp/*/opengl || true
}