1
0
Fork 0

Converting to Gnu autoconf system.

This commit is contained in:
curt 1998-04-03 22:20:48 +00:00
parent c1004bd1a0
commit e95e9f6432
12 changed files with 387 additions and 871 deletions

View file

@ -1,81 +0,0 @@
--------------------------------------------------------------------------
| Done
--------------------------------------------------------------------------
2/19/98 - Fixed a problem with smooth view (scenery center) switch
when entering a new tile.
2/18/98 - Fixed a problem with terrain generation that was causing
some strips to be put in the wrong winding list.
2/9/98 - Fixed a problem with terrain tiles not quite matching up perfectly.
2/2/98 - Fix warning when compiling with c++ ... also successfully built
with cygnus-g++. There should be nothing holding us back from
using C++.
1/30/98 - remove Scenery/geometry.c and Scenery/mesh.c
1/28/98 - Dynamic unloading of scenery.
1/26/98 - Debug message system.
1/26/98 - Dynamic loading of scenery
1/24/98 - Remove some of the unused files such as ls_sync.c
1/23/98 - in all .h's change #ifdef FILE_H -> #ifdef _FILE_H
--------------------------------------------------------------------------
1/22/98 - Released version 0.25
1/19/98 - Compile with c++
1/17/98 - Change all "type function();" to "type function( void );"
--------------------------------------------------------------------------
1/16/98 - Release verison 0.23
1/6/98 - Added FGwin32.mak (a MSVC++ Makefile for building win32 versions)
--------------------------------------------------------------------------
1/5/98 - Released version 0.21
12/31/97 - remove Unix dependencies from .../Time/fg_time.c
--------------------------------------------------------------------------
12/30/97 - Released version 0.20
12/30/97 - Released version 0.19
12/30/97 - Event manager
12/23/97 - First stab at a reasonable sky ... I'm going to probably
leave this for now so I don't spend the rest of my life
trying to tweak it.
12/17/97 - Released version 0.18
12/17/97 - Fix sun/moon initialization code so display lists aren't
re-created at every Init().
12/12/97 - Released verison 0.17
12/10/97 - Released version 0.16
12/9/97 - Released demtools version 0.01
12/9/97 - Released version 0.15
11/25/97 - Released version 0.14
10/24/97 - Released version 0.13
9/22/97 - Released version 0.12
9/16/97 - Released version 0.11

View file

