# $Header: /afs/cs.cmu.edu/project/atk-dist/6.2/atk/adew/RCS/makefile.arb,v 2.6 1991/09/13 16:13:08 bobg R6tape $ 
# $Source: /afs/cs.cmu.edu/project/atk-dist/6.2/atk/adew/RCS/makefile.arb,v $ 

#
# P_R_P_Q_# (C) COPYRIGHT IBM CORPORATION 1991
# LICENSED MATERIALS - PROPERTY OF IBM
# REFER TO COPYRIGHT INSTRUCTIONS FORM NUMBER G120-2083
#
# Generic Makefile
# Fill in as required for new directories.
#

SRCDIR = ${ANDREWDIR}/
DESTDIR = ${ANDREWDIR}/
TARGETDIR = 
FINALDIR = ${DESTDIR}${TARGETDIR}
INSTALL = ${ANDREWDIR}/bin/install
RINSE = make
CC = cc
DEBUG = -g

DESTDIR = ${ANDREWDIR}/
TARGETDIR = 
SRCDIR = ${DESTDIR}${TARGETDIR}
FINALDIR = ${DESTDIR}${TARGETDIR}
TOOLS = ${SRCDIR}bin/
RINSE = make
CC = cc
DEBUG = -g
VICEDEFINES = -DVICE
VICELIBS = 
XDIR=/usr/X/usr/
#XDIR=/cmu/unix/rt43/usr/X/usr/
WINDOWSYSTEMS = -DWM
WINDOWINCLUDES = -I${XDIR}include -I${XDIR}include/X11
WINDOWLIBS = 

INCLUDEPATH = 
INCLUDESRC = ${SRCDIR}include/atk
LIBPATH = 
LIBSRC = ${SRCDIR}lib/atk
DLIBPATH = 
DLIBSRC = ${SRCDIR}dlib/atk
SOURCEPATH =.

INSTALL = ${TOOLS}install
INCLUDES = -I.  -I${SOURCEPATH} -I${INCLUDESRC} -I${SRCDIR}include ${WINDOWINCLUDES}
CFLAGS = ${DEBUG} ${INCLUDES} ${VICEDEFINES} ${WINDOWSYSTEMS}
CLASSFLAGS = ${INCLUDES}

MAKEDO = ${TOOLS}makedo ${DEBUG} -b ${TOOLS} -d ${SRCDIR}lib 
CLASS = ${TOOLS}class

.SUFFIXES: .ih .eh .ch .do .fwm .fdb .snf

.ch.ih:
	${CLASS} ${CLASSFLAGS} $*.ch
.ch.eh:
	${CLASS} ${CLASSFLAGS} $*.ch

.o.do:
	${MAKEDO} $<

.fdb.fwm:
	${TOOLS}fdbwm $*.fdb

.fdb.snf:
	-${TOOLS}fdbbdf <$*.fdb | ${TOOLS}fc.x11 >$*.snf


all: lib.timestamp do.timestamp include.timestamp binaries fonts


# Enumerate files here:
SUBDIR = 
LIB = 
SOURCES = ${OBNAME}.c ${OBNAME}.ch
OBJECTS = ${OBNAME}.o
DOBJECTS = ${OBNAME}.do
INCLUDEFILES = ${OBNAME}.ch ${OBNAME}.ih
BINARIES = 
APPS = 
DOCS = 
TEMPLATES = 
FONTS = 
X11FONTS = 

# Put dependencies here:




lib.timestamp: ${OBJECTS}
	@sh -c 'if test "${LIB}"; then \
		if test "${LIBPATH}" ; then \
			rm -f ${LIBPATH}/${LIB}; \
			CWD=`pwd`; \
			echo ln -s $${CWD}/${LIB} ${LIBPATH}/${LIB}; \
			ln -s $${CWD}/${LIB} ${LIBPATH}/${LIB}; \
		fi; \
		set -e; \
		echo ar r ${LIB} $?; \
		ar r ${LIB} $?; \
		ranlib ${LIB}; \
		echo ranlib ${LIB}; \
	else \
		true; \
	fi'
	touch lib.timestamp

do.timestamp: ${DOBJECTS}
	@sh -c 'if test -n "${DOBJECTS}" -a -n "${DLIBPATH}" ; then echo "Installing dobjects into staging area."; ${INSTALL} -m 644 $? ${DLIBPATH}; else true; fi'
	touch do.timestamp

include.timestamp: ${INCLUDEFILES}
	@sh -c 'if test -n "${INCLUDEFILES}" -a -n "${INCLUDEPATH}" ; then echo "Installing includes into staging area."; ${INSTALL} -m 644 $? ${INCLUDEPATH}; else true; fi'
	touch include.timestamp

binaries: ${BINARIES}

fonts: ${FONTS} ${X11FONTS}



localclear:
	rm -f lib.timestamp do.timestamp include.timestamp ${LIB}

localclean: localclear
	rm -f *.o *.do *.eh *.ih ${BINARIES} ${FONTS} ${X11FONTS}

localdoc: ${DOCS}
	sh -c 'if test "${DOCS}"; then ${INSTALL} -m 644 ${DOCS} ${FINALDIR}help; else true; fi'

