]> git.mxchange.org Git - flightgear.git/blob - Simulator/Makefile
9979d1cec09b02b03bf5d5c480b618f11ca83878
[flightgear.git] / Simulator / Makefile
1 #---------------------------------------------------------------------------
2 # Toplevel Project Makefile
3 #
4 # Written by Curtis Olson, started May 1997.
5 #
6 # Copyright (C) 1997  Curtis L. Olson  - curt@infoplane.com
7 #
8 # This program is free software; you can redistribute it and/or modify
9 # it under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 2 of the License, or
11 # (at your option) any later version.
12 #
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 # GNU General Public License for more details.
17 #
18 # You should have received a copy of the GNU General Public License
19 # along with this program; if not, write to the Free Software
20 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 #
22 # $Id$
23 # (Log is kept at end of this file)
24 #---------------------------------------------------------------------------
25
26
27 include $(FG_ROOT_SRC)/commondefs
28
29 SUBSUBDIRS = Flight/LaRCsim Flight/Slew
30 SUBDIRS = Aircraft Astro Cockpit Controls Flight Joystick Math Scenery \
31         Time Weather XGL
32 MAIN = Main
33 ORDEREDDIRS = $(SUBSUBDIRS) $(SUBDIRS) $(MAIN)
34
35 all: 
36         for dir in $(ORDEREDDIRS); do \
37             ( cd $$dir; $(MAKE) ) ; \
38         done
39
40 depend:
41         for dir in $(ORDEREDDIRS); do \
42             ( echo "Making depend in $$dir"; \
43               cd $$dir; $(CC) $(CFLAGS) $(CCDEPFLAG) *.c > depend ) ; \
44         done
45
46 Makefile-os2:
47         cat Makefile | perl mkmfos2.pl > Makefile.os2; \
48         for dir in $(ORDEREDDIRS); do \
49             ( echo "Making Makefile.os2 in $$dir"; \
50               cat $$dir/Makefile | perl mkmfos2.pl > $$dir/Makefile.os2; \
51               cat $$dir/depend   | perl mkmfos2.pl > $$dir/depend.os2) ; \
52         done
53
54 clean:
55         -rm -f *.os2 *~
56         -rm -f $(FG_ROOT_LIB)/*.a $(FG_ROOT_LIB)/stamp_libs
57         for dir in $(ORDEREDDIRS); do \
58             (cd $$dir; $(MAKE) clean) ; \
59         done
60
61 clobber:
62         -rm -f *.os2 *~
63         -rm -f $(FG_ROOT_LIB)/*.a $(FG_ROOT_LIB)/stamp_libs
64         for dir in $(ORDEREDDIRS); do \
65             (cd $$dir; $(MAKE) clobber) ; \
66         done
67
68 source-tar: clean
69         (cd ../..; \
70         $(TAR) cvzf source-$(FG_VERSION).tar.gz FlightGear/fgtop \
71         FlightGear/COPYING FlightGear/Docs FlightGear/Src FlightGear/Lib)
72
73 source-zip: clean
74         (cd ../..; \
75         zip -r source-$(FG_VERSION).zip FlightGear/fgtop \
76         FlightGear/COPYING FlightGear/Docs FlightGear/Src FlightGear/Lib)
77
78 scenery-tar:
79         (cd ../..; \
80         $(TAR) cvzf scenery-$(FG_VERSION).tar.gz FlightGear/Scenery/*.dat \
81         FlightGear/Scenery/*/*/*.obj)
82
83 scenery-zip:
84         (cd ../..; \
85         zip -r scenery-$(FG_VERSION).zip FlightGear/Scenery/*.dat \
86         FlightGear/Scenery/*/*/*.obj)
87
88 bin-tar: all
89         cp Main/fg-$(FG_VERSION) README Thanks runfg ..
90         $(RM) -f ../fg$(FG_VERSION_MAJOR)
91         $(LN) ../fg-$(FG_VERSION) ../fg$(FG_VERSION_MAJOR)
92         (cd ../..; \
93         $(TAR) cvzf bin-$(FG_VERSION).tar.gz FlightGear/fgtop \
94         FlightGear/fg-$(FG_VERSION) FlightGear/fg$(FG_VERSION_MAJOR) \
95         FlightGear/runfg FlightGear/COPYING FlightGear/Docs FlightGear/README \
96         FlightGear/Thanks)
97
98 bin-zip: 
99         cp Main/fg$(FG_VERSION_MAJOR).exe README Thanks \
100         runfg.bat ../Win32/glut.dll ../Win32/cygwinb19.dll ..
101         (cd ../..; \
102         zip -r bin-$(FG_VERSION).zip FlightGear/fgtop \
103         FlightGear/fg$(FG_VERSION_MAJOR).exe FlightGear/runfg.bat \
104         FlightGear/cygwinb19.dll FlightGear/glut.dll FlightGear/COPYING \
105         FlightGear/Docs FlightGear/README FlightGear/Thanks )
106
107 bin-exp-zip: 
108         cp Main/fg$(FG_VERSION_MAJOR).exe Main/cygwin.dll README Thanks \
109         runfg.bat ../Win32/*.dll ..
110         (cd ../..; \
111         zip -r bin-exp-$(FG_VERSION).zip FlightGear/fgtop \
112         FlightGear/fg$(FG_VERSION_MAJOR).exe FlightGear/runfg.bat \
113         FlightGear/cygwin.dll FlightGear/COPYING FlightGear/Docs \
114         FlightGear/README FlightGear/Thanks FlightGear/glu.dll \
115         FlightGear/glut.dll FlightGear/msvcrt.dll FlightGear/opengl.dll)
116
117
118 #---------------------------------------------------------------------------
119 # $Log$
120 # Revision 1.45  1998/03/14 00:32:35  curt
121 # Version 0.38
122 #
123 # Revision 1.44  1998/03/09 22:52:53  curt
124 # Misc. configuration tweaks.
125 #
126 # Revision 1.43  1998/02/19 13:05:43  curt
127 # Incorporated some HUD tweaks from Michelle America.
128 # Tweaked the sky's sunset/rise colors.
129 # Other misc. tweaks.
130 #
131 # Revision 1.42  1998/02/18 15:07:02  curt
132 # Tweaks to build with SGI OpenGL (and therefor hopefully other accelerated
133 # drivers will work.)
134 #
135 # Revision 1.41  1998/02/09 22:56:28  curt
136 # Removed "depend" files from cvs control.  Other minor make tweaks.
137 #
138 # Revision 1.40  1998/02/01 03:39:53  curt
139 # Minor tweaks.
140 #
141 # Revision 1.39  1998/01/27 00:47:41  curt
142 # Incorporated Paul Bleisch's <bleisch@chromatic.com> new debug message
143 # system and commandline/config file processing code.
144 #
145 # Revision 1.38  1998/01/22 22:03:22  curt
146 # Tweaks.
147 #
148 # Revision 1.37  1998/01/19 19:42:58  curt
149 # More misc. tweaks for rpk make merge.
150 #
151 # Revision 1.36  1998/01/19 19:26:51  curt
152 # Merged in make system changes from Bob Kuehne <rpk@sgi.com>
153 # This should simplify things tremendously.
154 #
155 # Revision 1.35  1998/01/07 03:18:14  curt
156 # Created the Astro/ subdirctory for stuff high in the sky ...
157 #
158 # Revision 1.34  1997/12/18 23:32:28  curt
159 # First stab at sky dome actually starting to look reasonable. :-)
160 #
161 # Revision 1.33  1997/12/17 23:13:17  curt
162 # Changes and tweaks to go to version 0.19 (Plus tweaks to Solaris support)
163 #
164 # Revision 1.32  1997/12/15 23:54:25  curt
165 # Add xgl wrappers for debugging.
166 # Generate terrain normals on the fly.
167 #
168 # Revision 1.31  1997/12/15 20:59:08  curt
169 # Misc. tweaks.
170 #
171 # Revision 1.30  1997/12/10 01:19:42  curt
172 # Tweaks for verion 0.15 release.
173 #
174 # Revision 1.29  1997/10/30 12:38:35  curt
175 # Working on new scenery subsystem.
176 #
177 # Revision 1.28  1997/10/28 19:35:40  curt
178 # Organizational changes.
179 #
180 # Revision 1.27  1997/09/23 00:29:27  curt
181 # Tweaks to get things to compile with gcc-win32.
182 #
183 # Revision 1.26  1997/09/04 02:17:18  curt
184 # Shufflin' stuff.
185 #
186 # Revision 1.25  1997/08/25 20:27:21  curt
187 # Merged in initial HUD and Joystick code.
188 #
189 # Revision 1.24  1997/08/16 12:22:17  curt
190 # Tweaks for new version.
191 #
192 # Revision 1.23  1997/08/13 20:22:55  curt
193 # Renamed OpenGL/ to GLUT/
194 #
195 # Revision 1.22  1997/07/31 22:52:21  curt
196 # Working on redoing internal coordinate systems & scenery transformations.
197 #
198 # Revision 1.21  1997/07/30 16:12:38  curt
199 # Moved fg_random routines from Util/ to Math/
200 #
201 # Revision 1.20  1997/07/20 02:19:09  curt
202 # First stab at a system to generate os2 makefiles automatically.
203 #
204 # Revision 1.19  1997/07/19 23:04:46  curt
205 # Added an initial weather section.
206 #
207 # Revision 1.18  1997/07/19 22:36:28  curt
208 # Added Utils/ subdirectory
209 #
210 # Revision 1.17  1997/07/18 23:41:20  curt
211 # Tweaks for building with Cygnus Win32 compiler.
212 #
213 # Revision 1.16  1997/07/07 20:59:47  curt
214 # Working on scenery transformations to enable us to fly fluidly over the
215 # poles with no discontinuity/distortion in scenery.
216 #
217 # Revision 1.15  1997/07/05 20:43:27  curt
218 # renamed mat3 directory to Math so we could add other math related routines.
219 #
220 # Revision 1.14  1997/06/29 21:19:16  curt
221 # Working on scenery management system.
222 #
223 # Revision 1.13  1997/06/28 00:49:02  curt
224 # Tweaking Makefile structure ..
225 #
226 # Revision 1.12  1997/06/27 21:37:59  curt
227 # Working on Makefile structure.
228 #
229 # Revision 1.11  1997/06/27 20:03:31  curt
230 # Working on Makefile structure.
231 #
232 # Revision 1.10  1997/06/26 19:08:22  curt
233 # Restructuring make, adding automatic "make dep" support.
234 #
235 # Revision 1.9  1997/06/22 21:44:40  curt
236 # Working on intergrating the VRML (subset) parser.
237 #
238 # Revision 1.8  1997/06/21 17:52:22  curt
239 # Continue directory shuffling ... everything should be compilable/runnable
240 # again.
241 #
242 # Revision 1.7  1997/06/21 17:12:38  curt
243 # Capitalized subdirectory names.
244 #
245 # Revision 1.6  1997/06/16 19:32:50  curt
246 # Starting to add general timer support.
247 #
248 # Revision 1.5  1997/05/30 19:26:56  curt
249 # The LaRCsim flight model is starting to look like it is working.
250 #
251 # Revision 1.4  1997/05/29 02:31:43  curt
252 # Update subdirectory structure.
253 #
254 # Revision 1.3  1997/05/23 15:40:04  curt
255 # Added GNU copyright headers.
256 #
257 # Revision 1.2  1997/05/23 00:35:09  curt
258 # Trying to get fog to work ...
259 #
260 # Revision 1.1  1997/05/16 15:51:13  curt
261 # Initial revision.
262 #