# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

inherit eutils toolchain-funcs multilib

DESCRIPTION="It's a complete cross development package for 65(C)02 systems."
HOMEPAGE="http://www.cc65.org"
#SRC_URI="ftp://ftp.musoftware.de/pub/uz/cc65/snapshot/cc65-snapshot-sources-${PV}.tar.bz2"
SRC_URI="ftp://ftp.musoftware.de/pub/uz/${PN}/${PN}-sources-${PV}.tar.bz2"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
IUSE="doc"

DEPEND="dev-libs/boehm-gc
	app-text/linuxdoc-tools"

#S=${WORKDIR}/${PN}-snapshot-${PV}

MAKEOPTS="${MAKEOPTS} -j1"

src_unpack() {
	unpack ${A}
	cd "${S}"
	sed -i -e "s:od65:od65 sim65:g" src/make/gcc.mak
	sed -i -e "s:)/lib:)/$(get_libdir):g" make/gcc.mak
	sed -i -e "s:/lib/cc65/inc:/$(get_libdir)/cc65/inc:g" src/cc65/make/gcc.mak
	sed -i -e "s:/lib/cc65/lib:/$(get_libdir)/cc65/lib:g" src/ld65/make/gcc.mak
	sed -i -e "s:/lib/cc65/lib:/$(get_libdir)/cc65/lib:g" doc/ld65.sgml
	epatch "${FILESDIR}"/cc65-2.12.0-asneeded-1.patch
	epatch "${FILESDIR}"/cc65-2.12.0-cbm_dir-1.patch
}

src_compile() {
	emake -C src -f make/gcc.mak CC="$(tc-getCC)" AR="$(tc-getAR)" || die "src build fail"
	emake -C libsrc || die "libsrc build fail"
	emake -C doc || die "doc build fail"
}

src_install() {
	dobin src/*65/*65 src/ca65html/ca65html src/grc/grc  || die "dobin fail"
	insinto /usr/$(get_libdir)/cc65/emd
	doins libsrc/*.emd || die "install memory map fail"
	insinto /usr/$(get_libdir)/cc65/joy
	doins libsrc/*.joy || die "install joystick driver fail"
	insinto /usr/$(get_libdir)/cc65/mou
	doins libsrc/*.mou || die "install mouse driver fail"
	insinto /usr/$(get_libdir)/cc65/ser
	doins libsrc/*.ser || die "install UART driver fail"
	insinto /usr/$(get_libdir)/cc65/tgi
	doins libsrc/*.tgi || die "install graphic driver fail"
	insinto /usr/$(get_libdir)/cc65/asminc
	doins asminc/*.inc || die "install asm include fail"
	insinto /usr/$(get_libdir)/cc65/include
	doins -r include/* || die "install include fail"
	insinto /usr/$(get_libdir)/cc65/lib
	doins libsrc/*.lib || die "install lib definations fail"
	doins libsrc/*.o || die "install lib fail"
	use doc && dohtml doc/*.htm* || die "doc install fail"
	doman packages/debian/*.1 || die "man install fail"
	doinfo doc/*.info || die "info install fail"
	dodoc src/ld65/cfg/*.cfg || die "cfg install fail"
	dodoc src/ca65/macpack/*.mac || die "macro install fail"
}