VirtualBox

Changeset 42469 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Jul 31, 2012 6:58:12 AM (12 years ago)
Author:
vboxsync
Message:

Additions/solaris/installer: run vboxmslnk instead of installing the X.Org vboxmouse driver.

Location:
trunk/src/VBox/Additions
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/solaris/Installer/postinstall.sh

    r42457 r42469  
    6969    uncompress_file "$1" "vboxvideo_drv_70.so"
    7070    uncompress_file "$1" "vboxvideo_drv_71.so"
    71 
    72     # VBox Xorg Mouse drivers
    73     uncompress_file "$1" "vboxmouse_drv_13.so"
    74     uncompress_file "$1" "vboxmouse_drv_14.so"
    75     uncompress_file "$1" "vboxmouse_drv_15.so"
    76     uncompress_file "$1" "vboxmouse_drv_16.so"
    77     uncompress_file "$1" "vboxmouse_drv_17.so"
    78     uncompress_file "$1" "vboxmouse_drv_18.so"
    79     uncompress_file "$1" "vboxmouse_drv_19.so"
    80     uncompress_file "$1" "vboxmouse_drv_110.so"
    81     uncompress_file "$1" "vboxmouse_drv_111.so"
    82     uncompress_file "$1" "vboxmouse_drv_112.so"
    83     uncompress_file "$1" "vboxmouse_drv_70.so"
    84     uncompress_file "$1" "vboxmouse_drv_71.so"
    8571}
    8672
     
    158144    fi
    159145
    160     vboxmouse_src=""
    161146    vboxvideo_src=""
    162147
    163148    case "$xorgversion" in
    164149        1.3.* )
    165             vboxmouse_src="vboxmouse_drv_13.so"
    166150            vboxvideo_src="vboxvideo_drv_13.so"
    167151            ;;
    168152        1.4.* )
    169             vboxmouse_src="vboxmouse_drv_14.so"
    170153            vboxvideo_src="vboxvideo_drv_14.so"
    171154            ;;
    172155        1.5.99 | 1.6.* )
    173             vboxmouse_src="vboxmouse_drv_16.so"
    174156            vboxvideo_src="vboxvideo_drv_16.so"
    175157            ;;
    176158        1.5.* )
    177             vboxmouse_src="vboxmouse_drv_15.so"
    178159            vboxvideo_src="vboxvideo_drv_15.so"
    179160            ;;
    180161        1.7.*)
    181             vboxmouse_src="vboxmouse_drv_17.so"
    182162            vboxvideo_src="vboxvideo_drv_17.so"
    183163            ;;
    184164        1.8.*)
    185             vboxmouse_src="vboxmouse_drv_18.so"
    186165            vboxvideo_src="vboxvideo_drv_18.so"
    187166            ;;
    188167        1.9.*)
    189             vboxmouse_src="vboxmouse_drv_19.so"
    190168            vboxvideo_src="vboxvideo_drv_19.so"
    191169            ;;
    192170        1.10.*)
    193             vboxmouse_src="vboxmouse_drv_110.so"
    194171            vboxvideo_src="vboxvideo_drv_110.so"
    195172            ;;
    196173        1.11.*)
    197             vboxmouse_src="vboxmouse_drv_111.so"
    198174            vboxvideo_src="vboxvideo_drv_111.so"
    199175            ;;
    200176        1.12.*)
    201             vboxmouse_src="vboxmouse_drv_112.so"
    202177            vboxvideo_src="vboxvideo_drv_112.so"
    203178            ;;
    204179        7.1.* | *7.2.* )
    205             vboxmouse_src="vboxmouse_drv_71.so"
    206180            vboxvideo_src="vboxvideo_drv_71.so"
    207181            ;;
    208182        6.9.* | 7.0.* )
    209             vboxmouse_src="vboxmouse_drv_70.so"
    210183            vboxvideo_src="vboxvideo_drv_70.so"
    211184            ;;
     
    213186
    214187    retval=0
    215     if test -z "$vboxmouse_src"; then
     188    if test -z "$vboxvideo_src"; then
    216189        echo "*** Unknown version of the X Window System installed."
    217190        echo "*** Failed to install the VirtualBox X Window System drivers."
     
    220193        retval=2
    221194    else
    222         echo "Installing mouse and video drivers for X.Org $xorgversion..."
     195        echo "Installing video driver for X.Org $xorgversion..."
    223196
    224197        # Determine destination paths (snv_130 and above use "/usr/lib/xorg", older use "/usr/X11/lib"
    225         vboxmouse32_dest_base="/usr/lib/xorg/modules/input"
    226         if test ! -d $vboxmouse32_dest_base; then
    227             vboxmouse32_dest_base="/usr/X11/lib/modules/input"
    228         fi
    229198        vboxvideo32_dest_base="/usr/lib/xorg/modules/drivers"
    230199        if test ! -d $vboxvideo32_dest_base; then
     
    232201        fi
    233202
    234         vboxmouse64_dest_base=$vboxmouse32_dest_base/$solaris64dir
    235203        vboxvideo64_dest_base=$vboxvideo32_dest_base/$solaris64dir
    236204
    237205        # snv_163 drops 32-bit support completely, and uses 32-bit locations for the 64-bit stuff. Ugly.
    238         # We try to detect this by looking at bitness of "mouse_drv.so", and adjust our destination paths accordingly.
     206        # We try to detect this by looking at bitness of "vesa_drv.so", and adjust our destination paths accordingly.
    239207        # We do not rely on using Xorg -version's ABI output because some builds (snv_162 iirc) have 64-bit ABI with
    240208        # 32-bit file locations.
    241         if test -f "$vboxmouse32_dest_base/mouse_drv.so"; then
    242             bitsize=`file "$vboxmouse32_dest_base/mouse_drv.so" | grep -i "32-bit"`
     209        if test -f "$vboxvideo32_dest_base/vesa_drv.so"; then
     210            bitsize=`file "$vboxvideo32_dest_base/vesa_drv.so" | grep -i "32-bit"`
    243211            skip32="no"
    244212        else
    245             echo "* Warning mouse_drv.so missing. Assuming Xorg ABI is 64-bit..."
     213            echo "* Warning vesa_drv.so missing. Assuming Xorg ABI is 64-bit..."
    246214        fi
    247215
    248216        if test -z "$bitsize"; then
    249217            skip32="yes"
    250             vboxmouse64_dest_base=$vboxmouse32_dest_base
    251218            vboxvideo64_dest_base=$vboxvideo32_dest_base
    252219        fi
    253220
    254221        # Make sure destination path exists
    255         if test ! -d $vboxmouse32_dest_base || test ! -d $vboxvideo32_dest_base || test ! -d $vboxmouse64_dest_base || test ! -d $vboxvideo64_dest_base; then
    256             echo "*** Missing destination paths for mouse or video modules. Aborting."
    257             echo "*** Failed to install the VirtualBox X Window System drivers."
     222        if test ! -d $vboxvideo64_dest_base; then
     223            echo "*** Missing destination paths for video module. Aborting."
     224            echo "*** Failed to install the VirtualBox X Window System driver."
    258225
    259226            # Exit as partially failed installation
     
    261228        else
    262229            # 32-bit x11 drivers
    263             if test "$skip32" = "no" && test -f "$vboxadditions32_path/$vboxmouse_src"; then
    264                 vboxmouse_dest="$vboxmouse32_dest_base/vboxmouse_drv.so"
     230            if test "$skip32" = "no" && test -f "$vboxadditions32_path/$vboxvideo_src"; then
    265231                vboxvideo_dest="$vboxvideo32_dest_base/vboxvideo_drv.so"
    266                 /usr/sbin/installf -c none $PKGINST "$vboxmouse_dest" f
    267232                /usr/sbin/installf -c none $PKGINST "$vboxvideo_dest" f
    268                 cp "$vboxadditions32_path/$vboxmouse_src" "$vboxmouse_dest"
    269233                cp "$vboxadditions32_path/$vboxvideo_src" "$vboxvideo_dest"
    270234
    271235                # Removing redundant names from pkg and files from disk
    272                 /usr/sbin/removef $PKGINST $vboxadditions32_path/vboxmouse_drv_* 1>/dev/null
    273236                /usr/sbin/removef $PKGINST $vboxadditions32_path/vboxvideo_drv_* 1>/dev/null
    274                 rm -f $vboxadditions32_path/vboxmouse_drv_*
    275237                rm -f $vboxadditions32_path/vboxvideo_drv_*
    276238            fi
    277239
    278240            # 64-bit x11 drivers
    279             if test -f "$vboxadditions64_path/$vboxmouse_src"; then
    280                 vboxmouse_dest="$vboxmouse64_dest_base/vboxmouse_drv.so"
     241            if test -f "$vboxadditions64_path/$vboxvideo_src"; then
    281242                vboxvideo_dest="$vboxvideo64_dest_base/vboxvideo_drv.so"
    282                 /usr/sbin/installf -c none $PKGINST "$vboxmouse_dest" f
    283243                /usr/sbin/installf -c none $PKGINST "$vboxvideo_dest" f
    284                 cp "$vboxadditions64_path/$vboxmouse_src" "$vboxmouse_dest"
    285244                cp "$vboxadditions64_path/$vboxvideo_src" "$vboxvideo_dest"
    286245
    287246                # Removing redundant names from pkg and files from disk
    288                 /usr/sbin/removef $PKGINST $vboxadditions64_path/vboxmouse_drv_* 1>/dev/null
    289247                /usr/sbin/removef $PKGINST $vboxadditions64_path/vboxvideo_drv_* 1>/dev/null
    290                 rm -f $vboxadditions64_path/vboxmouse_drv_*
    291248                rm -f $vboxadditions64_path/vboxvideo_drv_*
    292249            fi
     
    313270            fi
    314271
    315             # Adjust xorg.conf with mouse and video driver sections
     272            # Adjust xorg.conf with video driver sections
    316273            $vboxadditions_path/x11config15sol.pl
    317274        fi
     
    411368    /usr/sbin/devfsadm -i vboxguest
    412369
    413     # Setup VBoxService & start the service automatically
    414     echo "Configuring service (this might take a while)..."
     370    # Setup VBoxService and vboxmslnk and start the services automatically
     371    echo "Configuring services (this might take a while)..."
    415372    cmax=32
    416373    cslept=0
     
    422379    # 1 second intervals to see if our service has been successfully imported and timeout after 'cmax' seconds.
    423380    /usr/sbin/svcadm restart svc:system/manifest-import:default
    424     is_import=`/usr/bin/svcs virtualbox/vboxservice >/dev/null 2>&1`
     381    ## @todo why do we redirect to /dev/null and then save the output?
     382    is_import=`/usr/bin/svcs virtualbox/vboxservice >/dev/null 2>&1 && /usr/bin/svcs virtualbox/vboxmslnk >/dev/null 2>&1`
    425383    while test $? -ne 0;
    426384    do
     
    431389            break
    432390        fi
    433         is_import=`/usr/bin/svcs virtualbox/vboxservice >/dev/null 2>&1`
     391        is_import=`/usr/bin/svcs virtualbox/vboxservice >/dev/null 2>&1 && /usr/bin/svcs virtualbox/vboxmslnk >/dev/null 2>&1`
    434392    done
    435393    if test "$success" -eq 0; then
    436         echo "Enabling service..."
     394        echo "Enabling services..."
    437395        /usr/sbin/svcadm enable -s virtualbox/vboxservice
     396        /usr/sbin/svcadm enable -s virtualbox/vboxmslnk
    438397    else
    439         echo "## VBoxService import failed."
     398        echo "## Service import failed."
    440399        echo "## See /var/svc/log/system-manifest-import:default.log for details."
    441400        # Exit as partially failed installation
  • trunk/src/VBox/Additions/x11/Installer/x11config15sol.pl

    r32388 r42469  
    3333        open(TMP, ">$temp") or die "Can't create $TMP: $!\n";
    3434
    35         my $have_mouse = 0;
    3635        my $in_section = 0;
    3736
     
    4140            {
    4241                my $section = lc($1);
    43                 if (($section eq "inputdevice") || ($section eq "device"))
     42                if ($section eq "device")
    4443                {
    4544                    $in_section = 1;
    46                 }
    47                 if ($section eq "serverlayout")
    48                 {
    49                     $in_layout = 1;
    5045                }
    5146            } else {
     
    5348                {
    5449                    $in_section = 0;
    55                     $in_layout = 0;
    5650                }
    5751            }
     
    5953            if ($in_section)
    6054            {
    61                 if ($line =~ /^\s*driver\s+\"(?:mouse|vboxmouse)\"/i)
    62                 {
    63                     $line = "    Driver      \"vboxmouse\"\n    Option      \"CorePointer\"\n";
    64                     $have_mouse = 1
    65                 }
    66 
    67                 # Other drivers sending events interfere badly with pointer integration
    68                 if ($line =~ /^\s*option\s+\"(?:alwayscore|sendcoreevents|corepointer)\"/i)
    69                 {
    70                     $line = "";
    71                 }
    72 
    73                 # Solaris specific: Use /dev/vboxguest for Xorg 1.5.3+
    74                 if ($os_type =~ 'SunOS')
    75                 {
    76                     if ($line =~ /^\s*option\s+\"(?:device)\"\s+\"(?:\/dev\/kdmouse)\"/i)
    77                     {
    78                         $line = "    Option      \"Device\" \"\/dev\/vboxguest\"\n"
    79                     }
    80 
    81                     if ($line =~ /^\s*option\s+\"(?:device)\"\s+\"(?:\/dev\/mouse)\"/i)
    82                     {
    83                         $line = "    Option      \"Device\" \"\/dev\/vboxguest\"\n"
    84                     }
    85                 }
    86 
    8755                if ($line =~ /^\s*driver\s+\"(?:fbdev|vga|vesa|vboxvideo|ChangeMe)\"/i)
    8856                {
     
    9058                }
    9159            }
    92             if ($in_layout)
    93             {
    94                 # Other drivers sending events interfere badly with pointer integration
    95                 if (   $line =~ /^\s*inputdevice.*\"(?:alwayscore|sendcoreevents)\"/i)
    96                 {
    97                     $line = "";
    98                 }
    99             }
    10060            print TMP $line;
    10161        }
    10262
    103         if (!$have_mouse) {
    104             print TMP "\n";
    105             print TMP "Section \"InputDevice\"\n";
    106             print TMP "        Identifier  \"VBoxMouse\"\n";
    107             print TMP "        Driver      \"vboxmouse\"\n";
    108             if ($os_type eq 'SunOS')
    109             {
    110                 print TMP "        Option      \"Device\"     \"\/dev\/vboxguest\"\n";
    111             }
    112             print TMP "        Option      \"CorePointer\"\n";
    113             print TMP "EndSection\n";
    114         }
    11563        close(TMP);
    11664
  • trunk/src/VBox/Additions/x11/Installer/x11restore.pl

    r32388 r42469  
    2626
    2727my $config_count = 0;
    28 my $vboxpresent = "vboxmouse";
     28my $vboxpresent = "vboxvideo";
    2929
    3030foreach $cfg (@cfg_files)
Note: See TracChangeset for help on using the changeset viewer.

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