Brian Silverman | 660d609 | 2015-11-26 18:41:59 -0500 | [diff] [blame] | 1 | package(default_visibility = ['//visibility:public']) |
Brian Silverman | 12b3fc5 | 2015-10-11 19:38:33 -0400 | [diff] [blame] | 2 | |
| 3 | cc_library( |
Brian Silverman | 63889f9 | 2015-11-27 01:33:56 -0500 | [diff] [blame] | 4 | name = 'empty_main', |
| 5 | srcs = [ 'empty_main.c' ], |
| 6 | ) |
| 7 | |
| 8 | cc_library( |
Brian Silverman | 660d609 | 2015-11-26 18:41:59 -0500 | [diff] [blame] | 9 | name = 'malloc', |
Brian Silverman | 63889f9 | 2015-11-27 01:33:56 -0500 | [diff] [blame] | 10 | deps = select({ |
| 11 | '//tools:has_asan': [], |
| 12 | '//tools:has_tsan': [], |
Brian Silverman | 8b63869 | 2017-06-26 23:10:26 -0700 | [diff] [blame^] | 13 | '//tools:cpu_cortex_m4f': [], |
Brian Silverman | 63889f9 | 2015-11-27 01:33:56 -0500 | [diff] [blame] | 14 | '//conditions:default': ['//third_party/gperftools:tcmalloc'], |
| 15 | }), |
Brian Silverman | 12b3fc5 | 2015-10-11 19:38:33 -0400 | [diff] [blame] | 16 | ) |
| 17 | |
| 18 | cc_library( |
Brian Silverman | 660d609 | 2015-11-26 18:41:59 -0500 | [diff] [blame] | 19 | name = 'stl', |
Brian Silverman | 12b3fc5 | 2015-10-11 19:38:33 -0400 | [diff] [blame] | 20 | ) |
| 21 | |
| 22 | filegroup( |
Brian Silverman | 660d609 | 2015-11-26 18:41:59 -0500 | [diff] [blame] | 23 | name = 'empty', |
| 24 | srcs = [], |
Brian Silverman | 12b3fc5 | 2015-10-11 19:38:33 -0400 | [diff] [blame] | 25 | ) |
| 26 | |
Brian Silverman | b200c17 | 2017-01-02 17:35:35 -0800 | [diff] [blame] | 27 | # This is the entry point for --crosstool_top. |
| 28 | cc_toolchain_suite( |
Brian Silverman | 660d609 | 2015-11-26 18:41:59 -0500 | [diff] [blame] | 29 | name = 'toolchain', |
Brian Silverman | b200c17 | 2017-01-02 17:35:35 -0800 | [diff] [blame] | 30 | toolchains = { |
| 31 | 'k8|clang': ':cc-compiler-k8', |
| 32 | 'roborio|gcc': ':cc-compiler-roborio', |
Brian Silverman | e5e2a25 | 2017-02-19 17:48:55 -0800 | [diff] [blame] | 33 | 'armhf-debian|clang': 'cc-compiler-armhf-debian', |
Brian Silverman | 8b63869 | 2017-06-26 23:10:26 -0700 | [diff] [blame^] | 34 | 'cortex-m4f|gcc': 'cc-compiler-cortex-m4f', |
Brian Silverman | b200c17 | 2017-01-02 17:35:35 -0800 | [diff] [blame] | 35 | }, |
Brian Silverman | b466eef | 2015-11-28 20:33:44 -0500 | [diff] [blame] | 36 | ) |
| 37 | |
| 38 | # Compiler inputs given by --copt etc in //tools:bazel.rc. |
| 39 | filegroup( |
| 40 | name = 'flags_compiler_inputs', |
Brian Silverman | 0d57fc8 | 2016-01-24 21:02:53 -0500 | [diff] [blame] | 41 | srcs = select({ |
| 42 | '//tools:has_asan': [ |
| 43 | 'asan-blacklist', |
| 44 | ], |
| 45 | '//tools:has_ubsan': [ |
| 46 | 'ubsan-blacklist', |
| 47 | ], |
| 48 | '//conditions:default': [], |
| 49 | }), |
Brian Silverman | 12b3fc5 | 2015-10-11 19:38:33 -0400 | [diff] [blame] | 50 | ) |
| 51 | |
| 52 | cc_toolchain( |
Brian Silverman | 660d609 | 2015-11-26 18:41:59 -0500 | [diff] [blame] | 53 | name = 'cc-compiler-k8', |
Brian Silverman | b466eef | 2015-11-28 20:33:44 -0500 | [diff] [blame] | 54 | all_files = ':flags_compiler_inputs', |
| 55 | compiler_files = ':flags_compiler_inputs', |
Brian Silverman | 660d609 | 2015-11-26 18:41:59 -0500 | [diff] [blame] | 56 | cpu = 'local', |
| 57 | dwp_files = ':empty', |
| 58 | dynamic_runtime_libs = [':empty'], |
| 59 | linker_files = ':empty', |
| 60 | objcopy_files = ':empty', |
| 61 | static_runtime_libs = [':empty'], |
| 62 | strip_files = ':empty', |
| 63 | supports_param_files = 1, |
Brian Silverman | 12b3fc5 | 2015-10-11 19:38:33 -0400 | [diff] [blame] | 64 | ) |
Austin Schuh | 23da18b | 2015-10-11 20:52:49 -0700 | [diff] [blame] | 65 | |
Austin Schuh | 55139fe | 2015-10-14 23:55:24 -0700 | [diff] [blame] | 66 | filegroup( |
| 67 | name = 'roborio-compiler-files', |
| 68 | srcs = [ |
| 69 | '//tools/cpp/arm-frc-linux-gnueabi:tool-wrappers', |
Brian Silverman | b2215d0 | 2015-11-23 19:10:15 -0500 | [diff] [blame] | 70 | '//tools/cpp/arm-frc-linux-gnueabi:as', |
Brian Silverman | 826e1cd | 2016-01-31 18:26:00 -0500 | [diff] [blame] | 71 | '@arm_frc_linux_gnueabi_repo//:compiler_pieces', |
Brian Silverman | b466eef | 2015-11-28 20:33:44 -0500 | [diff] [blame] | 72 | ':flags_compiler_inputs', |
Austin Schuh | 55139fe | 2015-10-14 23:55:24 -0700 | [diff] [blame] | 73 | ], |
| 74 | ) |
| 75 | |
| 76 | filegroup( |
| 77 | name = 'roborio_linker_files', |
| 78 | srcs = [ |
| 79 | '//tools/cpp/arm-frc-linux-gnueabi:ld', |
| 80 | '//tools/cpp/arm-frc-linux-gnueabi:ar', |
Brian Silverman | b2215d0 | 2015-11-23 19:10:15 -0500 | [diff] [blame] | 81 | '//tools/cpp/arm-frc-linux-gnueabi:gcc', |
Brian Silverman | b200c17 | 2017-01-02 17:35:35 -0800 | [diff] [blame] | 82 | '//tools/cpp/arm-frc-linux-gnueabi:libs', |
Brian Silverman | 826e1cd | 2016-01-31 18:26:00 -0500 | [diff] [blame] | 83 | '@arm_frc_linux_gnueabi_repo//:compiler_pieces', |
Austin Schuh | 55139fe | 2015-10-14 23:55:24 -0700 | [diff] [blame] | 84 | ], |
| 85 | ) |
| 86 | filegroup( |
| 87 | name = 'roborio_compiler_files', |
| 88 | srcs = [ |
| 89 | '//tools/cpp/arm-frc-linux-gnueabi:gcc', |
| 90 | '//tools/cpp/arm-frc-linux-gnueabi:ld', |
Brian Silverman | b200c17 | 2017-01-02 17:35:35 -0800 | [diff] [blame] | 91 | '@arm_frc_linux_gnueabi_repo//:compiler_components', |
| 92 | '@arm_frc_linux_gnueabi_repo//:compiler_pieces', |
Austin Schuh | 55139fe | 2015-10-14 23:55:24 -0700 | [diff] [blame] | 93 | ], |
| 94 | ) |
| 95 | |
Austin Schuh | 23da18b | 2015-10-11 20:52:49 -0700 | [diff] [blame] | 96 | cc_toolchain( |
Brian Silverman | 660d609 | 2015-11-26 18:41:59 -0500 | [diff] [blame] | 97 | name = 'cc-compiler-roborio', |
| 98 | all_files = ':roborio-compiler-files', |
| 99 | compiler_files = ':roborio_compiler_files', |
| 100 | cpu = 'roborio', |
| 101 | dwp_files = ':empty', |
| 102 | dynamic_runtime_libs = [':empty'], |
| 103 | linker_files = ':roborio_linker_files', |
| 104 | objcopy_files = '//tools/cpp/arm-frc-linux-gnueabi:objcopy', |
| 105 | static_runtime_libs = [':empty'], |
| 106 | strip_files = '//tools/cpp/arm-frc-linux-gnueabi:strip', |
| 107 | supports_param_files = 1, |
Austin Schuh | 23da18b | 2015-10-11 20:52:49 -0700 | [diff] [blame] | 108 | ) |
Brian Silverman | 0d57fc8 | 2016-01-24 21:02:53 -0500 | [diff] [blame] | 109 | |
| 110 | filegroup( |
| 111 | name = 'linaro-gcc-files', |
| 112 | srcs = [ |
| 113 | '//tools/cpp/linaro_linux_gcc:clang-symlinks', |
| 114 | '//tools/cpp/linaro_linux_gcc:tool-wrappers', |
Austin Schuh | 6166083 | 2016-03-04 21:56:39 -0800 | [diff] [blame] | 115 | '@linaro_linux_gcc_4_9_repo//:compiler_pieces', |
Brian Silverman | 0d57fc8 | 2016-01-24 21:02:53 -0500 | [diff] [blame] | 116 | ], |
| 117 | ) |
| 118 | |
| 119 | filegroup( |
| 120 | name = 'linaro_linux_linker_files', |
| 121 | srcs = [ |
| 122 | '//tools/cpp/linaro_linux_gcc:gcc', |
| 123 | '//tools/cpp/linaro_linux_gcc:ld', |
| 124 | '//tools/cpp/linaro_linux_gcc:ar', |
| 125 | '//tools/cpp/linaro_linux_gcc:clang-ld', |
| 126 | '//tools/cpp/linaro_linux_gcc:clang', |
Austin Schuh | 6166083 | 2016-03-04 21:56:39 -0800 | [diff] [blame] | 127 | '@linaro_linux_gcc_4_9_repo//:compiler_pieces', |
Brian Silverman | e5e2a25 | 2017-02-19 17:48:55 -0800 | [diff] [blame] | 128 | '//tools/cpp/linaro_linux_gcc:clang-symlinks', |
Brian Silverman | 0d57fc8 | 2016-01-24 21:02:53 -0500 | [diff] [blame] | 129 | ], |
| 130 | ) |
| 131 | |
| 132 | filegroup( |
| 133 | name = 'linaro_linux_compiler_files', |
| 134 | srcs = [ |
| 135 | '//tools/cpp/linaro_linux_gcc:gcc', |
| 136 | '//tools/cpp/linaro_linux_gcc:ld', |
| 137 | '//tools/cpp/linaro_linux_gcc:clang', |
| 138 | '//tools/cpp/linaro_linux_gcc:as', |
| 139 | ], |
| 140 | ) |
| 141 | |
| 142 | cc_toolchain( |
| 143 | name = 'cc-compiler-armhf-debian', |
| 144 | all_files = ':linaro-gcc-files', |
| 145 | compiler_files = ':linaro_linux_compiler_files', |
| 146 | cpu = 'armhf', |
| 147 | dwp_files = ':empty', |
| 148 | dynamic_runtime_libs = [':empty'], |
| 149 | linker_files = ':linaro_linux_linker_files', |
| 150 | objcopy_files = '//tools/cpp/linaro_linux_gcc:objcopy', |
| 151 | static_runtime_libs = [':empty'], |
| 152 | strip_files = '//tools/cpp/linaro_linux_gcc:strip', |
| 153 | supports_param_files = 1, |
| 154 | ) |
Brian Silverman | 8b63869 | 2017-06-26 23:10:26 -0700 | [diff] [blame^] | 155 | |
| 156 | cc_toolchain( |
| 157 | name = 'cc-compiler-cortex-m4f', |
| 158 | all_files = ':empty', |
| 159 | compiler_files = ':empty', |
| 160 | cpu = 'cortex-m4', |
| 161 | dwp_files = ':empty', |
| 162 | dynamic_runtime_libs = [':empty'], |
| 163 | linker_files = '//motors/core:linkerscript', |
| 164 | objcopy_files = ':empty', |
| 165 | static_runtime_libs = [':empty'], |
| 166 | strip_files = ':empty', |
| 167 | supports_param_files = 0, |
| 168 | ) |