#############################################################################
#       $Id: GNUmakefile,v 1.21 1996/01/12 00:52:04 rich Exp $
# $Revision: 1.21 $
#     $Date: 1996/01/12 00:52:04 $
#   $Author: rich $
#    $State: Exp $
#   $Locker:  $
#
# PROJECT:	TCA
#
# FILE:		GNUmakefile
#		Based on Erebus prototypical Makefile
#		Makefile.proto,v 1.1 1992/06/16 22:50:21 jwest Exp 
#
# DESCRIPTION:
# Makes tca documents.
#
# EXPORTS:
#	The following targets are available as part of Makefile.std:
#		all bins libs privs objs
#		clean install
#		lint depend
#
# HISTORY:
#
# $Log: GNUmakefile,v $
# Revision 1.21  1996/01/12  00:52:04  rich
# Simplified GNUmakefiles.
#
# Revision 1.20  1995/12/17  20:19:56  rich
# ???
#
# Revision 1.19  1995/10/07  19:04:47  rich
# Pre-alpha release of tca-8.2
# Added PROJECT_DIR..
#
# Revision 1.18  1995/08/05  23:21:10  rich
# Added devUtils comments to the release notes.
#
# Revision 1.17  1995/08/05  17:38:56  reids
# Added version 8.1 release notes
#
# Revision 1.16  1995/07/08  18:23:45  rich
# Change all /afs/cs to /afs/cs.cmu.edu to get ride of conflict problems.
#
# Revision 1.15  1995/07/06  21:14:03  rich
# Solaris and Linux changes.
#
# Revision 1.14  1995/06/14  03:18:20  rich
# Added DBMALLOC_DIR.
#
# Revision 1.13  1995/06/05  23:56:22  rich
# Added version 8.0 release notes.
#
# Revision 1.12  1995/04/09  20:27:17  rich
# Added /usr/local/include and /usr/local/lib to the paths for compiling
# for sunOS machines. (Support for new vendor OS).
#
# Revision 1.11  1995/04/07  05:01:43  rich
# Fixed GNUmakefiles to find the release directory.
#
# Revision 1.10  1995/04/04  19:40:25  rich
# Added sgi support.
#
# Revision 1.9  1995/03/30  15:31:42  rich
# DBMALLOC works.  To use "gmake -k -w DBMALLOC=DBMALLOC install"
#
# Revision 1.8  1995/03/16  18:04:47  rich
# Merged in changes to the 7.9 branch.
# Changed the VERSION_ to TCA_VERSION_
#
# Revision 1.7  1995/01/30  16:13:52  rich
# Change order of CFLAGS components so -gstabs comes after -g for i386 mach.
#
# Revision 1.6  1995/01/24  23:58:18  rich
# Release of tca 7.9.  Mostly speed improvements.
# The cvs binaries may now be located in /usr/local.
# Added Release Notes for 7.9.
#
# Revision 1.5  1994/11/02  21:24:25  rich
# Now works for linux machines (i486).
# Got afs to work on alpha (and hopefully other vendor OS's)
# Added generic Makefiles.
#
# Revision 1.4  1994/05/31  03:21:04  rich
# Removed CFLAGS_sun4.
#
# Revision 1.3  1994/05/17  23:10:25  rich
# Added release notes for 7.7.
#
# Revision 1.2  1994/05/11  01:53:45  rich
# Moved all the version information to the src directory.
#
# Revision 1.1  1994/05/06  04:44:41  rich
# Added a GNUmakefile.
#
#
#############################################################################

.KEEP_STATE:

#############################################################################
# Module configuration.
#############################################################################

INSTALL_DIR	= ..
BASE_DIR	:= $(shell cd $(INSTALL_DIR);/bin/pwd)
MODULE_DIR	= doc
PROJECT_DIR	= /afs/cs/project/TCA/release/alpha
PROJECT		= tca
MODULE		= tca
SUBDIRS		= 

