Discussion:
[vbox-dev] What's up with 4.3.8 and VBOX_USE_SYSTEM_XORG_HEADERS=1
Sérgio Basto
2014-03-07 17:05:28 UTC
Permalink
Hi,
when I try to compile VBOX with VBOX_USE_SYSTEM_XORG_HEADERS=1 , fails
on build guests , on Linux Fedora 20 and rawhide .
No doubt that you change thing in Linux guests ... also
VBOX_USE_SYSTEM_XORG_HEADERS=1 assumes that we have Xorg 7 => xserver
1.1 , when we have xserver 1.15 , so IMHO we can drop support to xserver
< 1.6 or 1.8 or 1.10 at least .

Best regards,
--
S?rgio M. B.
Michael Thayer
2014-03-12 14:16:44 UTC
Permalink
Hello S?rgio,

(Re-sending as I forgot to include the list.)
Post by Sérgio Basto
when I try to compile VBOX with VBOX_USE_SYSTEM_XORG_HEADERS=1 , fails
on build guests , on Linux Fedora 20 and rawhide .
No doubt that you change thing in Linux guests ... also
VBOX_USE_SYSTEM_XORG_HEADERS=1 assumes that we have Xorg 7 => xserver
1.1 , when we have xserver 1.15 , so IMHO we can drop support to xserver
< 1.6 or 1.8 or 1.10 at least .
Could you please try this patch?

Regards,

Michael

Index: src/VBox/Additions/x11/vboxvideo/Makefile.kmk
===================================================================
--- src/VBox/Additions/x11/vboxvideo/Makefile.kmk (revision 92751)
+++ src/VBox/Additions/x11/vboxvideo/Makefile.kmk (working copy)
@@ -377,7 +377,7 @@
/usr/include/libdrm \
/usr/include/xorg \
/usr/include/pixman-1
- vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_15_SOURCES)
+ vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_17_SOURCES)
endif
--
ORACLE Deutschland B.V. & Co. KG Michael Thayer
Werkstrasse 24 VirtualBox engineering
71384 Weinstadt, Germany mailto:michael.thayer at oracle.com

Hauptverwaltung: Riesstr. 25, D-80992 M?nchen
Registergericht: Amtsgericht M?nchen, HRA 95603
Gesch?ftsf?hrer: J?rgen Kunz

Komplement?rin: ORACLE Deutschland Verwaltung B.V.
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
Gesch?ftsf?hrer: Alexander van der Ven, Astrid Kepper, Val Maher
Michael Thayer
2014-03-12 15:16:27 UTC
Permalink
Post by Michael Thayer
Post by Sérgio Basto
when I try to compile VBOX with VBOX_USE_SYSTEM_XORG_HEADERS=1 , fails
on build guests , on Linux Fedora 20 and rawhide .
No doubt that you change thing in Linux guests ... also
VBOX_USE_SYSTEM_XORG_HEADERS=1 assumes that we have Xorg 7 => xserver
1.1 , when we have xserver 1.15 , so IMHO we can drop support to xserver
< 1.6 or 1.8 or 1.10 at least .
Could you please try this patch?
Regards,
Michael
Index: src/VBox/Additions/x11/vboxvideo/Makefile.kmk
===================================================================
--- src/VBox/Additions/x11/vboxvideo/Makefile.kmk (revision 92751)
+++ src/VBox/Additions/x11/vboxvideo/Makefile.kmk (working copy)
@@ -377,7 +377,7 @@
/usr/include/libdrm \
/usr/include/xorg \
/usr/include/pixman-1
- vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_15_SOURCES)
+ vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_17_SOURCES)
endif
I see someone else has noticed this:

https://www.virtualbox.org/ticket/12803

Regards,

Michael
--
ORACLE Deutschland B.V. & Co. KG Michael Thayer
Werkstrasse 24 VirtualBox engineering
71384 Weinstadt, Germany mailto:michael.thayer at oracle.com

