Annotation of pkgsrc/graphics/MesaLib/options.mk, Revision 1.51
1.51 ! maya 1: # $NetBSD: options.mk,v 1.50 2017/03/02 04:40:33 maya Exp $
1.1 bjs 2:
1.28 tnn 3: PKG_OPTIONS_VAR= PKG_OPTIONS.MesaLib
4: PKG_SUPPORTED_OPTIONS= llvm dri
5: PKG_SUGGESTED_OPTIONS=
1.1 bjs 6:
1.36 tnn 7: # The LLVM option enables JIT accelerated software rendering and
8: # is also required to support the latest RADEON GPUs, so enable it
9: # by default on platforms where such GPUs might be encountered.
10: .if \
11: !empty(MACHINE_PLATFORM:MNetBSD-[789].*-i386) || \
12: !empty(MACHINE_PLATFORM:MNetBSD-[789].*-x86_64) || \
1.48 tnn 13: !empty(MACHINE_PLATFORM:MNetBSD-[789].*-sparc64) || \
14: !empty(MACHINE_PLATFORM:MNetBSD-[789].*-*arm*)
1.41 tnn 15: PKG_SUGGESTED_OPTIONS+= llvm
16: .endif
17:
18: .if (!empty(MACHINE_PLATFORM:MLinux-*-i386) || \
19: !empty(MACHINE_PLATFORM:MLinux-*-x86_64)) && \
20: (!empty(CC_VERSION:Mgcc-4.[89].*) || \
21: !empty(CC_VERSION:Mgcc-[56].*))
1.36 tnn 22: PKG_SUGGESTED_OPTIONS+= llvm
1.22 sbd 23: .endif
1.1 bjs 24:
1.44 tnn 25: .if ${OPSYS} == "FreeBSD" || ${OPSYS} == "OpenBSD" || \
1.28 tnn 26: ${OPSYS} == "DragonFly" || ${OPSYS} == "Linux" || \
1.44 tnn 27: ${OPSYS} == "SunOS" || ${OPSYS} == "NetBSD" || \
28: ${OPSYS} == "Darwin"
1.15 hasso 29: PKG_SUGGESTED_OPTIONS+= dri
30: .endif
31:
1.1 bjs 32: .include "../../mk/bsd.options.mk"
1.28 tnn 33:
34: # gallium
1.48 tnn 35: PLIST_VARS+= freedreno ilo i915 i965 nouveau r300 r600 radeonsi \
36: swrast svga vc4 virgl
1.28 tnn 37: # classic DRI
1.48 tnn 38: PLIST_VARS+= dri swrast_dri i915_dri nouveau_dri i965_dri radeon_dri r200_dri
1.42 tnn 39: # other features
1.50 maya 40: PLIST_VARS+= gbm vaapi vdpau wayland xatracker
1.1 bjs 41:
42: .if !empty(PKG_OPTIONS:Mdri)
1.28 tnn 43:
1.34 tnn 44: CONFIGURE_ARGS+= --enable-dri
45: CONFIGURE_ARGS+= --enable-egl
1.44 tnn 46: .if ${OPSYS} != "Darwin"
1.47 jperkin 47: CFLAGS+= -DHAVE_DRI3
48: CONFIGURE_ARGS+= --enable-dri3
1.42 tnn 49: CONFIGURE_ARGS+= --enable-gbm
1.44 tnn 50: PLIST.gbm= yes
51: .endif
1.42 tnn 52: CONFIGURE_ARGS+= --enable-gles1
53: CONFIGURE_ARGS+= --enable-gles2
1.34 tnn 54:
1.36 tnn 55: # Use Thread Local Storage in GLX where it is supported by Mesa and works.
1.35 tnn 56: .if \
1.42 tnn 57: !empty(MACHINE_PLATFORM:MNetBSD-[789].*-i386) || \
58: !empty(MACHINE_PLATFORM:MNetBSD-[789].*-x86_64) || \
1.36 tnn 59: !empty(MACHINE_PLATFORM:MLinux-*-i386) || \
60: !empty(MACHINE_PLATFORM:MLinux-*-x86_64) || \
1.35 tnn 61: !empty(MACHINE_PLATFORM:MFreeBSD-1[0-9].*-x86_64) || \
1.36 tnn 62: !empty(MACHINE_PLATFORM:MDragonFly-*-x86_64)
63: CONFIGURE_ARGS+= --enable-glx-tls
1.34 tnn 64: .else
1.28 tnn 65: CONFIGURE_ARGS+= --disable-glx-tls
1.34 tnn 66: .endif
1.28 tnn 67:
1.42 tnn 68: # DRI on Linux needs either sysfs or udev
1.49 jperkin 69: CONFIGURE_ARGS.Linux+= --enable-sysfs
1.42 tnn 70:
1.13 bjs 71: PLIST.dri= yes
1.31 tnn 72:
1.44 tnn 73: .if ${OPSYS} != "Darwin"
1.36 tnn 74: BUILDLINK_DEPMETHOD.libpciaccess= full
1.28 tnn 75: .include "../../sysutils/libpciaccess/buildlink3.mk"
1.44 tnn 76: .endif
1.28 tnn 77: .include "../../graphics/MesaLib/dri.mk"
78:
79: DRI_DRIVERS= #
1.44 tnn 80: GALLIUM_DRIVERS= #
81:
82: # Software rasterizer
1.28 tnn 83: PLIST.swrast_dri= yes
84: DRI_DRIVERS+= swrast
1.44 tnn 85: .if ${OPSYS} != "Darwin"
1.28 tnn 86: PLIST.swrast= yes
87: GALLIUM_DRIVERS+= swrast
1.44 tnn 88: .endif
1.28 tnn 89:
1.44 tnn 90: # x86 only drivers
91: .if (${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64") && ${OPSYS} != "Darwin"
1.28 tnn 92: # svga / VMWare driver
93: PLIST.svga= yes
94: GALLIUM_DRIVERS+= svga
95:
96: # Intel chipsets, x86 only
97: PLIST.i915= yes
98: GALLIUM_DRIVERS+= i915
99: PLIST.i915_dri= yes
100: DRI_DRIVERS+= i915
101:
102: # Experimental Intel driver
103: PLIST.ilo= yes
104: GALLIUM_DRIVERS+= ilo
105:
106: PLIST.i965_dri= yes
107: DRI_DRIVERS+= i965
108: .endif
109:
1.44 tnn 110: # ARM drivers
1.38 bouyer 111: .if !empty(MACHINE_PLATFORM:MNetBSD-*-*arm*)
1.28 tnn 112: # Qualcomm SnapDragon, libdrm_freedreno.pc
1.48 tnn 113: GALLIUM_DRIVERS+= freedreno
114: PLIST.freedreno= yes
1.28 tnn 115:
116: # Broadcom VideoCore 4
1.48 tnn 117: GALLIUM_DRIVERS+= vc4
118: PLIST.vc4= yes
119: .endif
120:
121: # qemu Linux guest driver
122: .if !empty(MACHINE_PLATFORM:MLinux-*-x86_64)
123: # XXX test this
124: #GALLIUM_DRIVERS+= virgl
125: #PLIST.virgl= yes
1.44 tnn 126: .endif
1.28 tnn 127:
1.44 tnn 128: # theoretically cross platform PCI drivers, but don't build on ARM
129: .if ${OPSYS} != "Darwin" && empty(MACHINE_PLATFORM:MNetBSD-*-*arm*)
1.38 bouyer 130:
131: # AMD Radeon r600
132: PLIST.r600= yes
133: GALLIUM_DRIVERS+= r600
134:
1.28 tnn 135: # nVidia
136: PLIST.nouveau= yes
137: GALLIUM_DRIVERS+= nouveau
138:
139: # classic DRI radeon
140: PLIST.radeon_dri= yes
141: DRI_DRIVERS+= radeon
142:
143: # classic DRI r200
144: PLIST.r200_dri= yes
145: DRI_DRIVERS+= r200
146:
147: # classic DRI nouveau
148: PLIST.nouveau_dri= yes
149: DRI_DRIVERS+= nouveau
1.38 bouyer 150: .endif
1.28 tnn 151:
1.44 tnn 152: .if ${OPSYS} == "Darwin"
153: CONFIGURE_ARGS+= --with-egl-platforms=x11
1.45 tnn 154: #.elif ${OPSYS} == "Linux"
155: #.include "../../wip/wayland/buildlink3.mk"
156: #CONFIGURE_ARGS+= --with-egl-platforms=x11,drm,wayland
157: #PLIST.wayland= yes
1.44 tnn 158: .else
1.28 tnn 159: CONFIGURE_ARGS+= --with-egl-platforms=x11,drm
1.44 tnn 160: .endif
161:
1.28 tnn 162: CONFIGURE_ARGS+= --with-gallium-drivers=${GALLIUM_DRIVERS:ts,}
163: CONFIGURE_ARGS+= --with-dri-drivers=${DRI_DRIVERS:ts,}
164:
165: .if !empty(PKG_OPTIONS:Mllvm)
1.51 ! maya 166: # VA-API and VDPAU
! 167: .include "../../multimedia/libva/available.mk"
! 168: .if ${VAAPI_AVAILABLE} == "yes"
! 169: PLIST.vaapi= yes
! 170: .include "../../multimedia/libva/buildlink3.mk"
! 171: .endif
! 172: .include "../../multimedia/libvdpau/available.mk"
! 173: .if ${VDPAU_AVAILABLE} == "yes"
! 174: PLIST.vdpau= yes
! 175: .include "../../multimedia/libvdpau/buildlink3.mk"
! 176: .endif
! 177:
1.42 tnn 178: # XA is useful for accelerating xf86-video-vmware
179: CONFIGURE_ARGS+= --enable-xa
180: PLIST.xatracker= yes
1.28 tnn 181: # AMD Radeon r300
182: PLIST.r300= yes
183: GALLIUM_DRIVERS+= r300
184: # AMD Canary Islands GPUs
185: PLIST.radeonsi= yes
186: GALLIUM_DRIVERS+= radeonsi
187: CONFIGURE_ARGS+= --enable-gallium-llvm
188: CONFIGURE_ARGS+= --enable-r600-llvm-compiler
1.33 tnn 189: .include "../../devel/libelf/buildlink3.mk"
1.37 tnn 190: CPPFLAGS+= -I${BUILDLINK_PREFIX.libelf}/include/libelf
1.28 tnn 191: .include "../../lang/libLLVM/buildlink3.mk"
192: CONFIGURE_ENV+= ac_cv_path_ac_pt_LLVM_CONFIG=${LLVM_CONFIG_PATH}
193: .else # !llvm
1.42 tnn 194: CONFIGURE_ARGS+= --disable-xa
1.28 tnn 195: CONFIGURE_ARGS+= --disable-gallium-llvm
196: CONFIGURE_ARGS+= --disable-r600-llvm-compiler
197: .endif # llvm
198: .else # !dri
199: CONFIGURE_ARGS+= --with-gallium-drivers=
200: CONFIGURE_ARGS+= --with-dri-drivers=
201: CONFIGURE_ARGS+= --disable-dri
202: CONFIGURE_ARGS+= --disable-dri3
1.34 tnn 203: CONFIGURE_ARGS+= --disable-egl
1.42 tnn 204: CONFIGURE_ARGS+= --disable-gbm
205: CONFIGURE_ARGS+= --disable-gles1
206: CONFIGURE_ARGS+= --disable-gles2
1.28 tnn 207: CONFIGURE_ARGS+= --enable-xlib-glx
1.36 tnn 208: .if !empty(PKG_OPTIONS:Mllvm)
209: PKG_FAIL_REASON+= "The llvm PKG_OPTION must also be disabled when dri is disabled"
210: .endif
1.1 bjs 211: .endif
CVSweb <webmaster@jp.NetBSD.org>