gbdk-releases/sdcc/src/Makefile.bcc
2015-01-10 16:25:09 +01:00

69 lines
1.5 KiB
Makefile

PRJDIR = ..
# !include $(PRJDIR)/Makefile.common
!include ..\Bcc.inc
CFLAGS = -I. -I.. -I..\support
PORTS = mcs51 z80 avr ds390 pic izt
PORT_LIBS = mcs51/port.lib z80/port.lib avr/port.lib ds390/port.lib pic/port.lib izt/port.lib
#LIBS = -lgc
#LIBDIRS = -L$(PRJDIR)/support/gc
#LIBGC = $(PRJDIR)/support/gc/gc.lib
LIBS=
LIBDIRS=
LIBGC=
OBJECTS = SDCCy.obj SDCClex.obj SDCChasht.obj SDCCmain.obj \
SDCCsymt.obj SDCCopt.obj SDCCast.obj SDCCmem.obj SDCCval.obj \
SDCCicode.obj SDCCbitv.obj SDCCset.obj SDCClabel.obj \
SDCCBBlock.obj SDCCloop.obj SDCCcse.obj SDCCcflow.obj SDCCdflow.obj \
SDCClrange.obj SDCCptropt.obj SDCCpeeph.obj SDCCglue.obj \
asm.obj
SLIBOBJS = $(SLIB)\SDCCerr.obj $(SLIB)\NewAlloc.obj $(SLIB)\MySystem.obj $(SLIB)\BuildCmd.obj
TARGET = $(PRJDIR)/bin/sdcc.exe
# Compiling entire program or any subproject
# ------------------------------------------
all: $(LIBGC) $(TARGET)
ports:
for i in $(PORTS); do $(MAKE) -C $$i; done
#$(PRJDIR)/support/gc/libgc.a:
# cd $(PRJDIR)/support/gc && $(MAKE)
!include Makefile.dep
#!include clean.mk
# My rules
# --------
$(TARGET): $(OBJECTS) $(SLIBOBJS) $(PORT_LIBS)
bcc32 -e$(TARGET) $(OBJECTS) $(SLIBOBJS) $(PORT_LIBS) $(LIBGC)
SDCCy.h: SDCCy.c
SDCCy.c: SDCC.y
$(YACC) -d -v -o $@ $<
SDCClex.c: SDCC.lex SDCCy.h
$(LEX) -t $< >$@
.y.c:
rm -f $*.cc $*.h
$(YACC) -d $<
mv y.tab.c $*.cc
mv y.tab.h $*.h
.l.c:
rm -f $*.cc
$(LEX) -t $< >$*.cc