
X_LIBPATH = -L/usr/lib
X_INCLUDE = -I/usr/include -I/usr/X/include 
XC_LIBDIR = /usr/local/lib/xcoral
X_BINDIR = /usr/local/bin

XCORALLIBDIR = $(XC_LIBDIR)
PROGRAM = xcoral
FLAGS_REGEXP=-DHAVE_STRING_H=1
LDLIBS = -lX11 -lnsl -lgen -lXIM -lXext
CC = cc 
CFLAGS = -DXCORAL_LIB_DIR=\"$(XCORALLIBDIR)\" -DNEED_STRCMPCASE -DUNIXWARE $(FLAGS_REGEXP) $(X_INCLUDE)
LDOPTIONS= -lsocket -lnsl -lc -L/usr/ucblib -lucb

SRCS    = xcoral.c handle_menus.c init_menus.c cb_names.c new_window.c \
        main_events.c handle_key.c chars_cmds.c shadow.c ctr_panel.c \
        main_text.c scroll.c page.c parse.c get_file.c \
        bm_search.c mark_reg.c main_buffer.c text_cursor.c \
        kill_buf.c browser_init.c browser_eve.c undo.c \
        browser_eng.c browser_pars.c browser_util.c class_dict.c \
        file_dict.c proc_dict.c gen.tab.c lex.yy.c ie_func.c mode.c input_str.c \
	process.c warn_box.c dial_box.c fs_box.c list_box.c man_box.c justify.c macros.c \
	regex.c ctr_version.c color_area.c

OBJS    = xcoral.o handle_menus.o init_menus.o cb_names.o new_window.o \
        main_events.o handle_key.o chars_cmds.o shadow.o ctr_panel.o \
        main_text.o scroll.o page.o parse.o get_file.o \
        bm_search.o mark_reg.o main_buffer.o text_cursor.o \
        kill_buf.o browser_init.o browser_eve.o undo.o gen.tab.o lex.yy.o \
        browser_eng.o browser_pars.o browser_util.o class_dict.o \
        file_dict.o proc_dict.o ie_func.o mode.o input_str.o process.o \
	warn_box.o dial_box.o fs_box.o list_box.o man_box.o justify.o macros.o \
	regex.o ctr_version.o color_area.o

SMACOBJS = Smac/y.tab.o Smac/mylex.o Smac/list.o Smac/memo.o Smac/hash.o\
	Smac/mem.o Smac/const.o Smac/stack.o Smac/error.o Smac/control.o\
	Smac/function.o Smac/type.o Smac/identifier.o Smac/block.o	\
	Smac/declaration.o Smac/if.o Smac/operator.o Smac/funcall.o	\
	Smac/comma.o Smac/return.o Smac/while.o Smac/for.o Smac/cast.o	\
	Smac/assignment.o Smac/array.o Smac/indirection.o Smac/switch.o	\
	Smac/smac.o Smac/Type.o Smac/Const.o Smac/Var.o Smac/Block.o	\
	Smac/If.o Smac/Return.o Smac/Comma.o Smac/Function.o		\
	Smac/FunctionCall.o Smac/Identifier.o Smac/Builtin.o \
	Smac/Declaration.o Smac/While.o Smac/Control.o Smac/For.o 	\
	Smac/Cast.o Smac/Array.o Smac/RefDeref.o Smac/Switch.o		\
	Smac/smacXcoral.o

MISCFILES	= SmacLib/DEPEND SmacLib/README SmacLib/cmd.sc \
	SmacLib/color.sc SmacLib/comments.sc SmacLib/compare-win.sc \
	SmacLib/complete-word.sc SmacLib/describe.sc SmacLib/edir.sc \
	SmacLib/edt.sc SmacLib/example.sc \
	SmacLib/french.sc SmacLib/hack-filename.sc SmacLib/head.sc \
	SmacLib/html.sc SmacLib/keydef-ext.sc SmacLib/latex-macros.sc \
	SmacLib/latex.sc SmacLib/man.dtex SmacLib/misc-commands.sc \
	SmacLib/mode-ext.sc SmacLib/mode.sc SmacLib/mouse.sc \
	SmacLib/rcs.sc SmacLib/save.sc SmacLib/sun-keydef.sc \
	SmacLib/title.sc SmacLib/top-ten.sc SmacLib/utilities.sc \
	SmacLib/version.sc SmacLib/window-utilities.sc SmacLib/xcoralrc.lf

all: $(PROGRAM)

$(PROGRAM): $(OBJS)
	@cd Smac;rm -f word.h;make -f Makefile_std CC=$(CC) XCORALLIBDIR='$(XCORALLIBDIR)'
	$(CC) -o $(PROGRAM) $(OBJS) $(SMACOBJS) $(X_LIBPATH) $(LDOPTIONS) $(LDLIBS)

$(XC_LIBDIR):
	@test -d $(XC_LIBDIR) || ( mkdir -p $(XC_LIBDIR) && chmod 755 $(XC_LIBDIR) && echo mkdir: $(XC_LIBDIR) )

install: $(PROGRAM) $(XC_LIBDIR) $(MISCFILES)
	 install -c $(PROGRAM) $(X_BINDIR) 
	 for i in $(MISCFILES); do \
	     (set -x;install -c $$i $(XC_LIBDIR) );\
	     done

clean:
	rm -f $(PROGRAM) *.o Smac/*.o Smac/word.h

lint:	$(SRCS)
	lint -auxz -I$(LOCALINCLUDE) $(SRCS)

