# Copyright status: this file is in the public domain. # Filename prefix: req- REQUESTS = AllocColor AllocColorCells AllocColorPlanes AllocNamedColor\ AllowEvents Bell ChangeActivePointerGrab ChangeGC ChangeHosts\ ChangeKeyboardControl ChangeKeyboardMapping ChangePointerControl\ ChangeProperty ChangeSaveSet ChangeWindowAttributes CirculateWindow\ ClearArea CloseFont ConfigureWindow ConvertSelection CopyArea\ CopyColormapAndFree CopyGC CopyPlane CreateColormap CreateCursor\ CreateGC CreateGlyphCursor CreatePixmap CreateWindow DeleteProperty\ DestroySubwindows DestroyWindow FillPoly ForceScreenSaver FreeColormap\ FreeColors FreeCursor FreeGC FreePixmap GetAtomName GetFontPath\ GetGeometry GetImage GetInputFocus GetKeyboardControl\ GetKeyboardMapping GetModifierMapping GetMotionEvents GetPointerControl\ GetPointerMapping GetProperty GetScreenSaver GetSelectionOwner\ GetWindowAttributes GrabButton GrabKey GrabKeyboard GrabPointer\ GrabServer ImageText16 ImageText8 InstallColormap InternAtom KillClient\ ListExtensions ListFonts ListFontsWithInfo ListHosts\ ListInstalledColormaps ListProperties LookupColor MapSubwindows\ MapWindow NoOperation OpenFont PolyArc PolyFillArc PolyFillRectangle\ PolyLine PolyPoint PolyRectangle PolySegment PolyText16 PolyText8\ PutImage QueryBestSize QueryColors QueryExtension QueryFont QueryKeymap\ QueryPointer QueryTextExtents QueryTree RecolorCursor ReparentWindow\ RotateProperties SendEvent SetAccessControl SetClipRectangles\ SetCloseDownMode SetDashes SetFontPath SetInputFocus SetModifierMapping\ SetPointerMapping SetScreenSaver SetSelectionOwner StoreColors\ StoreNamedColor TranslateCoordinates UngrabButton UngrabKey\ UngrabKeyboard UngrabPointer UngrabServer UninstallColormap\ UnmapSubwindows UnmapWindow WarpPointer # Filename prefix: sgc- SGCCALLS = ChangeSGC CopySGCtoGC CopySGCtoSGC CreateSGC SGC_GC\ SetClipRectangles SetDashes # Filename prefix: local- LOCALCALLS = backing-store bitmap-bit-order bitmap-scanline-pad\ bitmap-scanline-unit black-pixel default-screen fontinfo-charinfo\ fontinfo-free fontinfo-recache image-byte-order input-mask\ keysym-to-string library-major library-minor map-visuals max-keycode\ max-maps max-request min-keycode min-maps motion-buffer-size nscreens\ num-formats opened-string pixmap-bpp pixmap-depth pixmap-pad\ proto-major proto-minor release resource-base resource-mask root\ root-colormap root-depth root-height root-height-mm root-visual\ root-width root-width-mm save-under screen-depth screen-ndepths\ screen-visuals string-to-keysym vendor white-pixel xc-udata # Filename prefix: conv- (abbreviating "convenience") CONVCALLS = apply-geometry draw-line draw-point draw-rectangle end-batch\ fill-arc fill-rectangle font-cursor icccm-class icccm-geometry\ icccm-size icccm-wm icccm-wm-properties kbmap lookup-color\ parse-geometry text-extents-8 EXTS = SHAPE SHAPE_FILEPREFIX = shape SHAPE_FILES = Combine GetRectangles InputSelected Mask Offset\ QueryExtents Rectangles SelectInput map query CC_ADD = -g CFLAGS_ADD = -I. BUILDLIBS = liblx.a OBJ_liblx = $(CONVCALLS:S/$/.o/:S/^/conv-/)\ $(LOCALCALLS:S/$/.o/:S/^/local-/) $(REQUESTS:S/$/.o/:S/^/req-/)\ $(SGCCALLS:S/$/.o/:S/^/sgc-/) atomlist.o auth.o chain.o close.o cvt.o\ errs.o events.o hostlist.o identity.o initial.o keysym-casemap.o\ lx-xi.o lx_abort.o map.o priv.o proto.o req-simple-none.o\ req-simple-single.o resmgr.o resource.o sgc.o str_tconc.o strlist.o\ vars.o xidlist.o .for x in $(EXTS) OBJ_liblx += $($(x)_FILES:S/$/.o/:S/^/lx-$($(x)_FILEPREFIX)-/) .endfor INSTALLHDR = lx-keysyms.h lx-shape.h lx.h INSTALLMAN = liblx.3 TESTS = 1 2 3 TESTBINS = $(TESTS:S/^/rmtest-/) HOSTBINS = process-keysyms BUILDBINS = $(TESTBINS) $(HOSTBINS) INSTALLBIN = .for p in $(TESTBINS) OBJ_$p = $p.o LIBS_$p = liblx.a .endfor LIBS_rmtest-1 += -les LIBS_process-keysyms = -les -lavl VERSION = 0.1 .MAIN: $(BUILDLIBS) .PHONY: tests tests: $(TESTBINS) $(TESTBINS): resmgr.o liblx.a $(TESTBINS:S/$/.o/) resmgr.o: lx.h lx-keysyms.h keysym-internal.h keysym-casemap.c keysym-names.c: keysyms process-keysyms ./process-keysyms PREDEPEND += lx-keysyms.h keysym-internal.h keysym-casemap.c keysym-names.c CLEANFILES += lx-keysyms.h keysym-internal.h keysym-casemap.c keysym-names.c # defaults the package-with-version string to be # $(.CURDIR:T), which is wrong for us. VERSION != eval "`mcgrep -1 VER= ../TRANSCRIPT`"; echo liblx-$$VER .include