blob: e7b66864855855fb3dc82bb6b82fd5b16c2a5edb [file] [log] [blame]
# Makefile template for Configure for the 68HC11 sim library.
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
# Written by Cygnus Support.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
## COMMON_PRE_CONFIG_FRAG
M68HC11_OBJS = interp.o m68hc11int.o m68hc12int.o \
emulos.o interrupts.o m68hc11_sim.o
SIM_OBJS = $(M68HC11_OBJS) \
$(SIM_NEW_COMMON_OBJS) \
sim-resume.o
SIM_EXTRA_HW_DEVICES = m68hc11 m68hc11sio m68hc11eepr m68hc11tim m68hc11spi nvram
SIM_PROFILE= -DPROFILE=1 -DWITH_PROFILE=-1
# We must use 32-bit addresses to support memory bank switching.
# The WORD_BITSIZE is normally 16 but must be switched (temporarily)
# to 32 to avoid a bug in the sim-common which uses 'unsigned_word'
# instead of 'address_word' in some places (the result is a truncation
# of the 32-bit address to 16-bit; and this breaks the simulator).
SIM_EXTRA_CFLAGS = -DWITH_TARGET_WORD_BITSIZE=32 \
-DWITH_TARGET_CELL_BITSIZE=32 \
-DWITH_TARGET_ADDRESS_BITSIZE=32 \
-DWITH_TARGET_WORD_MSB=31
SIM_EXTRA_CLEAN = clean-extra
## COMMON_POST_CONFIG_FRAG
m68hc11int.c: gencode
./gencode -m6811 > $@
m68hc12int.c: gencode
./gencode -m6812 > $@
gencode.o: gencode.c
$(COMPILE_FOR_BUILD) -c $< -o $@
gencode: gencode.o
$(LINK_FOR_BUILD) $^
clean-extra:
rm -f gencode m68hc11int.c