--- /dev/null
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+EGIT_REPO_URI="https://github.com/KhronosGroup/OpenCOLLADA.git"
+inherit multilib cmake-utils
+[[ ${PV} == "9999" ]] && inherit git-r3
+
+DESCRIPTION="Stream based read/write library for COLLADA files"
+HOMEPAGE="http://www.opencollada.org/"
+[[ ${PV} == "9999" ]] || \
+ SRC_URI="https://github.com/KhronosGroup/OpenCOLLADA/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+[[ ${PV} == "9999" ]] || \
+ KEYWORDS="~amd64 ~ppc64 ~x86" \
+ S="${WORKDIR}"/OpenCOLLADA-${PV}
+
+IUSE="expat static-libs"
+
+# This is still needed to have so version numbers
+MY_SOVERSION="1.6"
+
+RDEPEND="dev-libs/libpcre
+ dev-libs/zziplib
+ media-libs/lib3ds
+ sys-libs/zlib
+ expat? ( dev-libs/expat )
+ !expat? ( dev-libs/libxml2 )"
+DEPEND="${RDEPEND}"
+
+# This is needed or you get an error on install
+BUILD_DIR="${S}"/build
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0_p864-expat.patch
+ "${FILESDIR}"/${PN}-1.2.2-soversion.patch
+ "${FILESDIR}"/${PN}-1.2.2-no-undefined.patch
+ "${FILESDIR}"/${PN}-1.2.2-libdir.patch
+)
+
+src_prepare() {
+ edos2unix CMakeLists.txt
+
+ default
+
+ # Remove bundled depends that have portage equivalents
+ rm -R Externals/{expat,lib3ds,LibXML,pcre,zlib,zziplib} || die
+
+ # Remove unused build systems
+ rm Makefile scripts/{unixbuild.sh,vcproj2cmake.rb} || die
+ find "${S}" -name SConscript -delete || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DUSE_SHARED=ON
+ -DUSE_STATIC=$(usex static-libs ON OFF)
+ -DUSE_EXPAT=$(usex expat ON OFF)
+ -DUSE_LIBXML=$(usex !expat ON OFF)
+ -Dsoversion=${MY_SOVERSION}
+ )
+
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ echo "LDPATH=/usr/$(get_libdir)/opencollada" > "${T}"/99${PN}; \
+ doenvd "${T}"/99${PN}
+
+ dobin build/bin/OpenCOLLADAValidator
+}
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
-EAPI=5
+EAPI=6
-if [[ ${PV} == *9999* ]] ; then
- SCM_ECLASS="git-r3"
-else
- SCM_ECLASS="vcs-snapshot"
-fi
-
-inherit versionator eutils multilib cmake-utils ${SCM_ECLASS}
+EGIT_REPO_URI="https://github.com/KhronosGroup/OpenCOLLADA.git"
+inherit multilib cmake-utils
+[[ ${PV} == "9999" ]] && inherit git-r3
DESCRIPTION="Stream based read/write library for COLLADA files"
HOMEPAGE="http://www.opencollada.org/"
-LICENSE="MIT"
-IUSE="expat"
-
-# seems like the Khronos Group hasnt invented the SOVERSION yet
-MY_SOVERSION="1.2"
+[[ ${PV} == "9999" ]] || \
+ SRC_URI="https://github.com/KhronosGroup/OpenCOLLADA/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
SLOT="0"
+[[ ${PV} == "9999" ]] || \
+ KEYWORDS="~amd64 ~ppc64 ~x86" \
+ S="${WORKDIR}"/OpenCOLLADA-${PV}
+
+IUSE="expat static-libs"
-if [[ ${PV} != *9999* ]]; then
- #
- # UPDATE THE COMMIT WHEN BUMPING!
- COMMIT="ceb409cabdccda3000aa2e5c065850b8fde60b0f"
- #
- SRC_URI="https://github.com/KhronosGroup/OpenCOLLADA/tarball/${COMMIT} -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~ppc64 ~x86"
-else
- EGIT_REPO_URI="https://github.com/KhronosGroup/OpenCOLLADA.git"
-fi
+# This is still needed to have so version numbers
+MY_SOVERSION="1.6"
RDEPEND="dev-libs/libpcre
dev-libs/zziplib
media-libs/lib3ds
sys-libs/zlib
- >=sys-devel/gcc-4.7
expat? ( dev-libs/expat )
!expat? ( dev-libs/libxml2 )"
-DEPEND="${RDEPEND}
- sys-apps/findutils
- sys-apps/sed"
+DEPEND="${RDEPEND}"
+# This is needed or you get an error on install
BUILD_DIR="${S}"/build
-src_prepare() {
-
- # Remove some bundled dependencies
- edos2unix CMakeLists.txt || die
+PATCHES=(
+ "${FILESDIR}"/${PN}-0_p864-expat.patch
+ "${FILESDIR}"/${PN}-1.2.2-soversion.patch
+ "${FILESDIR}"/${PN}-1.2.2-no-undefined.patch
+ "${FILESDIR}"/${PN}-1.2.2-libdir.patch
+)
- epatch "${FILESDIR}"/${PN}-0_p864-expat.patch
+src_prepare() {
+ edos2unix CMakeLists.txt
- epatch "${FILESDIR}"/${PN}-1.2.2-soversion.patch
- epatch "${FILESDIR}"/${PN}-1.2.2-no-undefined.patch
- epatch "${FILESDIR}"/${PN}-1.2.2-libdir.patch
+ default
+ # Remove bundled depends that have portage equivalents
rm -R Externals/{expat,lib3ds,LibXML,pcre,zlib,zziplib} || die
- ewarn "$(echo "Remaining bundled dependencies:";
- find Externals -mindepth 1 -maxdepth 1 -type d | sed 's|^|- |')"
# Remove unused build systems
rm Makefile scripts/{unixbuild.sh,vcproj2cmake.rb} || die
}
src_configure() {
- local mycmakeargs=" -DUSE_SHARED=ON -DUSE_STATIC=OFF"
-
- # Master CMakeLists.txt says "EXPAT support not implemented"
- # Something like "set(LIBEXPAT_LIBRARIES expat)" is missing to make it build
- use expat \
- && mycmakeargs+=' -DUSE_EXPAT=ON -DUSE_LIBXML=OFF' \
- || mycmakeargs+=' -DUSE_EXPAT=OFF -DUSE_LIBXML=ON'
-
- # Seems like the Khronos Group hasnt invented the SOVERSION yet.
- mycmakeargs+=" -Dsoversion=${MY_SOVERSION}"
+ local mycmakeargs=(
+ -DUSE_SHARED=ON
+ -DUSE_STATIC=$(usex static-libs ON OFF)
+ -DUSE_EXPAT=$(usex expat ON OFF)
+ -DUSE_LIBXML=$(usex !expat ON OFF)
+ -Dsoversion=${MY_SOVERSION}
+ )
cmake-utils_src_configure
}
src_install() {
cmake-utils_src_install
- dodir /etc/env.d || die
- echo "LDPATH=/usr/$(get_libdir)/opencollada" \
- > "${D}"/etc/env.d/99opencollada || die
+ echo "LDPATH=/usr/$(get_libdir)/opencollada" > "${T}"/99${PN}; \
+ doenvd "${T}"/99${PN}
- dobin build/bin/OpenCOLLADAValidator || die
+ dobin build/bin/OpenCOLLADAValidator
}