Hauptverwaltung: Riesstr. 25, D-80992 M?nchen
Registergericht: Amtsgericht M?nchen, HRA 95603
Gesch?ftsf?hrer: J?rgen Kunz

Komplement?rin: ORACLE Deutschland Verwaltung B.V.
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
Gesch?ftsf?hrer: Alexander van der Ven, Astrid Kepper, Val Maher
Sérgio Basto
2014-03-12 17:19:41 UTC
Permalink
Post by Michael Thayer
Post by Michael Thayer
Post by Sérgio Basto
when I try to compile VBOX with VBOX_USE_SYSTEM_XORG_HEADERS=1 , fails
on build guests , on Linux Fedora 20 and rawhide .
No doubt that you change thing in Linux guests ... also
VBOX_USE_SYSTEM_XORG_HEADERS=1 assumes that we have Xorg 7 => xserver
1.1 , when we have xserver 1.15 , so IMHO we can drop support to xserver
< 1.6 or 1.8 or 1.10 at least .
Could you please try this patch?
Regards,
Michael
Index: src/VBox/Additions/x11/vboxvideo/Makefile.kmk
===================================================================
--- src/VBox/Additions/x11/vboxvideo/Makefile.kmk (revision 92751)
+++ src/VBox/Additions/x11/vboxvideo/Makefile.kmk (working copy)
@@ -377,7 +377,7 @@
/usr/include/libdrm \
/usr/include/xorg \
/usr/include/pixman-1
- vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_15_SOURCES)
+ vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_17_SOURCES)
endif
https://www.virtualbox.org/ticket/12803
Great, many thanks, I will test it tonight, and I will give you
feedback.
Post by Michael Thayer
Regards,
Michael
--
S?rgio M. B.
Sérgio Basto
2014-03-17 01:44:50 UTC
Permalink
Post by Sérgio Basto
Post by Michael Thayer
Post by Michael Thayer
Post by Sérgio Basto
when I try to compile VBOX with VBOX_USE_SYSTEM_XORG_HEADERS=1 , fails
on build guests , on Linux Fedora 20 and rawhide .
No doubt that you change thing in Linux guests ... also
VBOX_USE_SYSTEM_XORG_HEADERS=1 assumes that we have Xorg 7 => xserver
1.1 , when we have xserver 1.15 , so IMHO we can drop support to xserver
< 1.6 or 1.8 or 1.10 at least .
Could you please try this patch?
Regards,
Michael
Index: src/VBox/Additions/x11/vboxvideo/Makefile.kmk
===================================================================
--- src/VBox/Additions/x11/vboxvideo/Makefile.kmk (revision 92751)
+++ src/VBox/Additions/x11/vboxvideo/Makefile.kmk (working copy)
@@ -377,7 +377,7 @@
/usr/include/libdrm \
/usr/include/xorg \
/usr/include/pixman-1
- vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_15_SOURCES)
+ vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_17_SOURCES)
endif
https://www.virtualbox.org/ticket/12803
Great, many thanks, I will test it tonight, and I will give you
feedback.
It works.
I'd like communicate my newest patch also to compile guest additions for
Fedora 19, 20 and 21, only with X11 and Mesa system sources, the patch
is also available on cvs of rpmfusion [1]

We have some tricks there :
1 - ./src/VBox/Additions/common/crOpenGL/fakedri_drv.c have some code
that depends on internals of X11 source code and that code have been
removed for X-server 1.15 in Fedora rawhide (21), therefore we couldn't
compile it. Afterward I found that code is just need to one function :
vboxPatchMesaGLAPITable();
Comment that function and all code that depends on that, make it
possible (again) compile with system source code and also dropped the
need of xorg-x11-server-source, now just need "normal" devel packages.

2nd trick is #define HAVE_STRNDUP 1 , I don't understand why is need,
but is need, for more information, see bug report on freedesktop.org [2]

Other thing that I evaluate, is compile with libXcomposite , libXdamage,
libXfixes and libXext of the system .

