1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203
|
##########################################################################
##
## File: make.platform.gnu4
## Purpose: This file is a Linux platform makefile that supports GNU 4.x
## compiler suite.
##
##########################################################################
#-----Lexer and Parser section-------------------------------------------#
# Lexer executable
LEX=flex
# Lexer flags
LEXFLAGS=-Cfr -L
# Parser executable
YACC=bison
# Parser flags
YACCFLAGS=-d -v -l
#------------------------------------------------------------------------#
#-----Compilers section--------------------------------------------------#
## ABI
## This part defines an application binary interface to be used with the
## compiler suite.
ABI=
## Warnings flags
## This part defines warnings related flags
# WARNINGS_AS_ERRORS defines flags to instruct all compilers to treat all
# warnings as errors.
WARNINGS_AS_ERRORS=-Werror
# ALL_WARNINGS defines flags to instruct all compilers to report all
# warnings.
ALL_WARNINGS=-Wall
# NO_DEPRECATED defines flags to instruct C++ compiler not to report
# warnings about deprecated constructs still used in C++ code.
NO_DEPRECATED=-Wno-deprecated
# Collect all general warnings related flags
WARNINGS=$(WARNINGS_AS_ERRORS) $(ALL_WARNINGS)
## Platform specifics
## This part defines platform specific information
# Endianess.
# Should be defined only for big endian platforms. Otherwise
# it must be left undefined, which indicates little endian platform.
#ENDIANESS=-DBIG_ENDIAN_PLATFORM
# OS indicator. Should be defined only if SunOS is the platform
#PLATFORM_OS=-DSUN_OS
# Collect all platform related flags
PLATFORM=$(ENDIANESS) $(PLATFORM_OS)
## Compiler capabilities/restrictions related defines
## This part defines variables based on the capabilities or restrictions
## of the compiler suite used on the platform.
# If STRCASECMP_OPTION is defined, that indicates that the compiler
# suite/supporting libraries support strcasecmp() function.
STRCASECMP_OPTION=-DHAVE_STRCASECMP
# If INCL_TEMPLATE_SRC_OPTION is defined, that indicates that
# compiler must include template method definition in template
# header files in order to properly compile templates.
INCL_TEMPLATE_SRC_OPTION=-DINCL_TEMPLATE_SRC
# If PLACEMENT_NEW_OPTION is defined, that indicates that the compiler
# suite/supporting libraries support placement new/delete operators.
PLACEMENT_NEW_OPTION=-DHAVE_PLACEMENT_NEW
# Collect all compiler capabilities/restrictions
COMPILER=$(STRCASECMP_OPTION) $(INCL_TEMPLATE_SRC_OPTION) \
$(PLACEMENT_NEW_OPTION)
# Collect all global defines
GDEFINES=$(PLATFORM) $(COMPILER)
# Collect all defines from global defines and defines specified in
# module makefile
DEFINES=$(GDEFINES) $(LDEFINES)
## Global include directories
GINCLUDES=
# Collect all include directories from global include directories and
# include directories specified in module makefile
INCLUDES=$(LINCLUDES) $(GINCLUDES)
## C compiler
## This part defines C compiler information
# C compiler executable
CC=gcc
# C compiler ANSI/NON-ANSI flags
ANSI_C_FLAG=-ansi
NON_ANSI_C_FLAG=
C_WARNINGS=$(WARNINGS)
# C compiler flags
CFLAGS_NONANSI := $(CFLAGS) $(OPT) $(ABI) $(PIC) $(NON_ANSI_C_FLAG) $(DEFINES) $(INCLUDES)
CFLAGS += $(OPT) $(ABI) $(PIC) $(ANSI_C_FLAG) $(C_WARNINGS) $(DEFINES) $(INCLUDES)
## C++ compiler
## This part defines C++ compiler information
# C++ compiler executable
CCC=g++
# C++ compiler ANSI/NON-ANSI flags
ANSI_C_PLUS_FLAG=-ansi
NON_ANSI_C_PLUS_FLAG=-traditional-cpp
C_PLUS_WARNINGS=$(WARNINGS) $(NO_DEPRECATED)
# This variable specifies how to compile the C code. If it is set to C,
# that indicates that C code will be compiled with the C++ compiler.
# Otherwise it will be compiled with C compiler.
EXT=C
# C++ compiler flags
C++FLAGS= $(CXXFLAGS) $(OPT) $(ABI) $(PIC) $(ANSI_C_PLUS_FLAG) $(C_PLUS_WARNINGS) \
$(DEFINES) $(INCLUDES)
C++FLAGS_NONANSI= $(CXXFLAGS) $(OPT) $(ABI) $(PIC) $(NON_ANSI_C_PLUS_FLAG) \
$(C_PLUS_WARNINGS) $(DEFINES) $(INCLUDES)
# C++FLAGS_RELAXED should be set to avoid warnings reported by third party
# source code that is not maintained by PDB
C++FLAGS_RELAXED= $(CXXFLAGS) $(OPT) $(ABI) $(PIC) $(ANSI_C_PLUS_FLAG) $(NO_DEPRECATED) \
$(DEFINES) $(INCLUDES)
## Fortran compiler
## This part defines Fortran compiler information
# Fortran compiler executable
F77=f77
# Fortran compiler flags
FFLAGS=-O -u
# Additional Fortran libraries
F77LIBS=
#------------------------------------------------------------------------#
#-----Linkers section----------------------------------------------------#
# Static linking option. If not defined, dynamic linking is used.
STATIC_LINKING=-static
# Linker flags
LDFLAGS_NO_STATIC := $(LDFLAGS) $(ABI) -w
LDFLAGS += $(ABI) -w $(STATIC_LINKING)
# Fortran linker
F77_LINKER=f77
#------------------------------------------------------------------------#
#-----Archiver section---------------------------------------------------#
# Archiver executable
AR=ar
# Archiver flags
AR_GETFLAGS=xv
AR_PUTFLAGS=rcvs
#------------------------------------------------------------------------#
#-----Ranlib-------------------------------------------------------------#
RANLIB=true
#------------------------------------------------------------------------#
#-----Installer----------------------------------------------------------#
INSTALL=../etc/cifinstall
INSTALLOPTS=-m 0444
#------------------------------------------------------------------------#
#-----Stripper-----------------------------------------------------------#
STRIP=strip
#------------------------------------------------------------------------#
#-----Shell--------------------------------------------------------------#
SHELL=/bin/sh
#------------------------------------------------------------------------#
|