XCOMM $XConsortium: Imakefile /main/11 1996/09/28 16:43:13 rws $

#define IHaveSubdirs
SUBDIRS= nop/object nop/os nop/protocol fileio

DONES = nop/object/DONE nop/protocol/DONE

#undef _LinkBuildLibrary
#define _LinkBuildLibrary(lib) LinkBuildLibrary(lib)


#define DoNormalLib	NormalLibXa
#define DoSharedLib	SharedLibXa
#define DoDebugLib	DebugLibXa
#define DoProfileLib	ProfileLibXa

#define SoRev SOXAREV
#define LibName Xa
#define IncSubdir Xa

XCOMM REQUIREDLIBS = -L$(BUILDLIBDIR) $(ICELIB) nop/os/libXaOs.a CplusplusLibC MathLibrary
REQUIREDLIBS = -L$(BUILDLIBDIR) -lICE 
CCENVSETUP = LD_RUN_PATH=$(USRLIBDIR)/Xa:$(USRLIBDIRPATH)
INCDIR = $(INCROOT)/$(IncSubdir)

HEADERS = 		\
	atomdefs.h 	\
	atomstrings.h 	\
	errors.h	\
	cdefines.h 	\
	Xafuncs.h 	\
	Xafuncproto.h 	\
	Xalib.h 	\
	Xaprotocol.h 

SRCS = 			\
	atom.cc 	\
	bag.cc 		\
	connection.cc 	\
	dictionary.cc 	\
	fileio.cc 	\
	format.cc 	\
	initatoms.cc 	\
	tagcounter.cc 	\
	tagset.cc 	\
	xasymlib.cc 	\
	xastring.cc

OBJS = 			\
	nop/object/?*.o \
	nop/os/?*.o	\
	nop/protocol/?*.o \
	atom.o 		\
	bag.o 		\
	connection.o 	\
	dictionary.o 	\
	fileio.o 	\
	format.o 	\
	initatoms.o 	\
	tagcounter.o 	\
	tagset.o 	\
	xasymlib.o 	\
	xastring.o

#define CplusplusSource
NormalCplusplusObjectRule()

#define PassCDebugFlags 'CXXDEBUGFLAGS=$(CXXDEBUGFLAGS)'

XCOMM remove dia from next line when buffer.h removed from fileio.h
INCLUDES=-I$(BUILDINCDIR) -I. -Inop/object -I../../programs/Xaserver/dia

LINTLIBS = $(LINTXLIB)

MakeSubdirs($(SUBDIRS))

#include <Library.tmpl>

DependSubdirs($(SUBDIRS))

makeatoms: makeatoms.cc
	$(CXX) -o makeatoms $(CXXOPTIONS) -I../.. makeatoms.cc

atomstrings.h atomdefs.h initatoms.cc: PredefinedAtoms makeatoms
	./makeatoms

includes:: atomdefs.h initatoms.cc

LinkSourceFile(class.h,		nop/object)
LinkSourceFile(cclass.h,	nop/object)
LinkSourceFile(object.h,	nop/object)
LinkSourceFile(cobject.h,	nop/object)
LinkSourceFile(monitor.h,       nop/object)

XCOMM The following is a terrible hack until debug support gets put in templates

clean::
	$(RM) makeatoms atomstrings.h atomdefs.h initatoms.cc