localinstall: localdoc
	sh -c 'if test "${LIB}"; then ${INSTALL} -m 644 ${LIB} ${FINALDIR}lib/atk; else true; fi'
	sh -c 'if test "${DOBJECTS}"; then ${INSTALL} -m 644 ${DOBJECTS} ${FINALDIR}dlib/atk; else true; fi'
	sh -c 'if test "${INCLUDEFILES}"; then ${INSTALL} -m 644 ${INCLUDEFILES} ${FINALDIR}include/atk; else true; fi'
	sh -c 'if test "${BINARIES}"; then ${INSTALL} -m 755 ${BINARIES} ${FINALDIR}bin; else true; fi'
	sh -c 'if test "${APPS}"; then \
		sh -ce '\'' \
		for i in ${APPS}; do ( \
			rm -f ${FINALDIR}bin/$$i; \
			ln -s runapp ${FINALDIR}bin/$$i; \
		); done; '\''; \
	else \
		true; \
	fi'
	sh -c 'if test "${TEMPLATES}"; then ${INSTALL} -m 644 ${TEMPLATES} ${FINALDIR}lib/templates; else true; fi'
	sh -c 'if test "${FONTS}"; then ${INSTALL} -m 644 ${FONTS} ${FINALDIR}fonts; else true; fi'
	sh -c 'if test "${X11FONTS}"; then ${INSTALL} -m 644 ${X11FONTS} ${FINALDIR}X11fonts; else true; fi'


RINSECOMMAND = \
	${RINSE} $$TARGET  \
	DESTDIR="${DESTDIR}" \
	SRCDIR="${SRCDIR}" \
	TARGETDIR="${TARGETDIR}" \
	TOOLS="${SRCDIR}bin/" \
	RINSE="${RINSE}" \
	CC="${CC}" \
	DEBUG="${DEBUG}" \
	VICEDEFINES="${VICEDEFINES}" \
	VICELIBS="${VICELIBS}" \
	XDIR="${XDIR}" \
	WINDOWSYSTEMS="${WINDOWSYSTEMS}" \
	WINDOWINCLUDES="${WINDOWINCLUDES}" \
	WINDOWLIBS="${WINDOWLIBS}" \
	INCLUDEPATH="${INCLUDEPATH}" \
	INCLUDESRC="${INCLUDESRC}" \
	LIBPATH="${LIBPATH}" \
	LIBSRC="${LIBSRC}" \
	DLIBPATH="${DLIBPATH}" \
	DLIBSRC="${DLIBSRC}" \
	${MFLAGS} \
	MFLAGS="${MFLAGS}"

SUBDIRCMD = \
	export TARGET; \
	sh -c 'if test "${SUBDIR}"; then sh -c '\'' \
		CWD=`pwd`; \
		for i in ${SUBDIR}; do \
			if test -d $$i; then \
				echo cd $$i; \
				cd $$i; \
				echo ${RINSECOMMAND}; \
				if ${RINSECOMMAND}; then \
					true; \
				else \
					exit 1; \
				fi; \
				echo cd $$CWD; \
				cd $$CWD; \
			fi; \
		done'\''; \
	else \
		true; \
	fi'


clear: localclear
	@TARGET=clear; ${SUBDIRCMD}

clean: localclean
	@TARGET=clean; ${SUBDIRCMD}

doc: localdoc
	@TARGET=doc; ${SUBDIRCMD}

install: localinstall
	@TARGET=install; ${SUBDIRCMD}

compile: all
	@TARGET=compile; ${SUBDIRCMD}

system: clear compile install

wc:
	-cat Makefile *.c *.h *.ch | wc > /tmp/wc
	@TARGET=appendwc; ${SUBDIRCMD}
	awk 'BEGIN {lines=0;words=0;chars=0} {lines+=$$1;words+=$$2;chars+=$$3} END {printf "Total: %d lines, %d words, %d chars.\n", lines, words, chars}' /tmp/wc

appendwc:
	-cat Makefile *.c *.h *.ch | wc >> /tmp/wc
	@TARGET=appendwc; ${SUBDIRCMD}

depend:	include.timestamp
	depends Makefile "${SOURCES}" "${SOURCEPATH}" "${INCLUDESRC}" "${SRCDIR}" "${CFLAGS}"
	TARGET=depend; ${SUBDIRCMD}

# DO NOT DELETE THIS LINE -- make depend uses it
${OBNAME}.o: ${OBNAME}.c
${OBNAME}.o: ${INCLUDESRC}/arbiter.ih
${OBNAME}.o: ${INCLUDESRC}/arbiterv.ih
${OBNAME}.o: ${INCLUDESRC}/atom.ih
${OBNAME}.o: ${INCLUDESRC}/cel.ih
${OBNAME}.o: ${INCLUDESRC}/celv.ih
${OBNAME}.o: ${INCLUDESRC}/dataobj.ih
${OBNAME}.o: ${INCLUDESRC}/fad.ih
${OBNAME}.o: ${INCLUDESRC}/graphic.ih
${OBNAME}.o: ${INCLUDESRC}/lpair.ih
${OBNAME}.o: ${INCLUDESRC}/lset.ih
${OBNAME}.o: ${INCLUDESRC}/namespc.ih
${OBNAME}.o: ${INCLUDESRC}/observe.ih
${OBNAME}.o: ${INCLUDESRC}/point.h
${OBNAME}.o: ${INCLUDESRC}/proctbl.ih
${OBNAME}.o: ${INCLUDESRC}/rect.h
${OBNAME}.o: ${INCLUDESRC}/value.ih
${OBNAME}.o: ${INCLUDESRC}/view.ih
${OBNAME}.o: ${SRCDIR}include/class.h
${OBNAME}.o: ${OBNAME}.eh
${OBNAME}.eh ${OBNAME}.ih: ${OBNAME}.ch
