Files
cc65/src/common/make/watcom.mak
uz 02cbc7da25 Moved the segdefs module to ca65, since it was used only there and renamed it
to segdef, since there might be a new segdefs module in common soon.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5381 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-01-04 22:02:02 +00:00

123 lines
2.3 KiB
Makefile

#
# CC65 Makefile for the Watcom compiler (using GNU make) and wine
#
# ------------------------------------------------------------------------------
# Generic stuff
# Environment variables for the watcom compiler
export WATCOM = c:\\watcom
export INCLUDE = $(WATCOM)\\h
# We will use the windows compiler under linux (define as empty for windows)
export WINEDEBUG=fixme-all
WINE = wine
# Programs
AR = $(WINE) wlib
CC = $(WINE) wcc386
LD = $(WINE) wlink
LIB = common.lib
# Program arguments
CFLAGS = -d1 -obeilr -zp4 -5 -zq -w2
# Create NT programs by default
ifndef TARGET
TARGET = NT
endif
# --------------------- OS2 ---------------------
ifeq ($(TARGET),OS2)
SYSTEM = os2v2
CFLAGS += -bt=$(TARGET)
endif
# -------------------- DOS4G --------------------
ifeq ($(TARGET),DOS32)
SYSTEM = dos4g
CFLAGS += -bt=$(TARGET)
endif
# --------------------- NT ----------------------
ifeq ($(TARGET),NT)
SYSTEM = nt
CFLAGS += -bt=$(TARGET)
endif
# ------------------------------------------------------------------------------
# Implicit rules
%.obj: %.c
$(CC) $(CFLAGS) -fo=$@ $^
# ------------------------------------------------------------------------------
# All library OBJ files
OBJS = abend.obj \
addrsize.obj \
alignment.obj \
assertion.obj \
bitops.obj \
chartype.obj \
check.obj \
cmdline.obj \
coll.obj \
cpu.obj \
debugflag.obj \
exprdefs.obj \
filepos.obj \
filetype.obj \
fname.obj \
fp.obj \
gentype.obj \
hashfunc.obj \
hashtab.obj \
intstack.obj \
matchpat.obj \
mmodel.obj \
print.obj \
searchpath.obj \
segnames.obj \
shift.obj \
strbuf.obj \
strpool.obj \
strstack.obj \
strutil.obj \
target.obj \
tgttrans.obj \
version.obj \
wildargv.obj \
xmalloc.obj \
xsprintf.obj
# ------------------------------------------------------------------------------
# Main targets
all: lib
lib: $(LIB)
$(LIB): $(OBJS)
@echo Creating library...
$(AR) -q -b -P=32 $(LIB) $(foreach OBJ, $(OBJS), +-$(OBJ))
@echo Done!
wildargv.obj:
$(CC) $(CFLAGS) -fo=$@ $(WATCOM)\\src\\startup\\wildargv.c
clean:
@rm -f *~ core
zap: clean
@rm -f *.obj $(LIB)
strip:
@true