blob: 64489bbc58b1108801e519093fc51414bef3b85a (
plain) (
blame)
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
# Created by: Eric Anholt <anholt@FreeBSD.org>
# $FreeBSD$
PORTNAME= dri
PORTVERSION= ${MESAVERSION}
PORTREVISION= 4
PORTEPOCH= 2
CATEGORIES= graphics
COMMENT= OpenGL hardware acceleration drivers for the DRI
LIB_DEPENDS= libdrm.so:${PORTSDIR}/graphics/libdrm \
libexpat.so:${PORTSDIR}/textproc/expat2
USES+= gettext:build
USE_XORG= glproto x11 xext xxf86vm xdamage xfixes dri2proto
.include <bsd.port.options.mk>
# gcc from base can't handle some code in mesa 9.1+
# We only care for 9.x and 8.x, not for old pre-clang default current.
# This is for 0b0000 binary which gcc 4.3+ understands and is in the i965 driver.
.if defined(WITH_NEW_XORG)
. if (${OSVERSION} >= 901500 && ${OSVERSION} < 1000000) \
&& ${ARCH} == amd64
CC=clang
CXX=clang++
CPP=clang-cpp
. elif ${OSVERSION} < 901500
USE_GCC=yes
. endif
.endif
ALL_DRI_DRIVERS=I915 I965 R200 RADEON SWRAST
.if !defined(WITH_NEW_XORG)
ALL_DRI_DRIVERS+=I810 MACH64 MGA R128 R300 R600 SAVAGE SIS TDFX UNICHROME
.endif
.include "${.CURDIR}/../../graphics/libGL/bsd.mesalib.mk"
PLIST_SUB+= VERSION=${MESADISTVERSION}
.if ${ARCH} == amd64 || ${ARCH} == i386 || ${ARCH} == ia64
DRI_DRIVERS= ${ALL_DRI_DRIVERS}
.endif
.if defined(WITH_NEW_XORG)
. if !defined(WITHOUT_GALLIUM) && (${ARCH} == i386 || ${ARCH} == amd64)
BUILD_DEPENDS+= llvm-config33:${PORTSDIR}/devel/llvm33
CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config33
CONFIGURE_ARGS+=--enable-gallium-llvm --disable-gallium-egl
CONFIGURE_ARGS+=--with-gallium-drivers=r300,r600,radeonsi,svga,swrast
PLIST_SUB+= GALLIUM=""
. else
CONFIGURE_ARGS+=--enable-gallium-llvm=no --without-gallium-drivers
PLIST_SUB+= GALLIUM="@comment "
. endif
. if ${ARCH} == powerpc || ${ARCH} == powerpc64
DRI_DRIVERS= RADEON SWRAST
. endif
. if ${ARCH} == sparc64
DRI_DRIVERS= SWRAST
. endif
.else # !defined(WITH_NEW_XORG)
. if ${ARCH} == powerpc || ${ARCH} == powerpc64
DRI_DRIVERS= MACH64 RADEON SWRAST TDFX
. elif ${ARCH} == sparc64
DRI_DRIVERS= MACH64 RADEON SWRAST
. endif
.endif # defined(WITH_NEW_XORG)
# empty for unsupported arches
DRI_DRIVERS+=
.for _d in ${ALL_DRI_DRIVERS}
.if ${DRI_DRIVERS:M${_d}}
PLIST_SUB+= ${_d}_DRIVER=""
.else
PLIST_SUB+= ${_d}_DRIVER="@comment "
.endif
.endfor
.if !(${ARCH} == amd64 || ${ARCH} == i386)
CONFIGURE_ARGS+=--disable-gallium-intel
.endif
CONFIGURE_ARGS+=--with-dri-drivers="${DRI_DRIVERS:tl}"
.if defined(WITH_NEW_XORG) && !defined(WITH_GALLIUM) \
&& (${ARCH} == i386 || ${ARCH} == amd64)
pre-everything::
@${ECHO_MSG} ""
@${ECHO_MSG} "For r300, r600, radeonsi and swrast gallium based drivers."
@${ECHO_MSG} "Please define WITH_GALLIUM in /etc/make.conf"
@${ECHO_MSG} "Note that gallium support is highly experimental."
@${ECHO_MSG} ""
.endif
post-install:
.if defined(WITH_NEW_XORG)
@${RM} -f ${STAGEDIR}${PREFIX}/include/GL/*.h
@${RM} ${STAGEDIR}${PREFIX}/lib/libGL.*
@${RM} ${STAGEDIR}${PREFIX}/lib/libglapi.*
@${RM} -f ${STAGEDIR}${PREFIX}/libdata/pkgconfig/gl.pc
.else
@${RM} -f ${STAGEDIR}${PREFIX}/include/GL/*.h
@${RM} -rf ${STAGEDIR}${PREFIX}/lib/.libGL
@${RM} -f ${STAGEDIR}${PREFIX}/libdata/pkgconfig/gl.pc
.endif
.include <bsd.port.mk>
|