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

Reply via email to