84 lines
2.7 KiB
Plaintext
84 lines
2.7 KiB
Plaintext
#
|
|
# IDE library make definitions.
|
|
# - This file is a wrapper which extends the ide tree's commondefs.
|
|
# - Makefiles in ide/$(CPUBOARD) subdirectories should include this
|
|
# file by setting DIAGDEPTH to the path from the subdirectory up
|
|
# to this level, and by including ${DIAGDEPTH}/Makedefs before any
|
|
# local definitions.
|
|
#
|
|
DEPTH= ${DIAGDEPTH}/..
|
|
include ${DEPTH}/commondefs
|
|
|
|
include $(PRODUCTDEFS)
|
|
include $(CPUARCHDEFS)
|
|
|
|
DEF_CSTYLE=
|
|
GLDOPTS=-nostdlib
|
|
|
|
# Make all ide files with minimal optimization level for ide.
|
|
# For power on diags leave optimization on.
|
|
#
|
|
# Some machines override this in $CPUBOARD/Makedefs
|
|
#
|
|
$(PROMFLAGS)OPTIMIZER=
|
|
|
|
MKDEPFILE=Makedepend.$(PRODUCT)$(LIBTYPE)
|
|
|
|
TARGETDIR=${DIAGDEPTH}/${PRODUCT}${LIBTYPE}.O
|
|
# the following comment is left over from the old stand tree. The
|
|
# trailing slash has been removed so that make depends work.
|
|
#
|
|
## trailing / to work around VPATH problem; see ../saio/Makedefs for
|
|
## explanation
|
|
#
|
|
VPATH= $(TARGETDIR)
|
|
OBJECTDIR=$(TARGETDIR)
|
|
TDIRS = $(TARGETDIR) $(LIBDIR)
|
|
|
|
LIBNAME=lib${LIBTYPE}ide.a
|
|
LIBPATH=$(TARGETDIR)/$(LIBNAME)
|
|
|
|
SLAVE_STACKSIZE= 2000 # 8K stack for slaves
|
|
|
|
S_STKSIZE= -DSLAVE_STACKSIZE=0x${SLAVE_STACKSIZE}
|
|
|
|
STKSIZEDEFS= ${S_STKSIZE}
|
|
|
|
# group all of the ide-internal debugging flags together, then add to LLCDEFS
|
|
# IDEDDEFS= -DIDEBUG -DLAUNCH_DEBUG -DSET_DEBUG -DARG_DEBUG -DSTKDEBUG
|
|
IDEDDEFS=
|
|
|
|
# defining NDEBUG excludes ide's ASSERTs.
|
|
# If DEBUG definition is needed, create arcs/alocaldefs and add -DDEBUG
|
|
# to the VCDEFS; the inherited definitions make libs{c,k} properly
|
|
LLCDEFS=${STKSIZEDEFS} -D${CPUBOARD} -DIDE ${LDEFINES} ${IDEDDEFS}
|
|
|
|
# these are CFLAGS, but without GCOPTS, which is just OPTIMIZER and
|
|
# PROTOTYPES. By leaving OPTIMIZER=-O, the other files still get optimized.
|
|
# This is used in {mem,pon}/Makefile. Obviously it's a bit of a risk,
|
|
# in that it needs to track the definition of CFLAGS.
|
|
S_CFLAGS = $(CVERSION) $(VCFLAGS) $(LCFLAGS) $(GCDEFS) $(GCINCS) \
|
|
$(PROTOTYPES) $(ENDIAN)
|
|
|
|
# POBJECTS and _plib are used when making IP2[026]prom
|
|
POBJECTS= ${CFILES:.c=.o} ${ASFILES:.s=.o}
|
|
|
|
# MOBJECTS are used when making IDE module objs
|
|
MOBJECTS= ${CFILES:.c=.o} ${ASFILES:.s=.o}
|
|
|
|
# COBJECTS are used when making IDE core objs
|
|
COBJECTS= ${CFILES:.c=.o} ${ASFILES:.s=.o}
|
|
|
|
# LLCINCS is part of LCINCS, LINCLUDES by extension with LCINCS can
|
|
# be defined in sub-Makefiles
|
|
LLCINCS = ${MACHINCS} -I${DIAGDEPTH}/include ${LINCLUDES}
|
|
|
|
# .n files are for the PROM; generate dependencies for both .o and nm
|
|
# none of the include files are ifdef'ed on PROM, so this works OK
|
|
LMKDEPFLAGS= -e 's/^\(.*\)\.o:/\1.o \1.n:/'
|
|
|
|
ARCH=@cd $(TARGETDIR) && $(AR) cru$(VERBOSE) $(LIBNAME)
|
|
|
|
sinclude ${DIAGDEPTH}/${CPUBOARD}/Makedefs
|
|
sinclude localdefs
|