Config.in 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. # z3 supports arch for which libc fenv.h provides all four macros:
  2. # FE_DOWNWARD, FE_TONEAREST, FE_TOWARDZERO, FE_UPWARD
  3. # See for example in glibc https://sourceware.org/git/glibc.git
  4. # git grep -E '^[[:space:]]*#[[:space:]]*define[[:space:]]+FE_(TONEAREST|UPWARD|DOWNWARD|TOWARDZERO)' sysdeps/
  5. config BR2_PACKAGE_Z3_ARCH_SUPPORTS
  6. bool
  7. default y if BR2_aarch64 || BR2_aarch64_be
  8. default y if BR2_arceb || BR2_arcle
  9. default y if BR2_arm || BR2_armeb
  10. default y if BR2_i386
  11. default y if BR2_m68k
  12. # BR2_microblaze has only FE_TONEAREST
  13. default y if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
  14. default y if BR2_or1k
  15. default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
  16. default y if BR2_riscv
  17. default y if BR2_s390x
  18. # BR2_sh has only FE_{TONEAREST,TOWARDZERO}
  19. default y if BR2_sparc || BR2_sparc64
  20. default y if BR2_x86_64
  21. # BR2_xtensa supports only uclibc which does not have fenv.h
  22. config BR2_PACKAGE_Z3
  23. bool "z3"
  24. depends on BR2_INSTALL_LIBSTDCPP
  25. depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # c++17
  26. # z3 needs fenv.h which is not provided by uclibc
  27. depends on !BR2_TOOLCHAIN_USES_UCLIBC
  28. depends on BR2_PACKAGE_Z3_ARCH_SUPPORTS
  29. help
  30. Z3, also known as the Z3 Theorem Prover, is a cross-platform
  31. satisfiability modulo theories (SMT) solver.
  32. https://github.com/Z3Prover/z3
  33. if BR2_PACKAGE_Z3
  34. config BR2_PACKAGE_Z3_PYTHON
  35. bool "Python bindings"
  36. depends on BR2_PACKAGE_PYTHON3
  37. select BR2_PACKAGE_PYTHON3_PYEXPAT # runtime
  38. select BR2_PACKAGE_PYTHON_SETUPTOOLS # runtime
  39. endif