[Flightgear-devel] [PATCH] simgear+flightgear warning cleanup

2005-12-12 Thread Vassilii Khachaturov
Attached are 2 patches for cleaning up some build warnings,
in both simgear and flightgear. Caught with gcc-4.0.
Please apply...

Vassilii
Index: src/FDM/LaRCsim/ls_model.c
===
RCS file: /var/cvs/FlightGear-0.9/source/src/FDM/LaRCsim/ls_model.c,v
retrieving revision 1.4
diff -u -p -r1.4 ls_model.c
--- src/FDM/LaRCsim/ls_model.c  25 Jul 2003 17:53:41 -  1.4
+++ src/FDM/LaRCsim/ls_model.c  12 Dec 2005 09:38:55 -
@@ -154,6 +154,8 @@ Initial Flight Gear revision.
OUTPUTS:
 
 --*/
+#include stdio.h
+
 #include ls_types.h
 #include ls_model.h
 #include default_model_routines.h
Index: src/FDM/SP/ADA.cxx
===
RCS file: /var/cvs/FlightGear-0.9/source/src/FDM/SP/ADA.cxx,v
retrieving revision 1.3
diff -u -p -r1.3 ADA.cxx
--- src/FDM/SP/ADA.cxx  1 Nov 2005 13:41:50 -   1.3
+++ src/FDM/SP/ADA.cxx  12 Dec 2005 09:38:55 -
@@ -36,7 +36,7 @@
 #define numberofbytes 472 // from FDM to visuals
 #define nbytes 8   //from visuals to FDM
 
