# $Id$ INSTALL_PROD=$(PROD:%=$(INSTALL_BIN)/%) INSTALL_LIBS=$(LIBNAME:%=$(INSTALL_LIB)/%) INSTALL_INC=$(INC:%=$(INSTALL_INCLUDE)/%) INSTALL_MANS+=$(MAN1:%=$(INSTALL_MAN)/man1/%) INSTALL_MANS+=$(MAN2:%=$(INSTALL_MAN)/man2/%) INSTALL_MANS+=$(MAN3:%=$(INSTALL_MAN)/man3/%) INSTALL_MANS+=$(MAN4:%=$(INSTALL_MAN)/man4/%) INSTALL_MANS+=$(MAN5:%=$(INSTALL_MAN)/man5/%) INSTALL_MANS+=$(MAN6:%=$(INSTALL_MAN)/man6/%) INSTALL_MANS+=$(MAN7:%=$(INSTALL_MAN)/man7/%) INSTALL_MANS+=$(MAN8:%=$(INSTALL_MAN)/man8/%) INSTALL_MANS+=$(MAN9:%=$(INSTALL_MAN)/man9/%) INSTALL_DOCS=$(DOCS:%=$(INSTALL_DOC)/%) INSTALL_SCRIPTS=$(SCRIPTS:%=$(INSTALL_BIN)/%) INSTALL_TEMPLATE=$(TEMPLATES:%=$(INSTALL_TEMPLATES)/$(TEMPLATES_DIR)/%) INSTALL_TCLLIBS=$(TCLLIBNAME:%=$(INSTALL_TCLLIB)/%) INSTALL_TCLINDEX=$(TCLINDEX:%=$(INSTALL_TCLLIB)/%) INSTALL_CONFIGS=$(CONFIGS:%=$(INSTALL_CONFIG)/%) all:: install pre_build:: rebuild:: clean install build:: pre_build $(LIBNAME) $(TARGETS) $(PROD) inc:: $(INSTALL_INC) install:: inc build $(INSTALL_LIBS) $(TARGETS) $(INSTALL_SCRIPTS) $(INSTALL_PROD) \ $(INSTALL_MANS) $(INSTALL_DOCS) $(INSTALL_TEMPLATE) \ $(INSTALL_TCLLIBS) $(INSTALL_TCLINDEX) $(INSTALL_CONFIGS) depends:: $(SRCS.c) $(SRCS.cc) ifdef SRCS echo you have a SRCS in your Makefile exit 2 endif ifdef SRCS.c $(DEPENDS_RULE.c) endif ifdef SRCS.cc $(DEPENDS_RULE.cc) endif clean:: @echo "Cleaning" @$(RM) *.i *.o *.a $(TARGETS) $(PROD) $(LIBNAME) $(INC) $(TARGETS) $(PROD): $(DEPLIBS) # The order of the following dependencies is # VERY IMPORTANT !!!! %: %.o $(RM) $@ $(LINK.c) -o $@ $< $(LDLIBS) #$(PROD): $(OBJS) # $(RM) $@ # $(LINK.c) -o $@ ${OBJS} $(LDLIBS) %.o: %.c $(RM) $@ $(COMPILE.c) $< %.o: ../%.c $(RM) $@ $(COMPILE.c) $< %.o: %.cc $(RM) $@ $(COMPILE.cc) $< %.o: ../%.cc $(RM) $@ $(COMPILE.cc) $< %.c: ../%.y $(RM) y.tab.c y.tab.h $(YACC) $(YACCOPT) $< @if [ -f y.tab.c ]; \ then \ echo "/bin/mv y.tab.c $*.c"; \ /bin/mv y.tab.c $*.c; \ fi @if [ -f y.tab.h ]; \ then \ echo "/bin/mv y.tab.h $*.h"; \ /bin/mv y.tab.h $*.h; \ fi %.c: ../%.l $(RM) lex.yy.c $(LEX) $(LEXOPT) $< $(RM) $@ /bin/mv lex.yy.c $@ #state notation language rule %.c: ../%.st @echo "preprocessing $*.st" @$(RM) $*.i $(CPP) $(CPPFLAGS) $< $*.i @echo "converting $*.i" @$(RM) $@ $(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $*.i %.c: %.stt @echo "converting $< @$(RM) $@ $(SNC) $(TARGET_SNCFLAGS) $(SNCFLAGS) $< # Capfast Rules: %.db: %.edf $(E2DB) $(E2SR_SYSFLAGS) $(E2SR_FLAGS) $< %.db: ../%.edf $(E2DB) $(E2SR_SYSFLAGS) $(E2SR_FLAGS) $< %.edf: ../%.sch $(DEPSCHS) @if [ ! -f cad.rc -a -r ../cad.rc ] ; then ln -s ../cad.rc ; fi $(SCH2EDIF) $(SCH2EDIF_SYSFLAGS) $(SCH2EDIF_FLAGS) $< # Mangen Rule: %.1:% $(RM) $(