# CC Command
#
# Note: -O2 is sometimes broken in GCC when setjump/longjump is being
# used. Try -O2 only with released simulators.
#
#ifeq ($(WIN32),)
#Unix Environments
#ifeq ($(OSTYPE),solaris)
#OS_CCDEFS = -lsocket -lnsl -lpthread -D_GNU_SOURCE
#else
#OS_CCDEFS = -D_GNU_SOURCE -I .
#endif
#CC = gcc -std=c99 -O2 -U__STRICT_ANSI__ -g -lm $(OS_CCDEFS) -I .
#ifeq ($(USE_NETWORK),)
#else
#NETWORK_OPT = -DUSE_NETWORK -isystem /usr/local/include /usr/local/lib/libpcap.a
#endif
#else
##Win32 Environments
LDFLAGS = -lm -lwsock32
#CC = gcc -std=c99 -U__STRICT_ANSI__ -O0 -I.
#EXE = .exe
#ifeq ($(USE_NETWORK),)
#else
#NETWORK_OPT = -DUSE_NETWORK -lwpcap -lpacket
#endif
#endif
CC=gcc  -O2 -D_GNU_SOURCE -I . 
LDFLAGS = -lm 


#
# Common Libraries
#
BIN = ./
SIM = ../scp.c ../sim_console.c ../sim_fio.c ../sim_timer.c ../sim_sock.c \
	../sim_tmxr.c ../sim_ether.c ../sim_tape.c


#
# Emulator source files and compile time options
#
I7090D = ./
I7090 = ${I7090D}i7090_cpu.c ${I7090D}i7090_sys.c ${I7090D}i7090_chan.c \
	$(I7090D)i7090_cdr.c $(I7090D)i7090_cdp.c $(I7090D)i7090_lpr.c \
	$(I7090D)i7090_mt.c $(I7090D)i7090_drum.c $(I7090D)i7090_hdrum.c \
	$(I7090D)i7090_chron.c $(I7090D)i7090_dsk.c $(I7090D)i7090_com.c \
	$(I7090D)i7090_ht.c
I7090_OPT = -I.. -DUSE_INT64


#
# Build everything
#
all : ${BIN}i7090${EXE}

clean :
ifeq ($(WIN32),)
	${RM} ${ALL}
else
	if exist BIN\*.exe del /q BIN\*.exe
endif
#
# Individual builds
#
${BIN}i7090${EXE} : ${I7090} ${SIM}
	${CC} ${I7090} ${SIM} ${I7090_OPT} -o $@ ${LDFLAGS}

