1*1b3f573fSAndroid Build Coastguard Workerload(":cc_toolchain_config.bzl", "cc_toolchain_config") 2*1b3f573fSAndroid Build Coastguard Worker 3*1b3f573fSAndroid Build Coastguard Workerpackage(default_visibility = ["//visibility:public"]) 4*1b3f573fSAndroid Build Coastguard Worker 5*1b3f573fSAndroid Build Coastguard Workerfilegroup(name = "empty") 6*1b3f573fSAndroid Build Coastguard Worker 7*1b3f573fSAndroid Build Coastguard WorkerTOOLCHAINS = { 8*1b3f573fSAndroid Build Coastguard Worker "osx-x86_64": "cc-compiler-osx-x86_64", 9*1b3f573fSAndroid Build Coastguard Worker "osx-aarch_64": "cc-compiler-osx-aarch_64", 10*1b3f573fSAndroid Build Coastguard Worker "linux-aarch_64": "cc-compiler-linux-aarch_64", 11*1b3f573fSAndroid Build Coastguard Worker "linux-ppcle_64": "cc-compiler-linux-ppcle_64", 12*1b3f573fSAndroid Build Coastguard Worker "linux-s390_64": "cc-compiler-linux-s390_64", 13*1b3f573fSAndroid Build Coastguard Worker "linux-x86_32": "cc-compiler-linux-x86_32", 14*1b3f573fSAndroid Build Coastguard Worker "linux-x86_64": "cc-compiler-linux-x86_64", 15*1b3f573fSAndroid Build Coastguard Worker "win32": "cc-compiler-windows-x86_32", 16*1b3f573fSAndroid Build Coastguard Worker "win64": "cc-compiler-windows-x86_64", 17*1b3f573fSAndroid Build Coastguard Worker "k8": "cc-compiler-k8", 18*1b3f573fSAndroid Build Coastguard Worker} 19*1b3f573fSAndroid Build Coastguard Worker 20*1b3f573fSAndroid Build Coastguard Workercc_toolchain_suite( 21*1b3f573fSAndroid Build Coastguard Worker name = "clang_suite", 22*1b3f573fSAndroid Build Coastguard Worker toolchains = TOOLCHAINS 23*1b3f573fSAndroid Build Coastguard Worker) 24*1b3f573fSAndroid Build Coastguard Worker 25*1b3f573fSAndroid Build Coastguard Worker[ 26*1b3f573fSAndroid Build Coastguard Worker cc_toolchain( 27*1b3f573fSAndroid Build Coastguard Worker name = toolchain, 28*1b3f573fSAndroid Build Coastguard Worker all_files = ":empty", 29*1b3f573fSAndroid Build Coastguard Worker compiler_files = ":empty", 30*1b3f573fSAndroid Build Coastguard Worker dwp_files = ":empty", 31*1b3f573fSAndroid Build Coastguard Worker dynamic_runtime_lib = ":empty", 32*1b3f573fSAndroid Build Coastguard Worker linker_files = ":empty", 33*1b3f573fSAndroid Build Coastguard Worker objcopy_files = ":empty", 34*1b3f573fSAndroid Build Coastguard Worker output_licenses = ["restricted"], 35*1b3f573fSAndroid Build Coastguard Worker static_runtime_lib = ":empty", 36*1b3f573fSAndroid Build Coastguard Worker strip_files = ":empty", 37*1b3f573fSAndroid Build Coastguard Worker toolchain_config = ":" + cpu + "-config", 38*1b3f573fSAndroid Build Coastguard Worker toolchain_identifier = toolchain, 39*1b3f573fSAndroid Build Coastguard Worker ) 40*1b3f573fSAndroid Build Coastguard Worker for cpu, toolchain in TOOLCHAINS.items() 41*1b3f573fSAndroid Build Coastguard Worker] 42*1b3f573fSAndroid Build Coastguard Worker 43*1b3f573fSAndroid Build Coastguard Workercc_toolchain_config( 44*1b3f573fSAndroid Build Coastguard Worker name = "k8-config", 45*1b3f573fSAndroid Build Coastguard Worker linker_path = "/usr/bin/ld", 46*1b3f573fSAndroid Build Coastguard Worker sysroot = "/opt/manylinux/2014/x86_64", 47*1b3f573fSAndroid Build Coastguard Worker target_cpu = "x86_64", 48*1b3f573fSAndroid Build Coastguard Worker target_full_name = "x86_64-linux-gnu", 49*1b3f573fSAndroid Build Coastguard Worker) 50*1b3f573fSAndroid Build Coastguard Worker 51*1b3f573fSAndroid Build Coastguard Workercc_toolchain_config( 52*1b3f573fSAndroid Build Coastguard Worker name = "linux-aarch_64-config", 53*1b3f573fSAndroid Build Coastguard Worker sysroot = "/opt/manylinux/2014/aarch64", 54*1b3f573fSAndroid Build Coastguard Worker linker_path = "/usr/bin/ld", 55*1b3f573fSAndroid Build Coastguard Worker target_cpu = "aarch64", 56*1b3f573fSAndroid Build Coastguard Worker target_full_name = "aarch64-linux-gnu", 57*1b3f573fSAndroid Build Coastguard Worker) 58*1b3f573fSAndroid Build Coastguard Worker 59*1b3f573fSAndroid Build Coastguard Workercc_toolchain_config( 60*1b3f573fSAndroid Build Coastguard Worker name = "linux-ppcle_64-config", 61*1b3f573fSAndroid Build Coastguard Worker linker_path = "/usr/bin/ld", 62*1b3f573fSAndroid Build Coastguard Worker sysroot = "/opt/manylinux/2014/ppc64le", 63*1b3f573fSAndroid Build Coastguard Worker target_cpu = "ppc64", 64*1b3f573fSAndroid Build Coastguard Worker target_full_name = "powerpc64le-linux-gnu", 65*1b3f573fSAndroid Build Coastguard Worker) 66*1b3f573fSAndroid Build Coastguard Worker 67*1b3f573fSAndroid Build Coastguard Workercc_toolchain_config( 68*1b3f573fSAndroid Build Coastguard Worker name = "linux-s390_64-config", 69*1b3f573fSAndroid Build Coastguard Worker linker_path = "/usr/bin/ld", 70*1b3f573fSAndroid Build Coastguard Worker sysroot = "/opt/manylinux/2014/s390x", 71*1b3f573fSAndroid Build Coastguard Worker target_cpu = "systemz", 72*1b3f573fSAndroid Build Coastguard Worker target_full_name = "s390x-linux-gnu", 73*1b3f573fSAndroid Build Coastguard Worker) 74*1b3f573fSAndroid Build Coastguard Worker 75*1b3f573fSAndroid Build Coastguard Workercc_toolchain_config( 76*1b3f573fSAndroid Build Coastguard Worker name = "linux-x86_32-config", 77*1b3f573fSAndroid Build Coastguard Worker linker_path = "/usr/bin/ld", 78*1b3f573fSAndroid Build Coastguard Worker sysroot = "/opt/manylinux/2014/i686", 79*1b3f573fSAndroid Build Coastguard Worker target_cpu = "x86_32", 80*1b3f573fSAndroid Build Coastguard Worker target_full_name = "i386-linux-gnu", 81*1b3f573fSAndroid Build Coastguard Worker) 82*1b3f573fSAndroid Build Coastguard Worker 83*1b3f573fSAndroid Build Coastguard Workercc_toolchain_config( 84*1b3f573fSAndroid Build Coastguard Worker name = "linux-x86_64-config", 85*1b3f573fSAndroid Build Coastguard Worker linker_path = "/usr/bin/ld", 86*1b3f573fSAndroid Build Coastguard Worker sysroot = "/opt/manylinux/2014/x86_64", 87*1b3f573fSAndroid Build Coastguard Worker target_cpu = "x86_64", 88*1b3f573fSAndroid Build Coastguard Worker target_full_name = "x86_64-linux-gnu", 89*1b3f573fSAndroid Build Coastguard Worker) 90*1b3f573fSAndroid Build Coastguard Worker 91*1b3f573fSAndroid Build Coastguard Workercc_toolchain_config( 92*1b3f573fSAndroid Build Coastguard Worker name = "osx-aarch_64-config", 93*1b3f573fSAndroid Build Coastguard Worker extra_compiler_flags = [ 94*1b3f573fSAndroid Build Coastguard Worker "-I/usr/tools/xcode_14_0/macosx/usr/include/c++/v1", 95*1b3f573fSAndroid Build Coastguard Worker "-I/usr/tools/xcode_14_0/macosx/usr/include", 96*1b3f573fSAndroid Build Coastguard Worker "-F/usr/tools/xcode_14_0/macosx/System/Library/Frameworks", 97*1b3f573fSAndroid Build Coastguard Worker "-Wno-error=nullability-completeness", 98*1b3f573fSAndroid Build Coastguard Worker "-Wno-error=availability", 99*1b3f573fSAndroid Build Coastguard Worker "-Wno-error=elaborated-enum-base", 100*1b3f573fSAndroid Build Coastguard Worker ], 101*1b3f573fSAndroid Build Coastguard Worker extra_linker_flags = ["-framework CoreFoundation"], 102*1b3f573fSAndroid Build Coastguard Worker linker_path = "/usr/tools", 103*1b3f573fSAndroid Build Coastguard Worker sysroot = "/usr/tools/xcode_14_0/macosx", 104*1b3f573fSAndroid Build Coastguard Worker target_cpu = "aarch64", 105*1b3f573fSAndroid Build Coastguard Worker target_full_name = "aarch64-apple-macosx10.9", 106*1b3f573fSAndroid Build Coastguard Worker) 107*1b3f573fSAndroid Build Coastguard Worker 108*1b3f573fSAndroid Build Coastguard Workercc_toolchain_config( 109*1b3f573fSAndroid Build Coastguard Worker name = "osx-x86_64-config", 110*1b3f573fSAndroid Build Coastguard Worker extra_compiler_flags = [ 111*1b3f573fSAndroid Build Coastguard Worker "-I/usr/tools/xcode_14_0/macosx/usr/include/c++/v1", 112*1b3f573fSAndroid Build Coastguard Worker "-I/usr/tools/xcode_14_0/macosx/usr/include", 113*1b3f573fSAndroid Build Coastguard Worker "-F/usr/tools/xcode_14_0/macosx/System/Library/Frameworks", 114*1b3f573fSAndroid Build Coastguard Worker "-Wno-error=nullability-completeness", 115*1b3f573fSAndroid Build Coastguard Worker "-Wno-error=availability", 116*1b3f573fSAndroid Build Coastguard Worker "-Wno-error=elaborated-enum-base", 117*1b3f573fSAndroid Build Coastguard Worker ], 118*1b3f573fSAndroid Build Coastguard Worker extra_linker_flags = ["-framework CoreFoundation"], 119*1b3f573fSAndroid Build Coastguard Worker linker_path = "/usr/tools", 120*1b3f573fSAndroid Build Coastguard Worker sysroot = "/usr/tools/xcode_14_0/macosx", 121*1b3f573fSAndroid Build Coastguard Worker target_cpu = "x86_64", 122*1b3f573fSAndroid Build Coastguard Worker target_full_name = "x86_64-apple-macosx10.9", 123*1b3f573fSAndroid Build Coastguard Worker) 124*1b3f573fSAndroid Build Coastguard Worker 125*1b3f573fSAndroid Build Coastguard Workercc_toolchain_config( 126*1b3f573fSAndroid Build Coastguard Worker name = "win32-config", 127*1b3f573fSAndroid Build Coastguard Worker extra_compiler_flags = [ 128*1b3f573fSAndroid Build Coastguard Worker "-isystem/usr/lib/gcc/i686-w64-mingw32/8.3-posix/include/c++", 129*1b3f573fSAndroid Build Coastguard Worker "-isystem/usr/lib/gcc/i686-w64-mingw32/8.3-posix/include/c++/i686-w64-mingw32", 130*1b3f573fSAndroid Build Coastguard Worker "-fsjlj-exceptions", 131*1b3f573fSAndroid Build Coastguard Worker ], 132*1b3f573fSAndroid Build Coastguard Worker extra_include = "/usr/lib/gcc/i686-w64-mingw32", 133*1b3f573fSAndroid Build Coastguard Worker extra_linker_flags = [ 134*1b3f573fSAndroid Build Coastguard Worker "-L/usr/lib/gcc/i686-w64-mingw32/8.3-posix", 135*1b3f573fSAndroid Build Coastguard Worker "-ldbghelp", 136*1b3f573fSAndroid Build Coastguard Worker "-pthread", 137*1b3f573fSAndroid Build Coastguard Worker ], 138*1b3f573fSAndroid Build Coastguard Worker linker_path = "/usr/bin/ld", 139*1b3f573fSAndroid Build Coastguard Worker sysroot = "/usr/i686-w64-mingw32", 140*1b3f573fSAndroid Build Coastguard Worker target_cpu = "x86_32", 141*1b3f573fSAndroid Build Coastguard Worker target_full_name = "i686-w64-mingw32", 142*1b3f573fSAndroid Build Coastguard Worker) 143*1b3f573fSAndroid Build Coastguard Worker 144*1b3f573fSAndroid Build Coastguard Workercc_toolchain_config( 145*1b3f573fSAndroid Build Coastguard Worker name = "win64-config", 146*1b3f573fSAndroid Build Coastguard Worker extra_compiler_flags = [ 147*1b3f573fSAndroid Build Coastguard Worker "-isystem/usr/lib/gcc/x86_64-w64-mingw32/8.3-posix/include/c++/", 148*1b3f573fSAndroid Build Coastguard Worker "-isystem/usr/lib/gcc/x86_64-w64-mingw32/8.3-posix/include/c++/x86_64-w64-mingw32", 149*1b3f573fSAndroid Build Coastguard Worker ], 150*1b3f573fSAndroid Build Coastguard Worker extra_include = "/usr/lib/gcc/x86_64-w64-mingw32/8.3-posix/include", 151*1b3f573fSAndroid Build Coastguard Worker extra_linker_flags = [ 152*1b3f573fSAndroid Build Coastguard Worker "-L/usr/lib/gcc/x86_64-w64-mingw32/8.3-posix", 153*1b3f573fSAndroid Build Coastguard Worker "-ldbghelp", 154*1b3f573fSAndroid Build Coastguard Worker ], 155*1b3f573fSAndroid Build Coastguard Worker linker_path = "/usr/bin/ld", 156*1b3f573fSAndroid Build Coastguard Worker sysroot = "/usr/x86_64-w64-mingw32", 157*1b3f573fSAndroid Build Coastguard Worker target_cpu = "x86_64", 158*1b3f573fSAndroid Build Coastguard Worker target_full_name = "x86_64-w64-mingw32", 159*1b3f573fSAndroid Build Coastguard Worker) 160