     DEFINES = -DR4_INTRINSICS 
INSTALLFLAGS = $(INSTINCFLAGS)
    INCLUDES = -I. -I$(TOOLKITSRC) -I$(TOP) -I$(LIBSRC) -I$(INCLUDESRC)
    LINTLIBS = $(LINTXLIB) $(LINTXTOOL)

HEADERS = ArrowB.h	ArrowBG.h	ArrowBGP.h	ArrowBP.h \
	BaseClassI.h BulletinB.h	BulletinBP.h	CacheP.h \
	CascadeB.h	CascadeBG.h \
	CascadeBGP.h	CascadeBP.h	Command.h	CommandP.h \
	CutPaste.h	CutPasteP.h	DialogS.h	DialogSP.h \
	DrawingA.h	DrawingAP.h	DrawnB.h	DrawnBP.h \
	FileSB.h	FileSBP.h	Form.h		FormP.h \
	Frame.h		FrameP.h	Label.h		LabelG.h \
	LabelGP.h	LabelP.h	List.h		ListP.h \
	MainW.h		MainWP.h	MenuShell.h	MenuShellP.h \
	MessageB.h	MessageBP.h	PanedW.h	PanedWP.h \
	PushB.h		PushBG.h	PushBGP.h	PushBP.h \
	RowColumn.h	RowColumnP.h	SashP.h		Scale.h \
	ScaleP.h	ScrollBar.h	ScrollBarP.h	ScrolledW.h \
	ScrolledWP.h	SelectioB.h	SelectioBP.h	SeparatoG.h \
	SeparatoGP.h	Separator.h	SeparatorP.h	StringSrcP.h \
	Text.h		TextInP.h	TextOutP.h	TextP.h \
	TextSrcP.h	ToggleB.h	ToggleBG.h	ToggleBGP.h \
	ToggleBP.h	Xm.h		XmP.h		bitmaps.h \
	TextF.h        TextFP.h \
	VirtKeys.h	VirtKeysP.h	VendorE.h	VendorEP.h \
	Traversal.h	ExtObject.h	ExtObjectP.h	VaSimple.h

X11HEADERS =\
	AtomMgr.h \
	Protocols.h \
	ProtocolsP.h \
	MwmUtil.h

SRCS =\
	ArrowB.c \
	ArrowBG.c \
	ArrowBI.c \
	BulletinB.c \
	CascadeB.c \
	CascadeBG.c \
	Command.c \
	CutPaste.c \
	Dest.c \
	DialogS.c \
	DrawingA.c \
	DrawnB.c \
	ExtObject.c \
	FileSB.c \
	Form.c \
	Frame.c	\
	Gadget.c \
	GadgetUtil.c \
       	GeoUtils.c \
	GetSecRes.c \
	HeapMgr.c \
	ImageCache.c \
	Label.c \
	LabelG.c \
	List.c \
        MainW.c \
	MapEvents.c \
	MenuShell.c \
	MenuUtil.c \
	MessageB.c \
	NavigMap.c \
	PanedW.c\
	PushB.c \
        PushBG.c \
	ReadImage.c \
	ResConvert.c \
	ResInd.c \
        RowColumn.c \
	Sash.c	\
	Scale.c \
	ScrollBar.c \
        ScrolledW.c \
	SelectioB.c \
	SeparatoG.c \
	Separator.c \
	Simple.c \
        Text.c \
	TextIn.c \
	TextOut.c \
	TextStrSrc.c \
        ToggleB.c \
	ToggleBG.c \
	ToggleBI.c \
	TrackLoc.c \
	UniqueEvnt.c \
	VaSimple.c \
	Vendor.c \
	VirtKeys.c \
        Visual.c \
	XmString.c \
	TextF.c \
	AtomMgr.c \
	Cache.c \
	Protocols.c \
	Primitive.c \
	Manager.c \
	Traversal.c \
	VendorE.c \
	BaseClass.c \
	Desktop.c