If you could add VBOX_USE_SYSTEM_XORG_HEADERS=1
for ./src/VBox/Additions/ and other cases will be great.


Thanks,

[1]
http://cvs.rpmfusion.org/viewvc/*checkout*/rpms/VirtualBox/devel/VirtualBox-4.3.6-mesa.patch?root=free&revision=1.3&content-type=text%2Fplain

[2] https://bugs.freedesktop.org/show_bug.cgi?id=47971
--
S?rgio M. B.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: VirtualBox-4.3.6-mesa.patch
Type: text/x-patch
Size: 7860 bytes
Desc: not available
Url : http://www.virtualbox.org/pipermail/vbox-dev/attachments/20140317/b5f97b1d/attachment.bin
Michael Thayer
2014-03-17 07:07:21 UTC
Permalink
Hello S?rgio,

On 17/03/14 02:44, S?rgio Basto wrote:
[...]
Post by Sérgio Basto
I'd like communicate my newest patch also to compile guest additions for
Fedora 19, 20 and 21, only with X11 and Mesa system sources, the patch
is also available on cvs of rpmfusion [1]
1 - ./src/VBox/Additions/common/crOpenGL/fakedri_drv.c have some code
that depends on internals of X11 source code and that code have been
removed for X-server 1.15 in Fedora rawhide (21), therefore we couldn't
vboxPatchMesaGLAPITable();
Comment that function and all code that depends on that, make it
possible (again) compile with system source code and also dropped the
need of xorg-x11-server-source, now just need "normal" devel packages.
It looks to me as if you are removing the code which sets up the driver
functionality in Mesa, and I would expect that with this patch you would
get no hardware accelerated 3D at all (possibly software accelerated
instead, possibly still reported as hardware accelerated). Have you
tested this? It is usually pretty easy to tell, as you tend to get
glitches with hardware acceleration when 3D windows (e.g. glxgears) are
moved, or other windows raised to be on top of them, whereas with
software acceleration you will not see any glitches.

Regards,

Michael
Post by Sérgio Basto
2nd trick is #define HAVE_STRNDUP 1 , I don't understand why is need,
but is need, for more information, see bug report on freedesktop.org [2]
Other thing that I evaluate, is compile with libXcomposite , libXdamage,
libXfixes and libXext of the system .
If you could add VBOX_USE_SYSTEM_XORG_HEADERS=1
for ./src/VBox/Additions/ and other cases will be great.
Thanks,
[1]
http://cvs.rpmfusion.org/viewvc/*checkout*/rpms/VirtualBox/devel/VirtualBox-4.3.6-mesa.patch?root=free&revision=1.3&content-type=text%2Fplain
[2] https://bugs.freedesktop.org/show_bug.cgi?id=47971
--
ORACLE Deutschland B.V. & Co. KG Michael Thayer
Werkstrasse 24 VirtualBox engineering
71384 Weinstadt, Germany mailto:michael.thayer at oracle.com

Hauptverwaltung: Riesstr. 25, D-80992 M?nchen
Registergericht: Amtsgericht M?nchen, HRA 95603
Gesch?ftsf?hrer: J?rgen Kunz

Komplement?rin: ORACLE Deutschland Verwaltung B.V.
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
Gesch?ftsf?hrer: Alexander van der Ven, Astrid Kepper, Val Maher
Sérgio Basto
2014-03-18 05:41:35 UTC
Permalink
Hello,
add cc to list
Post by Michael Thayer
Hello S?rgio,
[...]
Post by Sérgio Basto
I'd like communicate my newest patch also to compile guest additions for
Fedora 19, 20 and 21, only with X11 and Mesa system sources, the patch
is also available on cvs of rpmfusion [1]
1 - ./src/VBox/Additions/common/crOpenGL/fakedri_drv.c have some code
that depends on internals of X11 source code and that code have been
removed for X-server 1.15 in Fedora rawhide (21), therefore we couldn't
vboxPatchMesaGLAPITable();
Comment that function and all code that depends on that, make it
possible (again) compile with system source code and also dropped the
need of xorg-x11-server-source, now just need "normal" devel packages.
It looks to me as if you are removing the code which sets up the driver
functionality in Mesa, and I would expect that with this patch you would
get no hardware accelerated 3D at all (possibly software accelerated
instead, possibly still reported as hardware accelerated).
Many thanks for your reply, OK , hopefully we are talking about drivers
for guest system , so is not much used, though that PatchMesaGLAPITable
was sort of a fix ...

