Files
retrobsd/tools/virtualmips/Makefile

85 lines
2.2 KiB
Makefile

#
# Build VirtualMIPS simulator.
#
# Select target board:
# chipKIT Max32
CFLAGS = -DSIM_PIC32 -DPIC32MX7 -DMAX32
# Maximite
#CFLAGS = -DSIM_PIC32 -DPIC32MX7 -DMAXIMITE
# Microchip Explorer 16
#CFLAGS = -DSIM_PIC32 -DPIC32MX7 -DEXPLORER16
# UBW32 with UART console
#CFLAGS = -DSIM_PIC32 -DPIC32MX7 -DUBW32
CC = gcc -g -m32
CFLAGS += -Wall -MT $@ -MD -MP -MF .deps/$*.dep
LIBS = -lpthread
CFLAGS += $(shell pkg-config libelf --cflags)
LIBS += $(shell pkg-config libelf --libs)
ifneq ($(wildcard /usr/lib/librt.a),)
LIBS += -lrt # Linux
endif
ifneq ($(wildcard /usr/lib/i386-linux-gnu/librt.a),)
LIBS += -lrt # Linux
endif
ifneq ($(wildcard /opt/local/lib/libintl.a),)
LIBS += -L/opt/local/lib -lintl # Mac OS X
endif
# Optimization.
CFLAGS += -O
#CFLAGS += -O3 -fomit-frame-pointer
PROG = pic32
OBJS = pic32.o pic32_dev_flash.o pic32_dev_uart.o pic32_dev_intcon.o \
pic32_dev_spi.o pic32_dev_gpio.o dev_sdcard.o dev_swap.o \
pic32_dev_bmxcon.o pic32_dev_dmacon.o pic32_dev_syscon.o \
pic32_dev_prefetch.o pic32_dev_adc.o pic32_dev_devcfg.o \
pic32_dev_rtcc.o pic32_dev_timer.o
# Ingenic JZ4740.
#CFLAGS += -DSIM_PAVO -D_USE_FDD_
#PROG = pavo
#OBJS = pavo.o jz4740.o jz4740_dev_cpm.o jz4740_dev_dma.o \
# jz4740_dev_emc.o jz4740_dev_gpio.o jz4740_dev_int.o \
# jz4740_dev_rtc.o jz4740_dev_ts.o \
# jz4740_dev_uart.o jz4740_dev_wdt_tcu.o
# Implement LCD.
#CFLAGS += -DSIM_LCD
#LIBS += -lSDL
#OBJS += jz4740_dev_lcd.o vp_sdl.o
# Use JIT compiler.
#CFLAGS += -D_USE_JIT_
#OBJS += mips_jit.o x86_trans.o
# Common files.
OBJS += dev_cs8900.o dev_nand_flash_1g.o dev_ram.o \
dev_vtty.o device.o vm.o cpu.o mips.o mips_cp0.o \
mips_exec.o mips_fdd.o crc.o mips_hostalarm.o \
mempool.o sbox.o utils.o vp_clock.o vp_timer.o net_io.o \
mips_memory.o debug.o gdb_interface.o main.o \
mips-dis.o config.o
all: .deps $(PROG)
$(PROG): $(OBJS)
$(CC) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
.deps:
@mkdir .deps
clean:
rm -rf *.o *~ *_log.txt .deps pavo pic32 m4k
ifeq (.deps, $(wildcard .deps))
-include .deps/*.dep
endif