#
# @(#)Makefile	2.11 91/08/14 Copyright 1990 Sun Microsystems
#
# This file is a product of Sun Microsystems, Inc. and is provided for
# unrestricted use provided that this legend is included on all tape
# media and as a part of the software program in whole or part.  Users
# may copy or modify this file without charge, but are not authorized to
# license or distribute it to anyone else except as part of a product
# or program developed by the user.
# 
# THIS FILE IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
# WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
# PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
# 
# This file is provided with no support and without any obligation on the
# part of Sun Microsystems, Inc. to assist in its use, correction,
# modification or enhancement.
# 
# SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
# INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY THIS FILE
# OR ANY PART THEREOF.
# 
# In no event will Sun Microsystems, Inc. be liable for any lost revenue
# or profits or other special, indirect and consequential damages, even
# if Sun has been advised of the possibility of such damages.
# 
# Sun Microsystems, Inc.
# 2550 Garcia Avenue
# Mountain View, California  94043
#

SOURCES.c = \
	gcm.c \
	gcc.c \
	gdd.c \
	gfm.c \
	gfm_load_dir.c \
	group.c \
	group_data.c \
	gutil.c

SOURCES.G = \
	gcc.G \
	gfm.G

SOURCES.h = \
	c_varieties.h \
	gcm.h \
	gcc.h \
	gdd.h \
	gfm.h \
	group.h \
	group_impl.h \
	gutil.h \
	gfm_app.pr \
	gfm_data.pr \
	gfm_folder.pr \
	gfm_dotdot.pr \
	gfm_system.pr \
	gfm_unknown.pr \
	black16.pr \
	black32.pr

SOURCES = \
	$(SOURCES.G) \
	$(SOURCES.h) \
	$(SOURCES.c)

TARGETS.c = \
	$(SOURCES.G:%.G=%_ui.c) \
	$(STUBS.G:%.G=%_stubs.c)

TARGETS.h = \
	$(SOURCES.G:%.G=%_ui.h) \
	$(SOURCES.l:%.l=%.h) \
	$(SOURCES.y:%.y=%.h)

TARGETS.other =	\
	$(SOURCES.G:%.G=%.info)

TARGETS = \
	$(TARGETS.other) \
	$(TARGETS.h) \
	$(TARGETS.c)

OBJECTS = \
	$(SOURCES.c:%.c=%.o) \
	$(TARGETS.c:%.c=%.o)

LIBRARY = libguidexv.a

PROJECTDIR = $(GUIDEHOME)
DESTDIR = $(PROJECTDIR)

# Compiler flags.

CFLAGS += -O
CPPFLAGS += -I. -I$(OPENWINHOME)/include -Ilibguide
G2C = $(GUIDEHOME)/bin/gxv

# Make information.

# Standard targets.

all:	 $(SOURCES) $(TARGETS) $(LIBRARY) $(PROGRAM)
objects: $(SOURCES.c) $(TARGETS.c) $(TARGETS.h) $(OBJECTS)
sources: $(SOURCES)
targets: $(SOURCES) $(TARGETS)

#%_ui.c + %_ui.h + %_stubs.c + %.info: %.G 
#$(G2C) -s $*

$(LIBRARY): $(LIBRARY)($(OBJECTS))
	ar rv $@ $?
	${RANLIB} $@
	rm -f $?

$(LIBRARY)(%.o): %.c
	$(COMPILE.c) $<

install: all
	@-sccs check
	install -d $(DESTDIR)/lib/help
	install -m 444 $(TARGETS.other) $(DESTDIR)/lib/help
	install -d $(DESTDIR)/lib
	install -m 664 $(LIBRARY) $(DESTDIR)/lib
	(cd $(DESTDIR)/lib ; ranlib -t $(LIBRARY) ; chmod 444 $(LIBRARY))

clean:
	$(RM) $(OBJECTS) core libguidexv.a
