StdTools 3.91 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 31
#
# $Id$
#
#
# These are the tool definitions for RISC OS hosted builds.
#
#
STDMAKEKFILE=$Id$

#
# Core toolset.
#
AASM            = aasm
32
AOFASM          = objasm
33 34 35 36 37 38 39
AR              = libfile
AS              = objasm
BINAOF          = binaof
CAT             = print
CC              = cc
C++             = c++
CMHG            = cmhg
40
CPREPRO         = cc -C++ -E
41 42 43 44 45 46 47
DATA2AOF        = datatoaof
DEFMOD          = defmod
DO              = do
ECHO            = echo
FILTERCOMP      = ${PERL} Build:FilterComp
FILTERCOMP2     = ${PERL} Build:FilterComp2
GETVERSION      = ${PERL} Build:GetVersion
Ben Avison's avatar
Ben Avison committed
48
HDR2H           = ${PERL} Build:Hdr2H
49
INSTRES         = <Perl$Dir>.perl Build:InstRes -v -v
50 51 52
ifeq (C++,${LINK_TYPE})
LD              = link -c++
else
53
LD              = link
54
endif
55 56 57 58
MAKE            = amu
MODGEN          = modgen
MODSQZ          = modsqz
NOP             = @|
59
NUMBER          = ${DO} RUN Build:Number
Ben Avison's avatar
Ben Avison committed
60
PERL            = ${DO} <Perl$Dir>.perl
61 62 63 64
RESGEN          = resgen
RM              = remove
SETTYPE         = settype
SQUASH          = squash
65
SQUISH          = squish
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
SQZ             = squeeze
STRIPDEPEND     = stripdepnd
TIDYDESC        = ${PERL} Build:TidyDesc
TLINK           = tlink
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
97 98
ZIP             = ${DO} zip -9qr
UNZIP           = unzip
99 100 101 102 103 104 105 106 107

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

AASMFLAGS += -Stamp -quit ${STDTOOLOPTIONS} ${AASMDEFINES} ${AASMINCLUDES}
ASFLAGS +=  -Stamp -quit ${STDTOOLOPTIONS} ${ASMDEFINES} ${ASMINCLUDES}
Ben Avison's avatar
Ben Avison committed
108 109
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}\""
110 111 112
CFLAGS +=  -c ${STDTOOLOPTIONS} ${CDEFINES} ${CINCLUDES} ${C_NO_FNAMES} ${C_WARNINGS}
C++INCLUDES += -ICPP:
C++FLAGS += -c ${STDTOOLOPTIONS} ${C++DEFINES} ${C++INCLUDES}
113
CMHGFLAGS +=  -p ${STDTOOLOPTIONS} ${CMHGDEFINES} ${CMHGINCLUDES}
114
ARFLAGS += -c -o
115

116 117 118 119 120 121 122 123
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
124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147

#
# Recursive forced copying options.
#
#  CPFLAGS go after the arguments
#  CPPREFLAGS go before the arguments
#
CPFLAGS    = FR~C~V~N
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}

148 149
# Required for legacy components
WIPE      = ${XWIPE}
150

151 152 153 154
# Directory separator character
SEP       = .


155
# EOF