OBJS1 =\
	ArrowB.o \
	ArrowBG.o \
	ArrowBI.o \
	BulletinB.o \
	CascadeB.o \
	CascadeBG.o \
	Command.o \
	CutPaste.o \
	DialogS.o \
	DrawingA.o \
	DrawnB.o \
	FileSB.o \
	Form.o \
	Frame.o	\
	Gadget.o \
	GadgetUtil.o \
       	GeoUtils.o \
	HeapMgr.o \
	ImageCache.o \
	Label.o \
	LabelG.o \
	List.o \
        MainW.o \
	MapEvents.o \
	MenuShell.o \
	MenuUtil.o \
	MessageB.o \
	NavigMap.o \
	PanedW.o\
	PushB.o \
        PushBG.o \
	ReadImage.o \
	ResConvert.o \
	ResInd.o \
        RowColumn.o \
	Sash.o	\
	Scale.o \
	ScrollBar.o \
        ScrolledW.o \
	SelectioB.o \
	SeparatoG.o \
	Separator.o \
	Simple.o \
        Text.o \
	TextIn.o \
	TextOut.o \
	TextStrSrc.o \
        ToggleB.o \
	ToggleBG.o \
	ToggleBI.o \
	UniqueEvnt.o \
        VaSimple.o \
        Visual.o \
	XmString.o \
	TextF.o \
	AtomMgr.o \
	Cache.o \
	GetSecRes.o \
	TrackLoc.o \
	Protocols.o

OBJS2 =\
	Primitive.o \
	Manager.o \
	Traversal.o \
	Dest.o \
	Vendor.o \
	VendorE.o \
	ExtObject.o \
	BaseClass.o \
	VirtKeys.o \
	Desktop.o

OBJS = $(OBJS1) $(OBJS2)

NormalLibraryObjectRule()
NormalLibraryTarget(Xm,$(OBJS))
LintLibraryTarget(Xm,$(SRCS))

BuildIncludes($(HEADERS),Xm,..)
BuildIncludes($(X11HEADERS),Xm,..)
BuildIncludes($(X11HEADERS),.,.)

MakeDirectories(install,$(USRINCDIR)/Xm)

InstallLibrary(Xm,$(USRLIBDIR))
InstallLintLibrary(Xm,$(LINTLIBDIR))
InstallMultiple($(HEADERS),$(USRINCDIR)/Xm)

install:: $(X11HEADERS)
	@case '${MFLAGS}' in *[i]*) set +e;; esac; \
	for i in $(X11HEADERS); do \
		(set -x; $(INSTALL) -c $(INSTALLFLAGS) $$i $(USRINCDIR)/Xm; \
		$(RM) $(USRINCDIR)/X11/$$i; \
		cd $(USRINCDIR)/X11; $(LN) ../Xm/$$i .); \
	done

install:: XKeysymDB
#  	If XKeysymDB exists and doesn''t already have OSF keysyms, prepend ours 
#	If it has OSF keysyms, leave it alone.
#  	Otherwise (doesn''t exist), install ours.
	-@if [ -f $(LIBDIR)/XKeysymDB ]; then \
	   if [ "`grep osfQuickPaste $(LIBDIR)/XKeysymDB`" = "" ]; then \
		echo "**SAVING** XKeysymDB in XKeysymDB.old" ; \
		(set -x ; $(CP) $(LIBDIR)/XKeysymDB $(LIBDIR)/XKeysymDB.old ); \
		echo "**PREPENDING** XKeysymDB in $(LIBDIR)" ; \
		(set -x; $(RM)  $(LIBDIR)/XKeysymDB ); \
		echo "+ cat XKeysymDB $(LIBDIR)/XKeysymDB.old > $(LIBDIR)/XKeysymDB "; \
		cat XKeysymDB $(LIBDIR)/XKeysymDB.old > $(LIBDIR)/XKeysymDB ; \
	    else  \
		echo "**NOT** installing new XKeysymDB"; \
		echo "OSF KeysymDB already installed."; \
	   fi; \
	else \
		echo "**INSTALLING** XKeysymDB in $(LIBDIR)" ; \
		(set -x; $(INSTALL) -c $(INSTALLFLAGS) XKeysymDB $(LIBDIR));  fi

	
DependTarget()
