pkgsrc/x11/Xaw3d/buildlink3.mk
joerg 3801694895 Xaw3d worked more or less accidently for most packages as they continued
to use include/X11/Xaw/* and not the versions provided by Xaw3d. Many
packages also incorrectly linked against libXaw and not libXaw3d,
effectively making the dependency a nop.

Address this problem in two steps:
(a) Transform -lXaw to -lXaw3d. This magically fixes the packages which
got it wrong before. I haven't checked a list of packages affected by
this, so no revision bumps here.
(b) Link include/X11/Xaw3d to include/X11/Xaw for modular Xorg, so that
the dependency on Xaw3d actually works without pulling in libXaw as well.

This should be extended to the other Xaw packages, but I don't use them
nor do I have any interest in them.

Discussed with and not objected by: jlam
2007-02-08 00:08:20 +00:00

40 lines
1.1 KiB
Makefile

# $NetBSD: buildlink3.mk,v 1.11 2007/02/08 00:08:20 joerg Exp $
BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+
XAW3D_BUILDLINK3_MK:= ${XAW3D_BUILDLINK3_MK}+
.if !empty(BUILDLINK_DEPTH:M+)
BUILDLINK_DEPENDS+= Xaw3d
.endif
BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:NXaw3d}
BUILDLINK_PACKAGES+= Xaw3d
BUILDLINK_ORDER:= ${BUILDLINK_ORDER} ${BUILDLINK_DEPTH}Xaw3d
.if !empty(XAW3D_BUILDLINK3_MK:M+)
BUILDLINK_API_DEPENDS.Xaw3d+= Xaw3d>=1.5
BUILDLINK_ABI_DEPENDS.Xaw3d?= Xaw3d>=1.5Enb1
BUILDLINK_PKGSRCDIR.Xaw3d?= ../../x11/Xaw3d
BUILDLINK_TRANSFORM+= l:Xaw:Xaw3d
.include "../../mk/bsd.fast.prefs.mk"
.if ${X11_TYPE} == "modular"
.PHONY: buildlink-Xaw3d-inc-hack
buildlink-Xaw3d-cookie: buildlink-Xaw3d-inc-hack
buildlink-Xaw3d-inc-hack: buildlink-directories
[ ! -h ${BUILDLINK_DIR}/include/X11/Xaw ] && \
${MKDIR} ${BUILDLINK_DIR}/include/X11 && \
${LN} -s Xaw3d ${BUILDLINK_DIR}/include/X11/Xaw
.endif
.endif # XAW3D_BUILDLINK3_MK
.include "../../x11/libXmu/buildlink3.mk"
LIBXAW?= -L${BUILDLINK_PREFIX.Xaw3d}/lib \
${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.Xaw3d}/lib \
-lXaw3d
BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//}