#############################################################################
# Standard Makefile Includes
#############################################################################

PWD 	:= $(shell /bin/pwd)
STD_FILE := $(shell ls $(INSTALL_DIR)/etc/GNUmakefile.std $(PROJECT_DIR)/etc/GNUmakefile.std 2>/dev/null | grep -v "not found" | head -1)
DEFS_FILE := $(shell ls $(INSTALL_DIR)/etc/GNUmakefile.defs $(PROJECT_DIR)/etc/GNUmakefile.defs 2>/dev/null | grep -v "not found" | head -1)

##########
# Include standard definitions
##########

include $(DEFS_FILE)

##########
# File Definition Macros.  Deletion of generated files assumed
#    to be o.k.  Source files will never be deleted.
##########

# Generated files - installed
PUBLIC_BINS		= 
PUBLIC_LIBS_sun4	= 
PUBLIC_LIBS_pmax	= 
PUBLIC_LIBS		= 
PUBLIC_LINTS		= 

MODULE_LIBS		= 
MODULE_LINTS		= 

# Source files - installed
PUBLIC_INCS		= 
PUBLIC_MANS		= 
PUBLIC_DOCS		= 

MODULE_INCS		= 
MODULE_DOCS		= 

INCS			= $(MODULE_INCS) $(PUBLIC_INCS)

# Generated files - not installed
PRIVS	= 

OBJS	= 

# Source files - not installed

SRCS		= 

PRIVATE_INCS	= 

MISC		=  GNUmakefile tca-7-4.release.notes tca-7-5.release.notes \
		tca-7-6.release.notes  tca-7-7.release.notes  \
		tca-7-8.release.notes  tca-7-9.release.notes  \
		tcaManual.ps tca-7-0.release.notes tca-8-0.release.notes\
		tca-8-1.release.notes tca-8-2.release.notes \
		tca-8-3.release.notes

# All source files
SRCS_ALL	= $(INCS) $(PRIVATE_INCS) $(SRCS) $(MANS) $(DOCS) $(MISC)

# Files to be removed by 'make clean' and 'make realclean'
DELETES		= core $(DEPEND_FILE).bak \
	  	  $(PUBLIC_BINS) $(PUBLIC_LIBS) $(PUBLIC_LINTS) \
		  $(MODULE_LIBS) $(MODULE_LINTS) $(PRIVS) $(OBJS) make.state \
		  $(wildcard .nse_dep*) $(wildcard *.CKP) $(wildcard \#*\#) \
		  $(wildcard *~) $(wildcard .*~) $(wildcard *.CKP)\
	          $(wildcard *.BAK) $(wildcard .*.BAK)

# Files never to be removed, even if Make encounters an error
.PRECIOUS: $(SRCS_ALL) $(SUBDIRS)

##########
# Default Target
##########

all:: srcs libs privs bins 

##########
# User Defined Targets
##########

# Define rules for all files listed in BINS, LIBS, and LINTS in this section.
# Example executable, object, library, and combined objects are shown below:
#
#  sample: file1.o file2.o $(LIBDEP)
#	$(LINK.c) -o $@ file1.o file2.o $(LIBRARIES)
#
#  alternateName.o: file1.c
#	$(COMPILE.c) -o $@ file1.o
#
#  libsample.a: file1.o file2.o
#	-$(RM) $@
#	$(AR) $(ARFLAGS) $@ file1.o file2.o
#	$(RANLIB) $@
#
#  combined.o: part1.o part2.o
#	$(LD) -r -o $@ part1.o part2.o; chmod a-x $@

link_tar::
	echo "Making link_tar for: doc/manual";
	mkdir $(FTP_DIR)/$(PROJECT)/doc
	ln -s  $(PWD)/manual $(FTP_DIR)/$(PROJECT)/doc/manual;

##########
# Include standard target definitions and RCS rules
##########

include $(STD_FILE)
