StdTools 3.82 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
FAPPEND         = FAppend
45 46 47
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
Robert Sprowson's avatar
Robert Sprowson committed
50
INSERTVERSION   = ${AWK} -f Build:AwkVers
51 52 53
ifeq (C++,${LINK_TYPE})
LD              = link -c++
else
54
LD              = link
55
endif
56 57 58
MAKE            = amu
MODGEN          = modgen
MODSQZ          = modsqz
59
NOP             = |
60
NUMBER          = ${DO} RUN Build:Number
Ben Avison's avatar
Ben Avison committed
61
PERL            = ${DO} <Perl$Dir>.perl
62 63 64 65
RESGEN          = resgen
RM              = remove
SETTYPE         = settype
SQUASH          = squash
66
SQUISH          = squish
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
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
96 97
ZIP             = ${DO} zip -9qr
UNZIP           = unzip
98 99 100 101 102 103 104

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

Robert Sprowson's avatar
Robert Sprowson committed
105
ARFLAGS += -c -o
106
ASFLAGS += ${STDTOOLOPTIONS} ${ASMDEFINES} ${ASMINCLUDES}
Ben Avison's avatar
Ben Avison committed
107 108
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}\""
109
CFLAGS  += -c ${STDTOOLOPTIONS} ${CDEFINES} ${CINCLUDES} ${C_NO_FNAMES} ${C_WARNINGS}
110 111
C++INCLUDES += -ICPP:
C++FLAGS += -c ${STDTOOLOPTIONS} ${C++DEFINES} ${C++INCLUDES}
112
CMHGFLAGS +=  -p ${STDTOOLOPTIONS} ${CMHGDEFINES} ${CMHGINCLUDES}
Robert Sprowson's avatar
Robert Sprowson committed
113
SQUISHFLAGS += -nolist
114

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

#
# 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}

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

150 151 152 153
# Directory separator character
SEP       = .


154
# EOF