XCOMM $Id: Imakefile,v 1.4 2000/02/20 01:31:35 casantos Exp $
XCOMM
XCOMM Imakefile for neXtaw library.
XCOMM
XCOMM Copyright (c) 1991 X Consortium
XCOMM Copyright (c) 1999, 2000  Carlos A M dos Santos
XCOMM
XCOMM Permission is hereby granted, free of charge, to any person obtaining a
XCOMM copy of this software and associated documentation files (the
XCOMM "Software"), to deal in the Software without restriction, including
XCOMM without limitation the rights to use, copy, modify, merge, publish,
XCOMM distribute, sublicense, and/or sell copies of the Software, and to
XCOMM permit persons to whom the Software is furnished to do so, subject to
XCOMM the following conditions:
XCOMM
XCOMM The above copyright notice and this permission notice shall be included
XCOMM in all copies or substantial portions of the Software.
XCOMM
XCOMM THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
XCOMM OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
XCOMM MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
XCOMM IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
XCOMM CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
XCOMM TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
XCOMM SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
XCOMM
XCOMM Except as contained in this notice, the name of the authors or copyright
XCOMM holders shall not be used in advertising or otherwise to promote the
XCOMM sale, use or other dealings in this Software without prior written
XCOMM authorization from the copyright holders.
XCOMM 
XCOMM Author: Carlos A M dos Santos, based on the original XConsortium
XCOMM         and Kaleb S. Keithley's Imakefiles
XCOMM

#define DoNormalLib NormalLibXaw
#define DoSharedLib SharedLibXaw
#define DoDebugLib DebugLibXaw 
#define DoProfileLib ProfileLibXaw 
#define HasSharedData YES
#define LibName neXtaw
#define SoRev SOXAWREV
#define IncSubdir X11
#define IncSubSubdir neXtaw

#ifdef SharedXawReqs
REQUIREDLIBS = SharedXawReqs
#endif

DEFINES = XawI18nDefines

LINTLIBS = $(LINTXLIB) $(LINTXTOOL)

XCOMM The following defines may be appended to EXTRA_DEFINES:
XCOMM -DNO_MENU_LINES  this removes the entry separators. I just think they
XCOMM                  look as good as they should.

EXTRA_DEFINES = -DUSEGRAY -DNO_MENU_LINES

EXTRA_INCLUDES = -I.

HEADERS = \
	AllWidgets.h \
	AsciiSink.h \
	AsciiSinkP.h \
	AsciiSrc.h \
	AsciiSrcP.h \
	AsciiText.h \
	AsciiTextP.h \
	Box.h \
	BoxP.h \
	Cardinals.h \
	Clock.h \
	ClockP.h \
	Command.h \
	CommandP.h \
	Dialog.h \
	DialogP.h \
	Form.h \
	FormP.h \
	Grip.h \
	GripP.h \
	Label.h \
	LabelP.h \
	Layout.h \
	LayoutP.h \
	List.h \
	ListP.h \
	MenuButton.h \
	MenuButtoP.h \
	Misc.h \
	MultiSrc.h \
	MultiSrcP.h \
	MultiSink.h \
	MultiSinkP.h \
	Paned.h \
	PanedP.h \
	Panner.h \
	PannerP.h \
	Porthole.h \
	PortholeP.h \
	Repeater.h \
	RepeaterP.h \
	Reports.h \
	Scrollbar.h \
	ScrollbarP.h \
	Simple.h \
	SimpleP.h \
	SimpleMenu.h \
	SimpleMenP.h \
	Sme.h \
	SmeP.h \
	SmeBSB.h \
	SmeBSBP.h \
	SmeLine.h \
	SmeLineP.h \
	SmeThreeD.h \
	SmeThreeDP.h \
	StripChart.h \
	StripCharP.h \
	Template.c \
	Template.h \
	TemplateP.h \
	Text.h \
	TextP.h \
	TextSink.h \
	TextSinkP.h \
	TextSrc.h \
	TextSrcP.h \
	ThreeD.h \
	ThreeDP.h \
	Toggle.h \
	ToggleP.h \
	Tree.h \
	TreeP.h \
	VendorEP.h \
	Viewport.h \
	ViewportP.h \
	XawImP.h \
	XawInit.h

SRCS = \
	AllWidgets.c \
	AsciiSink.c \
	AsciiSrc.c \
	AsciiText.c \
	Box.c \
	Clock.c \
	Command.c \
	Dialog.c \
	Form.c \
	Grip.c \
	Label.c \
	Layout.c \
	List.c \
	MenuButton.c \
	Misc.c \
	MultiSrc.c \
	MultiSink.c \
	Paned.c \
	Panner.c \
	Porthole.c \
	Repeater.c \
	Scrollbar.c \
	Simple.c \
	SimpleMenu.c \
	Sme.c \
	SmeBSB.c \
	SmeLine.c \
	SmeThreeD.c \
	StripChart.c \
	Text.c \
	TextSink.c \
	TextSrc.c \
	TextAction.c \
	TextPop.c \
	TextTr.c \
	ThreeD.c \
	Toggle.c \
	Tree.c \
	Vendor.c \
	Viewport.c \
	XawIm.c \
	XawInit.c \
	XawI18n.c \
	sharedlib.c \
	laygram.c \
	laylex.c

#if SharedDataSeparation
UNSHAREDOBJS = AllWidgets.o sharedlib.o
#endif

OBJS = \
	AllWidgets.o \
	AsciiSink.o \
	AsciiSrc.o \
	AsciiText.o \
	Box.o \
	Clock.o \
	Command.o \
	Dialog.o \
	Form.o \
	Grip.o \
	Label.o \
	Layout.o \
	List.o \
	MenuButton.o \
	Misc.o \
	MultiSrc.o \
	MultiSink.o \
	Paned.o \
	Panner.o \
	Porthole.o \
	Repeater.o \
	Scrollbar.o \
	Simple.o \
	SimpleMenu.o \
	Sme.o \
	SmeBSB.o \
	SmeLine.o \
	SmeThreeD.o \
	StripChart.o \
	Text.o \
	TextSink.o \
	TextSrc.o \
	TextAction.o \
	TextPop.o \
	TextTr.o \
	ThreeD.o \
	Toggle.o \
	Tree.o \
	Vendor.o \
	Viewport.o \
	XawIm.o \
	XawI18n.o \
	XawInit.o \
	laygram.o \
	laylex.o

all::
	MakeDir(X11)
	$(RM) X11/neXtaw
	$(LN) .. X11/neXtaw

#include <Library.tmpl>

#ifdef LexCmd
LEX=LexCmd
#endif
#ifdef YaccCmd
YACC=YaccCmd
#endif

depend:: laygram.c laylex.c

#if DoSharedLib && SharedDataSeparation
SpecialCObjectRule(sharedlib.o,NullParameter,$(SHLIBDEF))
#endif

laygram.c : laygram.y
	$(YACC) -d laygram.y
	sed 's/yy/LayYY/g' y.tab.c > laygram.c
	sed 's/yy/LayYY/g' y.tab.h > laygram.h
	$(RM) y.tab.c y.tab.h

laylex.c: laylex.l
	$(LEX) laylex.l
	sed 's/yy/LayYY/g' lex.yy.c > laylex.c
	$(RM) lex.yy.c

clean::
	LibCleanDir(X11)
	$(RM) laygram.c laygram.h laylex.c

DependTarget()

