From f38cec55a65ba6c6d4cff6a1b651389e28f8faa6 Mon Sep 17 00:00:00 2001 From: Juan RP Date: Mon, 25 Mar 2013 07:09:35 +0100 Subject: [PATCH] xorg-server: add opengl option (enabled on x86); cross build support. --- srcpkgs/xorg-server/template | 28 +++++++++++-------- srcpkgs/xorg-server/template.options | 17 +++++++++++ .../xorg-server/xorg-server-devel.template | 10 +++---- 3 files changed, 39 insertions(+), 16 deletions(-) create mode 100644 srcpkgs/xorg-server/template.options diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template index 799e6a6b27e..a2d9a789877 100644 --- a/srcpkgs/xorg-server/template +++ b/srcpkgs/xorg-server/template @@ -1,16 +1,15 @@ # Template build file for 'xorg-server'. pkgname=xorg-server version=1.13.3 -revision=1 +revision=2 build_style=gnu-configure configure_args="--enable-ipv6 --enable-xcsecurity --enable-record --enable-xnest --enable-xephyr --enable-composite --enable-xvfb - --enable-glx-tls --disable-static --disable-config-hal + --disable-static --disable-config-hal --disable-xfbdev --disable-xfake --disable-config-dbus --enable-config-udev --sysconfdir=/etc/X11 --with-xkb-path=/usr/share/X11/xkb --with-xkb-output=/var/lib/xkb --with-fontrootdir=/usr/share/fonts/X11 --with-sha1=libcrypto --disable-dmx --disable-xfree86-utils --enable-dga --enable-xorg - --enable-install-setuid --disable-xfbdev --disable-xfake --enable-kdrive --enable-kdrive-evdev --enable-kdrive-kbd --enable-kdrive-mouse --enable-xorg --enable-xcsecurity" short_desc="The X11 server from X.org" @@ -20,26 +19,33 @@ license="MIT/X11, BSD" distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.bz2" checksum=c9e38eb6404749cab9e3c4a4901d951d4d62958b11f002ce968225ef92902762 -subpackages="${pkgname}-xnest ${pkgname}-xephyr ${pkgname}-xvfb - ${pkgname}-devel" +subpackages="${pkgname}-xnest ${pkgname}-xephyr ${pkgname}-xvfb ${pkgname}-devel" fulldepends="xkeyboard-config" # See hw/xfree86/common/xf86Module.h. Only care for the major version. provides="xserver-abi-extension-7 xserver-abi-input-18 xserver-abi-video-13" -makedepends="pkg-config perl flex inputproto>=2.2 glproto>=1.4.15 xproto>=7.0.22 +hostmakedepends="pkg-config perl flex" + +makedepends="libfl-devel damageproto inputproto>=2.2 glproto>=1.4.15 xproto>=7.0.22 dri2proto>=2.1 xf86driproto randrproto videoproto compositeproto scrnsaverproto resourceproto>=1.2.0 xineramaproto xcmiscproto bigreqsproto libudev-devel>=183 openssl-devel libX11-devel libXext-devel libdmx-devel libpciaccess-devel libXfont-devel libXmu-devel libXrender-devel libXfixes-devel libXi-devel libXaw-devel libdrm-devel libXtst-devel libXres-devel libxkbui-devel - libxkbfile-devel libXxf86dga-devel libXv-devel pixman-devel MesaLib-devel" + libxkbfile-devel libXxf86dga-devel libXv-devel pixman-devel" post_install() { vinstall ${FILESDIR}/11-quirks.conf 644 etc/X11/xorg.conf.d vinstall COPYING 644 usr/share/licenses/${pkgname} - # Support nvidia and amd binary blobs to provide their own - # implementation. - mv ${DESTDIR}/usr/lib/xorg/modules/extensions/libglx.so \ - ${DESTDIR}/usr/lib/xorg/modules/extensions/libglx-xorg.so + + # Xorg must be setuid. + chmod 4755 ${DESTDIR}/usr/bin/Xorg + + if [ -e ${DESTDIR}/usr/lib/xorg/modules/extensions/libglx.so ]; then + # Support nvidia and amd binary blobs to provide their own + # implementation. + mv ${DESTDIR}/usr/lib/xorg/modules/extensions/libglx.so \ + ${DESTDIR}/usr/lib/xorg/modules/extensions/libglx-xorg.so + fi } diff --git a/srcpkgs/xorg-server/template.options b/srcpkgs/xorg-server/template.options new file mode 100644 index 00000000000..79c9cae44d7 --- /dev/null +++ b/srcpkgs/xorg-server/template.options @@ -0,0 +1,17 @@ +# Package build options +build_options="opengl" +desc_option_opengl="Enable support for OpenGL/GLX and DRI" + +# Enable gl by default on x86. +if [ "$XBPS_TARGET_MACHINE" = "i686" -o "$XBPS_TARGET_MACHINE" = "x86_64" ]; then + build_options_default="opengl" +fi + +do_options() { + if [ "$build_option_opengl" ]; then + configure_args="${configure_args} --enable-dri --enable-dri2 --enable-glx-tls --enable-glx" + makedepends="${makedepends} MesaLib-devel" + else + configure_args="${configure_args} --disable-dri --disable-dri2 --disable-glx" + fi +} diff --git a/srcpkgs/xorg-server/xorg-server-devel.template b/srcpkgs/xorg-server/xorg-server-devel.template index 5b9036ecdd2..8d9c3b982df 100644 --- a/srcpkgs/xorg-server/xorg-server-devel.template +++ b/srcpkgs/xorg-server/xorg-server-devel.template @@ -1,17 +1,17 @@ # Template file for 'xorg-server-devel'. # -noarch=yes depends="libudev-devel dri2proto>=2.1 glproto xf86driproto randrproto videoproto compositeproto scrnsaverproto resourceproto xineramaproto libdmx-devel libXext-devel libX11-devel libpciaccess-devel libXfont-devel libXau-devel pixman-devel libXdmcp-devel libXmu-devel libXrender-devel libXfixes-devel libXi-devel libXaw-devel libXt-devel libXpm-devel - libdrm-devel>=2.4.34 MesaLib-devel" + libdrm-devel>=2.4.34" -short_desc="${sourcepkg} - development files" -long_desc="${long_desc} +short_desc="${short_desc} - development files" - This package contains files for development, headers, static libs, etc." +if [ "$build_option_opengl" ]; then + depends="${depends} Mesalib-devel" +fi do_install() { vmove usr/include usr