Hi, it's me again responding to my own message...
Lucian Muresan wrote:
Hello,
I'm using DirectFB with the linux-fusion module for a long time, and now
when the time has come for performing some system upgrades, I ran into
the following problem:
- upgraded to a 2.6.25 kernel;
- built linux-fusion-7.0.1 (which was moved to "Old" on the homepage
during last night, btw)
- build DirectFB-1.1.1 (too, moved to "Old" last night)
- built several apps depending on DirectFB directly, and on DFB++-1.0.0
After all this, had to find out that the linux-fusion module, although
it builds, is not usable, as there is no more "xtime" symbol in the kernel.
Then I found this thread dated in March 2008 about releasing
linux-fusion-3.2.5, but I can't find that one.
Allright, then I decided to upgrade even more, and built
linux-fusion-8.0.0 which loads alright as the xtime code has been
ported, then I had to go with DirectFB-1.2.0 as older DirectFB is not
API-compatible with that new linux-fusion. But now I need DFB++ built
against new DirectFB, well, 1.0.0 it's not API-compatible, and the git
version also is not.
Allright, I patched DFB++ checked out from git myself to build against
DirectFB-1.2.0, maybe not the most elegant way, but at least it builds
without errors (haven't tested live, as I did it over a ssh connection).
Others might find the attached patch useful...
Cheers,
Lucian
diff -Naur DFB++-9999_orig/dfb++/idirectfb.cpp DFB++-9999/dfb++/idirectfb.cpp
--- DFB++-9999_orig/dfb++/idirectfb.cpp 2007-12-17 18:05:53.000000000 +0100
+++ DFB++-9999/dfb++/idirectfb.cpp 2008-06-09 12:27:28.000000000 +0200
@@ -37,7 +37,7 @@
IDirectFB *IDirectFB::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult ( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFB::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult ( iface->Release (iface) ) );
if (--refs == 0)
delete this;
diff -Naur DFB++-9999_orig/dfb++/idirectfbdatabuffer.cpp
DFB++-9999/dfb++/idirectfbdatabuffer.cpp
--- DFB++-9999_orig/dfb++/idirectfbdatabuffer.cpp 2007-12-17
18:05:53.000000000 +0100
+++ DFB++-9999/dfb++/idirectfbdatabuffer.cpp 2008-06-09 12:29:12.000000000
+0200
@@ -37,7 +37,7 @@
IDirectFBDataBuffer *IDirectFBDataBuffer::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult ( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFBDataBuffer::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult ( iface->Release (iface) ) );
if (--refs == 0)
delete this;
diff -Naur DFB++-9999_orig/dfb++/idirectfbdisplaylayer.cpp
DFB++-9999/dfb++/idirectfbdisplaylayer.cpp
--- DFB++-9999_orig/dfb++/idirectfbdisplaylayer.cpp 2007-12-17
18:05:53.000000000 +0100
+++ DFB++-9999/dfb++/idirectfbdisplaylayer.cpp 2008-06-09 12:30:06.000000000
+0200
@@ -37,7 +37,7 @@
IDirectFBDisplayLayer *IDirectFBDisplayLayer::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult ( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFBDisplayLayer::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult ( iface->Release (iface) ) );
if (--refs == 0)
delete this;
diff -Naur DFB++-9999_orig/dfb++/idirectfbeventbuffer.cpp
DFB++-9999/dfb++/idirectfbeventbuffer.cpp
--- DFB++-9999_orig/dfb++/idirectfbeventbuffer.cpp 2007-12-17
18:05:53.000000000 +0100
+++ DFB++-9999/dfb++/idirectfbeventbuffer.cpp 2008-06-09 12:30:48.000000000
+0200
@@ -37,7 +37,7 @@
IDirectFBEventBuffer *IDirectFBEventBuffer::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFBEventBuffer::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult( iface->Release (iface) ) );
if (--refs == 0)
delete this;
diff -Naur DFB++-9999_orig/dfb++/idirectfbfont.cpp
DFB++-9999/dfb++/idirectfbfont.cpp
--- DFB++-9999_orig/dfb++/idirectfbfont.cpp 2007-12-17 18:05:53.000000000
+0100
+++ DFB++-9999/dfb++/idirectfbfont.cpp 2008-06-09 12:31:30.000000000 +0200
@@ -37,7 +37,7 @@
IDirectFBFont *IDirectFBFont::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult ( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFBFont::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult ( iface->Release (iface) ) );
if (--refs == 0)
delete this;
diff -Naur DFB++-9999_orig/dfb++/idirectfbimageprovider.cpp
DFB++-9999/dfb++/idirectfbimageprovider.cpp
--- DFB++-9999_orig/dfb++/idirectfbimageprovider.cpp 2007-12-17
18:05:53.000000000 +0100
+++ DFB++-9999/dfb++/idirectfbimageprovider.cpp 2008-06-09 12:32:07.000000000
+0200
@@ -37,7 +37,7 @@
IDirectFBImageProvider *IDirectFBImageProvider::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult ( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFBImageProvider::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult ( iface->Release (iface) ) );
if (--refs == 0)
delete this;
diff -Naur DFB++-9999_orig/dfb++/idirectfbinputdevice.cpp
DFB++-9999/dfb++/idirectfbinputdevice.cpp
--- DFB++-9999_orig/dfb++/idirectfbinputdevice.cpp 2007-12-17
18:05:53.000000000 +0100
+++ DFB++-9999/dfb++/idirectfbinputdevice.cpp 2008-06-09 12:32:50.000000000
+0200
@@ -37,7 +37,7 @@
IDirectFBInputDevice *IDirectFBInputDevice::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult ( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFBInputDevice::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult ( iface->Release (iface) ) );
if (--refs == 0)
delete this;
diff -Naur DFB++-9999_orig/dfb++/idirectfbpalette.cpp
DFB++-9999/dfb++/idirectfbpalette.cpp
--- DFB++-9999_orig/dfb++/idirectfbpalette.cpp 2007-12-17 18:05:53.000000000
+0100
+++ DFB++-9999/dfb++/idirectfbpalette.cpp 2008-06-09 12:33:18.000000000
+0200
@@ -37,7 +37,7 @@
IDirectFBPalette *IDirectFBPalette::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult ( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFBPalette::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult ( iface->Release (iface) ) );
if (--refs == 0)
delete this;
diff -Naur DFB++-9999_orig/dfb++/idirectfbscreen.cpp
DFB++-9999/dfb++/idirectfbscreen.cpp
--- DFB++-9999_orig/dfb++/idirectfbscreen.cpp 2007-12-17 18:05:53.000000000
+0100
+++ DFB++-9999/dfb++/idirectfbscreen.cpp 2008-06-09 12:33:44.000000000
+0200
@@ -37,7 +37,7 @@
IDirectFBScreen *IDirectFBScreen::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult ( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFBScreen::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult ( iface->Release (iface) ) );
if (--refs == 0)
delete this;
diff -Naur DFB++-9999_orig/dfb++/idirectfbsurface.cpp
DFB++-9999/dfb++/idirectfbsurface.cpp
--- DFB++-9999_orig/dfb++/idirectfbsurface.cpp 2007-12-17 18:05:53.000000000
+0100
+++ DFB++-9999/dfb++/idirectfbsurface.cpp 2008-06-09 12:34:30.000000000
+0200
@@ -37,7 +37,7 @@
IDirectFBSurface *IDirectFBSurface::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult ( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFBSurface::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult ( iface->Release (iface) ) );
if (--refs == 0)
delete this;
diff -Naur DFB++-9999_orig/dfb++/idirectfbvideoprovider.cpp
DFB++-9999/dfb++/idirectfbvideoprovider.cpp
--- DFB++-9999_orig/dfb++/idirectfbvideoprovider.cpp 2007-12-17
18:05:53.000000000 +0100
+++ DFB++-9999/dfb++/idirectfbvideoprovider.cpp 2008-06-09 12:35:03.000000000
+0200
@@ -37,7 +37,7 @@
IDirectFBVideoProvider *IDirectFBVideoProvider::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult ( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFBVideoProvider::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult ( iface->Release (iface) ) );
if (--refs == 0)
delete this;
diff -Naur DFB++-9999_orig/dfb++/idirectfbwindow.cpp
DFB++-9999/dfb++/idirectfbwindow.cpp
--- DFB++-9999_orig/dfb++/idirectfbwindow.cpp 2007-12-17 18:05:53.000000000
+0100
+++ DFB++-9999/dfb++/idirectfbwindow.cpp 2008-06-09 12:35:37.000000000
+0200
@@ -37,7 +37,7 @@
IDirectFBWindow *IDirectFBWindow::AddRef()
{
- DFBCHECK( iface->AddRef (iface) );
+ DFBCHECK( DFBResult ( iface->AddRef (iface) ) );
refs++;
@@ -46,7 +46,7 @@
void IDirectFBWindow::Release()
{
- DFBCHECK( iface->Release (iface) );
+ DFBCHECK( DFBResult ( iface->Release (iface) ) );
if (--refs == 0)
delete this;
_______________________________________________
directfb-dev mailing list
directfb-dev@directfb.org
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev