VirtualBox

source: vbox/trunk/src/VBox/Additions/solaris/Installer/vbox_vendor_select@ 59030

Last change on this file since 59030 was 59030, checked in by vboxsync, 9 years ago

bugref:8153: vboxvideo: ABI issues / software rendering on Linux guest: Solaris 10 guests do not have libXcomposite.so.1, so 3D pass-through will not work there with our current build options. Rather than adjust the build options, just make the installer fail gracefully on Solaris 10.

  • Property svn:eol-style set to LF
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 2.6 KB
Line 
1#!/bin/ksh
2#
3# Based on mesa_vendor_select from Solaris 11.3 with the following copyright:
4#
5# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
6#
7# Permission is hereby granted, free of charge, to any person obtaining a
8# copy of this software and associated documentation files (the "Software"),
9# to deal in the Software without restriction, including without limitation
10# the rights to use, copy, modify, merge, publish, distribute, sublicense,
11# and/or sell copies of the Software, and to permit persons to whom the
12# Software is furnished to do so, subject to the following conditions:
13#
14# The above copyright notice and this permission notice (including the next
15# paragraph) shall be included in all copies or substantial portions of the
16# Software.
17#
18# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
21# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
24# DEALINGS IN THE SOFTWARE.
25#
26#
27
28LINKDIR=/system/volatile/opengl
29if [[ ! -d ${LINKDIR} ]] ; then
30 exit 1
31fi
32MESA_SELECT=/lib/opengl/ogl_select/mesa_vendor_select
33
34PATH=/usr/bin:/usr/sbin
35
36ARCH="$(uname -p)"
37
38case "${ARCH}" in
39 i386) ;;
40 *) exit 1 ;; # Unsupported architecture
41esac
42
43# We need Mesa for the parts we do not supply.
44if [[ ! -x "${MESA_SELECT}" ]]; then
45 exit 0
46fi
47
48if [[ $# -eq 1 ]] && [[ $1 == "identify" ]] ; then
49 # Probe time. Check whether this system supports pass-through.
50 # If so, emit an identity string attaching us to the current
51 # console identifier.
52 if /usr/bin/VBoxClient --check3d ; then
53 print "$(constype) vbox"
54 fi
55 return 0
56fi
57
58# Make a file link. $1 is the source path, $2 is the target path
59function make_link {
60 if [[ $# != 2 ]]; then
61 return
62 fi
63 if [[ -h $2 ]]; then
64 rm -f $2
65 fi
66 ln -sf $1 $2
67}
68
69# Start by setting up Mesa, as we use that for everything except the user
70# libraries.
71${MESA_SELECT}
72
73# User libraries
74if [[ -f ${LINKDIR}/lib/libGL.so.1 ]] && [[ -f /usr/lib/VBoxOGL.so ]] ; then
75 make_link /usr/lib/VBoxOGL.so ${LINKDIR}/lib/libGL.so.1
76fi
77if [[ -f ${LINKDIR}/lib/i386/libGL.so.1 ]] && \
78 [[ -f /usr/lib/i386/VBoxOGL.so ]] ; then
79 make_link /usr/lib/i386/VBoxOGL.so ${LINKDIR}/lib/i386/libGL.so.1
80fi
81if [[ -f ${LINKDIR}/lib/amd64/libGL.so.1 ]] && \
82 [[ -f /usr/lib/amd64/VBoxOGL.so ]] ; then
83 make_link /usr/lib/amd64/VBoxOGL.so ${LINKDIR}/lib/amd64/libGL.so.1
84fi
85
86return 0
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette