Android.bp 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  1. package {
  2. default_applicable_licenses: ["Android-Apache-2.0"],
  3. }
  4. subdirs = [
  5. "androidmk",
  6. "bpfix",
  7. "cmd/*",
  8. "fs",
  9. "finder",
  10. "jar",
  11. "zip",
  12. "third_party/zip",
  13. "ui/*",
  14. ]
  15. bootstrap_go_package {
  16. name: "soong",
  17. pkgPath: "android/soong",
  18. deps: [
  19. "blueprint",
  20. ],
  21. srcs: [
  22. "doc.go",
  23. ],
  24. }
  25. //
  26. // Defaults to enable various configurations of host bionic
  27. //
  28. cc_defaults {
  29. name: "linux_bionic_supported",
  30. host_supported: true,
  31. target: {
  32. host: {
  33. enabled: false,
  34. },
  35. linux_bionic: {
  36. enabled: true,
  37. },
  38. },
  39. }
  40. //
  41. // C static libraries extracted from the gcc toolchain
  42. //
  43. toolchain_library {
  44. name: "libatomic",
  45. defaults: ["linux_bionic_supported"],
  46. vendor_available: true,
  47. product_available: true,
  48. ramdisk_available: true,
  49. vendor_ramdisk_available: true,
  50. recovery_available: true,
  51. native_bridge_supported: true,
  52. arch: {
  53. arm: {
  54. src: "prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/arm-linux-androideabi/lib/libatomic.a",
  55. },
  56. arm64: {
  57. src: "prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/aarch64-linux-android/lib64/libatomic.a",
  58. },
  59. x86: {
  60. src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/x86_64-linux-android/lib/libatomic.a",
  61. },
  62. x86_64: {
  63. src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/x86_64-linux-android/lib64/libatomic.a",
  64. },
  65. },
  66. }
  67. toolchain_library {
  68. name: "libgcc",
  69. defaults: ["linux_bionic_supported"],
  70. vendor_available: true,
  71. product_available: true,
  72. recovery_available: true,
  73. native_bridge_supported: true,
  74. apex_available: [
  75. "//apex_available:platform",
  76. "//apex_available:anyapex",
  77. ],
  78. arch: {
  79. arm: {
  80. src: "prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib/gcc/arm-linux-androideabi/4.9.x/libgcc.a",
  81. },
  82. arm64: {
  83. src: "prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/lib/gcc/aarch64-linux-android/4.9.x/libgcc.a",
  84. },
  85. x86: {
  86. src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/32/libgcc.a",
  87. },
  88. x86_64: {
  89. src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/libgcc.a",
  90. },
  91. },
  92. }
  93. toolchain_library {
  94. name: "libgcc_stripped",
  95. defaults: ["linux_bionic_supported"],
  96. vendor_available: true,
  97. product_available: true,
  98. ramdisk_available: true,
  99. vendor_ramdisk_available: true,
  100. recovery_available: true,
  101. native_bridge_supported: true,
  102. sdk_version: "current",
  103. arch: {
  104. arm: {
  105. src: "prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib/gcc/arm-linux-androideabi/4.9.x/libgcc.a",
  106. repack_objects_to_keep: [],
  107. enabled: false,
  108. },
  109. arm64: {
  110. src: "prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/lib/gcc/aarch64-linux-android/4.9.x/libgcc.a",
  111. repack_objects_to_keep: [
  112. "unwind-dw2.o",
  113. "unwind-dw2-fde-dip.o",
  114. ],
  115. },
  116. x86: {
  117. src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/32/libgcc.a",
  118. repack_objects_to_keep: [
  119. "unwind-dw2.o",
  120. "unwind-dw2-fde-dip.o",
  121. ],
  122. },
  123. x86_64: {
  124. src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/libgcc.a",
  125. repack_objects_to_keep: [
  126. "unwind-dw2.o",
  127. "unwind-dw2-fde-dip.o",
  128. ],
  129. },
  130. },
  131. }
  132. toolchain_library {
  133. name: "libwinpthread",
  134. host_supported: true,
  135. enabled: false,
  136. target: {
  137. windows: {
  138. enabled: true,
  139. },
  140. windows_x86: {
  141. src: "prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8/x86_64-w64-mingw32/lib32/libwinpthread.a",
  142. },
  143. windows_x86_64: {
  144. src: "prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8/x86_64-w64-mingw32/lib/libwinpthread.a",
  145. },
  146. },
  147. notice: ":mingw-libwinpthread-notice",
  148. }
  149. toolchain_library {
  150. name: "libgcov",
  151. defaults: ["linux_bionic_supported"],
  152. arch: {
  153. arm: {
  154. src: "prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/lib/gcc/arm-linux-androideabi/4.9.x/libgcov.a",
  155. },
  156. arm64: {
  157. src: "prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/lib/gcc/aarch64-linux-android/4.9.x/libgcov.a",
  158. },
  159. x86: {
  160. src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/32/libgcov.a",
  161. },
  162. x86_64: {
  163. src: "prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/lib/gcc/x86_64-linux-android/4.9.x/libgcov.a",
  164. },
  165. },
  166. }
  167. kernel_headers {
  168. name: "device_kernel_headers",
  169. vendor: true,
  170. recovery_available: true,
  171. }
  172. cc_genrule {
  173. name: "host_bionic_linker_asm",
  174. host_supported: true,
  175. device_supported: false,
  176. target: {
  177. linux_bionic: {
  178. enabled: true,
  179. },
  180. linux_glibc: {
  181. enabled: false,
  182. },
  183. darwin: {
  184. enabled: false,
  185. },
  186. },
  187. tools: ["extract_linker"],
  188. cmd: "$(location) -s $(out) $(in)",
  189. srcs: [":linker"],
  190. out: ["linker.s"],
  191. }
  192. cc_genrule {
  193. name: "host_bionic_linker_flags",
  194. host_supported: true,
  195. device_supported: false,
  196. target: {
  197. linux_bionic: {
  198. enabled: true,
  199. },
  200. linux_glibc: {
  201. enabled: false,
  202. },
  203. darwin: {
  204. enabled: false,
  205. },
  206. },
  207. tools: ["extract_linker"],
  208. cmd: "$(location) -f $(out) $(in)",
  209. srcs: [":linker"],
  210. out: ["linker.flags"],
  211. }
  212. // Instantiate the dex_bootjars singleton module.
  213. dex_bootjars {
  214. name: "dex_bootjars",
  215. }