#
# .../src/xmplus/lib/Makefile
# linked to .../systems/$(BUILD)/xmplus/lib/Makefile
#

BSDIR= ../../../..
BSINCLUDES= $(BSDIR)/include
BSLIBS= $(BSDIR)/lib

include ../../Make.init


_CCFLAGS= -I. $(CCFLAGS) -D$(SYSTEM) -I$(BSDIR)/lib/$(BUILD)
_LDFLAGS= -L. $(LDFLAGS)

_CLFLAGS= -I. -L. $(CLFLAGS) -D$(SYSTEM) -I$(BSDIR)/lib/$(BUILD)

XMFLAGS = $(_CCFLAGS) -DXMPP_DVLP -I$(X11INCLUDES) -I$(XMINCLUDES)
AWFLAGS = $(_CCFLAGS) -DXMPP_DVLP -DXAW -I$(X11INCLUDES) -I$(XAWINCLUDES)
TKFLAGS = $(_CCFLAGS) -DTCL
CWFLAGS = $(_CCFLAGS) -DASCII -I$(BSINCLUDES)
XRFLAGS = $(_CCFLAGS) -DRCI -I$(BSINCLUDES)


all:: xmlibs awlibs cwlibs tklibs xrlibs

links:
	cd $(BSLIBS)/$(BUILD); \
	rm -f libXm* libCi*; \
	ln -s ../../systems/$(BUILD)/xmplus/lib/*.a .

clean:
	rm -f *.o *.a


xmlibs: libXm++.a libCi2.a

awlibs: libXmaw++.a libCi2aw.a

tklibs: libXmtk++.a

cwlibs: libXmcw++.a

xrlibs: libXmrci++.a


xgifload.o: xgifload.c xgif.h
	$(STDC) $(STDCFLAGS) -I$(X11INCLUDES) -c xgifload.c


xmObject.o: xmObject.C xmObject.h
	$(CC) $(XMFLAGS) -c xmObject.C -o xmObject.o

xmUsrDlg.o: xmUsrDlg.C xmObject.h
	$(CC) $(XMFLAGS) -c xmUsrDlg.C -o xmUsrDlg.o

xmDrawing.o: xmDrawing.C xmDrawing.h xmObject.h
	$(CC) $(XMFLAGS) -c xmDrawing.C -o xmDrawing.o

libXm++.a: xgifload.o xmObject.o xmUsrDlg.o xmDrawing.o
	$(AR) $(ARFLAGS) libXm++.a xgifload.o xmObject.o xmUsrDlg.o xmDrawing.o
	$(RANLIB) libXm++.a


awObject.o: xmObject.C xmObject.h
	$(CC) $(AWFLAGS) -o awObject.o -c xmObject.C

awUsrDlg.o: xmUsrDlg.C xmObject.h xgif.h
	$(CC) $(AWFLAGS) -o awUsrDlg.o -c xmUsrDlg.C

awDrawing.o: xmDrawing.C xmDrawing.h xmObject.h
	$(CC) $(AWFLAGS) -o awDrawing.o -c xmDrawing.C

libXmaw++.a: xgifload.o awObject.o awUsrDlg.o awDrawing.o
	$(AR) $(ARFLAGS) libXmaw++.a xgifload.o awObject.o awUsrDlg.o awDrawing.o
	$(RANLIB) libXmaw++.a


xmCi2.o: xmCi2.C xmCi2.h xmDrawing.h xmObject.h
	$(CC) $(XMFLAGS) -c xmCi2.C -o xmCi2.o

libCi2.a: xmCi2.o
	$(AR) $(ARFLAGS) libCi2.a xmCi2.o
	$(RANLIB) libCi2.a

awCi2.o: xmCi2.C xmCi2.h xmDrawing.h xmObject.h
	$(CC) $(AWFLAGS) -o awCi2.o -c xmCi2.C

libCi2aw.a: awCi2.o
	$(AR) $(ARFLAGS) libCi2aw.a awCi2.o
	$(RANLIB) libCi2aw.a



cwObject.o: xcObject.C xmObject.h CwDefs.h
	$(CC) $(CWFLAGS) -c xcObject.C -o cwObject.o

cwUsrDlg.o: xcUsrDlg.C xmObject.h CwDefs.h
	$(CC) $(CWFLAGS) -c xcUsrDlg.C -o cwUsrDlg.o

libXmcw++.a: cwObject.o cwUsrDlg.o
	$(AR) $(ARFLAGS) libXmcw++.a cwObject.o cwUsrDlg.o
	$(RANLIB) libXmcw++.a



xrObject.o: xrObject.C xmObject.h RciDefs.h
	$(CC) $(XRFLAGS) -c xrObject.C -o xrObject.o

xrUsrDlg.o: xrUsrDlg.C xmObject.h RciDefs.h
	$(CC) $(XRFLAGS) -c xrUsrDlg.C -o xrUsrDlg.o

libXmrci++.a: xrObject.o xrUsrDlg.o
	$(AR) $(ARFLAGS) libXmrci++.a xrObject.o xrUsrDlg.o
	$(RANLIB) libXmrci++.a
