Gentoo Archives: gentoo-commits

From: "Tomas Chvatal (scarabeus)" <scarabeus@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in x11-drivers/ati-drivers: ati-drivers-9.6.ebuild ChangeLog
Date: Thu, 25 Jun 2009 16:31:11
Message-Id: E1MJrqu-00086k-Om@stork.gentoo.org
1 scarabeus 09/06/25 16:31:08
2
3 Modified: ChangeLog
4 Added: ati-drivers-9.6.ebuild
5 Log:
6 Add new version of ati drivers (9.6). Since now it follows the upstream versioning scheme. Kernels .29 and .30 are not supported, but patched to work somehow in this release. NOTE: to lu_zero> i am not aware of the aproperiate bug numbers and rather than placing various wrong ones in here please close the correct ones and add the numbers to ChangeLog.
7 (Portage version: 2.2_rc33/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.157 x11-drivers/ati-drivers/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-drivers/ati-drivers/ChangeLog?rev=1.157&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-drivers/ati-drivers/ChangeLog?rev=1.157&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-drivers/ati-drivers/ChangeLog?r1=1.156&r2=1.157
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/x11-drivers/ati-drivers/ChangeLog,v
19 retrieving revision 1.156
20 retrieving revision 1.157
21 diff -u -r1.156 -r1.157
22 --- ChangeLog 6 Jun 2009 01:32:41 -0000 1.156
23 +++ ChangeLog 25 Jun 2009 16:31:08 -0000 1.157
24 @@ -1,6 +1,17 @@
25 # ChangeLog for x11-drivers/ati-drivers
26 # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/x11-drivers/ati-drivers/ChangeLog,v 1.156 2009/06/06 01:32:41 je_fro Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/ati-drivers/ChangeLog,v 1.157 2009/06/25 16:31:08 scarabeus Exp $
29 +
30 +*ati-drivers-9.6 (25 Jun 2009)
31 +
32 + 25 Jun 2009; Tomáš Chvátal <scarabeus@g.o>
33 + +files/kernel/2.6.29.patch, +files/kernel/2.6.30-enable_msi.patch,
34 + +files/kernel/2.6.30-irqreturn_t.patch,
35 + +files/kernel/2.6.30-rt_compat.patch,
36 + +files/kernel/2.6.30-tlb_flush.patch, +ati-drivers-9.6.ebuild:
37 + Add new version of ati drivers (9.6). Since now it follows the upstream
38 + versioning scheme. Kernels .29 and .30 are not supported, but patched to
39 + work somehow in this release.
40
41 06 Jun 2009; Jeff Gardner <je_fro@g.o> metadata.xml:
42 Removing myself and adding chainsaw to metadata.xml
43
44
45
46 1.1 x11-drivers/ati-drivers/ati-drivers-9.6.ebuild
47
48 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-drivers/ati-drivers/ati-drivers-9.6.ebuild?rev=1.1&view=markup
49 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/x11-drivers/ati-drivers/ati-drivers-9.6.ebuild?rev=1.1&content-type=text/plain
50
51 Index: ati-drivers-9.6.ebuild
52 ===================================================================
53 # Copyright 1999-2009 Gentoo Foundation
54 # Distributed under the terms of the GNU General Public License v2
55 # $Header: /var/cvsroot/gentoo-x86/x11-drivers/ati-drivers/ati-drivers-9.6.ebuild,v 1.1 2009/06/25 16:31:08 scarabeus Exp $
56
57 IUSE="acpi debug"
58
59 inherit eutils multilib linux-mod toolchain-funcs versionator
60
61 DESCRIPTION="Ati precompiled drivers for recent chipsets"
62 HOMEPAGE="http://www.ati.com"
63 ATI_URL="https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/"
64 SRC_URI="${ATI_URL}/ati-driver-installer-${PV/./-}-x86.x86_64.run"
65
66 LICENSE="AMD GPL-2 QPL-1.0 as-is"
67 KEYWORDS="~amd64 ~x86"
68
69 # The portage dep is for COLON_SEPARATED support in env-update.
70 # The eselect dep (>=1.0.9) is for COLON_SEPARATED in eselect env update.
71 RDEPEND=">=x11-base/xorg-server-1.5
72 !x11-apps/ati-drivers-extra
73 >=app-admin/eselect-1.0.9
74 app-admin/eselect-opengl
75 sys-libs/libstdc++-v3
76 amd64? ( app-emulation/emul-linux-x86-xlibs )
77 acpi? (
78 x11-apps/xauth
79 sys-power/acpid
80 )
81 x11-libs/libXrandr
82 >=sys-apps/portage-2.1.1-r1"
83
84 DEPEND="${RDEPEND}
85 x11-proto/xf86miscproto
86 x11-proto/xf86vidmodeproto
87 x11-proto/inputproto
88 !<x11-drivers/ati-drivers-8.552-r1"
89
90 EMULTILIB_PKG="true"
91
92 S="${WORKDIR}"
93
94 pkg_setup() {
95
96 # Define module dir.
97 MODULE_DIR="${S}/common/lib/modules/fglrx/build_mod"
98
99 #check kernel and sets up KV_OBJ
100 MODULE_NAMES="fglrx(video:${S}/common/lib/modules/fglrx/build_mod/2.6.x)"
101 BUILD_TARGETS="kmod_build"
102 linux-mod_pkg_setup
103 BUILD_PARAMS="GCC_VER_MAJ=$(gcc-major-version) KVER=${KV_FULL} KDIR=${KV_DIR}"
104
105 if ! kernel_is 2 6; then
106 eerror "Need a 2.6 kernel to compile against!"
107 die "Need a 2.6 kernel to compile against!"
108 fi
109
110 if kernel_is ge 2 6 25 && linux_chkconfig_present PREEMPT_RCU; then
111 die "${P} is not compatible with RCU Preemption (bug #223281), please disable it"
112 fi
113
114 if kernel_is ge 2 6 26 && ! linux_chkconfig_present UNUSED_SYMBOLS; then
115 ewarn "You have to Enable unused/obsolete exported symbols in Kernel hacking section of kernel config for fglrx to load"
116 fi
117
118 if kernel_is ge 2 6 24 && ! linux_chkconfig_present PCI_LEGACY; then
119 eerror "${P} requires support for pci_find_slot."
120 die "${P} requires support for pci_find_slot."
121 fi
122
123 if kernel_is ge 2 6 29; then
124 ewarn "Kernels newer then 2.6.28 are heavily patched and might result in runtime failitures."
125 ewarn "Consider them as unsupported by us."
126 ewarn "All bug reports are needed to be tested with 2.6.28 kernel"
127 fi
128
129 if ! linux_chkconfig_present MTRR; then
130 ewarn "You don't have MTRR support enabled, the direct rendering will not work."
131 fi
132
133 if linux_chkconfig_builtin DRM; then
134 ewarn "You have DRM support enabled builtin, the direct rendering will not work."
135 fi
136
137 if ! linux_chkconfig_present AGP && \
138 ! linux_chkconfig_present PCIEPORTBUS; then
139 ewarn "You need AGP and/or PCI Express support for direct rendering to work."
140 fi
141
142 if linux_chkconfig_present PARAVIRT; then
143 eerror "The current ati-drivers don't compile when having"
144 eerror "paravirtualization active due to GPL symbol export"
145 eerror "restrictions."
146 eerror "Please disable it:"
147 eerror " CONFIG_PARAVIRT=n"
148 eerror "in /usr/src/linux/.config or"
149 eerror " Processor type and features -->"
150 eerror " [ ] Paravirtualization support (EXPERIMENTAL)"
151 eerror "in 'menuconfig'"
152 die "CONFIG_PARAVIRT enabled"
153 fi
154
155 if ! linux_chkconfig_present MAGIC_SYSRQ; then
156 eerror "You need MAGIC_SYSRQ enabled in order to build ati-drivers"
157 die "CONFIG_MAGIC_SYSRQ disabled"
158 fi
159
160 # Only support xorg-server >=1.5
161 BASE_DIR="${S}/x740"
162
163 if ! linux_chkconfig_present PCI_MSI; then
164 eerror "You need PCI_MSI enabled in order to build ati-drivers"
165 die "CONFIG_PCI_MSI disabled"
166 fi
167
168 # This is used like $(get_libdir) for paths in ati's package.
169 if use amd64 ; then
170 MY_BASE_DIR="${BASE_DIR}_64a"
171 PKG_LIBDIR=lib64
172 ARCH_DIR="${S}/arch/x86_64"
173 else
174 MY_BASE_DIR="${BASE_DIR}"
175 PKG_LIBDIR=lib
176 ARCH_DIR="${S}/arch/x86"
177 fi
178 }
179
180 src_unpack() {
181 #Switching to a standard way to extract the files since otherwise no signature file
182 #would be created
183 local src="${DISTDIR}/${A}"
184 sh "${src}" --extract "${S}" 2&>1 /dev/null
185 cd "${S}"
186 epatch "${FILESDIR}"/ati-drivers-xen-8.552.patch || die "epatch failed"
187
188 if kernel_is ge 2 6 29; then
189 epatch "${FILESDIR}"/kernel/2.6.29*.patch
190 fi
191 if kernel_is ge 2 6 30; then
192 epatch "${FILESDIR}"/kernel/2.6.30*.patch
193 fi
194
195 # These are the userspace utilities that we also have source for.
196 # We rebuild these later.
197 rm \
198 "${ARCH_DIR}"/usr/X11R6/bin/{fgl_glxgears,fglrx_xgamma} \
199 "${ARCH_DIR}"/usr/X11R6/${PKG_LIBDIR}/libfglrx_gamma* \
200 || die "bin rm failed"
201
202 if use debug; then
203 # Enable debug mode in the Source Code.
204 sed -i '/^#define DRM_DEBUG_CODE/s/0/1/' \
205 "${MODULE_DIR}/firegl_public.c" \
206 || die "Failed to enable debug output."
207 fi
208
209 if use acpi; then
210 sed -i \
211 -e "s:/var/lib/xdm/authdir/authfiles/:/var/run/xauth/:" \
212 -e "s:/var/lib/gdm/:/var/gdm/:" \
213 "${S}/common/etc/ati/authatieventsd.sh" \
214 || die "sed failed."
215
216 # Since "who" is in coreutils, we're using that one instead of "finger".
217 sed -i -e 's:finger:who:' \
218 "${S}/common/usr/share/doc/fglrx/examples/etc/acpi/ati-powermode.sh" \
219 || die "Replacing 'finger' with 'who' failed."
220 # Adjust paths in the script from /usr/X11R6/bin/ to /opt/bin/ and
221 # add function to detect default state.
222 epatch "${FILESDIR}"/ati-powermode-opt-path-2.patch || die "Failed to epatch powermode-opt-path-2.patch"
223 fi
224
225 pushd ${MODULE_DIR} >/dev/null
226 ln -s "${ARCH_DIR}"/lib/modules/fglrx/build_mod/libfglrx_ip.a.GCC$(gcc-major-version) \
227 || die "symlinking precompiled core failed"
228
229 convert_to_m 2.6.x/Makefile || die "convert_to_m failed"
230
231 # When built with ati's make.sh it defines a bunch of macros if
232 # certain .config values are set, falling back to less reliable
233 # detection methods if linux/autoconf.h is not available. We
234 # simply use the linux/autoconf.h settings directly, bypassing the
235 # detection script.
236 sed -i -e 's/__SMP__/CONFIG_SMP/' *.c *h || die "SMP sed failed"
237 sed -i -e 's/ifdef MODVERSIONS/ifdef CONFIG_MODVERSIONS/' *.c *.h \
238 || die "MODVERSIONS sed failed"
239 popd >/dev/null
240
241 mkdir extra || die "mkdir failed"
242 cd extra
243 unpack ./../common/usr/src/ati/fglrx_sample_source.tgz
244 sed -i -e 's:include/extensions/extutil.h:X11/extensions/extutil.h:' \
245 lib/fglrx_gamma/fglrx_gamma.c || die "include fixup failed"
246 # Add a category.
247 mv programs/fglrx_gamma/fglrx_xgamma.{man,1} || die "man mv failed"
248 cd ..
249 }
250
251 src_compile() {
252 linux-mod_src_compile
253
254 einfo "Building fgl_glxgears"
255 cd "${S}"/extra/fgl_glxgears
256 # These extra libs/utils either have an Imakefile that does not
257 # work very well without tweaking or a Makefile ignoring CFLAGS
258 # and the like. We bypass those.
259
260 # The -DUSE_GLU is needed to compile using nvidia headers
261 # according to a comment in ati-drivers-extra-8.33.6.ebuild.
262 "$(tc-getCC)" -o fgl_glxgears ${CFLAGS} ${LDFLAGS} -DUSE_GLU \
263 -I"${S}"/common/usr/include fgl_glxgears.c \
264 -lGL -lGLU -lX11 -lm || die "fgl_glxgears build failed"
265
266 einfo "Building fglrx_gamma lib"
267 cd "${S}"/extra/lib/fglrx_gamma
268 "$(tc-getCC)" -shared -fpic -o libfglrx_gamma.so.1.0 ${CFLAGS} ${LDFLAGS} \
269 -DXF86MISC -Wl,-soname,libfglrx_gamma.so.1.0 fglrx_gamma.c \
270 -lXext || die "fglrx_gamma lib build failed"
271 ln -s libfglrx_gamma.so.1.0 libfglrx_gamma.so || die "ln failed"
272 ln -s libfglrx_gamma.so.1.0 libfglrx_gamma.so.1 || die "ln failed"
273
274 einfo "Building fglrx_gamma util"
275 cd "${S}"/extra/programs/fglrx_gamma
276 "$(tc-getCC)" -o fglrx_xgamma ${CFLAGS} ${LDFLAGS} \
277 -I../../../common/usr/X11R6/include -L../../lib/fglrx_gamma \
278 fglrx_xgamma.c -lm -lfglrx_gamma -lX11 \
279 || die "fglrx_gamma util build failed"
280
281 }
282
283 src_install() {
284 linux-mod_src_install
285
286 # We can do two things here, and neither of them is very nice.
287
288 # For direct rendering libGL has to be able to load one or more
289 # dri modules (files ending in _dri.so, like fglrx_dri.so).
290 # Gentoo's mesa looks for these files in the location specified by
291 # LIBGL_DRIVERS_PATH or LIBGL_DRIVERS_DIR, then in the hardcoded
292 # location /usr/$(get_libdir)/dri. Ati's libGL does the same
293 # thing, but the hardcoded location is /usr/X11R6/lib/modules/dri
294 # on x86 and amd64 32bit, /usr/X11R6/lib64/modules/dri on amd64
295 # 64bit. So we can either put the .so files in that (unusual,
296 # compared to "normal" mesa libGL) location or set
297 # LIBGL_DRIVERS_PATH. We currently do the latter. See also bug
298 # 101539.
299
300 # The problem with this approach is that LIBGL_DRIVERS_PATH
301 # *overrides* the default hardcoded location, it does not extend
302 # it. So if ati-drivers is merged but a non-ati libGL is selected
303 # and its hardcoded path does not match our LIBGL_DRIVERS_PATH
304 # (because it changed in a newer mesa or because it was compiled
305 # for a different set of multilib abis than we are) stuff breaks.
306
307 # We create one file per ABI to work with "native" multilib, see
308 # below.
309
310 echo "COLON_SEPARATED=LIBGL_DRIVERS_PATH" > "${T}/03ati-colon-sep"
311 doenvd "${T}/03ati-colon-sep"
312
313 # All libraries that we have a 32 bit and 64 bit version of on
314 # amd64 are installed in src_install-libs. Everything else
315 # (including libraries only available in native 64bit on amd64)
316 # goes in here.
317
318 # There used to be some code here that tried to detect running
319 # under a "native multilib" portage ((precursor of)
320 # http://dev.gentoo.org/~kanaka/auto-multilib/). I removed that, it
321 # should just work (only doing some duplicate work). --marienz
322 if has_multilib_profile; then
323 local OABI=${ABI}
324 for ABI in $(get_install_abis); do
325 src_install-libs
326 done
327 ABI=${OABI}
328 unset OABI
329 else
330 src_install-libs
331 fi
332
333 # This is sorted by the order the files occur in the source tree.
334
335 # X modules.
336 exeinto /usr/$(get_libdir)/xorg/modules/drivers
337 doexe "${MY_BASE_DIR}"/usr/X11R6/${PKG_LIBDIR}/modules/drivers/fglrx_drv.so
338 exeinto /usr/$(get_libdir)/xorg/modules/linux
339 doexe "${MY_BASE_DIR}"/usr/X11R6/${PKG_LIBDIR}/modules/linux/libfglrxdrm.so
340 exeinto /usr/$(get_libdir)/xorg/modules
341 doexe "${MY_BASE_DIR}"/usr/X11R6/${PKG_LIBDIR}/modules/{esut.a,glesx.so,amdxmm.so}
342
343 # Arch-specific files.
344 # (s)bin.
345 into /opt
346 if use acpi; then
347 dosbin "${ARCH_DIR}"/usr/sbin/atieventsd
348 fi
349 # We cleaned out the compilable stuff in src_unpack
350 dobin "${ARCH_DIR}"/usr/X11R6/bin/*
351
352 # lib.
353 exeinto /usr/$(get_libdir)
354 # Everything except for the libGL.so installed in src_install-libs.
355 doexe $(find "${ARCH_DIR}"/usr/X11R6/${PKG_LIBDIR} \
356 -maxdepth 1 -type f -name '*.so*' -not -name 'libGL.so*')
357 insinto /usr/$(get_libdir)
358 doins $(find "${ARCH_DIR}"/usr/X11R6/${PKG_LIBDIR} \
359 -maxdepth 1 -type f -not -name '*.so*')
360
361 # Common files.
362 # etc.
363 insinto /etc/ati
364 # Everything except for the authatieventsd.sh script.
365 doins common/etc/ati/{logo*,control,atiogl.xml,signature,amdpcsdb.default}
366 if use acpi; then
367 insopts -m0755
368 doins common/etc/ati/authatieventsd.sh
369 fi
370
371 # include.
372 insinto /usr
373 doins -r common/usr/include
374 insinto /usr/include/X11/extensions
375 doins common/usr/X11R6/include/X11/extensions/fglrx_gamma.h
376
377 # Just the atigetsysteminfo.sh script.
378 into /usr
379 dosbin common/usr/sbin/*
380
381 # data files for the control panel.
382 insinto /usr/share
383 doins -r common/usr/share/ati
384 insinto /usr/share/pixmaps
385 doins common/usr/share/icons/ccc_{large,small}.xpm
386 make_desktop_entry amdcccle 'ATI Catalyst Control Center' \
387 ccc_large System
388
389 # doc.
390 dohtml -r common/usr/share/doc/fglrx
391
392 if use acpi; then
393 doman common/usr/share/man/man8/atieventsd.8
394
395 pushd common/usr/share/doc/fglrx/examples/etc/acpi >/dev/null
396
397 exeinto /etc/acpi
398 doexe ati-powermode.sh
399 insinto /etc/acpi/events
400 doins events/*
401
402 popd >/dev/null
403 fi
404
405 # Done with the "source" tree. Install tools we rebuilt:
406 dobin extra/fgl_glxgears/fgl_glxgears
407 newdoc extra/fgl_glxgears/README README.fgl_glxgears
408
409 dolib extra/lib/fglrx_gamma/*so*
410 newdoc extra/lib/fglrx_gamma/README README.libfglrx_gamma
411
412 dobin extra/programs/fglrx_gamma/fglrx_xgamma
413 doman extra/programs/fglrx_gamma/fglrx_xgamma.1
414 newdoc extra/programs/fglrx_gamma/README README.fglrx_gamma
415
416 # Gentoo-specific stuff:
417 if use acpi; then
418 newinitd "${FILESDIR}"/atieventsd.init atieventsd \
419 || die "Failed to install atieventsd.init.d"
420 echo 'ATIEVENTSDOPTS=""' > "${T}"/atieventsd.conf
421 newconfd "${T}"/atieventsd.conf atieventsd
422 fi
423 }
424
425 src_install-libs() {
426 if [[ "${ABI}" == "amd64" ]]; then
427 local EX_BASE_DIR="${BASE_DIR}_64a"
428 local pkglibdir=lib64
429 local MY_ARCH_DIR="${S}/arch/x86_64"
430 else
431 local EX_BASE_DIR="${BASE_DIR}"
432 local pkglibdir=lib
433 local MY_ARCH_DIR="${S}/arch/x86"
434 fi
435 einfo "ati tree '${pkglibdir}' -> '$(get_libdir)' on system"
436
437 local ATI_ROOT=/usr/$(get_libdir)/opengl/ati
438 # To make sure we do not miss a spot when these change.
439 local libmajor=1 libminor=2
440 local libver=${libmajor}.${libminor}
441
442 # The GLX libraries
443 # (yes, this really is "lib" even on amd64/multilib --marienz)
444 exeinto ${ATI_ROOT}/lib
445 doexe "${MY_ARCH_DIR}"/usr/X11R6/${pkglibdir}/libGL.so.${libver}
446 dosym libGL.so.${libver} ${ATI_ROOT}/lib/libGL.so.${libmajor}
447 dosym libGL.so.${libver} ${ATI_ROOT}/lib/libGL.so
448
449 exeinto ${ATI_ROOT}/extensions
450 doexe "${EX_BASE_DIR}"/usr/X11R6/${pkglibdir}/modules/extensions/*
451
452 # DRI modules, installed into the path used by recent versions of mesa.
453 exeinto /usr/$(get_libdir)/dri
454 doexe "${MY_ARCH_DIR}"/usr/X11R6/${pkglibdir}/modules/dri/fglrx_dri.so
455
456 # AMD Cal libraries
457 exeinto /usr/$(get_libdir)
458 doexe "${MY_ARCH_DIR}"/usr/${pkglibdir}/*.so
459
460 # Make up a libGL.la. Ati does not provide one, but mesa does. If
461 # a (libtool-based) libfoo is built with libGL.la present a
462 # reference to it is put into libfoo.la, and compiling
463 # (libtool-based) things that link too libfoo.la will complain if
464 # libGL.la disappears. So if we do not make up a libGL.la
465 # switching between mesa and ati becomes painful.
466 local revision=$(printf '%d%02d%02d' $(get_version_components))
467 sed -e "s:\${libmajor}:${libmajor}:g" \
468 -e "s:\${libminor}:${libminor}:g" \
469 -e "s:\${libdir}:$(get_libdir):g" \
470 -e "s:\${revision}:${revision}:g" \
471 "${FILESDIR}"/libGL.la.in > "${D}"/${ATI_ROOT}/lib/libGL.la \
472 || die "sed failed to make libGL.la"
473
474 local envname="${T}"/04ati-dri-path
475 if [[ -n ${ABI} ]]; then
476 envname="${envname}-${ABI}"
477 fi
478 echo "LIBGL_DRIVERS_PATH=/usr/$(get_libdir)/dri" > "${envname}"
479 doenvd "${envname}"
480 }
481
482 pkg_postinst() {
483 /usr/bin/eselect opengl set --use-old ati
484
485 elog "To switch to ATI OpenGL, run \"eselect opengl set ati\""
486 elog "To change your xorg.conf you can use the bundled \"aticonfig\""
487 elog
488 elog "If you experience unexplained segmentation faults and kernel crashes"
489 elog "with this driver and multi-threaded applications such as wine,"
490 elog "set UseFastTLS in xorg.conf to either 0 or 1, but not 2."
491 elog
492 elog "You will have to source /etc/profile (or logout and back in) for dri"
493 elog "to work, unless you previously had ati-drivers installed."
494
495 # Workaroud screen corruption
496 ewarn "If you experience screen corruption with this driver, try putting"
497 ewarn ' Option "XAANoOffscreenPixmaps" "true"'
498 ewarn "in the Device Section of /etc/X11/xorg.conf."
499
500 linux-mod_pkg_postinst
501 }
502
503 pkg_prerm() {
504 /usr/bin/eselect opengl set xorg-x11
505 }