[BACK]Return to options.mk CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / graphics / MesaLib

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>