/* Makefile for shX */
/* Copyright 1990, Digital Equipment Corporation, CEC Karlsruhe */

VERSION=1.0

#undef SOF
#include "config.h"

#ifdef SOF
#define SELECT -DMY_OWN_SELECT
#endif

/* Unless inhibited or changed, use -g to compile for debugging.  */
#ifndef C_DEBUG_SWITCH
#define C_DEBUG_SWITCH -g
#endif

/* If user wants to optimize, this is how.  */
#ifndef C_OPTIMIZE_SWITCH
#define C_OPTIMIZE_SWITCH -O
#endif

CDEBUGFLAGS = 
INCLUDES = -I. -I./X11

#ifndef TCP
#define TCP
#endif

#ifndef UNIX_CONN
#define UNIX_CONN
#endif

#ifndef DNET
#define DNET
#endif

#ifndef SELECT
#define SELECT
#endif

#ifndef READ_SOCKETS
#define READ_SOCKETS
#endif

/* debug lines removed */

#ifndef SZ_HINTS
#define SZ_HINTS
#endif

#ifndef MALLOC
#define MALLOC
#endif

#ifndef NO_FONT
#define NO_FONT
#endif

/* debug removed from defines, too */
DEFINES = TCP UNIX_CONN DNET SELECT \
	READ_SOCKETS SZ_HINTS \
	MALLOC NO_FONT
DB_DEFINES = -DERRORDB=\"LIBDIR/XErrorDB\"
CFLAGS = $(CDEBUGFLAGS) $(INCLUDES) $(DEFINES) $(STD_DEFS)

.c.o:
	rm -f $@
	$(CC) -c $(CFLAGS) $*.c

SRCS = *.c


SHXOBJ = \
	ApplCtx.o build.o conmgr.o dwtmissing.o globals.o io.o map.o \
	missingdec.o requests.o resources.o table.o utils.o version.o SOF

OBJS1 = \
	Context.o GetPRoot.o ParseCmd.o Quarks.o XAllCells.o \
	XAllPlanes.o XAllowEv.o XAutoRep.o XBackgnd.o XBdrWidth.o \
	XBell.o XBorder.o XChAccCon.o XChClMode.o XChActPGb.o \
	XChCmap.o XChGC.o XChKeyCon.o XChPntCon.o XChProp.o \
	XChSaveSet.o XChWAttrs.o XChWindow.o XChkIfEv.o XChkMaskEv.o \
	XChkWinEv.o XChkTypEv.o XChkTypWEv.o XCirWin.o XCirWinDn.o \
	XCirWinUp.o XClDisplay.o XClear.o XClearArea.o XConfWind.o \
	XConnDis.o XConvSel.o XCopyArea.o XCopyCmap.o XCopyGC.o \
	XCopyPlane.o XCrBFData.o XCrCmap.o XCrCursor.o XCrGC.o \
	XCrGlCur.o XCrPFBData.o XCrPixmap.o XCrWindow.o XCursor.o \
	XDefCursor.o XDelProp.o XDestSubs.o XDestWind.o XDisName.o \
	XDrArc.o XDrArcs.o XDrLine.o XDrLines.o XDrPoint.o \
	XDrPoints.o XDrRect.o XDrRects.o XDrSegs.o XErrDes.o \
	XErrHndlr.o XEvToWire.o XFetchName.o XFillArc.o XFillArcs.o \
	XFillPoly.o XFillRect.o XFillRects.o XFlush.o XFont.o \
	XFontNames.o XFontInfo.o XFreeCmap.o XFreeCols.o XFreeCurs.o \
	XFreeEData.o XFreeGC.o XFreePix.o XFSSaver.o XGCMisc.o \
	XGeom.o XGetAtomNm.o XGetColor.o XGetDflt.o XGetFPath.o \
	XGetFProp.o XGetGeom.o XGetHColor.o XGetHints.o XGetIFocus.o \
	XGetImage.o XGetKCnt.o XGetMoEv.o XGetPCnt.o XGetPntMap.o \
	XGetProp.o XGetSOwner.o XGetSSaver.o XGetStCmap.o \
	XGetWAttrs.o XGrButton.o XGrKey.o XGrKeybd.o XGrPointer.o \
	XGrServer.o XHost.o XIfEvent.o XImUtil.o XImText.o \
	XImText16.o XInitExt.o XInsCmap.o XIntAtom.o XKeyBind.o \
	XKillCl.o XLiHosts.o XLiICmaps.o XLiProps.o XListExt.o \
	XLoadFont.o XLookupCol.o XLowerWin.o

OBJS2 = \
	XMacros.o XMapRaised.o XMapSubs.o XMapWindow.o XMaskEvent.o \
	XMisc.o XModMap.o XMoveWin.o XNextEvent.o XOpenDis.o \
	XParseCol.o XParseGeom.o XPeekEvent.o XPeekIfEv.o XPending.o \
	XPmapBgnd.o XPmapBord.o XPolyReg.o XPolyTxt.o XPolyTxt16.o \
	XPutBEvent.o XPutImage.o XQuBest.o XQuColor.o XQuColors.o \
	XQuCurShp.o XQuExt.o XQuKeybd.o XQuPntr.o XQuStipShp.o \
	XQuTextE16.o XQuTextExt.o XQuTileShp.o XQuTree.o XRaiseWin.o \
	XRdBitF.o XRecolorC.o XReconfWin.o XRegion.o XRepWindow.o \
	XRestackWs.o XRotProp.o XSelInput.o XSendEvent.o XSetBack.o \
	XSetCRects.o XSetClMask.o XSetClOrig.o XSetDashes.o \
	XSetFPath.o XSetFont.o XSetFore.o XSetFunc.o XSetHints.o \
	XSetIFocus.o XSetLStyle.o XSetPMask.o XSetPntMap.o \
	XSetSOwner.o XSetSSaver.o XSetState.o XSetStip.o \
	XSetStCmap.o XSetTile.o XSetTSOrig.o XStBytes.o XStColor.o \
	XStColors.o XStNColor.o XStName.o XStrKeysym.o XSync.o \
	XSynchro.o XText.o XText16.o XTextExt.o XTextExt16.o \
	XTrCoords.o XUndefCurs.o XUngrabBut.o XUngrabKbd.o \
	XUngrabKey.o XUngrabPtr.o XUngrabSvr.o XUninsCmap.o \
	XUnldFont.o XUnmapSubs.o XUnmapWin.o XVisUtil.o XWarpPtr.o \
	XWinEvent.o XWindow.o XWrBitF.o XlibInt.o Xrm.o evtomask.o

OBJS = $(SHXOBJ) $(OBJS1) $(OBJS2)

all: libshX11.a

libshX11.a: $(OBJS)
	rm -f $@
	ar clq $@ $(OBJS)
	ranlib $@

version.o: version.c xmakefile
	rm -f $@
	$(CC) -c $(CFLAGS) \
	    -D_VERSION_="\"shX Version $(VERSION) for $(MACHINE)\"" version.c


XErrDes.o:
	rm -f $@
	$(CC) -c $(CFLAGS) $(DB_DEFINES) $*.c

XConnDis.o:
	rm -f $@
	$(CC) -c $(CFLAGS)  $*.c
