# Generated automatically from Makefile.in by configure.
# Makefile for McStas.

SHELL = /bin/sh

prefix = /usr/local
exec_prefix = ${prefix}
bindir = ${exec_prefix}/bin
srcdir = .
libdir = ${exec_prefix}/lib


DEBUG = -DDEBUG=0
mc_libdir = $(libdir)/mcstas
#DEBUG=

CC = gcc
CFLAGS = -g -O2
LDFLAGS= 
DEFS =  -DCC_HAS_PROTOS=1 -DHAVE_STRCASECMP=1 -DHAVE_FDOPEN=1  $(DEBUG)

PERL = /usr/bin/perl

FLEX = flex
FLEXFLAGS=-i

BISON = bison
BISONFLAGS = -v -d

INSTALL=/usr/bin/install -c
INSTALL_PROGRAM = ${INSTALL}
INSTALL_DATA = ${INSTALL} -m 644


#
# End of configuration section.
#

OBJECTS=instrument.tab.o lex.yy.o debug.o \
	memory.o list.o symtab.o coords.o cexp.o \
	file.o cogen.o port.o

PERLOBJ=gscan.fixpl mcdisplay.fixpl mcplot.fixpl mcresplot.fixpl mcrun.fixpl \
        mcgui.fixpl mcdoc.fixpl mcstas2vitess.fixpl
PERLBIN=gscan mcdisplay mcplot mcresplot mcrun mcgui mcdoc mcstas2vitess
BINOBJS=$(PERLOBJ) mcstas

.SUFFIXES: .c .o .pl .fixpl

.c.o:
	$(CC) -I. -I$(srcdir) -c $(CFLAGS) -DMC_SYS_DIR='"'$(mc_libdir)'"' $(DEFS) $<

.pl.fixpl:
	sed -e 's+#! /usr/bin/perl+#! '$(PERL)'+' \
	    -e 's+\$MCSTAS::sys_dir = "/usr/local/lib/mcstas"+\$MCSTAS::sys_dir = "'$(mc_libdir)'"+' \
	    < $(srcdir)/$< > $@
	chmod +x $@


all: $(BINOBJS)

mcstas: $(OBJECTS)
	$(CC) -o mcstas $(CFLAGS) $(LDFLAGS) $(OBJECTS) -lm

clean:
	rm -f $(BINOBJS) $(OBJECTS) $(PERLOBJ) TAGS \
	instrument.tab.c instrument.tab.h instrument.output lex.yy.c \
  config.cache Makefile
TAGS:
	etags *.[chly]

install: installdirs $(BINOBJS)
	$(INSTALL_PROGRAM) mcstas $(bindir)/mcstas
	for pgm in $(PERLBIN); do \
	  $(INSTALL_PROGRAM) $$pgm.fixpl $(bindir)/$$pgm; \
	done
	for file in `cd lib; ls`; do \
	  if [ -d lib/$$file ]; then \
	    $(srcdir)/mkinstalldirs $(mc_libdir)/$$file; \
	    for comp in `cd lib/$$file; ls`; do \
        if [ -e $(mc_libdir)/$$file/$$comp ]; then \
          echo "Renaming old library element version $(mc_libdir)/$$file/$$comp to $(mc_libdir)/$$file/$$comp.old"; \
          mv -f $(mc_libdir)/$$file/$$comp $(mc_libdir)/$$file/$$comp.old; \
        fi; \
	      if [ -d lib/$$file/$$comp ]; then \
          $(srcdir)/mkinstalldirs $(mc_libdir)/$$file/$$comp; \
          for tool in `cd lib/$$file/$$comp; ls`; do \
            $(INSTALL_DATA) lib/$$file/$$comp/$$tool $(mc_libdir)/$$file/$$comp/$$tool; \
          done \
        else \
	        $(INSTALL_DATA) lib/$$file/$$comp $(mc_libdir)/$$file/$$comp; \
        fi; \
	    done \
	  else \
	    $(INSTALL_DATA) lib/$$file $(mc_libdir)/$$file; \
	  fi \
	done
	./mcdoc.fixpl

installdirs:
	$(srcdir)/mkinstalldirs $(bindir) $(libdir) $(mc_libdir)

instrument.tab.o: mcstas.h
lex.yy.o: mcstas.h instrument.tab.h
debug.o: mcstas.h
memory.o: mcstas.h
symtab.o: mcstas.h
list.o: mcstas.h
coords.o: mcstas.h
cexp.o: mcstas.h
file.o: mcstas.h
cogen.o: mcstas.h
port.o: port.h

instrument.tab.c instrument.tab.h: instrument.y
	$(BISON) $(BISONFLAGS) instrument.y

lex.yy.c: instrument.l
	$(FLEX) $(FLEXFLAGS) instrument.l
