kumquat-buildroot/package/libdrm/Config.in

110 lines
2.7 KiB
Plaintext
Raw Normal View History

menuconfig BR2_PACKAGE_LIBDRM
bool "libdrm"
select BR2_PACKAGE_LIBPTHREAD_STUBS
depends on BR2_TOOLCHAIN_HAS_THREADS # libpthread-stubs
help
Direct Rendering Manager
http://dri.freedesktop.org/libdrm/
if BR2_PACKAGE_LIBDRM
libdrm: improve atomic handling, fix SPARCv8 build This commit improves the handling of the "atomic stuff" in the libdrm package. libdrm can either use the atomic intrinsics (4 byte variant) when available, or otherwise can use libatomic_ops. Note that the dependency on atomic operations is not from libdrm itself, but only from some specific DRM drivers only. Amongst other things, it fixes the build of the libdrm package on SPARCv8, therefore fixing: http://autobuild.buildroot.org/results/74dd29b5ea146c320fde80a87a2fc910de9b7f60/ This commit does a number of changes that are all related to each other: - Removes the dependency of the Intel DRM driver on libatomic_ops. The Intel DRM driver builds perfectly fine without libatomic_ops, as long as 4-byte variant __sync operations are available, which is always the case on x86 and x86_84 (which are the only architectures on which the Intel DRM driver can be enabled). - Adds an hidden Config.in boolean option BR2_PACKAGE_LIBDRM_HAS_ATOMIC that allows DRM driver that need atomic operation to know whether atomic support is available (either through intrinsics or through libatomic_ops). - Adds an hidden BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC Config.in option that DRM drivers that need atomic operation should select to ensure that the relevant dependencies are selected. It simply selects libatomic_ops if 4-byte atomic intrinsics are not available. We could let each DRM driver do this, but having an intermediate option avoids a bit of duplication. - Adds a patch that defines AO_REQUIRE_CAS before including <atomic_ops.h>. This is needed because libdrm uses the AO_compare_and_swap_full() which is only provided on all architectures when AO_REQUIRE_CAS is defined. The exact same fix was done in the erlang package in commit 4a9df2942470241d7a96f326f0e7012aacd36f2e. - Adds the dependency on libatomic_ops when the package is enabled, and passes the necessary CFLAGS on SPARCv8 to make the thing build properly. The same CFLAGS are passed in the nginx package and bdwgc package. Cc: Waldemar Brodkorb <wbx@openadk.org> Cc: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-05-26 12:53:16 +02:00
config BR2_PACKAGE_LIBDRM_HAS_ATOMIC
bool
default y if BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS || \
BR2_TOOLCHAIN_HAS_SYNC_4
config BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
bool
select BR2_PACKAGE_LIBATOMIC_OPS if !BR2_TOOLCHAIN_HAS_SYNC_4
config BR2_PACKAGE_LIBDRM_INTEL
bool "intel"
select BR2_PACKAGE_LIBPCIACCESS
depends on BR2_i386 || BR2_x86_64
libdrm: improve atomic handling, fix SPARCv8 build This commit improves the handling of the "atomic stuff" in the libdrm package. libdrm can either use the atomic intrinsics (4 byte variant) when available, or otherwise can use libatomic_ops. Note that the dependency on atomic operations is not from libdrm itself, but only from some specific DRM drivers only. Amongst other things, it fixes the build of the libdrm package on SPARCv8, therefore fixing: http://autobuild.buildroot.org/results/74dd29b5ea146c320fde80a87a2fc910de9b7f60/ This commit does a number of changes that are all related to each other: - Removes the dependency of the Intel DRM driver on libatomic_ops. The Intel DRM driver builds perfectly fine without libatomic_ops, as long as 4-byte variant __sync operations are available, which is always the case on x86 and x86_84 (which are the only architectures on which the Intel DRM driver can be enabled). - Adds an hidden Config.in boolean option BR2_PACKAGE_LIBDRM_HAS_ATOMIC that allows DRM driver that need atomic operation to know whether atomic support is available (either through intrinsics or through libatomic_ops). - Adds an hidden BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC Config.in option that DRM drivers that need atomic operation should select to ensure that the relevant dependencies are selected. It simply selects libatomic_ops if 4-byte atomic intrinsics are not available. We could let each DRM driver do this, but having an intermediate option avoids a bit of duplication. - Adds a patch that defines AO_REQUIRE_CAS before including <atomic_ops.h>. This is needed because libdrm uses the AO_compare_and_swap_full() which is only provided on all architectures when AO_REQUIRE_CAS is defined. The exact same fix was done in the erlang package in commit 4a9df2942470241d7a96f326f0e7012aacd36f2e. - Adds the dependency on libatomic_ops when the package is enabled, and passes the necessary CFLAGS on SPARCv8 to make the thing build properly. The same CFLAGS are passed in the nginx package and bdwgc package. Cc: Waldemar Brodkorb <wbx@openadk.org> Cc: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-05-26 12:53:16 +02:00
depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
help
Install intel graphics driver.
config BR2_PACKAGE_LIBDRM_RADEON
bool "radeon"
libdrm: improve atomic handling, fix SPARCv8 build This commit improves the handling of the "atomic stuff" in the libdrm package. libdrm can either use the atomic intrinsics (4 byte variant) when available, or otherwise can use libatomic_ops. Note that the dependency on atomic operations is not from libdrm itself, but only from some specific DRM drivers only. Amongst other things, it fixes the build of the libdrm package on SPARCv8, therefore fixing: http://autobuild.buildroot.org/results/74dd29b5ea146c320fde80a87a2fc910de9b7f60/ This commit does a number of changes that are all related to each other: - Removes the dependency of the Intel DRM driver on libatomic_ops. The Intel DRM driver builds perfectly fine without libatomic_ops, as long as 4-byte variant __sync operations are available, which is always the case on x86 and x86_84 (which are the only architectures on which the Intel DRM driver can be enabled). - Adds an hidden Config.in boolean option BR2_PACKAGE_LIBDRM_HAS_ATOMIC that allows DRM driver that need atomic operation to know whether atomic support is available (either through intrinsics or through libatomic_ops). - Adds an hidden BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC Config.in option that DRM drivers that need atomic operation should select to ensure that the relevant dependencies are selected. It simply selects libatomic_ops if 4-byte atomic intrinsics are not available. We could let each DRM driver do this, but having an intermediate option avoids a bit of duplication. - Adds a patch that defines AO_REQUIRE_CAS before including <atomic_ops.h>. This is needed because libdrm uses the AO_compare_and_swap_full() which is only provided on all architectures when AO_REQUIRE_CAS is defined. The exact same fix was done in the erlang package in commit 4a9df2942470241d7a96f326f0e7012aacd36f2e. - Adds the dependency on libatomic_ops when the package is enabled, and passes the necessary CFLAGS on SPARCv8 to make the thing build properly. The same CFLAGS are passed in the nginx package and bdwgc package. Cc: Waldemar Brodkorb <wbx@openadk.org> Cc: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-05-26 12:53:16 +02:00
depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
help
Install AMD/ATI graphics driver.
config BR2_PACKAGE_LIBDRM_AMDGPU
bool "amdgpu"
libdrm: improve atomic handling, fix SPARCv8 build This commit improves the handling of the "atomic stuff" in the libdrm package. libdrm can either use the atomic intrinsics (4 byte variant) when available, or otherwise can use libatomic_ops. Note that the dependency on atomic operations is not from libdrm itself, but only from some specific DRM drivers only. Amongst other things, it fixes the build of the libdrm package on SPARCv8, therefore fixing: http://autobuild.buildroot.org/results/74dd29b5ea146c320fde80a87a2fc910de9b7f60/ This commit does a number of changes that are all related to each other: - Removes the dependency of the Intel DRM driver on libatomic_ops. The Intel DRM driver builds perfectly fine without libatomic_ops, as long as 4-byte variant __sync operations are available, which is always the case on x86 and x86_84 (which are the only architectures on which the Intel DRM driver can be enabled). - Adds an hidden Config.in boolean option BR2_PACKAGE_LIBDRM_HAS_ATOMIC that allows DRM driver that need atomic operation to know whether atomic support is available (either through intrinsics or through libatomic_ops). - Adds an hidden BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC Config.in option that DRM drivers that need atomic operation should select to ensure that the relevant dependencies are selected. It simply selects libatomic_ops if 4-byte atomic intrinsics are not available. We could let each DRM driver do this, but having an intermediate option avoids a bit of duplication. - Adds a patch that defines AO_REQUIRE_CAS before including <atomic_ops.h>. This is needed because libdrm uses the AO_compare_and_swap_full() which is only provided on all architectures when AO_REQUIRE_CAS is defined. The exact same fix was done in the erlang package in commit 4a9df2942470241d7a96f326f0e7012aacd36f2e. - Adds the dependency on libatomic_ops when the package is enabled, and passes the necessary CFLAGS on SPARCv8 to make the thing build properly. The same CFLAGS are passed in the nginx package and bdwgc package. Cc: Waldemar Brodkorb <wbx@openadk.org> Cc: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-05-26 12:53:16 +02:00
depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
help
Install AMD GPU driver.
config BR2_PACKAGE_LIBDRM_NOUVEAU
bool "nouveau"
libdrm: improve atomic handling, fix SPARCv8 build This commit improves the handling of the "atomic stuff" in the libdrm package. libdrm can either use the atomic intrinsics (4 byte variant) when available, or otherwise can use libatomic_ops. Note that the dependency on atomic operations is not from libdrm itself, but only from some specific DRM drivers only. Amongst other things, it fixes the build of the libdrm package on SPARCv8, therefore fixing: http://autobuild.buildroot.org/results/74dd29b5ea146c320fde80a87a2fc910de9b7f60/ This commit does a number of changes that are all related to each other: - Removes the dependency of the Intel DRM driver on libatomic_ops. The Intel DRM driver builds perfectly fine without libatomic_ops, as long as 4-byte variant __sync operations are available, which is always the case on x86 and x86_84 (which are the only architectures on which the Intel DRM driver can be enabled). - Adds an hidden Config.in boolean option BR2_PACKAGE_LIBDRM_HAS_ATOMIC that allows DRM driver that need atomic operation to know whether atomic support is available (either through intrinsics or through libatomic_ops). - Adds an hidden BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC Config.in option that DRM drivers that need atomic operation should select to ensure that the relevant dependencies are selected. It simply selects libatomic_ops if 4-byte atomic intrinsics are not available. We could let each DRM driver do this, but having an intermediate option avoids a bit of duplication. - Adds a patch that defines AO_REQUIRE_CAS before including <atomic_ops.h>. This is needed because libdrm uses the AO_compare_and_swap_full() which is only provided on all architectures when AO_REQUIRE_CAS is defined. The exact same fix was done in the erlang package in commit 4a9df2942470241d7a96f326f0e7012aacd36f2e. - Adds the dependency on libatomic_ops when the package is enabled, and passes the necessary CFLAGS on SPARCv8 to make the thing build properly. The same CFLAGS are passed in the nginx package and bdwgc package. Cc: Waldemar Brodkorb <wbx@openadk.org> Cc: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-05-26 12:53:16 +02:00
depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
help
Install NVIDIA graphics driver.
config BR2_PACKAGE_LIBDRM_VMWGFX
bool "vmwgfx"
depends on BR2_i386 || BR2_x86_64
help
Installs Vmware graphics driver.
config BR2_PACKAGE_LIBDRM_OMAP
bool "omap (experimental)"
depends on BR2_arm
libdrm: improve atomic handling, fix SPARCv8 build This commit improves the handling of the "atomic stuff" in the libdrm package. libdrm can either use the atomic intrinsics (4 byte variant) when available, or otherwise can use libatomic_ops. Note that the dependency on atomic operations is not from libdrm itself, but only from some specific DRM drivers only. Amongst other things, it fixes the build of the libdrm package on SPARCv8, therefore fixing: http://autobuild.buildroot.org/results/74dd29b5ea146c320fde80a87a2fc910de9b7f60/ This commit does a number of changes that are all related to each other: - Removes the dependency of the Intel DRM driver on libatomic_ops. The Intel DRM driver builds perfectly fine without libatomic_ops, as long as 4-byte variant __sync operations are available, which is always the case on x86 and x86_84 (which are the only architectures on which the Intel DRM driver can be enabled). - Adds an hidden Config.in boolean option BR2_PACKAGE_LIBDRM_HAS_ATOMIC that allows DRM driver that need atomic operation to know whether atomic support is available (either through intrinsics or through libatomic_ops). - Adds an hidden BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC Config.in option that DRM drivers that need atomic operation should select to ensure that the relevant dependencies are selected. It simply selects libatomic_ops if 4-byte atomic intrinsics are not available. We could let each DRM driver do this, but having an intermediate option avoids a bit of duplication. - Adds a patch that defines AO_REQUIRE_CAS before including <atomic_ops.h>. This is needed because libdrm uses the AO_compare_and_swap_full() which is only provided on all architectures when AO_REQUIRE_CAS is defined. The exact same fix was done in the erlang package in commit 4a9df2942470241d7a96f326f0e7012aacd36f2e. - Adds the dependency on libatomic_ops when the package is enabled, and passes the necessary CFLAGS on SPARCv8 to make the thing build properly. The same CFLAGS are passed in the nginx package and bdwgc package. Cc: Waldemar Brodkorb <wbx@openadk.org> Cc: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-05-26 12:53:16 +02:00
depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
help
Install the TI OMAP driver using an experimental API.
config BR2_PACKAGE_LIBDRM_ETNAVIV
bool "etnaviv (experimental)"
depends on BR2_arm
depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
help
Install the Etnaviv/Vivante driver using an experimental API.
config BR2_PACKAGE_LIBDRM_EXYNOS
bool "exynos (experimental)"
depends on BR2_arm
help
Install Samsung Exynos driver using an experimental API.
config BR2_PACKAGE_LIBDRM_FREEDRENO
bool "freedreno"
depends on BR2_arm || BR2_aarch64 || BR2_aarch64_be
libdrm: improve atomic handling, fix SPARCv8 build This commit improves the handling of the "atomic stuff" in the libdrm package. libdrm can either use the atomic intrinsics (4 byte variant) when available, or otherwise can use libatomic_ops. Note that the dependency on atomic operations is not from libdrm itself, but only from some specific DRM drivers only. Amongst other things, it fixes the build of the libdrm package on SPARCv8, therefore fixing: http://autobuild.buildroot.org/results/74dd29b5ea146c320fde80a87a2fc910de9b7f60/ This commit does a number of changes that are all related to each other: - Removes the dependency of the Intel DRM driver on libatomic_ops. The Intel DRM driver builds perfectly fine without libatomic_ops, as long as 4-byte variant __sync operations are available, which is always the case on x86 and x86_84 (which are the only architectures on which the Intel DRM driver can be enabled). - Adds an hidden Config.in boolean option BR2_PACKAGE_LIBDRM_HAS_ATOMIC that allows DRM driver that need atomic operation to know whether atomic support is available (either through intrinsics or through libatomic_ops). - Adds an hidden BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC Config.in option that DRM drivers that need atomic operation should select to ensure that the relevant dependencies are selected. It simply selects libatomic_ops if 4-byte atomic intrinsics are not available. We could let each DRM driver do this, but having an intermediate option avoids a bit of duplication. - Adds a patch that defines AO_REQUIRE_CAS before including <atomic_ops.h>. This is needed because libdrm uses the AO_compare_and_swap_full() which is only provided on all architectures when AO_REQUIRE_CAS is defined. The exact same fix was done in the erlang package in commit 4a9df2942470241d7a96f326f0e7012aacd36f2e. - Adds the dependency on libatomic_ops when the package is enabled, and passes the necessary CFLAGS on SPARCv8 to make the thing build properly. The same CFLAGS are passed in the nginx package and bdwgc package. Cc: Waldemar Brodkorb <wbx@openadk.org> Cc: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-05-26 12:53:16 +02:00
depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
help
Install Qualcomm Snapdragon driver.
config BR2_PACKAGE_LIBDRM_TEGRA
bool "tegra (experimental)"
depends on BR2_arm
libdrm: improve atomic handling, fix SPARCv8 build This commit improves the handling of the "atomic stuff" in the libdrm package. libdrm can either use the atomic intrinsics (4 byte variant) when available, or otherwise can use libatomic_ops. Note that the dependency on atomic operations is not from libdrm itself, but only from some specific DRM drivers only. Amongst other things, it fixes the build of the libdrm package on SPARCv8, therefore fixing: http://autobuild.buildroot.org/results/74dd29b5ea146c320fde80a87a2fc910de9b7f60/ This commit does a number of changes that are all related to each other: - Removes the dependency of the Intel DRM driver on libatomic_ops. The Intel DRM driver builds perfectly fine without libatomic_ops, as long as 4-byte variant __sync operations are available, which is always the case on x86 and x86_84 (which are the only architectures on which the Intel DRM driver can be enabled). - Adds an hidden Config.in boolean option BR2_PACKAGE_LIBDRM_HAS_ATOMIC that allows DRM driver that need atomic operation to know whether atomic support is available (either through intrinsics or through libatomic_ops). - Adds an hidden BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC Config.in option that DRM drivers that need atomic operation should select to ensure that the relevant dependencies are selected. It simply selects libatomic_ops if 4-byte atomic intrinsics are not available. We could let each DRM driver do this, but having an intermediate option avoids a bit of duplication. - Adds a patch that defines AO_REQUIRE_CAS before including <atomic_ops.h>. This is needed because libdrm uses the AO_compare_and_swap_full() which is only provided on all architectures when AO_REQUIRE_CAS is defined. The exact same fix was done in the erlang package in commit 4a9df2942470241d7a96f326f0e7012aacd36f2e. - Adds the dependency on libatomic_ops when the package is enabled, and passes the necessary CFLAGS on SPARCv8 to make the thing build properly. The same CFLAGS are passed in the nginx package and bdwgc package. Cc: Waldemar Brodkorb <wbx@openadk.org> Cc: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-05-26 12:53:16 +02:00
depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
help
Install NVIDIA Tegra driver using an experimental API.
config BR2_PACKAGE_LIBDRM_VC4
bool "vc4"
depends on BR2_arm
help
Install vc4 (Raspberry Pi) driver.
config BR2_PACKAGE_LIBDRM_INSTALL_TESTS
bool "Install test programs"
help
This option allows to install the libdrm test programs.
endif
comment "libdrm needs a toolchain w/ threads"
depends on !BR2_TOOLCHAIN_HAS_THREADS