My main goal as packager of rpmfusion is unbundle sources that are
bundle in Vbox , so I need remove
src/VBox/Additions/x11/x11include
src/VBox/Additions/x11/x11stubs
src/VBox/GuestHost/OpenGL/include/GLglext.h ( I found this one today )

after some investigation, came up that I can almost compile with system
sources on Fedora 20 with:

-#include "src/mesa/main/mtypes.h"
-#include "src/mesa/main/dd.h"
-#include "src/mesa/glapi/dispatch.h"
-#include "src/mesa/glapi/glapi.h"
-#include "src/mesa/glapi/glapitable.h"
-#include "src/mesa/glapi/glapioffsets.h"
-#include "src/mesa/drivers/dri/common/dri_util.h"
+#include <stdlib.h>
+#include <string.h>
+#include "include/xorg-server.h"
+#include <GL/glext.h>
#include "GL/internal/dri_interface.h"
+#include "glx/glapi.h"
+#include "glx/glapitable.h"
+#include "glx/dispatch.h"
+#include "glx/glprocs.h"
+#include <xf86drm.h>

with -I /usr/share/xorg-x11-server-source/ (from xorg-x11-server-source
package)

but for Fedora 21 with new xorg-x11-server-1.15.0, glx/glapi.h and
glx/glapitable.h disappears.

also, _glapi_get_proc_offset have been removed before Fedora 20
( xorg-x11-server-1.14.4 ) look at :
http://lists.x.org/archives/xorg-devel/2011-March/019853.html

So for Fedora 20, I could replace _glapi_get_proc_offset or sort of, see
patch in attach , but for Fedora 21 vboxPatchMesaGLAPITable(); have
_glapi_get_dispatch functions that are completely obsoleted , even
removed :-/
Post by Michael Thayer
Have you
tested this?
yes glxinfo change is behavior , but can't be precise right now.
Post by Michael Thayer
It is usually pretty easy to tell, as you tend to get
glitches with hardware acceleration when 3D windows (e.g. glxgears) are
moved, or other windows raised to be on top of them, whereas with
software acceleration you will not see any glitches.
Regards,
Michael
Post by Sérgio Basto
2nd trick is #define HAVE_STRNDUP 1 , I don't understand why is need,
but is need, for more information, see bug report on freedesktop.org [2]
#include "include/xorg-server.h" seems the correct way ...
Post by Michael Thayer
Post by Sérgio Basto
Other thing that I evaluate, is compile with libXcomposite , libXdamage,
libXfixes and libXext of the system .
If you could add VBOX_USE_SYSTEM_XORG_HEADERS=1
for ./src/VBox/Additions/ and other cases will be great.
Vbox have in src/VBox/Additions/x11/x11stubs/
libXcomposite-1.0.0/ libXdamage-1.1.0/ libXext-6.4.0/
libXfixes-3.1.0/ Makefile.kmk

in Fedora 20 we have:
libXcomposite-0.4.4-4.fc20
libXdamage-1.1.4-4.fc20
libXext-1.3.2-2.fc20
libXfixes-5.0.1-2.fc20


I also removed src/VBox/Additions/x11/x11stubs and compile with system
sources.

