summaryrefslogtreecommitdiff
path: root/x11/libxcb/Makefile
blob: 1885dca6fe7663f554e3a8b1db5776b2e5593b11 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
# $NetBSD: Makefile,v 1.37 2022/04/10 08:53:17 nia Exp $

DISTNAME=	libxcb-1.14
CATEGORIES=	x11
MASTER_SITES=	https://xorg.freedesktop.org/archive/individual/lib/
EXTRACT_SUFX=	.tar.xz

MAINTAINER=	reed@reedmedia.net
HOMEPAGE=	https://xcb.freedesktop.org/
COMMENT=	X protocol C-language Binding
LICENSE=	mit # with no-advertising clause

TOOL_DEPENDS+=	libxslt>=1.1.0:../../textproc/libxslt
TOOL_DEPENDS+=	${PYPKGPREFIX}-xcbgen>=1.14:../../x11/py-xcbgen

GNU_CONFIGURE=	yes
USE_LIBTOOL=	yes
USE_TOOLS+=	gmake pkg-config

CONFIGURE_ARGS+=	--disable-devel-docs	# or needs doxygen
CONFIGURE_ARGS+=	--enable-xinput
CONFIGURE_ARGS+=	--without-doxygen

.include "../../mk/bsd.prefs.mk"

.if !empty(USE_CROSS_COMPILE:M[yY][eE][sS])
# No native C compiler needed -- the tool that gobbles up the xcb
# prototypes is in Python.
#
# XXX This needs to match the version of xcb-proto we get for the
# target by buildlink3.
TOOL_DEPENDS+=		xcb-proto-[0-9]*:../../x11/xcb-proto
.endif

# Adds -Wl,-R to pkgconfig files automatically
PKGCONFIG_OVERRIDE+=	xcb-composite.pc.in
PKGCONFIG_OVERRIDE+=	xcb-damage.pc.in
PKGCONFIG_OVERRIDE+=	xcb-dri3.pc.in
PKGCONFIG_OVERRIDE+=	xcb-dpms.pc.in
PKGCONFIG_OVERRIDE+=	xcb-glx.pc.in
PKGCONFIG_OVERRIDE+=	xcb-present.pc.in
PKGCONFIG_OVERRIDE+=	xcb-randr.pc.in
PKGCONFIG_OVERRIDE+=	xcb-record.pc.in
PKGCONFIG_OVERRIDE+=	xcb-render.pc.in
PKGCONFIG_OVERRIDE+=	xcb-res.pc.in
PKGCONFIG_OVERRIDE+=	xcb-screensaver.pc.in
PKGCONFIG_OVERRIDE+=	xcb-shape.pc.in
PKGCONFIG_OVERRIDE+=	xcb-shm.pc.in
PKGCONFIG_OVERRIDE+=	xcb-sync.pc.in
PKGCONFIG_OVERRIDE+=	xcb-xevie.pc.in
PKGCONFIG_OVERRIDE+=	xcb-xf86dri.pc.in
PKGCONFIG_OVERRIDE+=	xcb-xfixes.pc.in
PKGCONFIG_OVERRIDE+=	xcb-xinerama.pc.in
PKGCONFIG_OVERRIDE+=	xcb-xinput.pc.in
PKGCONFIG_OVERRIDE+=	xcb-xkb.pc.in
PKGCONFIG_OVERRIDE+=	xcb-xprint.pc.in
PKGCONFIG_OVERRIDE+=	xcb-xtest.pc.in
PKGCONFIG_OVERRIDE+=	xcb-xv.pc.in
PKGCONFIG_OVERRIDE+=	xcb-xvmc.pc.in
PKGCONFIG_OVERRIDE+=	xcb.pc.in

# libXdmcp is optional; adds support for XDM-AUTHORIZATION-1 in
# addition to MIT-MAGIC-COOKIE-1.

.include "../../mk/pthread.buildlink3.mk"
LDFLAGS.OpenBSD+=	${PTHREAD_LDFLAGS}

XTHREADLIB=	${${PTHREAD_LDFLAGS} ${PTHREAD_LIBS}:L:M*}

.if empty(PTHREAD_CPPFLAGS)
XTHREAD_CPPFLAGS=	-D_REENTRANT
.else
XTHREAD_CPPFLAGS=	${PTHREAD_CPPFLAGS}
.endif

SUBST_CLASSES+=		pc
SUBST_FILES.pc=		xcb.pc.in
SUBST_MESSAGE.pc=	Configuring threading in xcb.pc.in.
SUBST_STAGE.pc=		pre-configure
SUBST_VARS.pc=		XTHREADLIB XTHREAD_CPPFLAGS

post-extract:
	${CHMOD} -R go-w ${WRKSRC}

###
### XXX needed to build from scratch, but we're patching right now
###	so it's not needed (nor should it ever be, really).
###
#.include "../../devel/gperf/buildlink3.mk"
X11_LIB_NAME?=		libxcb
.include "../../meta-pkgs/modular-xorg/avoid-duplicate.mk"
PYTHON_FOR_BUILD_ONLY=	tool
.include "../../lang/python/application.mk"
BUILDLINK_API_DEPENDS.xcb-proto?=	xcb-proto>=1.14
.include "../../x11/xcb-proto/buildlink3.mk"
.include "../../x11/libXdmcp/buildlink3.mk"
.include "../../x11/libXau/buildlink3.mk"

.include "../../mk/bsd.pkg.mk"