-struct {
+static struct {
 double number_of_bytes;
 double lat_geoc;
 double lon_geoc;
@@ -111,7 +111,7 @@ struct {
 
 double view_offset; //if this zero, means center window
 
-struct {
+static struct {
double ground_elevation;
 } visuals_to_sixdof;
 
Index: src/Instrumentation/KLN89/kln89_page_nav.cxx
===
RCS file: 
/var/cvs/FlightGear-0.9/source/src/Instrumentation/KLN89/kln89_page_nav.cxx,v
retrieving revision 1.1
diff -u -p -r1.1 kln89_page_nav.cxx
--- src/Instrumentation/KLN89/kln89_page_nav.cxx30 Nov 2005 00:18:42 
-  1.1
+++ src/Instrumentation/KLN89/kln89_page_nav.cxx12 Dec 2005 09:38:55 
-
@@ -123,12 +123,12 @@ void KLN89NavPage::Update(double dt) {
// Desired and actual magnetic track
if(!_kln89-_obsMode) {
_kln89-DrawText(DTK, 2, 0, 1);
-   _kln89-DrawHeading(_kln89-_dtkMag, 2, 7, 1);
+   _kln89-DrawHeading((int)_kln89-_dtkMag, 2, 7, 
1);
}
_kln89-DrawText(TK, 2, 9, 1);
if(_kln89-_groundSpeed_ms  3) {   // about 6 
knots, don't know exactly what value to disable track
// The trouble with relying on FG gps's track 
value is we don't know when it's valid.
-   _kln89-DrawHeading(_kln89-_magTrackDeg, 2, 
15, 1);
+   _kln89-DrawHeading((int)_kln89-_magTrackDeg, 
2, 15, 1);
} else {
_kln89-DrawText(---, 2, 12, 1);
_kln89-DrawSpecialChar(0, 2, 15, 1);
Index: simgear/environment/visual_enviro.cxx
===
RCS file: /var/cvs/SimGear-0.3/source/simgear/environment/visual_enviro.cxx,v
retrieving revision 1.5
diff -u -p -r1.5 visual_enviro.cxx
--- simgear/environment/visual_enviro.cxx   30 May 2005 09:04:57 -  
1.5
+++ simgear/environment/visual_enviro.cxx   12 Dec 2005 09:03:05 -
@@ -419,7 +419,8 @@ void SGEnviro::drawRain(double pitch, do
glDisable( GL_FOG );
glDisable(GL_LIGHTING);
 
-   int slice_count = (40.0 + rain_norm*150.0)* precipitation_density / 
100.0;
+   int slice_count = static_castint(
+   (40.0 + rain_norm*150.0)* precipitation_density 
/ 100.0);
 
float angle = speed;
if( angle  90.0 )
@@ -500,7 +501,7 @@ void SGLightning::lt_build_tree_branch(i
 nseg++;
// add a branch
 if( energy * sg_random()  0.8f )
-   lt_build_tree_branch(tree_nr + 1, pt, energy * 0.9f, 
nbseg == 50 ? 10 : nbseg * 0.4f, segsize * 0.7f);
+   lt_build_tree_branch(tree_nr + 1, pt, energy * 0.9f, 
nbseg == 50 ? 10 : static_castint(nbseg * 0.4f), segsize * 0.7f);
 
if( nb_tree = MAX_LT_TREE_SEG )
return;
Index: simgear/io/sg_binobj.cxx
===
RCS file: /var/cvs/SimGear-0.3/source/simgear/io/sg_binobj.cxx,v
retrieving revision 1.9
diff -u -p -r1.9 sg_binobj.cxx
--- simgear/io/sg_binobj.cxx12 Oct 2005 16:43:26 -  1.9
+++ simgear/io/sg_binobj.cxx12 Dec 2005 09:03:05 -
@@ -45,7 +45,7 @@ SG_USING_STD( string );
 SG_USING_STD( vector );
 
 
-enum {
+static enum {
 SG_BOUNDING_SPHERE = 0,
 
 SG_VERTEX_LIST = 1,
@@ -60,14 +60,14 @@ enum {
 SG_TRIANGLE_FANS = 12
 } sgObjectTypes;
 
-enum {
+static enum {
 SG_IDX_VERTICES =  0x01,
 SG_IDX_NORMALS =   0x02,
 SG_IDX_COLORS =0x04,
 SG_IDX_TEXCOORDS = 0x08
 } sgIndexTypes;
 
-enum {

[Flightgear-devel] how to reverse the left and the right of the output graphics?

2005-12-12 Thread HY
Hello Everyone!
 I'm a freshman here and I want to carry out the function which my caption talk about. So, who could gvie me some advice?
Thanks a lot!-- Good Luck! Yours HY. 
___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d

Re: [Flightgear-devel] RenderTexture bug

2005-12-12 Thread Mathias Fröhlich
On Donnerstag 08 Dezember 2005 02:08, Ampere K. Hardraade wrote:
 https://bugs.freedesktop.org/show_bug.cgi?id=5142

 So, the problem seems to be that pbuffer is not supported?
Can you test the attached patch?

  Greetings

   Mathias

-- 
Mathias Fröhlich, email: [EMAIL PROTECTED]
Index: simgear/screen/RenderTexture.cpp
===
RCS file: /var/cvs/SimGear-0.3/SimGear/simgear/screen/RenderTexture.cpp,v
retrieving revision 1.15
diff -u -r1.15 RenderTexture.cpp
--- simgear/screen/RenderTexture.cpp	27 Nov 2005 09:48:51 -	1.15
+++ simgear/screen/RenderTexture.cpp	12 Dec 2005 18:01:44 -
@@ -1820,6 +1820,9 @@
 }
 #elif defined( __APPLE__ )
 #else
+Display* dpy = glXGetCurrentDisplay();
+int minor = 0, major = 0;
+glXQueryVersion(dpy, minor, major);
 
 // First try the glX version 1.3 functions.
 glXChooseFBConfigPtr = (glXChooseFBConfigProc)SGLookupFunction(glXChooseFBConfig);
@@ -1829,7 +1832,8 @@
 glXDestroyPbufferPtr = (glXDestroyPbufferProc)SGLookupFunction(glXDestroyPbuffer);
 glXQueryDrawablePtr = (glXQueryDrawableProc)SGLookupFunction(glXQueryDrawable);
 
-if (glXChooseFBConfigPtr 
+if (((1 = major  3 = minor) || 2 = major) 
+glXChooseFBConfigPtr 
 glXCreatePbufferPtr 
 glXGetVisualFromFBConfigPtr 
 glXCreateContextPtr 
@@ -1838,6 +1842,12 @@
 glXVersion1_3Present = true;
 else
 {
+int screen = DefaultScreen(dpy);
+const char* extString = glXQueryExtensionsString(dpy, screen);
+if (!SGSearchExtensionsString(extString, GLX_SGIX_fbconfig) ||
+!SGSearchExtensionsString(extString, GLX_SGIX_pbuffer))
+return false;
+
 glXChooseFBConfigPtr = (glXChooseFBConfigProc)SGLookupFunction(glXChooseFBConfigSGIX);
 glXCreateGLXPbufferPtr = (glXCreateGLXPbufferProc)SGLookupFunction(glXCreateGLXPbufferSGIX);
 glXGetVisualFromFBConfigPtr =  (glXGetVisualFromFBConfigProc)SGLookupFunction(glXGetVisualFromFBConfigSGIX);
___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d

Re: [Flightgear-devel] RenderTexture bug

2005-12-12 Thread Ampere K. Hardraade
On December 12, 2005 01:19 pm, Mathias Fröhlich wrote:
 On Donnerstag 08 Dezember 2005 02:08, Ampere K. Hardraade wrote:
  https://bugs.freedesktop.org/show_bug.cgi?id=5142
 
  So, the problem seems to be that pbuffer is not supported?

 Can you test the attached patch?

   Greetings

Mathias

It didn't work.  X still throws the GLXUnsupportPrivateRequest at line 496 in 
RenderTexture.cpp.  Apparently, the return false; statement at line 1849 
never got run.  I will do some more investigation later on.

GNU gdb 6.3.90_20051119-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type show copying to see the conditions.
There is absolutely no warranty for GDB.  Type show warranty for details.
This GDB was configured as i486-linux-gnu...Using host libthread_db library 
/lib/tls/libthread_db.so.1.

(gdb) break RenderTexture.cpp:496
Breakpoint 1 at 0x83ba20c: file RenderTexture.cpp, line 496.
(gdb) break RenderTexture.cpp:521
Breakpoint 2 at 0x83ba2fb: file RenderTexture.cpp, line 521.
(gdb) break RenderTexture.cpp:1849
Breakpoint 3 at 0x83b9654: file RenderTexture.cpp, line 1849.
(gdb) run
Starting program: /usr/local/FlightGear/bin/fgfs
[Thread debugging using libthread_db enabled]
[New Thread -1221092768 (LWP 10061)]

Program received signal SIGFPE, Arithmetic exception.
[Switching to Thread -1221092768 (LWP 10061)]
0xafd330f8 in ?? () from /usr/X11R6/lib/modules/dri//r200_dri.so
(gdb) cont
Continuing.
Disabling HW TCL support
opening file: /usr/local/FlightGear/share/FlightGear/Navaids/carrier_nav.dat
/usr/local/FlightGear/share/FlightGear/Navaids/TACAN_freq.dat
[New Thread -1492231248 (LWP 10066)]

Breakpoint 1, RenderTexture::Initialize (this=0xae429d0, width=256, 
height=256, shareObjects=true, copyContext=false)
at RenderTexture.cpp:496
496True);
(gdb) next
X Error of failed request:  GLXUnsupportedPrivateRequest
  Major opcode of failed request:  129 (GLX)
  Minor opcode of failed request:  16 (X_GLXVendorPrivate)
  Serial number of failed request:  30
  Current serial number in output stream:  31

Program exited with code 01.
(gdb) quit

Ampere

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] RenderTexture bug

2005-12-12 Thread Ampere K. Hardraade
On December 12, 2005 07:09 pm, Ampere K. Hardraade wrote:
 On December 12, 2005 01:19 pm, Mathias Fröhlich wrote:
  On Donnerstag 08 Dezember 2005 02:08, Ampere K. Hardraade wrote:
   https://bugs.freedesktop.org/show_bug.cgi?id=5142
  
   So, the problem seems to be that pbuffer is not supported?
 
  Can you test the attached patch?
 
Greetings
 
 Mathias

 It didn't work.  X still throws the GLXUnsupportPrivateRequest at line 496
 in RenderTexture.cpp.  Apparently, the return false; statement at line
 1849 never got run.  I will do some more investigation later on.

After some investigation, I found that the new if...else statement never got 
run because RenderTexture was able to successfully try the glx version 1.3 
functions.

I moved the new if...else statement so that the it gets run before 
RenderTexture can try the glx version 1.3 functions.  FlightGear now starts 
up fine.  However, there is some strange coloring issue:
http://www.cs.yorku.ca/~cs233144/fgfs-screen-001.jpg

Ampere

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] RenderTexture bug

2005-12-12 Thread Mathias Fröhlich
On Dienstag 13 Dezember 2005 03:31, Ampere K. Hardraade wrote:
 After some investigation, I found that the new if...else statement never
 got run because RenderTexture was able to successfully try the glx version
 1.3 functions.
Well I swapped the minor and major aguments ...
That one, appart from the color issue?

   Greetings

  Mathias

-- 
Mathias Fröhlich, email: [EMAIL PROTECTED]
Index: simgear/screen/RenderTexture.cpp
===
RCS file: /var/cvs/SimGear-0.3/SimGear/simgear/screen/RenderTexture.cpp,v
retrieving revision 1.15
diff -u -r1.15 RenderTexture.cpp
--- simgear/screen/RenderTexture.cpp	27 Nov 2005 09:48:51 -	1.15
+++ simgear/screen/RenderTexture.cpp	13 Dec 2005 06:24:54 -
@@ -1820,6 +1820,10 @@
 }
 #elif defined( __APPLE__ )
 #else
+Display* dpy = glXGetCurrentDisplay();
+int minor = 0, major = 0;
+if (!glXQueryVersion(dpy, major, minor))
+return false;
 
 // First try the glX version 1.3 functions.
 glXChooseFBConfigPtr = (glXChooseFBConfigProc)SGLookupFunction(glXChooseFBConfig);
@@ -1829,7 +1833,8 @@
 glXDestroyPbufferPtr = (glXDestroyPbufferProc)SGLookupFunction(glXDestroyPbuffer);
 glXQueryDrawablePtr = (glXQueryDrawableProc)SGLookupFunction(glXQueryDrawable);
 
-if (glXChooseFBConfigPtr 
+if (((1 = major  3 = minor) || 2 = major) 
+glXChooseFBConfigPtr 
 glXCreatePbufferPtr 
 glXGetVisualFromFBConfigPtr 
 glXCreateContextPtr 
@@ -1838,6 +1843,12 @@
 glXVersion1_3Present = true;
 else
 {
+int screen = DefaultScreen(dpy);
+const char* extString = glXQueryExtensionsString(dpy, screen);
+if (!SGSearchExtensionsString(extString, GLX_SGIX_fbconfig) ||
+!SGSearchExtensionsString(extString, GLX_SGIX_pbuffer))
+return false;
+
 glXChooseFBConfigPtr = (glXChooseFBConfigProc)SGLookupFunction(glXChooseFBConfigSGIX);
 glXCreateGLXPbufferPtr = (glXCreateGLXPbufferProc)SGLookupFunction(glXCreateGLXPbufferSGIX);
 glXGetVisualFromFBConfigPtr =  (glXGetVisualFromFBConfigProc)SGLookupFunction(glXGetVisualFromFBConfigSGIX);
___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d