CC=gcc
CXX=g++

ANTLR_HOME = /usr/local/libsrcs/antlr-2.7.4

ANTLR_INCP = -I/usr/local/libsrcs/antlr-2.7.4/lib/cpp/
ANTLR_LIBP = -L/usr/local/libsrcs/antlr-2.7.4/lib/cpp/src/

PARSE_INCP = -I../../modelica_parser/src
PARSE_LIBP = -L../../modelica_parser/src

READLINE_INCP = -I/usr/include/readline/
READLINE_LIBP = -L/usr/lib/

USE_CORBA = -DUSE_CORBA
CORBAHOME = /usr/local

ifdef USE_CORBA
  CORBAIMPL = -I../../modeq/runtime
  CORBAOBJS = ../../modeq/runtime/modeq_communication.o \
	../../modeq/runtime/modeq_communication_impl.o
  CORBALIB = -L$(CORBAHOME)/lib -lmico -lssl -lcrypto
  CORBAINC = -I$(CORBAHOME)/include
else
  CORBAIMPL =
  CORBAOBJS =
  CORBALIB =
endif

INCP = $(ANTLR_INCP) $(PARSE_INCP) $(READLINE_INCP) $(CORBAIMPL) $(CORBAINC)
LIBP = $(ANTLR_LIBP) $(PARSE_LIBP) $(READLINE_LIBP) 

CFLAGS = $(INCP) -g -Wall -DDEBUG $(USE_CORBA)
CXXFLAGS = $(CFLAGS)
LINKFLAGS = $(LIBP) 

LIBS = -lantlr -lmodelica_parser -lreadline -ltermcap  $(CORBALIB) -lm -lpthread 


OBJS += mosh.o options.o


all : mosh


mosh : $(OBJS) 
	$(CXX) -o $@ $(OBJS) $(CORBAOBJS) $(LINKFLAGS) $(LIBS)

.cpp.o:
	$(CXX) $(CXXFLAGS) -c $<


clean:
	-rm -f *.o *~ core *.core mosh 


mosh.o : mosh.cpp 
options.o: options.cpp



