251 lines
8.3 KiB
Makefile
251 lines
8.3 KiB
Makefile
# Hey Emacs, this is a Makefile. -*- Mode: Makefile -*-
|
|
#
|
|
# Common Makefile section
|
|
#
|
|
# 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)
|
|
#---------------------------------------------------------------------------
|
|
|
|
|
|
#---------------------------------------------------------------------------
|
|
# Define the version
|
|
#---------------------------------------------------------------------------
|
|
|
|
FG_VERSION_MAJOR = 0
|
|
FG_VERSION_MINOR = 21
|
|
FG_VERSION = $(FG_VERSION_MAJOR).$(FG_VERSION_MINOR)
|
|
|
|
|
|
#---------------------------------------------------------------------------
|
|
# Choose your weapons
|
|
#---------------------------------------------------------------------------
|
|
|
|
CC = gcc
|
|
FLEX = flex -f -L
|
|
BISON = bison -v --no-lines
|
|
AR = ar
|
|
RANLIB = ranlib
|
|
RM = rm
|
|
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
|
|
#
|
|
# -O3 -fomit-frame-pointer -funroll-all-loops -ffast-math
|
|
# - Other potential compiler optimization flags
|
|
#
|
|
# -
|
|
#---------------------------------------------------------------------------
|
|
|
|
GLOBAL_CFLAGS = -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.
|
|
#
|
|
# -DNO_PRINTF - Disable all printf()'s. Works by replacing the printf
|
|
# fuction with an empty function.
|
|
#
|
|
# -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 with the GLUT toolkit
|
|
#
|
|
INTERFACE_FLAGS = -DGLUT
|
|
INTERFACE_LIBS = -lglut
|
|
INTERFACE_FILES = GLUTmain.c GLUTkey.c
|
|
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)
|
|
#---------------------------------------------------------------------------
|
|
|
|
#---------------------------------------------------------------------------
|
|
# SGI IRIX with the GLUT toolkit
|
|
# (Surprisingly, this also works on our SunOS 4.x machine with the
|
|
# way we have Mesa & Glut installed.)
|
|
#
|
|
# INTERFACE_FLAGS = -DGLUT
|
|
# INTERFACE_LIBS = -lglut
|
|
# INTERFACE_FILES = GLUTmain.c GLUTkey.c
|
|
# GRAPHICS_LIBS = -lGLU -lGL -lXmu -lX11
|
|
# FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS)
|
|
# TAR = gtar
|
|
#---------------------------------------------------------------------------
|
|
|
|
#---------------------------------------------------------------------------
|
|
# Sun/Solaris with the GLUT toolkit
|
|
#
|
|
# VERSION=\"$(VERSION)\"
|
|
# INTERFACE_FLAGS = -DGLUT
|
|
# INTERFACE_LIBS = -lglut
|
|
# INTERFACE_FILES = GLUTmain.c GLUTkey.c
|
|
# GRAPHICS_LIBS = -L/opt/X11R6/lib -lGLU -lGL -lXext -lXmu -lXi -lX11 -lsocket
|
|
# FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS)
|
|
# TAR = gtar
|
|
#---------------------------------------------------------------------------
|
|
|
|
#---------------------------------------------------------------------------
|
|
# Cygnus Win32 (gcc based) with a static version of the GLUT toolkit
|
|
#
|
|
# INTERFACE_FLAGS = -DGLUT
|
|
# INTERFACE_LIBS = ../Win32/libglut.a
|
|
# INTERFACE_FILES = GLUTmain.c GLUTkey.c
|
|
# GRAPHICS_LIBS = -lglu32 -lopengl32 -luser32 -lgdi32
|
|
# FG_CFLAGS = $(GLOBAL_CFLAGS) $(FG_DEBUG_FLAGS) -DWIN32 -DUSE_RAND
|
|
# LN = ren
|
|
#---------------------------------------------------------------------------
|
|
|
|
|
|
#---------------------------------------------------------------------------
|
|
# $Log$
|
|
# Revision 1.29 1998/01/05 18:44:33 curt
|
|
# Add an option to advance/decrease time from keyboard.
|
|
#
|
|
# Revision 1.28 1997/12/30 23:08:50 curt
|
|
# Version 0.21
|
|
#
|
|
# Revision 1.27 1997/12/30 20:47:08 curt
|
|
# Version 0.20
|
|
#
|
|
# Revision 1.26 1997/12/17 23:13:18 curt
|
|
# Changes and tweaks to go to version 0.19 (Plus tweaks to Solaris support)
|
|
#
|
|
# Revision 1.25 1997/12/15 23:54:26 curt
|
|
# Add xgl wrappers for debugging.
|
|
# Generate terrain normals on the fly.
|
|
#
|
|
# Revision 1.24 1997/12/12 21:41:24 curt
|
|
# More light/material property tweaking ... still a ways off.
|
|
#
|
|
# Revision 1.23 1997/12/12 19:52:32 curt
|
|
# Solaris tweaks.
|
|
#
|
|
# Revision 1.22 1997/12/11 04:43:53 curt
|
|
# Fixed sun vector and lighting problems. I thing the moon is now lit
|
|
# correctly.
|
|
#
|
|
# Revision 1.21 1997/12/10 01:19:42 curt
|
|
# Tweaks for verion 0.15 release.
|
|
#
|
|
# Revision 1.20 1997/12/09 04:25:25 curt
|
|
# Working on adding a global lighting params structure.
|
|
#
|
|
# Revision 1.19 1997/11/25 19:25:27 curt
|
|
# Changes to integrate Durk's moon/sun code updates + clean up.
|
|
#
|
|
# Revision 1.18 1997/10/28 19:35:41 curt
|
|
# Organizational changes.
|
|
#
|
|
# Revision 1.17 1997/10/25 03:30:02 curt
|
|
# Misc. tweaks.
|
|
#
|
|
# Revision 1.16 1997/10/25 03:24:21 curt
|
|
# Incorporated sun, moon, and star positioning code contributed by Durk Talsma.
|
|
#
|
|
# Revision 1.15 1997/09/23 00:29:27 curt
|
|
# Tweaks to get things to compile with gcc-win32.
|
|
#
|
|
# Revision 1.14 1997/09/16 22:14:47 curt
|
|
# Tweaked time of day lighting equations. Don't draw stars during the day.
|
|
#
|
|
# Revision 1.13 1997/09/04 02:17:19 curt
|
|
# Shufflin' stuff.
|
|
#
|
|
# Revision 1.12 1997/08/25 20:27:21 curt
|
|
# Merged in initial HUD and Joystick code.
|
|
#
|
|
# Revision 1.11 1997/08/22 21:34:33 curt
|
|
# Doing a bit of reorganizing and house cleaning.
|
|
#
|
|
# Revision 1.10 1997/08/16 12:22:19 curt
|
|
# Tweaks for new version.
|
|
#
|
|
# Revision 1.9 1997/07/19 22:41:35 curt
|
|
# tweaks
|
|
#
|
|
# Revision 1.8 1997/07/18 23:41:20 curt
|
|
# Tweaks for building with Cygnus Win32 compiler.
|
|
#
|
|
# Revision 1.7 1997/07/18 14:28:34 curt
|
|
# Hacked in some support for wind/turbulence.
|
|
#
|
|
# Revision 1.6 1997/07/16 20:04:42 curt
|
|
# Minor tweaks to aid Win32 port.
|
|
#
|
|
# Revision 1.5 1997/07/12 02:25:53 curt
|
|
# Added ranlib.
|
|
#
|
|
# Revision 1.4 1997/07/12 02:13:04 curt
|
|
# Add ftime() support for those that don't have gettimeofday()
|
|
#
|
|
# Revision 1.3 1997/07/09 21:31:08 curt
|
|
# Working on making the ground "hard."
|
|
#
|
|
# Revision 1.2 1997/07/07 20:59:48 curt
|
|
# Working on scenery transformations to enable us to fly fluidly over the
|
|
# poles with no discontinuity/distortion in scenery.
|
|
#
|
|
# Revision 1.1 1997/06/27 21:38:00 curt
|
|
# Working on Makefile structure.
|
|
#
|