Module Name: src Committed By: cjep Date: Wed Jun 2 14:22:55 UTC 2021
Modified Files: src/share/mk [cjep_sun2x]: bsd.x11.mk Log Message: Work towards X sources building statically and on sun2. Setup specific make variables to contain the full set of library flags (LDADD and DPADD) for programs in the xorg suite. Each list contains all needed dependencies so that the programs will build statically. Suggested by mrg@ To generate a diff of this commit: cvs rdiff -u -r1.138 -r1.138.4.1 src/share/mk/bsd.x11.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/share/mk/bsd.x11.mk diff -u src/share/mk/bsd.x11.mk:1.138 src/share/mk/bsd.x11.mk:1.138.4.1 --- src/share/mk/bsd.x11.mk:1.138 Tue Apr 27 04:02:09 2021 +++ src/share/mk/bsd.x11.mk Wed Jun 2 14:22:55 2021 @@ -1,4 +1,4 @@ -# $NetBSD: bsd.x11.mk,v 1.138 2021/04/27 04:02:09 mrg Exp $ +# $NetBSD: bsd.x11.mk,v 1.138.4.1 2021/06/02 14:22:55 cjep Exp $ .include <bsd.init.mk> @@ -172,6 +172,93 @@ CPPFLAGS+= -D__AMD64__ LDFLAGS+= -Wl,-rpath,${X11USRLIBDIR} -L=${X11USRLIBDIR} +# Library adds including full dependencies needed for static linking +# Avoids repetition where possible +# +XLIBLDADD_XAU= -lXau +XLIBDPADD_XAU= ${LIBXAU} + +XLIBLDADD_FC= -lfontconfig -lfreetype -lexpat -lz -lbz2 +XLIBDPADD_FC= ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} \ + ${LIBZ} ${LIBBZ2} + +# XAU+ +# +XLIBLDADD_XCB= -lxcb ${XLIBLDADD_XAU} -lXdmcp +XLIBDPADD_XCB= ${LIBXCB} ${XLIBDPADD_XAU} ${LIBXDMCP} + +# XCB+ +# +XLIBLDADD_XCB_ATOM= -lxcb-atom ${XLIBLDADD_XCB} +XLIBDPADD_XCB_ATOM= ${LIBXCB-ATOM} ${XLIBDPADD_XCB} + +XLIBLDADD_XCB_SHAPE= -lxcb-shape ${XLIBLDADD_XCB} +XLIBDPADD_XCB_SHAPE= ${LIBXCB-SHAPE} ${XLIBDPADD_XCB} + +# X11 & XEXT +# +XLIBLDADD_X11= -lX11 ${XLIBLDADD_XCB} +XLIBDPADD_X11= ${LIBX11} ${XLIBDPADD_XCB} + +XLIBLDADD_XEXT= -lXext ${XLIBLDADD_X11} +XLIBDPADD_XEXT= ${LIBXEXT} ${XLIBDPADD_X11} + +# X11+ +# +XLIBLDADD_XT= -lXt ${XLIBLDADD_X11} -lSM -lICE +XLIBDPADD_XT= ${LIBXT} ${XLIBDPADD_X11} ${LIBSM} ${LIBICE} + +# XEXT+ +# +XLIBLDADD_XI= -lXi ${XLIBLDADD_XEXT} +XLIBDPADD_XI= ${LIBXI} ${XLIBDPADD_XEXT} + +XLIBLDADD_XV= -lXv ${XLIBLDADD_XEXT} +XLIBDPADD_XV= ${LIBXV} ${XLIBDPADD_XEXT} + +XLIBLDADD_XF86DGA= -lXxf86dga ${XLIBLDADD_XEXT} +XLIBDPADD_XF86DGA= ${LIBXXF86DGA} ${XLIBDPADD_XEXT} + +XLIBLDADD_XRENDER= -lXrender ${XLIBLDADD_XEXT} +XLIBDPADD_XRENDER= ${LIBXRENDER} ${XLIBDPADD_XEXT} + +XLIBLDADD_XCURSOR= -lXcursor ${XLIBLDADD_XRENDER} +XLIBDPADD_XCURSOR= ${LIBXCURSOR} ${XLIBDPADD_XRENDER} + +XLIBLDADD_XRANDR= -lXrandr ${XLIBLDADD_XRENDER} +XLIBDPADD_XRANDR= ${LIBXRANDR} ${XLIBDPADD_XRENDER} + +XLIBLDADD_XPM= -lXpm ${XLIBLDADD_XEXT} +XLIBDPADD_XPM= ${LIBXPM} ${XLIBDPADD_XEXT} + +XLIBLDADD_XSS= -lXss ${XLIBLDADD_XEXT} +XLIBDPADD_XSS= ${LIBXSS} ${XLIBDPADD_XEXT} + +XLIBLDADD_KDFILE= -lxkbfile ${XLIBLDADD_XEXT} +XLIBDPADD_KDFILE= ${LIBXKDFILE} ${XLIBCPADD_XEXT} + +# XRANDR & FC+ +# +XLIBLDADD_XFT= -lXft ${XLIBLDADD_XRANDR} ${XLIBLDADD_FC} +XLIBDPADD_XFT= ${LIBXFT} ${XLIBDPADD_XRANDR} ${XLIBDPADD_FC} + +# XMU and XMUU depend on XT and XEXT which have overlapping dependencies +# +XLIBLDADD_XT_XEXT= -lXt ${XLIBLDADD_XEXT} -lSM -lICE +XLIBDPADD_XT_XEXT= ${LIBXT} ${XLIBDPADD_XEXT} ${LIBSM} ${LIBICE} + +XLIBLDADD_XMU= -lXmu ${XLIBLDADD_XT_XEXT} +XLIBDPADD_XMU= ${LIBXMU} ${XLIBDPADD_XT_XEXT} +XLIBLDADD_XMUU= -lXmuu ${XLIBLDADD_XT_XEXT} +XLIBDPADD_XMUU= ${LIBXMUU} ${XLIBDPADD_XT_XEXT} + +# XAW depends on XMU and XPM which have overlapping dependencies +# +XLIBLDADD_XMU_XPM= -lXmu -lXt -lXpm ${XLIBLDADD_XT_XEXT} +XLIBDPADD_XMU_XPM= ${LIBXMU} ${LIBXT} ${LIBXPM} ${XLIBDPADD_XT_XEXT} + +XLIBLDADD_XAW= -lXaw ${XLIBLDADD_XMU_XPM} +XLIBCPADD_XAW= ${LIBXAW} ${XLIBDPADD_XMU_XPM} # # .cpp -> "" handling