--- /home/ohnobinki/gentoo-x86/media-plugins/live/live-2011.03.14.ebuild 2011-04-19 15:21:58.000000000 -0400 +++ live-2011.03.14.ebuild 2011-05-12 18:44:17.000000000 -0400 @@ -1,11 +1,12 @@ # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/media-plugins/live/live-2011.03.14.ebuild,v 1.1 2011/04/19 19:21:58 aballier Exp $ +# $Header: $ -EAPI=3 -inherit flag-o-matic eutils toolchain-funcs multilib +EAPI=4 -DESCRIPTION="Source-code libraries for standards-based RTP/RTCP/RTSP multimedia streaming, suitable for embedded and/or low-cost streaming applications" +inherit eutils toolchain-funcs multilib + +DESCRIPTION="Standards-based RTP/RTCP/RTSP multimedia streaming for embedded streaming applications" HOMEPAGE="http://www.live555.com/" SRC_URI="http://www.live555.com/liveMedia/public/${P/-/.}.tar.gz" @@ -14,7 +15,7 @@ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris" IUSE="" -S="${WORKDIR}" +S=${WORKDIR} # Alexis Ballier # Be careful, bump this everytime you bump the package and the ABI has changed. @@ -22,14 +23,20 @@ LIVE_ABI_VERSION=4 src_prepare() { - cd "${WORKDIR}" - epatch "${FILESDIR}/${PN}-recursive.patch" + epatch "${FILESDIR}"/${PN}-2009.09.28-buildorder.patch + epatch "${FILESDIR}"/${PN}-recursive.patch + + cp -pPR live live-shared || die + pushd live-shared || die + # To build shared libraries with proper NEEDED entries, we need + # these libraries to link to eachother. This patch does this. + epatch "${FILESDIR}"/${PN}-2009.06.02-libdeps.patch + popd || die - cp -pPR live live-shared - mv live live-static + mv live live-static || die - cp "${FILESDIR}/config.gentoo" live-static - cp "${FILESDIR}/config.gentoo-so-r1" live-shared + cp "${FILESDIR}"/config.gentoo live-static/ || die + cp "${FILESDIR}"/config.gentoo-so-r1 live-shared/ || die case ${CHOST} in *-solaris*) @@ -59,49 +66,49 @@ esac } -src_configure() { :; } +src_configure() { + tc-export CC CXX + export LIVE_ABI_VERSION LIBDIR=/usr/"$(get_libdir)" -src_compile() { - tc-export CC CXX LD + cd "${WORKDIR}"/${PN}-static || die + ./genMakefiles gentoo || die - cd "${WORKDIR}/live-static" + cd "${WORKDIR}"/${PN}-shared || die + ./genMakefiles gentoo-so-r1 || die +} +src_compile() { einfo "Beginning static library build" - ./genMakefiles gentoo - emake -j1 LINK_OPTS="-L. $(raw-ldflags)" || die "failed to build static libraries" + emake -C ${PN}-static -j1 - einfo "Beginning programs build" - cd "${WORKDIR}/live-static/testProgs" - emake LINK_OPTS="-L. ${LDFLAGS}" || die "failed to build test programs" - cd "${WORKDIR}/live-static/mediaServer" - emake LINK_OPTS="-L. ${LDFLAGS}" || die "failed to build the mediaserver" - - cd "${WORKDIR}/live-shared" einfo "Beginning shared library build" - ./genMakefiles gentoo-so-r1 - local suffix=$(get_libname ${LIVE_ABI_VERSION}) - emake -j1 LINK_OPTS="-L. ${LDFLAGS}" LIB_SUFFIX="${suffix#.}" || die "failed to build shared libraries" + emake -C ${PN}-shared -j1 + + einfo "Beginning programs build" + emake -C ${PN}-shared/testProgs + emake -C ${PN}-shared/mediaServer } src_install() { for library in UsageEnvironment liveMedia BasicUsageEnvironment groupsock; do - dolib.a live-static/${library}/lib${library}.a - dolib.so live-shared/${library}/lib${library}$(get_libname ${LIVE_ABI_VERSION}) - dosym lib${library}$(get_libname ${LIVE_ABI_VERSION}) /usr/$(get_libdir)/lib${library}$(get_libname) + dolib.a ${PN}-static/${library}/lib${library}.a + + mv ${PN}-shared/${library}/lib${library}.so{,.${LIVE_ABI_VERSION}} || die + dolib.so ${PN}-shared/${library}/lib${library}.so.${LIVE_ABI_VERSION} + dosym lib${library}.so.${LIVE_ABI_VERSION} /usr/$(get_libdir)/lib${library}.so insinto /usr/include/${library} - doins live-shared/${library}/include/*h + doins ${PN}-shared/${library}/include/*h done # Should we really install these? - find live-static/testProgs -type f -perm +111 -print0 | \ - xargs -0 dobin + dobin $(find ${PN}-shared/testProgs -type f -perm +111) #install included live555MediaServer aplication - dobin live-static/mediaServer/live555MediaServer + dobin ${PN}-shared/mediaServer/live555MediaServer # install docs - dodoc live-static/README + dodoc ${PN}-static/README } pkg_postinst() {