]> git.mxchange.org Git - flightgear.git/blob - Simulator/make.inc
Minor tweaks and fixes for cygwin32.
[flightgear.git] / Simulator / make.inc
1 # Hey Emacs, this is a Makefile. -*- Mode: Makefile -*-
2 #
3 # Common Makefile section
4 #
5 # Written by Curtis Olson, started May 1997.
6 #
7 # Copyright (C) 1997  Curtis L. Olson  - curt@infoplane.com
8 #
9 # This program is free software; you can redistribute it and/or modify
10 # it under the terms of the GNU General Public License as published by
11 # the Free Software Foundation; either version 2 of the License, or
12 # (at your option) any later version.
13 #
14 # This program is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 # GNU General Public License for more details.
18 #
19 # You should have received a copy of the GNU General Public License
20 # along with this program; if not, write to the Free Software
21 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
22 #
23 # $Id$
24 # (Log is kept at end of this file)
25 #---------------------------------------------------------------------------
26
27
28 #---------------------------------------------------------------------------
29 # Define the version
30 #---------------------------------------------------------------------------
31
32 FG_VERSION_MAJOR = 0
33 FG_VERSION_MINOR = 24
34 FG_VERSION = $(FG_VERSION_MAJOR).$(FG_VERSION_MINOR)
35
36
37 #---------------------------------------------------------------------------
38 # Choose your weapons
39 #---------------------------------------------------------------------------
40
41 CC = gcc
42 FLEX = flex -f -L
43 BISON = bison -v --no-lines
44 AR = ar
45 RANLIB = ranlib
46 RM = rm
47 LN = ln -sf
48 TAR = tar
49
50
51 #---------------------------------------------------------------------------
52 # Global Compile Options
53 #
54 # You may set FG_CFLAGS to include any of the following options depending on 
55 # your environment:
56 #
57 # -g           - Compile with debugging symbols
58 #
59 # -Wall        - Enable full compiler warnings
60 #
61 # -O2          - Enable compiler optimization
62 #
63 # -O3 -fomit-frame-pointer -funroll-all-loops -ffast-math
64 #              - Other potential compiler optimization flags
65 #
66 # -
67 #---------------------------------------------------------------------------
68
69 GLOBAL_CFLAGS = -Wall -DVERSION=\"$(FG_VERSION)\"
70
71
72 #---------------------------------------------------------------------------
73 # Platform specific compile options, these should be set with FG_CFLAGS
74 # below.  These have been predefined for the supported platforms below.
75 #
76 # -DNO_PRINTF -  Disable all printf()'s.  Works by replacing the printf
77 #                fuction with an empty function.
78 #
79 # -DUSE_ITIMER - Use setitimer(), getitimer(), and signal() to mimic
80 #                a real time system and call the flight model routines
81 #                at a regular interval, rather than between screen updates
82 #                which can be highly variable.  This can make the flight
83 #                model calculations much smoother.
84 #
85 # -DUSE_FTIME -  Use ftime() to get an accurate current time instead of
86 #                gettimeofday()
87 #
88 # -DUSE_RAND  -  Use rand() instead of random()
89 #
90 #---------------------------------------------------------------------------
91
92
93 #---------------------------------------------------------------------------
94 # Debugging options.
95 #
96 # Uncomment the following two lines to enable OpenGL function call tracing.
97 # This mechanism is provided courtesy of Steve Baker <sbaker@link.com>
98 #---------------------------------------------------------------------------
99
100 # FG_DEBUG_FLAGS = -DXGL_TRACE
101 # FG_DEBUG_LIBS = ../XGL/libXGL.a
102
103
104 #---------------------------------------------------------------------------
105 # Uncomment one of the following sections depending on your system
106 #
107 # You may set FG_GRAPHICS to include any of the following options depending
108 # on your environment:
109 #---------------------------------------------------------------------------
110
111 #---------------------------------------------------------------------------
112 # Linux/Mesa with the GLUT toolkit
113 #
114 INTERFACE_FLAGS = -DGLUT
115 INTERFACE_LIBS = -lglut
116 INTERFACE_FILES = GLUTmain.c GLUTkey.c
117 MESA_LIBS = -L/usr/lib/mesa -lMesatk -lMesaaux -lMesaGLU -lMesaGL
118 X11_LIBS =  -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11
119 GRAPHICS_LIBS = $(MESA_LIBS) $(X11_LIBS)
120 FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS)
121 #---------------------------------------------------------------------------
122
123 #---------------------------------------------------------------------------
124 # SGI IRIX with the GLUT toolkit 
125 #     (Surprisingly, this also works on our SunOS 4.x machine with the 
126 #     way we have Mesa & Glut installed.)
127 #
128 # INTERFACE_FLAGS = -DGLUT
129 # INTERFACE_LIBS = -lglut
130 # INTERFACE_FILES = GLUTmain.c GLUTkey.c
131 # GRAPHICS_LIBS = -lGLU -lGL -lXmu -lX11
132 # FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS)
133 # TAR = gtar
134 #---------------------------------------------------------------------------
135
136 #---------------------------------------------------------------------------
137 # Sun/Solaris with the GLUT toolkit
138 #
139 # VERSION=\"$(VERSION)\"
140 # INTERFACE_FLAGS = -DGLUT
141 # INTERFACE_LIBS = -lglut
142 # INTERFACE_FILES = GLUTmain.c GLUTkey.c
143 # GRAPHICS_LIBS =  -L/opt/X11R6/lib -lGLU -lGL -lXext -lXmu -lXi -lX11 -lsocket
144 # FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS)
145 # TAR = gtar
146 #---------------------------------------------------------------------------
147
148 #---------------------------------------------------------------------------
149 # Cygnus Win32 (gcc based) with a static version of the GLUT toolkit
150 #
151 # INTERFACE_FLAGS = -DGLUT 
152 # INTERFACE_LIBS = ../Win32/libglut.a
153 # INTERFACE_FILES = GLUTmain.c GLUTkey.c
154 # GRAPHICS_LIBS = -lglu32 -lopengl32 -luser32 -lgdi32
155 # FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS) -DWIN32 -DUSE_RAND
156 # LN = cp
157 #---------------------------------------------------------------------------
158
159
160 #---------------------------------------------------------------------------
161 # $Log$
162 # Revision 1.32  1998/01/19 18:35:40  curt
163 # Minor tweaks and fixes for cygwin32.
164 #
165 # Revision 1.31  1998/01/08 02:21:46  curt
166 # Version 0.23
167 #
168 # Revision 1.30  1998/01/06 01:20:03  curt
169 # Version 0.21 -> 0.22
170 #
171 # Revision 1.29  1998/01/05 18:44:33  curt
172 # Add an option to advance/decrease time from keyboard.
173 #
174 # Revision 1.28  1997/12/30 23:08:50  curt
175 # Version 0.21
176 #
177 # Revision 1.27  1997/12/30 20:47:08  curt
178 # Version 0.20
179 #
180 # Revision 1.26  1997/12/17 23:13:18  curt
181 # Changes and tweaks to go to version 0.19 (Plus tweaks to Solaris support)
182 #
183 # Revision 1.25  1997/12/15 23:54:26  curt
184 # Add xgl wrappers for debugging.
185 # Generate terrain normals on the fly.
186 #
187 # Revision 1.24  1997/12/12 21:41:24  curt
188 # More light/material property tweaking ... still a ways off.
189 #
190 # Revision 1.23  1997/12/12 19:52:32  curt
191 # Solaris tweaks.
192 #
193 # Revision 1.22  1997/12/11 04:43:53  curt
194 # Fixed sun vector and lighting problems.  I thing the moon is now lit
195 # correctly.
196 #
197 # Revision 1.21  1997/12/10 01:19:42  curt
198 # Tweaks for verion 0.15 release.
199 #
200 # Revision 1.20  1997/12/09 04:25:25  curt
201 # Working on adding a global lighting params structure.
202 #
203 # Revision 1.19  1997/11/25 19:25:27  curt
204 # Changes to integrate Durk's moon/sun code updates + clean up.
205 #
206 # Revision 1.18  1997/10/28 19:35:41  curt
207 # Organizational changes.
208 #
209 # Revision 1.17  1997/10/25 03:30:02  curt
210 # Misc. tweaks.
211 #
212 # Revision 1.16  1997/10/25 03:24:21  curt
213 # Incorporated sun, moon, and star positioning code contributed by Durk Talsma.
214 #
215 # Revision 1.15  1997/09/23 00:29:27  curt
216 # Tweaks to get things to compile with gcc-win32.
217 #
218 # Revision 1.14  1997/09/16 22:14:47  curt
219 # Tweaked time of day lighting equations.  Don't draw stars during the day.
220 #
221 # Revision 1.13  1997/09/04 02:17:19  curt
222 # Shufflin' stuff.
223 #
224 # Revision 1.12  1997/08/25 20:27:21  curt
225 # Merged in initial HUD and Joystick code.
226 #
227 # Revision 1.11  1997/08/22 21:34:33  curt
228 # Doing a bit of reorganizing and house cleaning.
229 #
230 # Revision 1.10  1997/08/16 12:22:19  curt
231 # Tweaks for new version.
232 #
233 # Revision 1.9  1997/07/19 22:41:35  curt
234 # tweaks
235 #
236 # Revision 1.8  1997/07/18 23:41:20  curt
237 # Tweaks for building with Cygnus Win32 compiler.
238 #
239 # Revision 1.7  1997/07/18 14:28:34  curt
240 # Hacked in some support for wind/turbulence.
241 #
242 # Revision 1.6  1997/07/16 20:04:42  curt
243 # Minor tweaks to aid Win32 port.
244 #
245 # Revision 1.5  1997/07/12 02:25:53  curt
246 # Added ranlib.
247 #
248 # Revision 1.4  1997/07/12 02:13:04  curt
249 # Add ftime() support for those that don't have gettimeofday()
250 #
251 # Revision 1.3  1997/07/09 21:31:08  curt
252 # Working on making the ground "hard."
253 #
254 # Revision 1.2  1997/07/07 20:59:48  curt
255 # Working on scenery transformations to enable us to fly fluidly over the
256 # poles with no discontinuity/distortion in scenery.
257 #
258 # Revision 1.1  1997/06/27 21:38:00  curt
259 # Working on Makefile structure.
260 #