It kind of work, don't see any problem , like I wrote this is an
exercise with guest systems.
Post by Michael Thayer
Post by Sérgio Basto
Thanks,
[1]
http://cvs.rpmfusion.org/viewvc/*checkout*/rpms/VirtualBox/devel/VirtualBox-4.3.6-mesa.patch?root=free&revision=1.3&content-type=text%2Fplain
[2] https://bugs.freedesktop.org/show_bug.cgi?id=47971
--
S?rgio M. B.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: VirtualBox-4.3.6-mesa.patch
Type: text/x-patch
Size: 5108 bytes
Desc: not available
Url : http://www.virtualbox.org/pipermail/vbox-dev/attachments/20140318/16822309/attachment.bin
Michael Thayer
2014-03-18 13:49:24 UTC
Permalink
Hello S?rgio,

On 18/03/14 06:41, S?rgio Basto wrote:
[...]
Post by Sérgio Basto
Many thanks for your reply, OK , hopefully we are talking about drivers
for guest system , so is not much used, though that PatchMesaGLAPITable
was sort of a fix ...
[...]
If you are not interested in guest drivers you might just build with
"VBOX_WITHOUT_ADDITIONS=1" set and then remove any Additions code you do
not want in your sources, as it should not get built at all. Was the
patch you attached to your last message a reworked version of the
previous one? I only looked at it briefly, but it did look like an
improvement, so I will try to look at it more closely when I get the chance.

Regards and thanks,

Michael
--
ORACLE Deutschland B.V. & Co. KG Michael Thayer
Werkstrasse 24 VirtualBox engineering
71384 Weinstadt, Germany mailto:michael.thayer at oracle.com

Hauptverwaltung: Riesstr. 25, D-80992 M?nchen
Registergericht: Amtsgericht M?nchen, HRA 95603
Gesch?ftsf?hrer: J?rgen Kunz

Komplement?rin: ORACLE Deutschland Verwaltung B.V.
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
Gesch?ftsf?hrer: Alexander van der Ven, Astrid Kepper, Val Maher
Sérgio Basto
2014-03-18 16:48:24 UTC
Permalink
Post by Michael Thayer
Hello S?rgio,
[...]
Post by Sérgio Basto
Many thanks for your reply, OK , hopefully we are talking about drivers
for guest system , so is not much used, though that PatchMesaGLAPITable
was sort of a fix ...
[...]
If you are not interested in guest drivers you might just build with
"VBOX_WITHOUT_ADDITIONS=1" set and then remove any Additions code you do
not want in your sources, as it should not get built at all.
No, we in rpmfusion do "our" guest package for Fedora, I use it to test
devel versions of Fedora mainly and also use it for legacy versions, so
I want build guest Additions for Fedora without bundle sources, mainly.
Post by Michael Thayer
Was the
patch you attached to your last message a reworked version of the
previous one?
yes is a rework , for Xserver 1.14
Post by Michael Thayer
I only looked at it briefly, but it did look like an
improvement, so I will try to look at it more closely when I get the chance.
Regards and thanks,
Michael
--
S?rgio M. B.
Michael Thayer
2014-03-20 10:53:45 UTC
Permalink
Hello S?rgio,
Post by Sérgio Basto
Post by Michael Thayer
[...]
Post by Sérgio Basto
Many thanks for your reply, OK , hopefully we are talking about drivers
for guest system , so is not much used, though that PatchMesaGLAPITable
was sort of a fix ...
[...]
If you are not interested in guest drivers you might just build with
"VBOX_WITHOUT_ADDITIONS=1" set and then remove any Additions code you do
not want in your sources, as it should not get built at all.
No, we in rpmfusion do "our" guest package for Fedora, I use it to test
devel versions of Fedora mainly and also use it for legacy versions, so
I want build guest Additions for Fedora without bundle sources, mainly.
Post by Michael Thayer
Was the
patch you attached to your last message a reworked version of the
previous one?
yes is a rework , for Xserver 1.14
Post by Michael Thayer
I only looked at it briefly, but it did look like an
improvement, so I will try to look at it more closely when I get the chance.
I took a closer look at your patch (I am not absolutely familiar with
the workings of that "driver") and I'm afraid it isn't really something
I can apply. The driver is using X.Org/Mesa internals, which is why it
needs either bundled internal headers or the actual X server source.
Your patch makes the it use the source, but does it in a Fedora-specific
way which would not help anyone else, so while that is valid enough, it
only really makes sense for you to keep the patch as part of your
package, not upstream it.

