diff options
author | Donnie Berkholz <spyderous@gentoo.org> | 2006-04-21 09:12:50 +0000 |
---|---|---|
committer | Donnie Berkholz <spyderous@gentoo.org> | 2006-04-21 09:12:50 +0000 |
commit | 57177d18a0914b9a31ecaa0abe7d2aee9ef6152c (patch) | |
tree | 25b88c7490df5102c114f90f8f5508a8889464c1 /x11-base | |
parent | Build the Xorg X server by default. (diff) | |
download | gentoo-2-57177d18a0914b9a31ecaa0abe7d2aee9ef6152c.tar.gz gentoo-2-57177d18a0914b9a31ecaa0abe7d2aee9ef6152c.tar.bz2 gentoo-2-57177d18a0914b9a31ecaa0abe7d2aee9ef6152c.zip |
Add option to build kdrive, tiny X servers; also add VIDEO_CARDS settings to select kdrive servers to build. Add option to build AIGLX with TLS support (USE=nptl) -- mesa and xorg-server must be in sync on this. Update some deps: glproto, scrnsaverproto. Don't need to inherit flag-o-matic, x-modular eclass does this for us. Make Xdmx build its own USE flag, instead of part of minimal. Force xorg-x11 OpenGL to build, because it needs a newer glxtokens.h than some binary drivers provide. Add a server_based_install() function for any actions dependent on which servers get built. Add USE=xorg to build the Xorg X server, which will be on by default.
(Portage version: 2.1_pre7-r5)
Diffstat (limited to 'x11-base')
-rw-r--r-- | x11-base/xorg-server/ChangeLog | 18 | ||||
-rw-r--r-- | x11-base/xorg-server/files/1.0.99.901-fix-kdrive-build.patch | 22 | ||||
-rw-r--r-- | x11-base/xorg-server/files/1.0.99.901-wrap-sdk-headers.patch | 33 | ||||
-rw-r--r-- | x11-base/xorg-server/files/digest-xorg-server-1.0.99.901-r1 (renamed from x11-base/xorg-server/files/digest-xorg-server-1.0.99.901) | 0 | ||||
-rw-r--r-- | x11-base/xorg-server/xorg-server-1.0.99.901-r1.ebuild (renamed from x11-base/xorg-server/xorg-server-1.0.99.901.ebuild) | 121 |
5 files changed, 179 insertions, 15 deletions
diff --git a/x11-base/xorg-server/ChangeLog b/x11-base/xorg-server/ChangeLog index 5dc1783fba12..6098d850154b 100644 --- a/x11-base/xorg-server/ChangeLog +++ b/x11-base/xorg-server/ChangeLog @@ -1,6 +1,22 @@ # ChangeLog for x11-base/xorg-server # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/ChangeLog,v 1.104 2006/04/17 23:27:05 joshuabaergen Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/ChangeLog,v 1.105 2006/04/21 09:12:50 spyderous Exp $ + +*xorg-server-1.0.99.901-r1 (21 Apr 2006) + + 21 Apr 2006; Donnie Berkholz <spyderous@gentoo.org>; + +files/1.0.99.901-fix-kdrive-build.patch, + +files/1.0.99.901-wrap-sdk-headers.patch, -xorg-server-1.0.99.901.ebuild, + +xorg-server-1.0.99.901-r1.ebuild: + Add option to build kdrive, tiny X servers; also add VIDEO_CARDS settings to + select kdrive servers to build. Add option to build AIGLX with TLS support + (USE=nptl) -- mesa and xorg-server must be in sync on this. Update some + deps: glproto, scrnsaverproto. Don't need to inherit flag-o-matic, x-modular + eclass does this for us. Make Xdmx build its own USE flag, instead of part + of minimal. Force xorg-x11 OpenGL to build, because it needs a newer + glxtokens.h than some binary drivers provide. Add a server_based_install() + function for any actions dependent on which servers get built. Add USE=xorg + to build the Xorg X server, which will be on by default. 17 Apr 2006; Joshua Baergen <joshuabaergen@gentoo.org> xorg-server-1.0.2-r3.ebuild: diff --git a/x11-base/xorg-server/files/1.0.99.901-fix-kdrive-build.patch b/x11-base/xorg-server/files/1.0.99.901-fix-kdrive-build.patch new file mode 100644 index 000000000000..7c2b7d337592 --- /dev/null +++ b/x11-base/xorg-server/files/1.0.99.901-fix-kdrive-build.patch @@ -0,0 +1,22 @@ +Index: xorg/hw/kdrive/ephyr/Makefile.am +=================================================================== +RCS file: /cvs/xorg/xserver/xorg/hw/kdrive/ephyr/Makefile.am,v +retrieving revision 1.7 +retrieving revision 1.8 +diff -u -b -B -r1.7 -r1.8 +--- xorg/hw/kdrive/ephyr/Makefile.am 30 Mar 2006 21:21:59 -0000 1.7 ++++ xorg/hw/kdrive/ephyr/Makefile.am 17 Apr 2006 07:10:31 -0000 1.8 +@@ -31,11 +31,11 @@ + Xephyr_LDADD = \ + libxephyr.a \ + libxephyr-hostx.a \ ++ ../../../exa/libexa.la \ + @KDRIVE_LIBS@ \ + @KDRIVE_LIBS@ \ + $(TSLIB_LIBS) \ +- @XEPHYR_LIBS@ \ +- ../../../exa/libexa.la ++ @XEPHYR_LIBS@ + + Xephyr_DEPENDENCIES = \ + libxephyr.a \ diff --git a/x11-base/xorg-server/files/1.0.99.901-wrap-sdk-headers.patch b/x11-base/xorg-server/files/1.0.99.901-wrap-sdk-headers.patch new file mode 100644 index 000000000000..9e30ee7cbe62 --- /dev/null +++ b/x11-base/xorg-server/files/1.0.99.901-wrap-sdk-headers.patch @@ -0,0 +1,33 @@ +Index: xorg/exa/Makefile.am +=================================================================== +RCS file: /cvs/xorg/xserver/xorg/exa/Makefile.am,v +retrieving revision 1.9 +diff -u -b -B -r1.9 Makefile.am +--- xorg/exa/Makefile.am 16 Feb 2006 00:14:10 -0000 1.9 ++++ xorg/exa/Makefile.am 17 Apr 2006 07:23:24 -0000 +@@ -1,6 +1,8 @@ + noinst_LTLIBRARIES = libexa.la + ++if XORG + sdk_HEADERS = exa.h ++endif + + INCLUDES = \ + $(XORG_INCS) \ +Index: xorg/randr/Makefile.am +=================================================================== +RCS file: /cvs/xorg/xserver/xorg/randr/Makefile.am,v +retrieving revision 1.5 +diff -u -b -B -r1.5 Makefile.am +--- xorg/randr/Makefile.am 19 Jan 2006 14:51:09 -0000 1.5 ++++ xorg/randr/Makefile.am 17 Apr 2006 07:23:26 -0000 +@@ -2,7 +2,9 @@ + + AM_CFLAGS = $(DIX_CFLAGS) @SERVER_DEFINES@ @LOADER_DEFINES@ + ++if XORG + sdk_HEADERS = randrstr.h ++endif + + librandr_la_SOURCES = \ + mirandr.c \ diff --git a/x11-base/xorg-server/files/digest-xorg-server-1.0.99.901 b/x11-base/xorg-server/files/digest-xorg-server-1.0.99.901-r1 index bf488330ebe8..bf488330ebe8 100644 --- a/x11-base/xorg-server/files/digest-xorg-server-1.0.99.901 +++ b/x11-base/xorg-server/files/digest-xorg-server-1.0.99.901-r1 diff --git a/x11-base/xorg-server/xorg-server-1.0.99.901.ebuild b/x11-base/xorg-server/xorg-server-1.0.99.901-r1.ebuild index a266fc2fe651..b2da1fcaf0de 100644 --- a/x11-base/xorg-server/xorg-server-1.0.99.901.ebuild +++ b/x11-base/xorg-server/xorg-server-1.0.99.901-r1.ebuild @@ -1,12 +1,12 @@ # Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/xorg-server-1.0.99.901.ebuild,v 1.2 2006/04/17 05:28:13 spyderous Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/xorg-server-1.0.99.901-r1.ebuild,v 1.1 2006/04/21 09:12:50 spyderous Exp $ # Must be before x-modular eclass is inherited # Hack to make sure autoreconf gets run -#SNAPSHOT="yes" +SNAPSHOT="yes" -inherit flag-o-matic x-modular multilib +inherit x-modular multilib OPENGL_DIR="xorg-x11" @@ -17,14 +17,30 @@ MESA_SRC_P="${MESA_PN}Lib-${MESA_PV}" PATCHES="${FILESDIR}/${PN}-1.0.2-Sbus.patch ${FILESDIR}/1.0.2-try-to-fix-xorgcfg.patch - ${FILESDIR}/1.0.2-fix-xorgconfig-rgbpath-and-mouse.patch" + ${FILESDIR}/1.0.2-fix-xorgconfig-rgbpath-and-mouse.patch + ${FILESDIR}/${PV}-fix-kdrive-build.patch + ${FILESDIR}/${PV}-wrap-sdk-headers.patch" SRC_URI="${SRC_URI} mirror://sourceforge/mesa3d/${MESA_SRC_P}.tar.bz2 http://xorg.freedesktop.org/snapshots/individual/xserver/${P}.tar.bz2" DESCRIPTION="X.Org X servers" KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" -IUSE="dri ipv6 minimal xprint" +IUSE_VIDEO_CARDS=" + video_cards_chips + video_cards_epson + video_cards_glint + video_cards_i810 + video_cards_mach64 + video_cards_mga + video_cards_neomagic + video_cards_nv + video_cards_r128 + video_cards_radeon + video_cards_siliconmotion + video_cards_via" +IUSE="${IUSE_VIDEO_CARDS} + dmx dri ipv6 kdrive minimal nptl sdl xorg xprint" RDEPEND="x11-libs/libXfont x11-libs/xtrans x11-libs/libXau @@ -55,7 +71,8 @@ RDEPEND="x11-libs/libXfont x11-libs/libXtst x11-libs/libXres ) x11-libs/libxkbui - x11-libs/liblbxutil" + x11-libs/liblbxutil + kdrive? ( sdl? ( media-libs/libsdl ) )" # Xres is dmx-dependent, xkbui is xorgcfg-dependent # Xaw is dmx- and xorgcfg-dependent # Xpm is dmx- and xorgcfg-dependent, pulls in Xt @@ -77,7 +94,7 @@ DEPEND="${RDEPEND} x11-proto/recordproto x11-proto/resourceproto x11-proto/videoproto - x11-proto/scrnsaverproto + >=x11-proto/scrnsaverproto-1.1.0 x11-proto/evieext x11-proto/trapproto >=x11-proto/xineramaproto-1.1-r1 @@ -86,7 +103,7 @@ DEPEND="${RDEPEND} x11-proto/inputproto x11-proto/bigreqsproto x11-proto/xcmiscproto - >=x11-proto/glproto-1.4.1_pre20051013 + >=x11-proto/glproto-1.4.6 !minimal? ( x11-proto/dmxproto ) dri? ( x11-proto/xf86driproto >=x11-libs/libdrm-2 ) @@ -102,22 +119,86 @@ pkg_setup() { # --enable-xorg needed because darwin defaults off # --enable-install-setuid needed because sparcs default off + + # SDL only available in kdrive build + if use kdrive && use sdl; then + conf_opts="${conf_opts} --enable-xsdl" + else + conf_opts="${conf_opts} --disable-xsdl" + fi + CONFIGURE_OPTIONS=" $(use_enable ipv6) - $(use_enable !minimal dmx) + $(use_enable dmx) + $(use_enable kdrive) $(use_enable !minimal xvfb) $(use_enable !minimal xnest) $(use_enable dri) + $(use_enable xorg) + $(use_with xorg mesa-source=${WORKDIR}/${MESA_P}) $(use_enable xprint) - --with-mesa-source=${WORKDIR}/${MESA_P} - --enable-xorg + $(use_enable nptl glx-tls) --sysconfdir=/etc/X11 --localstatedir=/var --enable-install-setuid - --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1" + --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 + ${conf_opts}" + + if built_with_use media-libs/mesa nptl; then + local diemsg="You must build xorg-server and mesa with the same nptl USE setting." + use nptl || die "${diemsg}" + else + use nptl && die "${diemsg}" + fi # (#121394) Causes window corruption filter-flags -fweb + + # Nothing else provides new enough glxtokens.h + ewarn "Forcing on xorg-x11 for new enough glxtokens.h..." + OLD_IMPLEM="$(eselect opengl show)" + eselect opengl set --impl-headers ${OPENGL_DIR} +} + +src_unpack() { + x-modular_specs_check + x-modular_dri_check + x-modular_unpack_source + x-modular_patch_source + + # Set up kdrive servers to build + if use kdrive; then + einfo "Removing unused kdrive drivers ..." + for card in ${IUSE_VIDEO_CARDS}; do + real_card=${card#video_cards_} + + # Differences between VIDEO_CARDS name and kdrive server name + real_card=${real_card/glint/pm2} + real_card=${real_card/radeon/ati} + real_card=${real_card/nv/nvidia} + real_card=${real_card/siliconmotion/smi} + if ! use ${card}; then + ebegin " ${real_card}" + sed -i \ + -e "s:${real_card}::g" \ + ${S}/hw/kdrive/Makefile.am \ + || die "sed of ${real_card} failed" + eend + fi + + done + + # smi and via are the only things on line 2. If line 2 ends up blank, + # we need to get rid of the backslash at the end of line 1. + if ! use video_cards_siliconmotion && ! use video_cards_via; then + sed -i \ + -e "s:^\(VESA_SUBDIRS.*\)\\\:\1:g" \ + ${S}/hw/kdrive/Makefile.am + fi + + # Only need to reconf if we're modifying kdrive's Makefile.am + x-modular_reconf_source + fi } src_install() { @@ -125,7 +206,7 @@ src_install() { dynamic_libgl_install - use xprint && xprint_src_install + server_based_install } pkg_postinst() { @@ -154,12 +235,24 @@ dynamic_libgl_install() { eend 0 } +server_based_install() { + use xprint && xprint_src_install + + if ! use xorg; then + rm ${D}/usr/share/man/man1/Xserver.1x \ + ${D}/usr/$(get_libdir)/xserver/SecurityPolicy \ + ${D}/usr/$(get_libdir)/pkgconfig/xorg-server.pc \ + ${D}/usr/share/man/man1/Xserver.1x + fi +} + switch_opengl_implem() { # Switch to the xorg implementation. # Use new opengl-update that will not reset user selected # OpenGL interface ... echo - eselect opengl set --use-old ${OPENGL_DIR} +# eselect opengl set --use-old ${OPENGL_DIR} + eselect opengl set ${OLD_IMPLEM} } xprint_src_install() { |