11ab64890Smrgif XKB
21ab64890SmrgXKB_SUBDIRS = xkb
31ab64890Smrgendif
41ab64890SmrgSUBDIRS = util xcms xlibi18n $(XKB_SUBDIRS)
51ab64890Smrg
6e9fcaa8aSmrglib_LTLIBRARIES = libX11.la libX11-xcb.la
71ab64890Smrg
81ab64890SmrgBUILT_SOURCES=ks_tables.h
91ab64890SmrgCLEANFILES=ks_tables.h ks_tables_h
101ab64890Smrg
11b4ee4795SmrgAM_CPPFLAGS= \
121ab64890Smrg	-I$(top_srcdir)/include \
131ab64890Smrg	-I$(top_srcdir)/include/X11 \
141ab64890Smrg	-I$(top_builddir)/include \
151ab64890Smrg	-I$(top_builddir)/include/X11 \
161ab64890Smrg	-I$(top_srcdir)/src/xcms \
171ab64890Smrg	-I$(top_srcdir)/src/xkb \
181ab64890Smrg	-I$(top_srcdir)/src/xlibi18n \
19b4ee4795Smrg	-D_BSD_SOURCE -DX11_t -DTRANS_CLIENT
20b4ee4795Smrg
21b4ee4795SmrgAM_CFLAGS= \
221ab64890Smrg	$(X11_CFLAGS) \
231ab64890Smrg	$(BIGFONT_CFLAGS) \
2488de56ccSmrg	$(XMALLOC_ZERO_CFLAGS) \
2588de56ccSmrg	$(CWARNFLAGS)
261ab64890Smrg
271ab64890Smrg#
281ab64890Smrg# =============================== I18N =============================
291ab64890Smrg#
301ab64890Smrg
311ab64890SmrgI18N_LIBS = \
321ab64890Smrg	xlibi18n/libi18n.la
331ab64890Smrg
341ab64890Smrg#
351ab64890Smrg# =============================== XCMS =============================
361ab64890Smrg#
371ab64890Smrg
381ab64890SmrgXCMS_LIBS = \
391ab64890Smrg	xcms/libxcms.la
401ab64890Smrg
411ab64890Smrg#
421ab64890Smrg# =============================== XKB ==============================
431ab64890Smrg#
441ab64890Smrg
451ab64890SmrgXKB_LIBS = \
461ab64890Smrg	xkb/libxkb.la
471ab64890Smrg
481ab64890Smrg#
491ab64890Smrg# =============================== XLIB =============================
501ab64890Smrg#
511ab64890Smrg
521ab64890SmrglibX11_la_SOURCES = \
531ab64890Smrg                  AllCells.c \
541ab64890Smrg                  AllowEv.c \
551ab64890Smrg                  AllPlanes.c \
561ab64890Smrg                  AutoRep.c \
571ab64890Smrg                  Backgnd.c \
581ab64890Smrg                  BdrWidth.c \
591ab64890Smrg                  Bell.c \
601ab64890Smrg                  Border.c \
611ab64890Smrg                  ChAccCon.c \
621ab64890Smrg                  ChActPGb.c \
631ab64890Smrg                  ChClMode.c \
641ab64890Smrg                  ChCmap.c \
651ab64890Smrg                  ChGC.c \
661ab64890Smrg                  ChKeyCon.c \
671ab64890Smrg                  ChkIfEv.c \
681ab64890Smrg                  ChkMaskEv.c \
691ab64890Smrg                  ChkTypEv.c \
701ab64890Smrg                  ChkTypWEv.c \
711ab64890Smrg                  ChkWinEv.c \
721ab64890Smrg                  ChPntCon.c \
731ab64890Smrg                  ChProp.c \
741ab64890Smrg                  ChSaveSet.c \
751ab64890Smrg                  ChWAttrs.c \
761ab64890Smrg                  ChWindow.c \
771ab64890Smrg                  CirWin.c \
781ab64890Smrg                  CirWinDn.c \
791ab64890Smrg                  CirWinUp.c \
801ab64890Smrg                  ClDisplay.c \
811ab64890Smrg                  ClearArea.c \
821ab64890Smrg                  Clear.c \
831ab64890Smrg		  Cmap.h \
841ab64890Smrg                  ConfWind.c \
851ab64890Smrg                  Context.c \
861ab64890Smrg                  ConvSel.c \
871ab64890Smrg                  CopyArea.c \
881ab64890Smrg                  CopyCmap.c \
891ab64890Smrg                  CopyGC.c \
901ab64890Smrg                  CopyPlane.c \
911ab64890Smrg                  CrBFData.c \
921ab64890Smrg                  CrCmap.c \
931ab64890Smrg                  CrCursor.c \
941ab64890Smrg                  CrGC.c \
951ab64890Smrg                  CrGlCur.c \
961ab64890Smrg                  Cr.h \
971ab64890Smrg                  CrPFBData.c \
981ab64890Smrg                  CrPixmap.c \
991ab64890Smrg                  CrWindow.c \
1001ab64890Smrg                  Cursor.c \
1011ab64890Smrg                  DefCursor.c \
1021ab64890Smrg                  DelProp.c \
1031ab64890Smrg                  Depths.c \
1041ab64890Smrg                  DestSubs.c \
1051ab64890Smrg                  DestWind.c \
1061ab64890Smrg                  DisName.c \
1071ab64890Smrg                  DrArc.c \
1081ab64890Smrg                  DrArcs.c \
1091ab64890Smrg                  DrLine.c \
1101ab64890Smrg                  DrLines.c \
1111ab64890Smrg                  DrPoint.c \
1121ab64890Smrg                  DrPoints.c \
1131ab64890Smrg                  DrRect.c \
1141ab64890Smrg                  DrRects.c \
1151ab64890Smrg                  DrSegs.c \
1161ab64890Smrg                  ErrDes.c \
1171ab64890Smrg                  ErrHndlr.c \
1181ab64890Smrg                  evtomask.c \
1191ab64890Smrg                  EvToWire.c \
1201ab64890Smrg                  FetchName.c \
1211ab64890Smrg                  FillArc.c \
1221ab64890Smrg                  FillArcs.c \
1231ab64890Smrg                  FillPoly.c \
1241ab64890Smrg                  FillRct.c \
1251ab64890Smrg                  FillRcts.c \
1261ab64890Smrg                  FilterEv.c \
1271ab64890Smrg                  Flush.c \
1281ab64890Smrg                  Font.c \
1291ab64890Smrg                  FontInfo.c \
1301ab64890Smrg                  FontNames.c \
1311ab64890Smrg                  FreeCmap.c \
1321ab64890Smrg                  FreeCols.c \
1331ab64890Smrg                  FreeCurs.c \
1341ab64890Smrg                  FreeEData.c \
135b4ee4795Smrg                  FreeEventData.c \
1361ab64890Smrg                  FreeGC.c \
1371ab64890Smrg                  FreePix.c \
1381ab64890Smrg                  FSSaver.c \
1391ab64890Smrg                  FSWrap.c \
1401ab64890Smrg                  GCMisc.c \
1411ab64890Smrg                  Geom.c \
1421ab64890Smrg                  GetAtomNm.c \
1431ab64890Smrg                  GetColor.c \
1441ab64890Smrg                  GetDflt.c \
145b4ee4795Smrg                  GetEventData.c \
1461ab64890Smrg                  GetFPath.c \
1471ab64890Smrg                  GetFProp.c \
1481ab64890Smrg                  GetGCVals.c \
1491ab64890Smrg                  GetGeom.c \
1501ab64890Smrg                  GetHColor.c \
1511ab64890Smrg                  GetHints.c \
1521ab64890Smrg                  GetIFocus.c \
1531ab64890Smrg                  GetImage.c \
1541ab64890Smrg                  GetKCnt.c \
1551ab64890Smrg                  GetMoEv.c \
1561ab64890Smrg                  GetNrmHint.c \
1571ab64890Smrg                  GetPCnt.c \
1581ab64890Smrg                  GetPntMap.c \
1591ab64890Smrg                  GetProp.c \
1601ab64890Smrg                  GetRGBCMap.c \
1611ab64890Smrg                  GetSOwner.c \
1621ab64890Smrg                  GetSSaver.c \
1631ab64890Smrg                  GetStCmap.c \
1641ab64890Smrg                  GetTxtProp.c \
1651ab64890Smrg                  GetWAttrs.c \
1661ab64890Smrg                  GetWMCMapW.c \
1671ab64890Smrg                  GetWMProto.c \
1681ab64890Smrg                  globals.c \
1691ab64890Smrg                  GrButton.c \
1701ab64890Smrg                  GrKeybd.c \
1711ab64890Smrg                  GrKey.c \
1721ab64890Smrg                  GrPointer.c \
1731ab64890Smrg                  GrServer.c \
1741ab64890Smrg                  Host.c \
1751ab64890Smrg                  Iconify.c \
1761ab64890Smrg                  IfEvent.c \
1771ab64890Smrg		  imConv.c \
1781ab64890Smrg                  ImText16.c \
1791ab64890Smrg                  ImText.c \
1801ab64890Smrg                  ImUtil.c \
1811ab64890Smrg                  InitExt.c \
1821ab64890Smrg                  InsCmap.c \
1831ab64890Smrg                  IntAtom.c \
1841ab64890Smrg                  KeyBind.c \
1851ab64890Smrg                  Key.h \
1861ab64890Smrg                  KeysymStr.c \
1871ab64890Smrg                  KillCl.c \
1881ab64890Smrg                  LiHosts.c \
1891ab64890Smrg                  LiICmaps.c \
1901ab64890Smrg                  LiProps.c \
1911ab64890Smrg                  ListExt.c \
1921ab64890Smrg                  LoadFont.c \
1931ab64890Smrg                  LockDis.c \
1941ab64890Smrg                  locking.c \
1951ab64890Smrg                  locking.h \
1961ab64890Smrg                  LookupCol.c \
1971ab64890Smrg                  LowerWin.c \
1981ab64890Smrg                  Macros.c \
1991ab64890Smrg                  MapRaised.c \
2001ab64890Smrg                  MapSubs.c \
2011ab64890Smrg                  MapWindow.c \
2021ab64890Smrg                  MaskEvent.c \
2031ab64890Smrg                  Misc.c \
2041ab64890Smrg                  ModMap.c \
2051ab64890Smrg                  MoveWin.c \
2061ab64890Smrg                  NextEvent.c \
2071ab64890Smrg                  OCWrap.c \
2081ab64890Smrg                  OMWrap.c \
2091ab64890Smrg                  OpenDis.c \
2101ab64890Smrg                  ParseCmd.c \
2111ab64890Smrg                  ParseCol.c \
2121ab64890Smrg                  ParseGeom.c \
213eb411b4bSmrg                  pathmax.h \
2141ab64890Smrg                  PeekEvent.c \
2151ab64890Smrg                  PeekIfEv.c \
2161ab64890Smrg                  Pending.c \
2171ab64890Smrg                  PixFormats.c \
2181ab64890Smrg                  PmapBgnd.c \
2191ab64890Smrg                  PmapBord.c \
2201ab64890Smrg                  poly.h \
2211ab64890Smrg                  PolyReg.c \
2221ab64890Smrg                  PolyTxt16.c \
2231ab64890Smrg                  PolyTxt.c \
2241ab64890Smrg                  PropAlloc.c \
2251ab64890Smrg                  PutBEvent.c \
2261ab64890Smrg                  PutImage.c \
2271ab64890Smrg                  Quarks.c \
2281ab64890Smrg                  QuBest.c \
2291ab64890Smrg                  QuColor.c \
2301ab64890Smrg                  QuColors.c \
2311ab64890Smrg                  QuCurShp.c \
2321ab64890Smrg                  QuExt.c \
2331ab64890Smrg                  QuKeybd.c \
2341ab64890Smrg                  QuPntr.c \
2351ab64890Smrg                  QuStipShp.c \
2361ab64890Smrg                  QuTextE16.c \
2371ab64890Smrg                  QuTextExt.c \
2381ab64890Smrg                  QuTileShp.c \
2391ab64890Smrg                  QuTree.c \
2401ab64890Smrg                  RaiseWin.c \
2411ab64890Smrg                  RdBitF.c \
242258a0ebeSmrg                  reallocarray.h \
2431ab64890Smrg                  RecolorC.c \
2441ab64890Smrg                  ReconfWin.c \
2451ab64890Smrg                  ReconfWM.c \
2461ab64890Smrg                  Region.c \
2471ab64890Smrg                  RegstFlt.c \
2481ab64890Smrg                  RepWindow.c \
2491ab64890Smrg                  RestackWs.c \
2501ab64890Smrg                  RotProp.c \
2511ab64890Smrg                  ScrResStr.c \
2521ab64890Smrg                  SelInput.c \
2531ab64890Smrg                  SendEvent.c \
2541ab64890Smrg                  SetBack.c \
2551ab64890Smrg                  SetClMask.c \
2561ab64890Smrg                  SetClOrig.c \
2571ab64890Smrg                  SetCRects.c \
2581ab64890Smrg                  SetDashes.c \
2591ab64890Smrg                  SetFont.c \
2601ab64890Smrg                  SetFore.c \
2611ab64890Smrg                  SetFPath.c \
2621ab64890Smrg                  SetFunc.c \
2631ab64890Smrg                  SetHints.c \
2641ab64890Smrg                  SetIFocus.c \
2651ab64890Smrg                  SetLocale.c \
2661ab64890Smrg                  SetLStyle.c \
2671ab64890Smrg                  SetNrmHint.c \
2681ab64890Smrg                  SetPMask.c \
2691ab64890Smrg                  SetPntMap.c \
2701ab64890Smrg                  SetRGBCMap.c \
2711ab64890Smrg                  SetSOwner.c \
2721ab64890Smrg                  SetSSaver.c \
2731ab64890Smrg                  SetState.c \
2741ab64890Smrg                  SetStCmap.c \
2751ab64890Smrg                  SetStip.c \
2761ab64890Smrg                  SetTile.c \
2771ab64890Smrg                  SetTSOrig.c \
2781ab64890Smrg                  SetTxtProp.c \
2791ab64890Smrg                  SetWMCMapW.c \
2801ab64890Smrg                  SetWMProto.c \
2811ab64890Smrg                  StBytes.c \
2821ab64890Smrg                  StColor.c \
2831ab64890Smrg                  StColors.c \
2841ab64890Smrg                  StName.c \
2851ab64890Smrg                  StNColor.c \
2861ab64890Smrg                  StrKeysym.c \
2871ab64890Smrg                  StrToText.c \
2881ab64890Smrg                  Sync.c \
2891ab64890Smrg                  Synchro.c \
2901ab64890Smrg                  Text16.c \
2911ab64890Smrg                  Text.c \
2921ab64890Smrg                  TextExt16.c \
2931ab64890Smrg                  TextExt.c \
2941ab64890Smrg                  TextToStr.c \
2951ab64890Smrg                  TrCoords.c \
2961ab64890Smrg                  UndefCurs.c \
2971ab64890Smrg                  UngrabBut.c \
2981ab64890Smrg                  UngrabKbd.c \
2991ab64890Smrg                  UngrabKey.c \
3001ab64890Smrg                  UngrabPtr.c \
3011ab64890Smrg                  UngrabSvr.c \
3021ab64890Smrg                  UninsCmap.c \
3031ab64890Smrg                  UnldFont.c \
3041ab64890Smrg                  UnmapSubs.c \
3051ab64890Smrg                  UnmapWin.c \
306b4ee4795Smrg                  utlist.h \
3071ab64890Smrg                  VisUtil.c \
3081ab64890Smrg                  WarpPtr.c \
3091ab64890Smrg                  Window.c \
3101ab64890Smrg                  WinEvent.c \
3111ab64890Smrg                  Withdraw.c \
3121ab64890Smrg                  WMGeom.c \
3131ab64890Smrg                  WMProps.c \
3141ab64890Smrg                  WrBitF.c \
3151ab64890Smrg                  Xatomtype.h \
316e9fcaa8aSmrg                  xcb_disp.c \
317e9fcaa8aSmrg                  xcb_io.c \
3181ab64890Smrg                  Xintatom.h \
3191ab64890Smrg                  Xintconn.h \
3201ab64890Smrg                  XlibAsync.c \
3211ab64890Smrg                  XlibInt.c \
32261b2299dSmrg                  Xprivate.h \
3231ab64890Smrg                  XomGeneric.h \
3241ab64890Smrg                  Xresinternal.h \
3251ab64890Smrg                  Xrm.c \
326e9fcaa8aSmrg                  Xxcbint.h
3271ab64890Smrg
3281ab64890Smrg#
3291ab64890Smrg# ========================= Extra stuff ============================
3301ab64890Smrg#
3311ab64890Smrg
3321ab64890Smrgif OS2
3331ab64890SmrglibX11_la_SOURCES+=os2Stubs.c
3341ab64890Smrgendif OS2
3351ab64890Smrg
3361ab64890Smrgx11datadir = @X11_DATADIR@
33747f86ac1Smrgx11data_DATA = XErrorDB
3381ab64890Smrg
3391ab64890SmrgEXTRA_DIST = \
3401ab64890Smrg	$(x11data_DATA) \
3415efbdfc3Smrg	os2Stubs.c
3421ab64890Smrg
3431ab64890SmrglibX11_xcb_la_SOURCES = x11_xcb.c Xxcbint.h
344e9fcaa8aSmrglibX11_xcb_la_LDFLAGS = -version-number 1:0:0 -no-undefined
3451ab64890Smrg
3461ab64890Smrg#
3471ab64890Smrg# Figure out which sub-libraries to link into Xlib
3481ab64890Smrg#
3491ab64890Smrg
3501ab64890Smrgif XLOCALE
3511ab64890SmrgUSE_I18N_LIBS = $(I18N_LIBS)
3521ab64890Smrgendif
3531ab64890Smrg
3541ab64890Smrgif XCMS
3551ab64890SmrgUSE_XCMS_LIBS = $(XCMS_LIBS)
3561ab64890Smrgendif
3571ab64890Smrg
3581ab64890Smrgif XKB
3591ab64890SmrgUSE_XKB_LIBS = $(XKB_LIBS)
3601ab64890Smrgendif
3611ab64890Smrg
362d4a3aaf4SmrglibX11_la_LDFLAGS = -version-number 6:4:0 -no-undefined
3631ab64890Smrg
3641ab64890SmrglibX11_la_LIBADD = \
365258a0ebeSmrg	$(LTLIBOBJS) \
3661ab64890Smrg	$(USE_I18N_LIBS) \
3671ab64890Smrg	$(USE_XCMS_LIBS) \
3681ab64890Smrg	$(USE_XKB_LIBS) \
3695efbdfc3Smrg	$(USE_THREAD_LIBS) \
370e9fcaa8aSmrg	$(X11_LIBS)
3711ab64890Smrg
3721ab64890Smrgpreprocess: $(patsubst %.c,%.ii,$(libX11_la_SOURCES))
3731ab64890Smrg.c.ii:
3741ab64890Smrg	$(COMPILE) -E -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
3751ab64890Smrg
3761ab64890Smrgif LINT
3771ab64890Smrg# Check source code with tools like lint & sparse
3781ab64890Smrg
3791ab64890SmrgALL_LINT_FLAGS=$(LINT_FLAGS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
3801ab64890Smrg		$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS)
381818534a1SmrgALL_LINT_FLAGS += -DXCMSDIR=\"$(X11dir)\"
3821ab64890Smrg
3831ab64890Smrglint:	$(BUILT_SOURCES)
3841ab64890Smrg	for f in $(libX11_la_SOURCES) ; do \
3851ab64890Smrg		$(LINT) $(ALL_LINT_FLAGS) $$f ; \
3861ab64890Smrg	done
3871ab64890Smrg	@for subdir in $(SUBDIRS) ; do \
3881ab64890Smrg		echo "Making $@ in src/$$subdir"; \
3891ab64890Smrg		(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) lint) ; \
3901ab64890Smrg	done
3911ab64890Smrgendif LINT
3921ab64890Smrg
3931ab64890Smrgif MAKE_LINT_LIB
3941ab64890Smrglintlibdir = $(libdir)
3951ab64890Smrg
3961ab64890Smrglintlib_DATA = $(LINTLIB)
3971ab64890Smrg
3980f8248bfSmrglintlib_src = $(libX11_la_SOURCES) $(srcdir)/xcms/*.c $(srcdir)/xkb/*.c
3991ab64890Smrg
4001ab64890SmrgCLEANFILES += $(lintlib_DATA)
4011ab64890Smrg
4021ab64890Smrg$(LINTLIB): $(libX11_la_SOURCES)
403b4ee4795Smrg	$(AM_V_GEN)$(LINT) -y -oX11 -x $(ALL_LINT_FLAGS) $(lintlib_src)
4041ab64890Smrgendif MAKE_LINT_LIB
4051ab64890Smrg
4061ab64890Smrg#
4071ab64890Smrg# Building ks_tables.h requires the makekeys utility
4081ab64890Smrg#
4091ab64890Smrg
41047f86ac1SmrgKEYSYMDEFS=@KEYSYMDEFS@
4111ab64890Smrg
412258a0ebeSmrgks_tables.h: $(KEYSYMDEFS) $(top_builddir)/src/util/makekeys$(EXEEXT_FOR_BUILD)
41347f86ac1Smrg	$(top_builddir)/src/util/makekeys $(KEYSYMDEFS) > ks_tables_h
4141ab64890Smrg	mv ks_tables_h $@
4151ab64890Smrg
416258a0ebeSmrg$(top_builddir)/src/util/makekeys$(EXEEXT_FOR_BUILD): $(top_builddir)/src/util/makekeys.c
4171ab64890Smrg	cd util && $(MAKE)
418