Though I haven't yet tested, what you said about it not building on
Fedora 21 looks like a genuine problem, see also Quickbooks's e-mail to
the list. I will investigate that.

Regards,

Michael
--
ORACLE Deutschland B.V. & Co. KG Michael Thayer
Werkstrasse 24 VirtualBox engineering
71384 Weinstadt, Germany mailto:michael.thayer at oracle.com

Hauptverwaltung: Riesstr. 25, D-80992 M?nchen
Registergericht: Amtsgericht M?nchen, HRA 95603
Gesch?ftsf?hrer: J?rgen Kunz

Komplement?rin: ORACLE Deutschland Verwaltung B.V.
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
Gesch?ftsf?hrer: Alexander van der Ven, Astrid Kepper, Val Maher
Sérgio Basto
2014-03-20 23:16:49 UTC
Permalink
Post by Michael Thayer
Hello S?rgio,
Post by Sérgio Basto
Post by Michael Thayer
[...]
Post by Sérgio Basto
Many thanks for your reply, OK , hopefully we are talking about drivers
for guest system , so is not much used, though that PatchMesaGLAPITable
was sort of a fix ...
[...]
If you are not interested in guest drivers you might just build with
"VBOX_WITHOUT_ADDITIONS=1" set and then remove any Additions code you do
not want in your sources, as it should not get built at all.
No, we in rpmfusion do "our" guest package for Fedora, I use it to test
devel versions of Fedora mainly and also use it for legacy versions, so
I want build guest Additions for Fedora without bundle sources, mainly.
Post by Michael Thayer
Was the
patch you attached to your last message a reworked version of the
previous one?
yes is a rework , for Xserver 1.14
Post by Michael Thayer
I only looked at it briefly, but it did look like an
improvement, so I will try to look at it more closely when I get the chance.
I took a closer look at your patch (I am not absolutely familiar with
the workings of that "driver") and I'm afraid it isn't really something
I can apply. The driver is using X.Org/Mesa internals, which is why it
needs either bundled internal headers or the actual X server source.
OK, as I point out, only PatchMesaGLAPITable function use X.Org/Mesa
internals.
Post by Michael Thayer
Your patch makes the it use the source, but does it in a Fedora-specific
way which would not help anyone else, so while that is valid enough, it
only really makes sense for you to keep the patch as part of your
package, not upstream it.
Fair enough
Post by Michael Thayer
Though I haven't yet tested, what you said about it not building on
Fedora 21 looks like a genuine problem, see also Quickbooks's e-mail to
the list. I will investigate that.
Regards,
Michael
--
S?rgio M. B.
Sérgio Basto
2014-03-25 00:43:00 UTC
Permalink
Post by Sérgio Basto
Post by Michael Thayer
Hello S?rgio,
Post by Sérgio Basto
Post by Michael Thayer
[...]
Post by Sérgio Basto
Many thanks for your reply, OK , hopefully we are talking about drivers
for guest system , so is not much used, though that PatchMesaGLAPITable
was sort of a fix ...
[...]
If you are not interested in guest drivers you might just build with
"VBOX_WITHOUT_ADDITIONS=1" set and then remove any Additions code you do
not want in your sources, as it should not get built at all.
No, we in rpmfusion do "our" guest package for Fedora, I use it to test
devel versions of Fedora mainly and also use it for legacy versions, so
I want build guest Additions for Fedora without bundle sources, mainly.
Post by Michael Thayer
Was the
patch you attached to your last message a reworked version of the
previous one?
yes is a rework , for Xserver 1.14
Post by Michael Thayer
I only looked at it briefly, but it did look like an
improvement, so I will try to look at it more closely when I get the chance.
I took a closer look at your patch (I am not absolutely familiar with
the workings of that "driver") and I'm afraid it isn't really something
I can apply. The driver is using X.Org/Mesa internals, which is why it
needs either bundled internal headers or the actual X server source.
OK, as I point out, only PatchMesaGLAPITable function use X.Org/Mesa
internals.
Post by Michael Thayer
Though I haven't yet tested, what you said about it not building on
Fedora 21 looks like a genuine problem, see also Quickbooks's e-mail to
the list. I will investigate that.
Hi, I was puzzled with disappear of glapi.h, but glapi.h not disappeared
it just "moved", not quite, is a long story that I cant explain in
English .
glx have been spit in indirect rendering and that part still in X11
source and direct rendering that is definitely in mesa3d sources. Mesa3d
have the glapi [1] in his source.
Now I'm investigation, why Mesa package of Fedora doesn't expose headers
of glapi. I found this when I saw a packaged called mesa-libglapi which
is part of Mesa src.rpm , maybe to avoid duplicated headers in Fedora
20 ...

