| # Copyright 1999-2013 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Header: /var/cvsroot/gentoo-x86/media-libs/waffle/waffle-1.3.0.ebuild,v 1.2 2013/12/28 11:29:05 vapier Exp $ |
| |
| EAPI=6 |
| |
| inherit cmake-utils |
| |
| DESCRIPTION="Library that allows selection of GL API and of window system at runtime" |
| HOMEPAGE="http://www.waffle-gl.org" |
| # TODO(fjhenigman): merge github fork into main project and change SRC_URI back to a release from there |
| MY_V="null2" |
| # TODO(ihf): Remove the -r1 when reving the next MY_V archive. Also notice that the waffle-1.6.0-r1.tar.gz |
| # to waffle-1.6.0-r6.tar.gz tarballs on GS are identical. |
| SRC_URI="https://github.com/fjhenigman/waffle/archive/${MY_V}.tar.gz -> ${P}-r1.tar.gz" |
| S="${WORKDIR}/${PN}-${MY_V}" |
| LICENSE="BSD-2" |
| SLOT="0" |
| KEYWORDS="*" |
| IUSE="doc examples gbm opengl opengles test wayland X" |
| |
| # Note: Chrome OS currently uses the following USE flags: |
| # opengl => GLX and OpenGL |
| # opengles => EGL (X11 and/or gbm) and OpenGL ES |
| # TODO: sync USE flags with upstream gentoo: crbug.com/375298 |
| |
| REQUIRED_USE=" |
| || ( opengl opengles ) |
| opengl? ( X ) |
| || ( X gbm wayland ) |
| " |
| |
| RDEPEND=" |
| opengl? ( virtual/opengl ) |
| opengles? ( virtual/opengles ) |
| X? ( |
| x11-libs/libX11 |
| x11-libs/libxcb |
| ) |
| gbm? ( || ( ( |
| media-libs/mesa[gbm] |
| virtual/udev |
| ) media-libs/minigbm ) |
| ) |
| wayland? ( >=dev-libs/wayland-1.0 ) |
| " |
| |
| DEPEND="${RDEPEND} |
| opengl? ( x11-proto/glproto ) |
| x11-drivers/opengles-headers |
| x11-libs/libX11 |
| X? ( x11-proto/xcb-proto ) |
| doc? ( |
| dev-libs/libxslt |
| app-text/docbook-xml-dtd:4.2 |
| ) |
| " |
| |
| PATCHES=( |
| "${FILESDIR}"/0001-Support-oak-board.patch |
| "${FILESDIR}"/0001-null-use-EGL_DEFAULT_DISPLAY.patch |
| "${FILESDIR}"/0002-null-Fix-null-code-to-work-with-Mesa-11.0.2.patch |
| "${FILESDIR}"/0003-eglChooseConfig.patch |
| "${FILESDIR}"/0004-Pass-dma_buf-import-modifiers-if-driver-supports-thi.patch |
| "${FILESDIR}"/0005-Add-support-for-EXT_image_flush_external-extension.patch |
| "${FILESDIR}"/0006-Transition-to-the-official-DMA-BUF-import-modifier-t.patch |
| ) |
| |
| src_configure() { |
| if use opengles && use X; then |
| waffle_has_x11_egl=ON |
| else |
| waffle_has_x11_egl=OFF |
| fi |
| local mycmakeargs=( |
| -Dwaffle_has_glx=$(usex opengl) |
| -Dwaffle_has_x11_egl=$waffle_has_x11_egl |
| -Dwaffle_build_examples=$(usex examples) |
| -Dwaffle_build_manpages=$(usex doc) |
| -Dwaffle_has_gbm=$(usex gbm) |
| -Dwaffle_build_tests=$(usex test) |
| -Dwaffle_has_wayland=$(usex wayland) |
| ) |
| |
| tc-export CC CXX # crbug.com/471450 |
| |
| cmake-utils_src_configure |
| } |
| |
| src_test() { |
| emake -C "${CMAKE_BUILD_DIR}" check |
| } |