| 1 |
# ************** <auto-copyright.pl BEGIN do not edit this line> ************** |
|---|
| 2 |
# |
|---|
| 3 |
# VR Juggler is (C) Copyright 1998, 1999, 2000, 2001, 2002 |
|---|
| 4 |
# by Iowa State University |
|---|
| 5 |
# |
|---|
| 6 |
# Original Authors: |
|---|
| 7 |
# Allen Bierbaum, Christopher Just, |
|---|
| 8 |
# Patrick Hartling, Kevin Meinert, |
|---|
| 9 |
# Carolina Cruz-Neira, Albert Baker |
|---|
| 10 |
# |
|---|
| 11 |
# This library is free software; you can redistribute it and/or |
|---|
| 12 |
# modify it under the terms of the GNU Library General Public |
|---|
| 13 |
# License as published by the Free Software Foundation; either |
|---|
| 14 |
# version 2 of the License, or (at your option) any later version. |
|---|
| 15 |
# |
|---|
| 16 |
# This library is distributed in the hope that it will be useful, |
|---|
| 17 |
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|---|
| 18 |
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|---|
| 19 |
# Library General Public License for more details. |
|---|
| 20 |
# |
|---|
| 21 |
# You should have received a copy of the GNU Library General Public |
|---|
| 22 |
# License along with this library; if not, write to the |
|---|
| 23 |
# Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
|---|
| 24 |
# Boston, MA 02111-1307, USA. |
|---|
| 25 |
# |
|---|
| 26 |
# ----------------------------------------------------------------- |
|---|
| 27 |
# File: $RCSfile$ |
|---|
| 28 |
# Date modified: $Date$ |
|---|
| 29 |
# Version: $Revision$ |
|---|
| 30 |
# ----------------------------------------------------------------- |
|---|
| 31 |
# |
|---|
| 32 |
# *************** <auto-copyright.pl END do not edit this line> *************** |
|---|
| 33 |
|
|---|
| 34 |
# ----------------------------------------------------------------------------- |
|---|
| 35 |
# This file <Makefile.base> provides variable information and targets shared |
|---|
| 36 |
# by all Makefiles in the VR Juggler source tree. It requires GNU make. |
|---|
| 37 |
# |
|---|
| 38 |
# Generated for use on @PLATFORM@ |
|---|
| 39 |
# ----------------------------------------------------------------------------- |
|---|
| 40 |
# All Makefiles in the source tree should include this file for maximum |
|---|
| 41 |
# information sharing. |
|---|
| 42 |
# |
|---|
| 43 |
# ** NOTE: ** |
|---|
| 44 |
# ** Shared targets are defined here, so any files that include this file ** |
|---|
| 45 |
# ** should define a default target BEFORE including this file. ** |
|---|
| 46 |
# ----------------------------------------------------------------------------- |
|---|
| 47 |
# Variables defined here are: |
|---|
| 48 |
# |
|---|
| 49 |
# bindir - Path to bin directory containing executables (usually |
|---|
| 50 |
# ${exec_prefix}/bin). |
|---|
| 51 |
# datadir - Path to a directory generally sharing platform-independent |
|---|
| 52 |
# data (usually ${prefix}/share). |
|---|
| 53 |
# exec_prefix - Path to base directory where executables will be (usually |
|---|
| 54 |
# ${prefix}). |
|---|
| 55 |
# libdir - Path to directory containing shared and static libraries |
|---|
| 56 |
# (usually ${exec_prefix}/lib). |
|---|
| 57 |
# libexecdir - Path to libexec directory that generally contains |
|---|
| 58 |
# executables not called directly by users (usually |
|---|
| 59 |
# ${exec_prefix}/libexec). |
|---|
| 60 |
# mtreedir - Base directory containing the mtree directory hierarchy |
|---|
| 61 |
# specifications. |
|---|
| 62 |
# prefix - Base path used for installation and other things. |
|---|
| 63 |
# releasedir - The absolute path to the release directory. |
|---|
| 64 |
# sbindir - Path to sbin directory containing executables (usually |
|---|
| 65 |
# ${exec_prefix}/sbin). |
|---|
| 66 |
# scriptdir - The path to the directory containing scripts used in the |
|---|
| 67 |
# build and install/release process. |
|---|
| 68 |
# sysconfdir - System configuration directory (usually ${prefix}/etc). |
|---|
| 69 |
# topdir - The top of the build tree. |
|---|
| 70 |
# VJROOT_ABS - The absolute path to the root of the VR Juggler source |
|---|
| 71 |
# tree. |
|---|
| 72 |
# VJ_SHARE_DIR - The name of the directory where the VR Juggler data files, |
|---|
| 73 |
# test programs, and sample apps are installed. This is |
|---|
| 74 |
# only the name of the directory, not the full path to it. |
|---|
| 75 |
# |
|---|
| 76 |
# AR - Path to ar(1) (or equivalent program). |
|---|
| 77 |
# ARFLAGS - Flags for ${AR}. |
|---|
| 78 |
# CC - Path to C compiler. |
|---|
| 79 |
# CXX - Path to C++ compiler. |
|---|
| 80 |
# CPP - Command for invoking the C preprocessor. |
|---|
| 81 |
# CXXCPP - Command for invoking the C preprocessor used by the C++ |
|---|
| 82 |
# compiler. |
|---|
| 83 |
# CFLAGS - Flags for ${CC}. |
|---|
| 84 |
# CPPFLAGS - Flags for ${CPP} and ${CXXCPP}. |
|---|
| 85 |
# CXXFLAGS - Flags for ${CXX}. |
|---|
| 86 |
# DEFS - Command-line preprocessor definitions (-Dvariable=value). |
|---|
| 87 |
# DEP_GEN_FLAG - Flag passed to the compiler to generate dependencies. |
|---|
| 88 |
# DEPENDFLAGS - Flags passed to makedepend(1) (or equivalent program for |
|---|
| 89 |
# generating dependencies). |
|---|
| 90 |
# DEPEND_EXTRAS - Flags not recognized by makedepend(1) that may be |
|---|
| 91 |
# necessary in ${CFLAGS} or ${CXXFLAGS}. |
|---|
| 92 |
# OWNER_NAME - The name of the user that will own the files. |
|---|
| 93 |
# GROUP_NAME - The name of the group that will own the files. |
|---|
| 94 |
# FILE_PERMS - Normal file permissions. |
|---|
| 95 |
# EXEC_PERMS - Executable file permissions. |
|---|
| 96 |
# DIR_PERMS - Directory permissions. |
|---|
| 97 |
# INCLUDES - Additions to the include path (-I/path/to/include). |
|---|
| 98 |
# LD - Path to ld(1) (or equivalent program). |
|---|
| 99 |
# LDFLAGS - Flags for ${LD}. |
|---|
| 100 |
# LDOPTS - Extra, often platform-specific, options for the linker. |
|---|
| 101 |
# LIBS - Extra external libraries needed at link time. |
|---|
| 102 |
# LN_S - Working 'ln -s' command. |
|---|
| 103 |
# MKDEPS_CC - Compiler for C dependencies |
|---|
| 104 |
# MKDEPS_CXX - Compiler for CXX dependencies |
|---|
| 105 |
# MKPATH - Path to shared vj.*.mk file directory. |
|---|
| 106 |
# MTREE_CMD - Path to a BSD-compatible mtree. |
|---|
| 107 |
# OBJ_FILE_SUFFIX - Suffix for object file names (e.g., "o" or "obj"). |
|---|
| 108 |
# OBJ_NAME_FLAG - Flag passed to the compiler to name an object file. |
|---|
| 109 |
# OBJDIR - Path to the directory where the object files will be |
|---|
| 110 |
# built. |
|---|
| 111 |
# PERL - Path to Perl 5 binary. |
|---|
| 112 |
# RANLIB - Path to ranlib(1) binary if it is available. ':' |
|---|
| 113 |
# otherwise. |
|---|
| 114 |
# |
|---|
| 115 |
# C_COMPILE - Command for compiling C code. |
|---|
| 116 |
# CXX_COMPILE - Command for compiling C++ code. |
|---|
| 117 |
# |
|---|
| 118 |
# MKDEPS_C_COMPILE - Command for compiling C dependencies |
|---|
| 119 |
# MKDEPS_CXX_COMPILE - Command for compiling C++ dependencies |
|---|
| 120 |
# |
|---|
| 121 |
# ABI - Application Binary Interface type. This may be used for |
|---|
| 122 |
# other binary types when supported by the operating |
|---|
| 123 |
# system (e.g., "ELF", "N32" or "64"). |
|---|
| 124 |
# LIBBITSUF - Suffix for the library path used by the linker on IRIX |
|---|
| 125 |
# only. For n32 binaries, it will be 32. For 64-bit |
|---|
| 126 |
# binaries, it will be 64. |
|---|
| 127 |
# PLATFORM - The operating system abbreviation on which the library is |
|---|
| 128 |
# being built. |
|---|
| 129 |
# |
|---|
| 130 |
# VJ_LIBRARY - The base name of the core Juggler library that will be |
|---|
| 131 |
# built with no file extension. |
|---|
| 132 |
# GL_LIBRARY - The base name of the OpenGL Juggler API library with no |
|---|
| 133 |
# file extension. |
|---|
| 134 |
# PF_LIBRARY - The base name of the Performer Juggler API library with no |
|---|
| 135 |
# file extension. |
|---|
| 136 |
# ----------------------------------------------------------------------------- |
|---|
| 137 |
# Targets defined here are: |
|---|
| 138 |
# |
|---|
| 139 |
# Suffix rules for .c => .o and .cpp => .o. |
|---|
| 140 |
# clean: Standard directory clean-up target. |
|---|
| 141 |
# ----------------------------------------------------------------------------- |
|---|
| 142 |
|
|---|
| 143 |
# ----------------------------------------------------------------------------- |
|---|
| 144 |
# Base variables needed by all Makefiles. |
|---|
| 145 |
# ----------------------------------------------------------------------------- |
|---|
| 146 |
bindir = @bindir@ |
|---|
| 147 |
datadir = @datadir@ |
|---|
| 148 |
exec_prefix = @exec_prefix@ |
|---|
| 149 |
libdir = @libdir@ |
|---|
| 150 |
libexecdir = @libexecdir@ |
|---|
| 151 |
mtreedir = ${topdir}/release/mtree |
|---|
| 152 |
prefix = @prefix@ |
|---|
| 153 |
releasedir = @SAFE_VJROOT_ABS@/release |
|---|
| 154 |
sbindir = @sbindir@ |
|---|
| 155 |
scriptdir = ${releasedir}/scripts |
|---|
| 156 |
sysconfdir = @sysconfdir@ |
|---|
| 157 |
topdir = @topdir@ |
|---|
| 158 |
VJROOT_ABS = @SAFE_VJROOT_ABS@ |
|---|
| 159 |
VJ_SHARE_DIR = @VJ_SHARE_DIR@ |
|---|
| 160 |
|
|---|
| 161 |
AR = @AR@ ${EXTRA_ARFLAGS} ${ARFLAGS} |
|---|
| 162 |
ARFLAGS = @ARFLAGS@ |
|---|
| 163 |
AR_NAME_FLAG = @AR_NAME_FLAG@ |
|---|
| 164 |
CC = @CC@ |
|---|
| 165 |
CXX = @CXX@ |
|---|
| 166 |
CPP = @CPP@ |
|---|
| 167 |
CXXCPP = @CXXCPP@ |
|---|
| 168 |
CFLAGS = @CFLAGS@ ${OPTIMIZER} ${CFLAGS_DYNLIB} |
|---|
| 169 |
CFLAGS_DYNLIB = @CFLAGS_DYNLIB@ |
|---|
| 170 |
CPPFLAGS = @CPPFLAGS@ |
|---|
| 171 |
CXXFLAGS = @CXXFLAGS@ ${OPTIMIZER} ${CXXFLAGS_DYNLIB} |
|---|
| 172 |
CXXFLAGS_DYNLIB = @CXXFLAGS_DYNLIB@ |
|---|
| 173 |
DEFS = @DEFS@ -DVJ_SHARE_DIR="\"${VJ_SHARE_DIR}\"" |
|---|
| 174 |
DEP_GEN_FLAG = @DEP_GEN_FLAG@ |
|---|
| 175 |
DEPENDFLAGS = @DEPENDFLAGS@ @INCLUDES@ -I${VJROOT_ABS} -I${topdir} |
|---|
| 176 |
DEPEND_EXTRAS = @DEPEND_EXTRAS@ ${DEFS} |
|---|
| 177 |
INCLUDES = @INCLUDES@ -I${VJROOT} -I${topdir} |
|---|
| 178 |
INSTALL = @INSTALL@ |
|---|
| 179 |
LD = @LD@ ${EXTRA_LDFLAGS} |
|---|
| 180 |
LDFLAGS = @LDFLAGS@ -L/usr/lib${LIBBITSUF} -L/usr/lib |
|---|
| 181 |
LDOPTS = @LDOPTS@ ${EXTRA_LDOPTS} |
|---|
| 182 |
LDOPTS_DBG = @LDOPTS_DBG@ |
|---|
| 183 |
LDOPTS_OPT = @LDOPTS_OPT@ |
|---|
| 184 |
LIBS = @LIBS@ |
|---|
| 185 |
LN_S = @LN_S@ |
|---|
| 186 |
MAKEFLAGS += --no-print-directory |
|---|
| 187 |
MKDEPS_CC = @CC@ |
|---|
| 188 |
MKDEPS_CXX = @CXX@ |
|---|
| 189 |
MKPATH = ${VJROOT_ABS}/mk |
|---|
| 190 |
MTREE_CMD = @MTREE_CMD@ |
|---|
| 191 |
OBJ_FILE_SUFFIX = @OBJ_FILE_SUFFIX@ |
|---|
| 192 |
OBJ_NAME_FLAG = @OBJ_NAME_FLAG@ |
|---|
| 193 |
PERL = @PERL@ |
|---|
| 194 |
RANLIB = @RANLIB@ |
|---|
| 195 |
|
|---|
| 196 |
# Installation information (permissions, ownership). |
|---|
| 197 |
OWNER_NAME = @OWNER_NAME@ |
|---|
| 198 |
GROUP_NAME = @GROUP_NAME@ |
|---|
| 199 |
FILE_PERMS = @FILE_PERMS@ |
|---|
| 200 |
EXEC_PERMS = @EXEC_PERMS@ |
|---|
| 201 |
DIR_PERMS = @DIR_PERMS@ |
|---|
| 202 |
|
|---|
| 203 |
# Allow overriding the default value of ${OBJDIR} by setting ${BASE_OBJDIR} |
|---|
| 204 |
# (probably using an externally defined value). |
|---|
| 205 |
ifdef BASE_OBJDIR |
|---|
| 206 |
OBJDIR := ${BASE_OBJDIR} |
|---|
| 207 |
else |
|---|
| 208 |
OBJDIR = . |
|---|
| 209 |
endif |
|---|
| 210 |
|
|---|
| 211 |
# ----------------------------------------------------------------------------- |
|---|
| 212 |
# Compiler command lines. |
|---|
| 213 |
# ----------------------------------------------------------------------------- |
|---|
| 214 |
C_COMPILE = ${CC} ${DEFS} ${INCLUDES} ${CPPFLAGS} ${CFLAGS} |
|---|
| 215 |
CXX_COMPILE = ${CXX} ${DEFS} ${INCLUDES} ${CPPFLAGS} ${CXXFLAGS} |
|---|
| 216 |
|
|---|
| 217 |
# ----------------------------------------------------------------------------- |
|---|
| 218 |
# Makedepend commands |
|---|
| 219 |
# ----------------------------------------------------------------------------- |
|---|
| 220 |
MKDEPS_C_COMPILE = ${MKDEPS_CC} ${DEFS} ${INCLUDES} ${CPPFLAGS} ${CFLAGS} |
|---|
| 221 |
MKDEPS_CXX_COMPILE = ${MKDEPS_CXX} ${DEFS} ${INCLUDES} ${CPPFLAGS} ${CXXFLAGS} |
|---|
| 222 |
|
|---|
| 223 |
# ----------------------------------------------------------------------------- |
|---|
| 224 |
# Platform- and binary-specific options. The assignments preceding the |
|---|
| 225 |
# ifeq ... endif blocks are the default values. Depending on the value of |
|---|
| 226 |
# ${ABI}, further settings may be made to allow for building with multiple |
|---|
| 227 |
# ABIs. |
|---|
| 228 |
# ----------------------------------------------------------------------------- |
|---|
| 229 |
ifdef vjABI |
|---|
| 230 |
ifeq (${vjABI}, N32_M3) |
|---|
| 231 |
ABI = N32 |
|---|
| 232 |
ISA = mips3 |
|---|
| 233 |
endif |
|---|
| 234 |
ifeq (${vjABI}, N32_M4) |
|---|
| 235 |
ABI = N32 |
|---|
| 236 |
ISA = mips4 |
|---|
| 237 |
endif |
|---|
| 238 |
ifeq (${vjABI}, 64_M3) |
|---|
| 239 |
ABI = 64 |
|---|
| 240 |
ISA = mips3 |
|---|
| 241 |
endif |
|---|
| 242 |
ifeq (${vjABI}, 64_M4) |
|---|
| 243 |
ABI = 64 |
|---|
| 244 |
ISA = mips4 |
|---|
| 245 |
endif |
|---|
| 246 |
ifeq (${vjABI}, ELF_i386) |
|---|
| 247 |
ABI = ELF |
|---|
| 248 |
ISA = i386 |
|---|
| 249 |
endif |
|---|
| 250 |
ifeq (${vjABI}, HP) |
|---|
| 251 |
ABI = HP |
|---|
| 252 |
ISA = PA-RISC |
|---|
| 253 |
endif |
|---|
| 254 |
ifeq (${vjABI}, HP64) |
|---|
| 255 |
ABI = HP64 |
|---|
| 256 |
ISA = PA-RISC |
|---|
| 257 |
endif |
|---|
| 258 |
else |
|---|
| 259 |
ABI = @ABI@ |
|---|
| 260 |
ISA = @ISA@ |
|---|
| 261 |
LIBBITSUF = @LIBBITSUF@ |
|---|
| 262 |
endif |
|---|
| 263 |
|
|---|
| 264 |
PLATFORM = @PLATFORM@ |
|---|
| 265 |
|
|---|
| 266 |
ifeq (${ABI}, N32) |
|---|
| 267 |
ARFLAGS := -n32 ${ARFLAGS} |
|---|
| 268 |
CFLAGS += -n32 |
|---|
| 269 |
CXXFLAGS += -n32 |
|---|
| 270 |
LDOPTS += -n32 |
|---|
| 271 |
LIBBITSUF = 32 |
|---|
| 272 |
endif |
|---|
| 273 |
ifeq (${ABI}, 64) |
|---|
| 274 |
ARFLAGS := -64 ${ARFLAGS} |
|---|
| 275 |
CFLAGS += -64 |
|---|
| 276 |
CXXFLAGS += -64 |
|---|
| 277 |
LDOPTS += -64 |
|---|
| 278 |
LIBBITSUF = 64 |
|---|
| 279 |
endif |
|---|
| 280 |
ifeq (${ABI}, HP64) |
|---|
| 281 |
CFLAGS += +DD64 |
|---|
| 282 |
CXXFLAGS += +DD64 |
|---|
| 283 |
LDOPTS += +DD64 |
|---|
| 284 |
LIBBITSUF = /pa20_64 |
|---|
| 285 |
endif |
|---|
| 286 |
ifeq (${ABI}, ELF) |
|---|
| 287 |
LIBBITSUF = |
|---|
| 288 |
endif |
|---|
| 289 |
|
|---|
| 290 |
ifeq (${ISA}, mips3) |
|---|
| 291 |
ARFLAGS := -mips3 ${ARFLAGS} |
|---|
| 292 |
CFLAGS += -mips3 |
|---|
| 293 |
CXXFLAGS += -mips3 |
|---|
| 294 |
LDOPTS += -mips3 |
|---|
| 295 |
endif |
|---|
| 296 |
ifeq (${ISA}, mips4) |
|---|
| 297 |
ARFLAGS := -mips4 ${ARFLAGS} |
|---|
| 298 |
CFLAGS += -mips4 |
|---|
| 299 |
CXXFLAGS += -mips4 |
|---|
| 300 |
LDOPTS += -mips4 |
|---|
| 301 |
endif |
|---|
| 302 |
|
|---|
| 303 |
# ----------------------------------------------------------------------------- |
|---|
| 304 |
# Library names. |
|---|
| 305 |
# ----------------------------------------------------------------------------- |
|---|
| 306 |
VJ_LIBRARY = @LIB_PREFIX@Juggler |
|---|
| 307 |
UTILS_LIBRARY = @LIB_PREFIX@Juggler_utils |
|---|
| 308 |
GL_LIBRARY = @LIB_PREFIX@Juggler_ogl |
|---|
| 309 |
PF_LIBRARY = @LIB_PREFIX@Juggler_pf |
|---|
| 310 |
AW_LIBRARY = @LIB_PREFIX@Juggler_aw |
|---|
| 311 |
SL_LIBRARY = @LIB_PREFIX@Juggler_sl |
|---|
| 312 |
|
|---|
| 313 |
@SET_MAKE@ |
|---|
| 314 |
|
|---|
| 315 |
# ----------------------------------------------------------------------------- |
|---|
| 316 |
# Include a common 'clean' target. |
|---|
| 317 |
# ----------------------------------------------------------------------------- |
|---|
| 318 |
include ${MKPATH}/vj.clean.mk |
|---|