StdTools 3.95 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
# Copyright 2008 Castle Technology Ltd
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Makefile fragment for defining the various tools and their options
Ben Avison's avatar
Ben Avison committed
16 17 18

INCLUDED_STDTOOLS = YES

19 20 21 22 23 24 25 26 27 28 29 30
#
# $Id$
#
#
# These are the tool definitions for RISC OS hosted builds.
#
#
STDMAKEKFILE=$Id$

#
# Core toolset.
#
31
AOFASM          = objasm
32 33 34 35 36 37 38
AR              = libfile
AS              = objasm
BINAOF          = binaof
CAT             = print
CC              = cc
C++             = c++
CMHG            = cmhg
39
CPREPRO         = cc -C++ -E
40 41 42 43
DATA2AOF        = datatoaof
DEFMOD          = defmod
DO              = do
ECHO            = echo
44
ERASECVS        = EraseCVS
45
FAPPEND         = FAppend
46 47 48
FILTERCOMP      = ${PERL} Build:FilterComp
FILTERCOMP2     = ${PERL} Build:FilterComp2
GETVERSION      = ${PERL} Build:GetVersion
Ben Avison's avatar
Ben Avison committed
49
HDR2H           = ${PERL} Build:Hdr2H
50
INSTRES         = <Perl$Dir>.perl Build:InstRes
Robert Sprowson's avatar
Robert Sprowson committed
51
INSTVIARG       = <Perl$Dir>.perl Build:InstViaRG
Robert Sprowson's avatar
Robert Sprowson committed
52
INSERTVERSION   = ${AWK} -f Build:AwkVers
53 54 55
ifeq (C++,${LINK_TYPE})
LD              = link -c++
else
56
LD              = link
57
endif
58
LDBIN           = link -bin -o
59 60 61
MAKE            = amu
MODGEN          = modgen
MODSQZ          = modsqz
62
NOP             = |
63
NUMBER          = ${DO} RUN Build:Number
Ben Avison's avatar
Ben Avison committed
64
PERL            = ${DO} <Perl$Dir>.perl
65 66 67 68
RESGEN          = resgen
RM              = remove
SETTYPE         = settype
SQUASH          = squash
69
SQUISH          = squish
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
SQZ             = squeeze
STRIPDEPEND     = stripdepnd
TOGPA           = ToGPA
TOKENCHECK      = tokencheck
TOKENISE        = tokenise
TOUCH           = create
TRANSLATE       = translate
UNMODSQZ        = unmodsqz

#
#  UNIX "ports"
#
AWK             = GNU.gawk
CD              = dir
CHMOD           = Unix.chmod
DF              = Unix.df
DIFF            = GNU.diff
EGREP           = Unix.egrep
FIND            = GNU.find
GAWK            = GNU.gawk
IDENT           = GNU.ident
LEX             = GNU.flex
LS              = Unix.ls
MKDIR           = ${DO} mkdir -p
PWD             = Unix.pwd
RPCGEN          = rpcgen
SED             = sed
WC              = Unix.wc
YACC            = GNU.bison
99 100
ZIP             = ${DO} zip -9qr
UNZIP           = unzip
101 102 103 104 105 106 107

#
# Standard options.  These can be added to or overridden in the
# including makefile.
#
STDTOOLOPTIONS = -depend !Depend ${THROWBACK}

Robert Sprowson's avatar
Robert Sprowson committed
108
ARFLAGS += -c -o
109
ASFLAGS += ${STDTOOLOPTIONS} ${ASMDEFINES} ${ASMINCLUDES}
Ben Avison's avatar
Ben Avison committed
110 111
ASFLAGS += -ihdr -i<Hdr$Dir>.Global -i<Hdr$Dir>.Interface -i<Hdr$Dir>.Interface2
ASFLAGS += -pd "APCS SETS \"${APCS}\"" -pd "Machine SETS \"${MACHINE}\"" -pd "UserIF SETS \"${USERIF}\""
112
CFLAGS  += -c ${STDTOOLOPTIONS} ${CDEFINES} ${CINCLUDES} ${C_NO_FNAMES} ${C_WARNINGS}
113 114
C++INCLUDES += -ICPP:
C++FLAGS += -c ${STDTOOLOPTIONS} ${C++DEFINES} ${C++INCLUDES}
115
CMHGFLAGS +=  -p ${STDTOOLOPTIONS} ${CMHGDEFINES} ${CMHGINCLUDES}
Robert Sprowson's avatar
Robert Sprowson committed
116
SQUISHFLAGS += -nolist
117

118 119 120 121 122 123 124 125
C_WARNINGS  := -fah
C_OPTSIZE   := -Ospace
C_OPTSPEED  := -Otime
C_NO_ZI     := -zz100000
C_NO_STKCHK := -zps1
C_STKCHK    := -zps0
C_NO_FNAMES := -ff
C_MODULE    := -zM
126 127 128 129 130 131 132 133

#
# Recursive forced copying options.
#
#  CPFLAGS go after the arguments
#  CPPREFLAGS go before the arguments
#
CPFLAGS    = FR~C~V~N
134
CPVFLAGS   = FR~CV~N
135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
CPPREFLAGS =

CP         = copy ${CPPREFLAGS}

#
# Recursive forced deletion with no errors (except file not found!).
#
#  WFLAGS go after the arguments
#  WPREFLAGS go before the arguments
#
WFLAGS    = FR~C~V
WPREFLAGS =

# A version of wipe that suppresses all errors
XWIPE     = x wipe ${WPREFLAGS}

151 152
# Required for legacy components
WIPE      = ${XWIPE}
153

154 155 156 157
# Directory separator character
SEP       = .


158
# EOF