Hope that can help in something .


[1] http://www.mesa3d.org/sourcetree.html
--
S?rgio M. B.
Michael Thayer
2014-03-25 07:24:15 UTC
Permalink
Hello S?rgio,

I will "top-post" here, as I can no longer follow the thread below. A
bit of investigation around our 3D driver for Linux guests shows the
following. The code should still work against the very latest versions
of Mesa. The reason that the headers in the X server source that you
were using to build it without our bundled headers have disappeared is
because the X server was also bundling them (in a rewritten form), much
the same way as we are, and they have done a significant re-write of
their GLX code (I haven't yet investigated what you reported about them
having moved in the X server code). The interfaces are still present in
Mesa, where they originally come from. I do still plan to clean up
there in quite a major way, but I really can't say when. The list of
"more important" things I have to do remains roughly constant, with new
ones appearing about as fast as I can finish older ones.

I also found that 3D is still working on Fedora 20, and I expect it to
be working on Fedora 21 too, though I haven't yet had time to verify
that. So that is probably not the reason for the slowdown reported by
Quickbooks. A colleague is planning to investigate that if/when there
is time.

Regards,

Michael
Post by Sérgio Basto
Post by Sérgio Basto
Post by Michael Thayer
Hello S?rgio,
Post by Sérgio Basto
Post by Michael Thayer
[...]
Post by Sérgio Basto
Many thanks for your reply, OK , hopefully we are talking about drivers
for guest system , so is not much used, though that PatchMesaGLAPITable
was sort of a fix ...
[...]
If you are not interested in guest drivers you might just build with
"VBOX_WITHOUT_ADDITIONS=1" set and then remove any Additions code you do
not want in your sources, as it should not get built at all.
No, we in rpmfusion do "our" guest package for Fedora, I use it to test
devel versions of Fedora mainly and also use it for legacy versions, so
I want build guest Additions for Fedora without bundle sources, mainly.
Post by Michael Thayer
Was the
patch you attached to your last message a reworked version of the
previous one?
yes is a rework , for Xserver 1.14
Post by Michael Thayer
I only looked at it briefly, but it did look like an
improvement, so I will try to look at it more closely when I get the chance.
I took a closer look at your patch (I am not absolutely familiar with
the workings of that "driver") and I'm afraid it isn't really something
I can apply. The driver is using X.Org/Mesa internals, which is why it
needs either bundled internal headers or the actual X server source.
OK, as I point out, only PatchMesaGLAPITable function use X.Org/Mesa
internals.
Post by Michael Thayer
Though I haven't yet tested, what you said about it not building on
Fedora 21 looks like a genuine problem, see also Quickbooks's e-mail to
the list. I will investigate that.
Hi, I was puzzled with disappear of glapi.h, but glapi.h not disappeared
it just "moved", not quite, is a long story that I cant explain in
English .
glx have been spit in indirect rendering and that part still in X11
source and direct rendering that is definitely in mesa3d sources. Mesa3d
have the glapi [1] in his source.
Now I'm investigation, why Mesa package of Fedora doesn't expose headers
of glapi. I found this when I saw a packaged called mesa-libglapi which
is part of Mesa src.rpm , maybe to avoid duplicated headers in Fedora
20 ...
Hope that can help in something .
[1] http://www.mesa3d.org/sourcetree.html
--
ORACLE Deutschland B.V. & Co. KG Michael Thayer
Werkstrasse 24 VirtualBox engineering
71384 Weinstadt, Germany mailto:michael.thayer at oracle.com

