]> git.mxchange.org Git - flightgear.git/blob - Simulator/Makefile
9f27e9cd5aa5614c3185fff54f74c3de2bef6c7f
[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) -M *.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)/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)/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 Main/cygwin.dll README Thanks \
100         runfg.bat ..
101         (cd ../..; \
102         zip -r bin-$(FG_VERSION).zip FlightGear/fgtop \
103         FlightGear/fg$(FG_VERSION_MAJOR).exe FlightGear/runfg.bat \
104         FlightGear/cygwin.dll FlightGear/COPYING FlightGear/Docs \
105         FlightGear/README FlightGear/Thanks)
106
107 new-bin-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-$(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/opengl.dll)
116
117
118 #---------------------------------------------------------------------------
119 # $Log$
120 # Revision 1.42  1998/02/18 15:07:02  curt
121 # Tweaks to build with SGI OpenGL (and therefor hopefully other accelerated
122 # drivers will work.)
123 #
124 # Revision 1.41  1998/02/09 22:56:28  curt
125 # Removed "depend" files from cvs control.  Other minor make tweaks.
126 #
127 # Revision 1.40  1998/02/01 03:39:53  curt
128 # Minor tweaks.
129 #
130 # Revision 1.39  1998/01/27 00:47:41  curt
131 # Incorporated Paul Bleisch's <bleisch@chromatic.com> new debug message
132 # system and commandline/config file processing code.
133 #
134 # Revision 1.38  1998/01/22 22:03:22  curt
135 # Tweaks.
136 #
137 # Revision 1.37  1998/01/19 19:42:58  curt
138 # More misc. tweaks for rpk make merge.
139 #
140 # Revision 1.36  1998/01/19 19:26:51  curt
141 # Merged in make system changes from Bob Kuehne <rpk@sgi.com>
142 # This should simplify things tremendously.
143 #
144 # Revision 1.35  1998/01/07 03:18:14  curt
145 # Created the Astro/ subdirctory for stuff high in the sky ...
146 #
147 # Revision 1.34  1997/12/18 23:32:28  curt
148 # First stab at sky dome actually starting to look reasonable. :-)
149 #
150 # Revision 1.33  1997/12/17 23:13:17  curt
151 # Changes and tweaks to go to version 0.19 (Plus tweaks to Solaris support)
152 #
153 # Revision 1.32  1997/12/15 23:54:25  curt
154 # Add xgl wrappers for debugging.
155 # Generate terrain normals on the fly.
156 #
157 # Revision 1.31  1997/12/15 20:59:08  curt
158 # Misc. tweaks.
159 #
160 # Revision 1.30  1997/12/10 01:19:42  curt
161 # Tweaks for verion 0.15 release.
162 #
163 # Revision 1.29  1997/10/30 12:38:35  curt
164 # Working on new scenery subsystem.
165 #
166 # Revision 1.28  1997/10/28 19:35:40  curt
167 # Organizational changes.
168 #
169 # Revision 1.27  1997/09/23 00:29:27  curt
170 # Tweaks to get things to compile with gcc-win32.
171 #
172 # Revision 1.26  1997/09/04 02:17:18  curt
173 # Shufflin' stuff.
174 #
175 # Revision 1.25  1997/08/25 20:27:21  curt
176 # Merged in initial HUD and Joystick code.
177 #
178 # Revision 1.24  1997/08/16 12:22:17  curt
179 # Tweaks for new version.
180 #
181 # Revision 1.23  1997/08/13 20:22:55  curt
182 # Renamed OpenGL/ to GLUT/
183 #
184 # Revision 1.22  1997/07/31 22:52:21  curt
185 # Working on redoing internal coordinate systems & scenery transformations.
186 #
187 # Revision 1.21  1997/07/30 16:12:38  curt
188 # Moved fg_random routines from Util/ to Math/
189 #
190 # Revision 1.20  1997/07/20 02:19:09  curt
191 # First stab at a system to generate os2 makefiles automatically.
192 #
193 # Revision 1.19  1997/07/19 23:04:46  curt
194 # Added an initial weather section.
195 #
196 # Revision 1.18  1997/07/19 22:36:28  curt
197 # Added Utils/ subdirectory
198 #
199 # Revision 1.17  1997/07/18 23:41:20  curt
200 # Tweaks for building with Cygnus Win32 compiler.
201 #
202 # Revision 1.16  1997/07/07 20:59:47  curt
203 # Working on scenery transformations to enable us to fly fluidly over the
204 # poles with no discontinuity/distortion in scenery.
205 #
206 # Revision 1.15  1997/07/05 20:43:27  curt
207 # renamed mat3 directory to Math so we could add other math related routines.
208 #
209 # Revision 1.14  1997/06/29 21:19:16  curt
210 # Working on scenery management system.
211 #
212 # Revision 1.13  1997/06/28 00:49:02  curt
213 # Tweaking Makefile structure ..
214 #
215 # Revision 1.12  1997/06/27 21:37:59  curt
216 # Working on Makefile structure.
217 #
218 # Revision 1.11  1997/06/27 20:03:31  curt
219 # Working on Makefile structure.
220 #
221 # Revision 1.10  1997/06/26 19:08:22  curt
222 # Restructuring make, adding automatic "make dep" support.
223 #
224 # Revision 1.9  1997/06/22 21:44:40  curt
225 # Working on intergrating the VRML (subset) parser.
226 #
227 # Revision 1.8  1997/06/21 17:52:22  curt
228 # Continue directory shuffling ... everything should be compilable/runnable
229 # again.
230 #
231 # Revision 1.7  1997/06/21 17:12:38  curt
232 # Capitalized subdirectory names.
233 #
234 # Revision 1.6  1997/06/16 19:32:50  curt
235 # Starting to add general timer support.
236 #
237 # Revision 1.5  1997/05/30 19:26:56  curt
238 # The LaRCsim flight model is starting to look like it is working.
239 #
240 # Revision 1.4  1997/05/29 02:31:43  curt
241 # Update subdirectory structure.
242 #
243 # Revision 1.3  1997/05/23 15:40:04  curt
244 # Added GNU copyright headers.
245 #
246 # Revision 1.2  1997/05/23 00:35:09  curt
247 # Trying to get fog to work ...
248 #
249 # Revision 1.1  1997/05/16 15:51:13  curt
250 # Initial revision.
251 #