@ -1,262 +0,0 @@
#---------------------------------------------------------------------------
# Toplevel Project Makefile
#
# Written by Curtis Olson, started May 1997.
#
# Copyright (C) 1997 Curtis L. Olson - curt@infoplane.com
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
# $Id$
# (Log is kept at end of this file)
#---------------------------------------------------------------------------
include $(FG_ROOT_SRC)/commondefs
SUBSUBDIRS = Flight/LaRCsim Flight/Slew
SUBDIRS = Aircraft Astro Cockpit Controls Flight Joystick Math Scenery \
Time Weather XGL
MAIN = Main
ORDEREDDIRS = $(SUBSUBDIRS) $(SUBDIRS) $(MAIN)
all:
for dir in $(ORDEREDDIRS); do \
( cd $$dir; $(MAKE) ) ; \
done
depend:
for dir in $(ORDEREDDIRS); do \
( echo "Making depend in $$dir"; \
cd $$dir; $(CC) $(CFLAGS) $(CCDEPFLAG) *.c > depend ) ; \
done
Makefile-os2:
cat Makefile | perl mkmfos2.pl > Makefile.os2; \
for dir in $(ORDEREDDIRS); do \
( echo "Making Makefile.os2 in $$dir"; \
cat $$dir/Makefile | perl mkmfos2.pl > $$dir/Makefile.os2; \
cat $$dir/depend | perl mkmfos2.pl > $$dir/depend.os2) ; \
done
clean:
-rm -f *.os2 *~
-rm -f $(FG_ROOT_LIB)/*.a $(FG_ROOT_LIB)/stamp_libs
for dir in $(ORDEREDDIRS); do \
(cd $$dir; $(MAKE) clean) ; \
done
clobber:
-rm -f *.os2 *~
-rm -f $(FG_ROOT_LIB)/*.a $(FG_ROOT_LIB)/stamp_libs
for dir in $(ORDEREDDIRS); do \
(cd $$dir; $(MAKE) clobber) ; \
done
source-tar: clean
(cd ../..; \
$(TAR) cvzf source-$(FG_VERSION).tar.gz FlightGear/fgtop \
FlightGear/COPYING FlightGear/Docs FlightGear/Src FlightGear/Lib)
source-zip: clean
(cd ../..; \
zip -r source-$(FG_VERSION).zip FlightGear/fgtop \
FlightGear/COPYING FlightGear/Docs FlightGear/Src FlightGear/Lib)
scenery-tar:
(cd ../..; \
$(TAR) cvzf scenery-$(FG_VERSION).tar.gz FlightGear/Scenery/*.dat \
FlightGear/Scenery/*/*/*.obj)
scenery-zip:
(cd ../..; \
zip -r scenery-$(FG_VERSION).zip FlightGear/Scenery/*.dat \
FlightGear/Scenery/*/*/*.obj)
bin-tar: all
cp Main/fg-$(FG_VERSION) README Thanks runfg ..
$(RM) -f ../fg$(FG_VERSION_MAJOR)
$(LN) ../fg-$(FG_VERSION) ../fg$(FG_VERSION_MAJOR)
(cd ../..; \
$(TAR) cvzf bin-$(FG_VERSION).tar.gz FlightGear/fgtop \
FlightGear/fg-$(FG_VERSION) FlightGear/fg$(FG_VERSION_MAJOR) \
FlightGear/runfg FlightGear/COPYING FlightGear/Docs FlightGear/README \
FlightGear/Thanks)
bin-zip:
cp Main/fg$(FG_VERSION_MAJOR).exe README Thanks \
runfg.bat ../Win32/glut.dll ../Win32/cygwinb19.dll ..
(cd ../..; \
zip -r bin-$(FG_VERSION).zip FlightGear/fgtop \
FlightGear/fg$(FG_VERSION_MAJOR).exe FlightGear/runfg.bat \
FlightGear/cygwinb19.dll FlightGear/glut.dll FlightGear/COPYING \
FlightGear/Docs FlightGear/README FlightGear/Thanks )
bin-exp-zip:
cp Main/fg$(FG_VERSION_MAJOR).exe Main/cygwin.dll README Thanks \
runfg.bat ../Win32/*.dll ..
(cd ../..; \
zip -r bin-exp-$(FG_VERSION).zip FlightGear/fgtop \
FlightGear/fg$(FG_VERSION_MAJOR).exe FlightGear/runfg.bat \
FlightGear/cygwin.dll FlightGear/COPYING FlightGear/Docs \
FlightGear/README FlightGear/Thanks FlightGear/glu.dll \
FlightGear/glut.dll FlightGear/msvcrt.dll FlightGear/opengl.dll)
#---------------------------------------------------------------------------
# $Log$
# Revision 1.45 1998/03/14 00:32:35 curt
# Version 0.38
#
# Revision 1.44 1998/03/09 22:52:53 curt
# Misc. configuration tweaks.
#
# Revision 1.43 1998/02/19 13:05:43 curt
# Incorporated some HUD tweaks from Michelle America.
# Tweaked the sky's sunset/rise colors.
# Other misc. tweaks.
#
# Revision 1.42 1998/02/18 15:07:02 curt
# Tweaks to build with SGI OpenGL (and therefor hopefully other accelerated
# drivers will work.)
#
# Revision 1.41 1998/02/09 22:56:28 curt
# Removed "depend" files from cvs control. Other minor make tweaks.
#
# Revision 1.40 1998/02/01 03:39:53 curt
# Minor tweaks.
#
# Revision 1.39 1998/01/27 00:47:41 curt
# Incorporated Paul Bleisch's <bleisch@chromatic.com> new debug message
# system and commandline/config file processing code.
#
# Revision 1.38 1998/01/22 22:03:22 curt
# Tweaks.
#
# Revision 1.37 1998/01/19 19:42:58 curt
# More misc. tweaks for rpk make merge.
#
# Revision 1.36 1998/01/19 19:26:51 curt
# Merged in make system changes from Bob Kuehne <rpk@sgi.com>
# This should simplify things tremendously.
#
# Revision 1.35 1998/01/07 03:18:14 curt
# Created the Astro/ subdirctory for stuff high in the sky ...
#
# Revision 1.34 1997/12/18 23:32:28 curt
# First stab at sky dome actually starting to look reasonable. :-)
#
# Revision 1.33 1997/12/17 23:13:17 curt
# Changes and tweaks to go to version 0.19 (Plus tweaks to Solaris support)
#
# Revision 1.32 1997/12/15 23:54:25 curt
# Add xgl wrappers for debugging.
# Generate terrain normals on the fly.
#
# Revision 1.31 1997/12/15 20:59:08 curt
# Misc. tweaks.
#
# Revision 1.30 1997/12/10 01:19:42 curt
# Tweaks for verion 0.15 release.
#
# Revision 1.29 1997/10/30 12:38:35 curt
# Working on new scenery subsystem.
#
# Revision 1.28 1997/10/28 19:35:40 curt
# Organizational changes.
#
# Revision 1.27 1997/09/23 00:29:27 curt
# Tweaks to get things to compile with gcc-win32.
#
# Revision 1.26 1997/09/04 02:17:18 curt
# Shufflin' stuff.
#
# Revision 1.25 1997/08/25 20:27:21 curt
# Merged in initial HUD and Joystick code.
#
# Revision 1.24 1997/08/16 12:22:17 curt
# Tweaks for new version.
#
# Revision 1.23 1997/08/13 20:22:55 curt
# Renamed OpenGL/ to GLUT/
#
# Revision 1.22 1997/07/31 22:52:21 curt
# Working on redoing internal coordinate systems & scenery transformations.
#
# Revision 1.21 1997/07/30 16:12:38 curt
# Moved fg_random routines from Util/ to Math/
#
# Revision 1.20 1997/07/20 02:19:09 curt
# First stab at a system to generate os2 makefiles automatically.
#
# Revision 1.19 1997/07/19 23:04:46 curt
# Added an initial weather section.
#
# Revision 1.18 1997/07/19 22:36:28 curt
# Added Utils/ subdirectory
#
# Revision 1.17 1997/07/18 23:41:20 curt
# Tweaks for building with Cygnus Win32 compiler.
#
# Revision 1.16 1997/07/07 20:59:47 curt
# Working on scenery transformations to enable us to fly fluidly over the
# poles with no discontinuity/distortion in scenery.
#
# Revision 1.15 1997/07/05 20:43:27 curt
# renamed mat3 directory to Math so we could add other math related routines.
#
# Revision 1.14 1997/06/29 21:19:16 curt
# Working on scenery management system.
#
# Revision 1.13 1997/06/28 00:49:02 curt
# Tweaking Makefile structure ..
#
# Revision 1.12 1997/06/27 21:37:59 curt
# Working on Makefile structure.
#
# Revision 1.11 1997/06/27 20:03:31 curt
# Working on Makefile structure.
#
# Revision 1.10 1997/06/26 19:08:22 curt
# Restructuring make, adding automatic "make dep" support.
#
# Revision 1.9 1997/06/22 21:44:40 curt
# Working on intergrating the VRML (subset) parser.
#
# Revision 1.8 1997/06/21 17:52:22 curt
# Continue directory shuffling ... everything should be compilable/runnable
# again.
#
# Revision 1.7 1997/06/21 17:12:38 curt
# Capitalized subdirectory names.
#
# Revision 1.6 1997/06/16 19:32:50 curt
# Starting to add general timer support.
#
# Revision 1.5 1997/05/30 19:26:56 curt
# The LaRCsim flight model is starting to look like it is working.
#
# Revision 1.4 1997/05/29 02:31:43 curt
# Update subdirectory structure.
#
# Revision 1.3 1997/05/23 15:40:04 curt
# Added GNU copyright headers.
#
# Revision 1.2 1997/05/23 00:35:09 curt
# Trying to get fog to work ...
#
# Revision 1.1 1997/05/16 15:51:13 curt
# Initial revision.
#

15
Simulator/Makefile.am Normal file
View file

@ -0,0 +1,15 @@
# Place Include last to get 'distclean' do the correct thing
SUBDIRS = Aircraft \
Astro \
Cockpit \
Controls \
Flight \
Joystick \
Math \
Scenery \
Time \
Weather \
XGL \
Main \
Include

272
Simulator/Makefile.in Normal file
View file

@ -0,0 +1,272 @@
# Makefile.in generated automatically by automake 1.2h from Makefile.am
# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
# Place Include last to get 'distclean' do the correct thing
SHELL = /bin/sh
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
DISTDIR =
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
host_alias = @host_alias@
host_triplet = @host@
CC = @CC@
CXX = @CXX@
LD = @LD@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
NM = @NM@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
VERSION = @VERSION@
SUBDIRS = Aircraft \
Astro \
Cockpit \
Controls \
Flight \
Joystick \
Linux \
Math \
Scenery \
Time \
Weather \
XGL \
Main \
Include
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../Src/Include/config.h
CONFIG_CLEAN_FILES =
DIST_COMMON = README COPYING Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar
GZIP = --best
all: all-recursive all-am
.SUFFIXES:
$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
cd $(top_srcdir) && $(AUTOMAKE) --gnu Src/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
@SET_MAKE@
all-recursive install-data-recursive install-exec-recursive \
installdirs-recursive install-recursive uninstall-recursive \
check-recursive installcheck-recursive info-recursive dvi-recursive:
@set fnord $(MAKEFLAGS); amf=$$2; \
list='$(SUBDIRS)'; for subdir in $$list; do \
target=`echo $@ | sed s/-recursive//`; \
echo "Making $$target in $$subdir"; \
(cd $$subdir && $(MAKE) $$target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
@set fnord $(MAKEFLAGS); amf=$$2; \
rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
rev="$$subdir $$rev"; \
done; \
for subdir in $$rev; do \
target=`echo $@ | sed s/-recursive//`; \
echo "Making $$target in $$subdir"; \
(cd $$subdir && $(MAKE) $$target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
(cd $$subdir && $(MAKE) tags); \
done
tags: TAGS
ID: $(HEADERS) $(SOURCES) $(LISP)
here=`pwd` && cd $(srcdir) \
&& mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP)
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
done; \
list='$(SOURCES) $(HEADERS)'; \
unique=`for i in $$list; do echo $$i; done | \
awk ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
|| (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
mostlyclean-tags:
clean-tags:
distclean-tags:
-rm -f TAGS ID
maintainer-clean-tags:
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
subdir = Src
distdir: $(DISTFILES)
here=`cd $(top_builddir) && pwd`; \
top_distdir=`cd $(top_distdir) && pwd`; \
distdir=`cd $(distdir) && pwd`; \
cd $(top_srcdir) \
&& $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Src/Makefile
@for file in $(DISTFILES); do \
d=$(srcdir); \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file; \
done
for subdir in $(SUBDIRS); do \
test -d $(distdir)/$$subdir \
|| mkdir $(distdir)/$$subdir \
|| exit 1; \
chmod 777 $(distdir)/$$subdir; \
(cd $$subdir && $(MAKE) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \
|| exit 1; \
done
info: info-recursive
dvi: dvi-recursive
check: all-am
$(MAKE) check-recursive
installcheck: installcheck-recursive
all-am: Makefile
install-exec: install-exec-recursive
@$(NORMAL_INSTALL)
install-data: install-data-recursive
@$(NORMAL_INSTALL)
install: install-recursive
@:
uninstall: uninstall-recursive
install-strip:
$(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
installdirs: installdirs-recursive
mostlyclean-generic:
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-rm -f Makefile $(DISTCLEANFILES)
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
mostlyclean-am: mostlyclean-tags mostlyclean-generic
clean-am: clean-tags clean-generic mostlyclean-am
distclean-am: distclean-tags distclean-generic clean-am
maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \
distclean-am
mostlyclean: mostlyclean-recursive mostlyclean-am
clean: clean-recursive clean-am
distclean: distclean-recursive distclean-am
-rm -f config.status
-rm -f libtool
maintainer-clean: maintainer-clean-recursive maintainer-clean-am
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
.PHONY: install-data-recursive uninstall-data-recursive \
install-exec-recursive uninstall-exec-recursive installdirs-recursive \
uninstalldirs-recursive all-recursive check-recursive \
installcheck-recursive info-recursive dvi-recursive \
mostlyclean-recursive distclean-recursive clean-recursive \
maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
distclean-tags clean-tags maintainer-clean-tags distdir info dvi \
installcheck all-am install-exec install-data install uninstall all \
installdirs mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View file

@ -1,11 +1,12 @@
July 21, 1997
March 15, 1998
=============
Here is a quick outline of *one* way you can build FG for Win32 using
a completely free development environment.
1. Install and configure the Cygnus Gnu-Win32 development
environment. The main Cygnus Gnu-Win32 page is at:
1. Install and configure the Cygnus Gnu-Win32 development
environment. The latest version is Beta 19. The main
Cygnus Gnu-Win32 page is at:
http://www.cygnus.com/misc/gnu-win32/
@ -13,20 +14,30 @@ a completely free development environment.
ftp://ftp.cygnus.com/pub/gnu-win32/latest/cdk.exe
To install, just run the file: "cdk.exe". Be sure to read this
package's README for post installation configuration instructions:
To install, just run the file: "cdk.exe" by double-clicking on it
from windows explorer. Be sure to read this package's README:
http://www.cygnus.com/misc/gnu-win32/readme_toc.html
2. Fetch the Flight Gear prototype code. It can be found at:
http://www.menet.umn.edu/~curt/fgfs/prototype/source/
Grab the latest .zip file.
and install them as well. After installing the cygnus compiler
and the usertools you should find a program group "Gygnus"
in your start menu.
3. Unpack the FG prototype code. Run:
2. Fetch the Flight Gear source code and win32 libs. They can be
found at:
http://www.menet.umn.edu/~curt/fgfs/Downloads/
Grab the latest source-X.XX.zip file.
In addition, you need the win32 libraries from win32-libs-X.XX.zip
Also, don't forget to download scenery and textures. These aren't
needed to built the code, but you'll need them before you can run
the executable.
3. Unpack the FG prototype code and the libraries. Run:
pkunzip -d <file>.zip
@ -34,69 +45,101 @@ a completely free development environment.
subdirectories. Otherwise you will have one big mess!
This should create a directory called ``FlightGear'' with several
subdirectories.
subdirectories. Do the same with the libraries.
3. Install the OpenGL/GLUT headers. Cd to the newly created
directory: ``FlightGear\Src\Win32''. There you will find a file
called gl-hdrs.zip. Assuming you installed the free Cygnus
compiler in C:\gnuwin32\b18,, copy the file ``gl-hdrs.zip'' to
``c:\gnuwin32\b18\include\":
4. The win32-libs zip file provides the necessary OpenGL/GLUT headers
and libraries for the build process.
copy gl-hdrs.zip c:\gnuwin32\b18\include\
Before trying to run the executable, you should copy glut.dll from
Then go to the c:\gnuwin32\b18\include\ directory and run:
...\FlightGear\Win32\glut.dll
pkunzip -d gl-hdrs.zip
Remember the -d option! You can remove the gl-hdrs.zip file if
you wish.
into someplace in your path such as:
...\FlightGear\Src\Main\glut.dll
4. Install the OpenGL dynamic link libraries. If you are running
an NT system you can skip this step. NT comes with the OpenGL
libraries. If you are running windows 95, you should grab the
OpenGL libraries from the Microsoft ftp server:
5. Install the Silicon Graphics OpenGL dynamic link libraries. For
this purpose, get the file sgi-opengl2.exe from the flight gear
project site. This is a win95/winnt self extracting installation
program. Install it by double-clicking in windows explorer.
ftp://ftp.microsoft.com/Softlib/MSLFILES/Opengl95.exe
This is a self extracting compressed archive, so run this .exe to
extract the files. To install these permanently on your system,
you can copy them to your ``c:\windows\system\" directory.
Otherwise, you could just as easily copy them to the
``FlightGear\Src\GLUT'' directory or else someplace that is in
your path.
6. Edit the ``commondefs'' file, if necessary. Go to the main
FlightGear source directory. From where ever you extracted the FG
code, cd to ``FlightGear\Src''. Edit the file called
``commondefs''. Find the part of the file that says: ``Uncomment
one of the following sections depending on your system''
4. Edit the ``make.inc'' file. Go back to the main FlightGear source
directory. From where ever you extracted the FG code, cd to
``FlightGear\Src''. Edit the file called ``make.inc''. Find the
part of the file that says: ``Uncomment one of the following
sections depending on your system''
Uncomment all the makefile defines in the ``Cygnus Win32''
Uncomment all the makefile defines in the ``Cygnus Win32 beta19''
section. Also, you should comment out any of the defines in the
other platform dependent sections.
other platform dependent sections. Depending on the version,
you may find, that the appropriate settings are already done
and you can skip this step.
5. Build the executable. From the same ``FlightGear\Src'' directory,
run the following command:
7. Prepare the shell. Call the Cygnus shell from the start menu.
At first, you have to mount your flight gear drive (assuming it is g:)
with
make
mount g:/ /mnt
make is a build utility that comes with the Cygnus development
environment.
(Be careful writing slashes; you are working within a strange mixture
of DOS/WIN95/UNIX here.)
If anything went wrong with mounting you can unmount the drive with
mount --reset.
Now change to the flight gear source directory with
cd /mnt/FlightGear/Src
(make sure you're correct with the "pwd" command)
Next, you have to set the environment variables as:
SET FG_ROOT=/mnt/FlightGear
SET FG_ROOT_SRC=${FG_ROOT}/Src
SET FG_ROOT_LIB=${FG_ROOT}/Lib
8. Build the executable. Type first
make depend
and after that's done type
make
You will see a few warning messages from the compiler, but none of
these are serious.
6. Try it out! When make is done, cd to the FlightGear\Src\GLUT
directory and run the simulator:
fg0
Be prepared flight gear to need 10 minutes or more for compilation
(depending of your system).
7. I wrote this document from the top of my head so it is certain to
contain errors. Please send me email (curt@me.umn.edu) and let
me know what changes need to be made to this document and these
procedures to make them easier to understand and follow.
9. Try it out! When make is done close the Cygnus shell. There are several
possibilities running flight gear. The one which should always work
is as follows:
Open an ordinary DOS shell. Within this one reset the flight gear root
environment variable to
SET FG_ROOT=g:\flightgear
(or whatever your drive is.) This is absolutely necessary as win95
does not recover your "mounted" drive.
Goto the directory where your freshly build executable sits, i.e.
cd g:\flightgear\src\main
and type fg0.exe.
10. Tell me that it works! If it doesn't, tell me what goes wrong. My
email is curt@me.umn.edu. Please send me email and let me know
what changes need to be made to this document and these procedures
to make them easier to understand and follow.

View file

@ -1,94 +0,0 @@
A very special thanks is due to the following people and groups.
Note, as hard as I've tried, I've found it impossible to perfectly
maintain this file. If you are aware of someone who you think might
be included here, PLEASE let me know. Projects like this are made
possible only by the help and hard work of others. I want to properly
credit everyone who has contributed to this project.
Michele America <nomimarketing@mail.telepac.pt>
Contributed the HUD code.
Steve Baker <sbaker@link.com>
Steve has provided an immense amount of coaching and tutelage, both
on the subjects of flight simulation and OpenGL. It has been his
comments and thoughts that have prompted the implementation of most
of the more sophisticated features of Flight Gear.
Paul Bleisch <bleisch@chromatic.com>
Paul redid the "debug" system so that it would be much more
flexible, so it could be easily disabled for production system, and
so that messages for certain subsystems could be selectively
enabled.
Also contributed a first stab at a config file/command line parsing
system.
Gene Buckle <geneb@nwlink.com>
Gene has done a lot of work getting FG to compile with the MSVC++
compiler. Also, he has pushed, proded, and bugged me endlessly to
do my stuff right. (I mean that in a good way, because sometimes
when the little nudge in the right direction isn't working, I need
a good hard shove.) :-)
Didier Chauveau <chauveau@math.univ-mlv.fr>
Provided some initial code to parse the 30 arcsec DEM files found at:
http://edcwww.cr.usgs.gov/landdaac/gtopo30/gtopo30.html
Michael I. Gold <gold@puck.asd.sgi.com> -- Patiently answered my endless
"newbie" OpenGL questions. His effort alone has made me a great SGI
fan.
Charlie Hotchkiss <chotchkiss@namg.us.anritsu.com> -- Worked on improving
and enhancing the HUD code. Lots of code style tips and code tweaks ...
Bruce Jackson <e.b.jackson@larc.nasa.gov>
http://agcbwww.larc.nasa.gov/People/ebj.html -- Developed the
LaRCsim code which we use to provide the flight model. Also
patiently answered my many, many questions.
Reto Koradi <kor@mol.biol.ethz.ch> http://www.mol.biol.ethz.ch/~kor
Helped me get on track with setting up fog effects.
Bob Kuehne <rpk@sgi.com>
Redid the Makefile system so it is simpler and more robust.
Eric Mitchell <mitchell@mars.ark.com>
Contributed some topnotch scenery textures.
Jonathan R Shewchuk <Jonathan_R_Shewchuk@ux4.sp.cs.cmu.edu>
Author of the Triangle program. Triangle is used to calculate the
Delauney triangulation of our irregular terrain.
U.S. Geological Survey - http://edcwww.cr.usgs.gov/doc/edchome/ndcdb/ndcdb.html
Provided geographic data used by this project
Durk Talsma <pn_talsma@macmail.psy.uva.nl>
Accurate Sun, Moon, and Planets. Sun changes color based on
position in sky. Moon has correct phase and blends well into the
sky. Planets are correctly positioned and have proper magnitude.
Carmelo Volpe <carmelo.volpe@csb.ki.se>
Porting Flight Gear to the Metro Works development environment (PC/Mac)
Robert Allan Zeh <raz@cmg.FCNBD.COM>
Helped me tremendously in figuring out the Cygnus win32 compiler and
how to link with .dll's. With out him the first runable win32
version of FG would have been impossible.

View file

@ -1,65 +0,0 @@
--------------------------------------------------------------------------
| Todo
--------------------------------------------------------------------------
12/29/97 - View frustum culling
1/12/98 - Fix time problem on win32
1/5/98 - Create a development "roadmap"
12/30/97 - fix winding problem with tri-strips in obj.c (invert normals)
12/29/97 - Unify sun position render code with existing sunpos
calculations so the sun doesn't do it's little jump every
hour.
12/29/97 - Add a mechanism to parse command line options
* A simple clear-screen sky.
* No fog.
* No astronomy.
* Less detailed terrain.
* Texture - but no MIP-mapping.
* Texture - but no bilinear blending.
* No texture.
12/29/97 - sky tweaking
Steve Baker writes:
So, by building the sky in the flattened shape, we can have it be
very foggy at the horizon and clear blue overhead.
The other important feature of this model is the colours. We
colour each vertex of the dish individually to allow for cute
sunsets, a darker blue overhead than at the horizon in daylight, a
gradual darkening of the sky as a function of altitude for very
high altitude flight - into space. Also we tint the horizon more
in the direction of the sun so that sunset starts where the sun
goes down - and the sky remains blue on the opposite side of the
sky - then as the sun gets lower, the colour spreads outwards all
around the sky and the black of night creeps in slowly from the
opposite side of the sky from the sunset.
We also like to tint the bottom edge of the sky with white - even
in broad daylight - so it looks fuzzy - even when there is very
little fog to achieve that effect.
We use a text file that contains a lookup table relating the sun
angle relative to the horizon to:
* The colour at the top of the sky dome,
* The colour of the horizon nearest to the sun
* The colour of the horizon farthest from the sun
* The colour of the texture environment blend for the clouds.
* The fog colour.
We can then tweak that file to set up all the conditions. The
realtime system interpolates the horizon colours all around the edge
of the sky.
12/29/97 - Ground collision detection
12/29/97 - glut windows or something for panel area - consider 3d
panels, careful of texture memory problems.
1/5/98 - bzflag sound code might be able to work for us.

View file

@ -1,36 +0,0 @@
#---------------------------------------------------------------------------
# Makefile
#
# Written by Curtis Olson, started May 1997.
#
# Copyright (C) 1997 Curtis L. Olson - curt@infoplane.com
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
# $Id$
# (Log is kept at end of this file)
#---------------------------------------------------------------------------
ARLIBRARY = __LIB_NAME_HERE__
TARGETS = $(ARLIBRARY)
CFILES = __C_SRC_HERE__
CXXFILES = __CXX_SRC_HERE__
LDIRT = $(FG_ROOT_LIB)/$(ARLIBRARY)
include $(FG_ROOT_SRC)/commondefs
include $(COMMONRULES)

View file

@ -1,172 +0,0 @@
# emacs make tag: -*- Mode: Makefile -*-
#---------------------------------------------------------------------------
# Define the version
#---------------------------------------------------------------------------
FG_VERSION_MAJOR = 0
FG_VERSION_MINOR = 38
FG_VERSION = $(FG_VERSION_MAJOR).$(FG_VERSION_MINOR)
#---------------------------------------------------------------------------
# Choose your weapons
#---------------------------------------------------------------------------
CC = g++
CXX = g++
CCDEPFLAG = -M
LD = ld
AR = ar
RANLIB = ranlib
FLEX = flex -f -L
BISON = bison -v --no-lines
RM = rm
MV = mv
CP = cp
LN = ln -sf
TAR = tar
#---------------------------------------------------------------------------
# Global Compile Options
#
# You may set FG_CFLAGS to include any of the following options depending on
# your environment:
#
# -g - Compile with debugging symbols
# -Wall - Enable full compiler warnings
# -O2 - Enable compiler optimization
#
# Other potential compiler optimization flags:
#
# -O3 -fPIC -funroll-loops -mpentium -malign-loops=2
# -malign-jumps=2 -malign-functions=2 -fexpensive-optimizations
# -pedantic -ffast-math
#
#---------------------------------------------------------------------------
GLOBAL_CFLAGS = -g -Wall -DVERSION=\"$(FG_VERSION)\"
#---------------------------------------------------------------------------
# Platform specific compile options, these should be set with FG_CFLAGS
# below. These have been predefined for the supported platforms below.
#
# -DUSE_ITIMER - Use setitimer(), getitimer(), and signal() to mimic
# a real time system and call the flight model routines
# at a regular interval, rather than between screen updates
# which can be highly variable. This can make the flight
# model calculations much smoother.
#
# -DUSE_FTIME - Use ftime() to get an accurate current time instead of
# gettimeofday()
#
# -DUSE_RAND - Use rand() instead of random()
#
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# Debugging options.
#
# Uncomment the following two lines to enable OpenGL function call tracing.
# This mechanism is provided courtesy of Steve Baker <sbaker@link.com>
#---------------------------------------------------------------------------
# FG_DEBUG_FLAGS = -DXGL_TRACE
# FG_DEBUG_LIBS = ../XGL/libXGL.a
#---------------------------------------------------------------------------
# Uncomment one of the following sections depending on your system
#
# You may set FG_GRAPHICS to include any of the following options depending
# on your environment:
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# Linux/Mesa
#
INTERFACE_LIBS = -lglut
MESA_LIBS = -L/usr/lib/mesa -lMesatk -lMesaaux -lMesaGLU -lMesaGL
X11_LIBS = -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11
GRAPHICS_LIBS = $(MESA_LIBS) $(X11_LIBS)
FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS)
EXT =
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# SGI IRIX
# (Surprisingly, this also works on our SunOS 4.x machine with the
# way we have Mesa & Glut installed.)
#
# INTERFACE_LIBS = -lglut
# GRAPHICS_LIBS = -lGLU -lGL -lXmu -lX11
# FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS)
# EXT =
# TAR = gtar
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# Sun/Solaris
#
# VERSION=\"$(VERSION)\"
# INTERFACE_LIBS = -lglut
# GRAPHICS_LIBS = -L/opt/X11R6/lib -lGLU -lGL -lXext -lXmu -lXi -lX11 -lsocket
# FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS)
# EXT =
# TAR = gtar
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# Cygnus Win32 (gcc based) compiled against SGI's opengl and a dynamic GLUT
#
# INTERFACE_LIBS = -lglut
# GRAPHICS_LIBS = -lglu -lopengl -luser32 -lgdi32
# FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS) -I$(FG_ROOT)/Win32/include \
# -DWIN32 -DUSE_RAND
# LLDFLAGS = -L$(FG_ROOT)/Win32/lib
# EXT = .exe
# LN = cp
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# [OLD] Cygnus Win32 (gcc based) with a static version of the GLUT toolkit
# with MSOpenGL95.exe ...
#
# INTERFACE_LIBS = ../Win32/libglut.a
# GRAPHICS_LIBS = -lglu32 -lopengl32 -luser32 -lgdi32
# FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS) -DWIN32 -DUSE_RAND
# EXT = .exe
# LN = cp
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------
# do not modify anything below this line
#---------------------------------------------------------------------------
OBJECTS = $(CFILES:.c=.o) $(CXXFILES:.cxx=.o)
# DEPENDS = $(CFILES:.c=.d) $(CXXFILES:.cxx=.d)
MAKEDEPENDFILE = depend
CDEFS = $(LCDEFS)
CFLAGS = $(FG_CFLAGS) -I$(FG_ROOT_SRC) $(LCFLAGS)
CXXDEFS = $(LCXXDEFS)
CXXFLAGS = $(CFLAGS)
LDDEFS = $(LLDDEFS)
LDFLAGS = $(LLDFLAGS) -L$(FG_ROOT_LIB)
DIRT = $(LDIRT)
VPATH = $(FG_ROOT_LIB)
COMMONRULES = $(FG_ROOT_SRC)/commonrules

View file

@ -1,41 +0,0 @@
# emacs make tag: -*- Mode: Makefile -*-
default: $(TARGETS)
.SUFFIXES: .d .cxx .c .o
$(ARLIBRARY): $(OBJECTS)
$(AR) rv $(ARLIBRARY) $(OBJECTS)
$(RANLIB) $(ARLIBRARY)
echo $(VPATH)
$(MV) $(ARLIBRARY) $(FG_ROOT_LIB)
touch $(FG_ROOT_LIB)/stamp_libs
$(LDLIBTARGET): $(OBJECTS)
$(LD) -o $(LDLIBRARY) $(LDFLAGS) $(OBJECTS)
$(MV) $(LDLIBRARY) $(LDLIBTARGET)
depend: $(DEPENDS)
cat $(DEPENDS) > $(MAKEDEPENDFILE)
.cxx.d:
$(CXX) $(CXXFLAGS) $(CXXDEFS) -c $< -MD
.cxx.o:
$(CXX) $(CXXFLAGS) $(CXXDEFS) -c $<
.c.d:
$(CC) $(CFLAGS) $(CDEFS) -c $< -MD
.c.o:
$(CC) $(CFLAGS) $(CDEFS) -c $<
clean:
rm -f $(OBJECTS) $(TARGET) $(DIRT)
clobber: clean
rm -f *.d *.o *.a *.os2 *~ core # $(MAKEDEPENDFILE)
include $(MAKEDEPENDFILE)

View file

@ -1,22 +0,0 @@
#!/bin/csh
set GENMAKEBASE=${FG_ROOT_SRC}
set ARLIBDIRS="Aircraft Astro Cockpit Controls Flight Flight/Slew Joystick Scenery Time Weather"
set MUSTDOMANUALLY="Math Flight/LaRCsim XGL"
set AR_PROTOMAKE=${GENMAKEBASE}/armake.proto
echo $ARLIBDIRS
foreach dir (${ARLIBDIRS})
cd $dir
set cfiles=`ls *.c | sed -e's%^M% %'`
set cxxfiles=`ls *.cxx`
sed \
-e "s%__LIB_NAME_HERE__%lib`basename ${dir}`.a%g" \
-e "s%__CXX_SRC_HERE__%${cxxfiles}%g" \
-e "s%__C_SRC_HERE__%${cfiles}%g" \
${AR_PROTOMAKE} > Makefile
cd ${GENMAKEBASE}
end

View file

@ -1,41 +0,0 @@
#!/usr/local/bin/perl
#---------------------------------------------------------------------------
# mkmfos2 = MaKe MakeFile OS2
#
# Written by Curtis Olson, started July 1997.
#
# Copyright (C) 1997 Curtis L. Olson - curt@infoplane.com
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
# $Id$
# (Log is kept at end of this file)
#---------------------------------------------------------------------------
while ( <> ) {
s/\.o\b/\.obj/g;
s/\.a\b/\.lib/g;
s/\bdepend\b/depend.os2/g;
s/\$\(MAKE\)/\$\(MAKE\) -f Makefile.os2/g;
print $_;
}
#---------------------------------------------------------------------------
# $Log$
# Revision 1.1 1997/07/20 02:18:32 curt
# Initial revision.
#