Hauptverwaltung: Riesstr. 25, D-80992 M?nchen
Registergericht: Amtsgericht M?nchen, HRA 95603
Gesch?ftsf?hrer: J?rgen Kunz

Komplement?rin: ORACLE Deutschland Verwaltung B.V.
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
Gesch?ftsf?hrer: Alexander van der Ven, Astrid Kepper, Val Maher
Sérgio Basto
2014-03-31 18:38:02 UTC
Permalink
Post by Michael Thayer
Your patch makes the it use the source, but does it in a
Fedora-specific
way which would not help anyone else, so while that is valid enough, it
only really makes sense for you to keep the patch as part of your
package, not upstream it.
Hi, I dropped all Fedora-specific in the patch, so I don't patch
fakedri_drv.[c|h] and Config.kmk , and use remove all but
src/VBox/Additions/x11/x11include/mesa-7.2 bundle sources [1].
So I compile package with mesa-7.2 sources , which for now it will be
compatible for all Fedoras .
Integrate VBOX_USE_SYSTEM_XORG_HEADERS=1 for this patch will be great .

Many thanks,

[1]
rm -rf tools
# Remove bundle X11 sources and some lib sources, before patching.
mv src/VBox/Additions/x11/x11include/mesa-7.2 .
rm -rf src/VBox/Additions/x11/x11include/*
mv mesa-7.2 src/VBox/Additions/x11/x11include/

rm -rf src/VBox/Additions/x11/x11stubs
rm -rf src/VBox/GuestHost/OpenGL/include/GL
--
S?rgio M. B.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: VirtualBox-4.3.6-mesa.patch
Type: text/x-patch
Size: 1927 bytes
Desc: not available
Url : http://www.virtualbox.org/pipermail/vbox-dev/attachments/20140331/bf5c4490/attachment.bin
Sérgio Basto
2014-03-31 18:48:03 UTC
Permalink
Post by Michael Thayer
Your patch makes the it use the source, but does it in a
Fedora-specific
way which would not help anyone else, so while that is valid enough, it
only really makes sense for you to keep the patch as part of your
package, not upstream it.
Hi, I dropped all Fedora-specific in the patch, so to build rpmfusion package, we don't patch
fakedri_drv.[c|h] and Config.kmk, remove all bundle sources but
src/VBox/Additions/x11/x11include/mesa-7.2 [1].
So Package is compiled with mesa-7.2 sources, which for now it will be
compatible for all Fedoras .
Integrate this patch in attach with VBOX_USE_SYSTEM_XORG_HEADERS=1, would be great

Many thanks,

[1]
rm -rf tools
# Remove bundle X11 sources and some lib sources, before patching.
mv src/VBox/Additions/x11/x11include/mesa-7.2 .
rm -rf src/VBox/Additions/x11/x11include/*
mv mesa-7.2 src/VBox/Additions/x11/x11include/

rm -rf src/VBox/Additions/x11/x11stubs
rm -rf src/VBox/GuestHost/OpenGL/include/GL
--
S?rgio M. B.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: VirtualBox-4.3.6-mesa.patch
Type: text/x-patch
Size: 1927 bytes
Desc: not available
Url : http://www.virtualbox.org/pipermail/vbox-dev/attachments/20140331/6842e9da/attachment.bin
Loading...