#ident "@(#)r-make.dep 1.8 06/07/21 " ########################################################################### # Written 1996 by J. Schilling ########################################################################### # # Dependency building rules for make # ########################################################################### # Copyright (c) J. Schilling ########################################################################### # The contents of this file are subject to the terms of the # Common Development and Distribution License, Version 1.0 only # (the "License"). You may not use this file except in compliance # with the License. # # See the file CDDL.Schily.txt in this distribution for details. # # When distributing Covered Code, include this CDDL HEADER in each # file and include the License file CDDL.Schily.txt from this distribution. ########################################################################### # Note that we currently do not support C++ with Sun make as Sun make # only allows one file to folllow a include directive # DEP_SUFFIX= .dep RMDEP= $(RM) $(RM_FORCE) $@ ___C++DEP_FILES= $(C++FILES:%.C=$(ARCHDIR)/%.d) __C++DEP_FILES= $(___C++DEP_FILES:%.cc=$(ARCHDIR)/%.d) _C++DEP_FILES= $(__C++DEP_FILES:%.cpp=$(ARCHDIR)/%.d) C++DEP_FILES= $(_C++DEP_FILES:%.cxx=$(ARCHDIR)/%.d) C++PDEP_FILES= $(C++DEP_FILES) DEP_FILE= $(ARCHDIR)/$(TARGET).dep PDEP_FILE= $(ARCHDIR)/$(TARGET).dep PALLDEP_FILE= $(CFILES:%.c=$(ARCHDIR)/%.d) $(C++PDEP_FILES) $(ARCHDIR)/$(TARGET).dep DEP_DEP= $(ARCHDIR)/Dnull ########################################################################### depend: rmdep $(DEP_FILE) rmdep: $(RM) $(RM_FORCE) $(PALLDEP_FILE) ########################################################################### # # Make the complete path to the architecture subdirectory. # ########################################################################### $(ARCHDIR): $(MKDIR) -p $@ ########################################################################### # # Generate dependency file(s). # This rules is checked when the dependency file(s) are included. # # Modify the the path for .o files to reflect that they are placed in # $(ARCHDIR). Add the dependency file itself to each line so that # the dependencies will be rebuilt if a source is newer that the # appropriate dependency file. # ########################################################################### $(ARCHDIR)/%.dep: %.c $(MKDEP) $(CPPFLAGS) $(MKDEP_OUT) $< \ | sed -e 's;^\(.*\)\.$o[ ]*:;$(ARCHDIR)/\1.$o $(DEP_FILE):;' > $@ $(DEP_FILE): $(DEP_DEP) $(CFILES) $(MKDEP) $(CPPFLAGS) $(MKDEP_OUT) $(CFILES) \ | sed -e 's;^\(.*\)\.$o[ ]*:;$(ARCHDIR)/\1.$o $(DEP_FILE):;' > $@ $(DEP_DEP): $(ARCHDIR) @if [ ! -f $@ ]; then \ echo > $@; \ fi ########################################################################### # # Include the dependency file(s) generated from the rules above. # ########################################################################### include $(DEP_FILE)