Config.in.abi 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. # This file is part of the OpenADK project. OpenADK is copyrighted
  2. # material, please see the LICENCE file in the top-level directory.
  3. choice
  4. prompt "ABI"
  5. depends on ADK_TARGET_ARCH_MIPS64
  6. config ADK_TARGET_ABI_N32
  7. bool "N32 ABI"
  8. config ADK_TARGET_ABI_N64
  9. bool "N64 ABI"
  10. config ADK_TARGET_ABI_O32
  11. bool "O32 ABI"
  12. endchoice
  13. choice
  14. prompt "ABI"
  15. depends on ADK_TARGET_ARCH_RISCV32
  16. config ADK_TARGET_ABI_ILP32
  17. bool "ilp32 ABI"
  18. config ADK_TARGET_ABI_ILP32F
  19. bool "ilp32f ABI"
  20. config ADK_TARGET_ABI_ILP32D
  21. bool "ilp32d ABI"
  22. endchoice
  23. choice
  24. prompt "ABI"
  25. depends on ADK_TARGET_ARCH_RISCV64
  26. config ADK_TARGET_ABI_LP64
  27. bool "lp64 ABI"
  28. config ADK_TARGET_ABI_LP64F
  29. bool "lp64f ABI"
  30. config ADK_TARGET_ABI_LP64D
  31. bool "lp64d ABI"
  32. endchoice
  33. choice
  34. prompt "ABI"
  35. depends on ADK_TARGET_ARCH_X86_64 && \
  36. (ADK_TARGET_LIB_GLIBC || ADK_TARGET_LIB_MUSL)
  37. config ADK_TARGET_ABI_64
  38. bool "64 Bit ABI"
  39. config ADK_TARGET_ABI_X32
  40. bool "x32 ABI"
  41. endchoice
  42. config ADK_TARGET_ABI
  43. string
  44. default "o32" if ADK_TARGET_ABI_O32
  45. default "n32" if ADK_TARGET_ABI_N32
  46. default "n64" if ADK_TARGET_ABI_N64
  47. default "32" if ADK_TARGET_ABI_32
  48. default "x32" if ADK_TARGET_ABI_X32
  49. default "eabihf" if ADK_TARGET_ARCH_ARM && ADK_TARGET_HARD_FLOAT
  50. default "eabi" if ADK_TARGET_ARCH_ARM
  51. config ADK_TARGET_MIPS_ABI
  52. depends on ADK_TARGET_ARCH_MIPS64
  53. string
  54. default "32" if ADK_TARGET_ABI_O32
  55. default "n32" if ADK_TARGET_ABI_N32
  56. default "64" if ADK_TARGET_ABI_N64
  57. config ADK_TARGET_LIBC_PATH
  58. string
  59. default "lib32" if ADK_TARGET_ABI_N32
  60. default "libx32" if ADK_TARGET_ABI_X32
  61. default "lib64" if ADK_TARGET_ABI_64 || ADK_TARGET_ABI_N64 \
  62. || ADK_TARGET_ARCH_AARCH64 \
  63. || ADK_TARGET_ARCH_SPARC64 \
  64. || ADK_TARGET_ARCH_PPC64 \
  65. || ADK_TARGET_ARCH_X86_64
  66. default "lib"
  67. config ADK_TARGET_ABI_CFLAGS
  68. string
  69. default "-mabi=32" if ADK_TARGET_ABI_O32
  70. default "-mabi=n32" if ADK_TARGET_ABI_N32
  71. default "-mabi=64" if ADK_TARGET_ABI_N64
  72. default "-m32" if ADK_TARGET_ABI_32
  73. default "-mx32" if ADK_TARGET_ABI_X32
  74. default "-m64" if ADK_TARGET_ABI_64
  75. default "-mabi=lp64" if ADK_TARGET_ABI_LP64
  76. default "-mabi=lp64f" if ADK_TARGET_ABI_LP64F
  77. default "-mabi=lp64d" if ADK_TARGET_ABI_LP64D
  78. default "-mabi=ilp32" if ADK_TARGET_ABI_ILP32
  79. default "-mabi=ilp32f" if ADK_TARGET_ABI_ILP32F
  80. default "-mabi=ilp32d" if ADK_TARGET_ABI_ILP32D