aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main
Commit message (Collapse)AuthorAge
* Change label from //tools/defaults:crosstool to //tools/cpp:crosstool",Gravatar dbabkin2018-06-28
| | | | | | RELNOTES:none PiperOrigin-RevId: 202483718
* Delete some more LIPO crumbs.Gravatar Benjamin Peterson2018-06-28
| | | | | | | Closes #5478. Change-Id: I3ac44605ef16a7c2e6bdc63d26fdf968bef651aa PiperOrigin-RevId: 202482493
* Remove CROSSTOOL_LABEL label resolver from ObjcRuleClasses.Gravatar dbabkin2018-06-28
| | | | | | | | Make ObjcRuleClasses uses CppRuleClasses.ccToolchainAttribute label resolver. Mark CppRuleClasses.ccToolchainAttribute with @AutoCodec annotation. RELNOTES:none PiperOrigin-RevId: 202479836
* Expose Skylark API to the C++ toolchainGravatar hlopko2018-06-28
| | | | | | | | | | | | | This is an implementation of the design at https://docs.google.com/document/d/1g91BWJITcYw_X-VxsDC0VgUn5E9g0kRBGoBSpoO41gA/edit>. More thorough documentation will be sent in a separate cl. The api was approved at https://docs.google.com/document/d/1M8JA7kzZnWpLZ3WEX9rp6k2u_nlwE8smsHYgVTSSJ9k/edit?ts=5b292400#. Work towards #4571 (only the docs are missing). RELNOTES: None. PiperOrigin-RevId: 202464331
* Add parentheses to bool expr with && and ||Gravatar Loo Rong Jie2018-06-28
| | | | | | | | Boolean expression with *both* `&&` and `||` must use parentheses to prevent ambiguity. Closes #5475. PiperOrigin-RevId: 202445215
* Automated rollback of commit 1f319fffb8a577be95e8143c21755fe55156a0cb.Gravatar cushon2018-06-28
| | | | | | | | | | *** Reason for rollback *** fix forward *** Original change description *** PiperOrigin-RevId: 202441346
* Add --incompatible_disable_data_transition for 'cfg = "data"' Skylark callsGravatar gregce2018-06-27
| | | | PiperOrigin-RevId: 202400312
* Handles null value in createAggregatingValue env.getValues call.Gravatar shahan2018-06-27
| | | | PiperOrigin-RevId: 202389874
* Remove old (dead) SkylarkSignature-binding code from some classes.Gravatar cparsons2018-06-27
| | | | | RELNOTES: None. PiperOrigin-RevId: 202386363
* Inspect post-evaluation exported variables to obtain rule names.Gravatar cparsons2018-06-27
| | | | | | | | | This is a much cleaner, more elegant approach than previous regex matching. This still leaves room for unknown-name rule definitions, in case, for example, a user namespaces their rule definition not at the top level. For example: "foo.bar = rule(...)" RELNOTES: None. PiperOrigin-RevId: 202380975
* Add Interners for CcToolchainFeatures$ActionConfig, Feature, andGravatar mjhalupka2018-06-27
| | | | | | FeatureConfiguration. PiperOrigin-RevId: 202363333
* Automated refactor of Label.parseAbsolute() to always pass a repository mappingGravatar dannark2018-06-27
| | | | | RELNOTES: None PiperOrigin-RevId: 202360925
* Fix docgen handling of multiple modules with the same nameGravatar cparsons2018-06-27
| | | | | | | | | | If there are multiple modules with the same name: - If only one is marked 'documented', that one takes precedence. - If one is a subclass of the others, the subclass takes precedence. - Otherwise, an exception is thrown. RELNOTES: None. PiperOrigin-RevId: 202359443
* Remove obsolete function.Gravatar laurentlb2018-06-27
| | | | | RELNOTES: None. PiperOrigin-RevId: 202325860
* Debug server logging: don't construct expensive debug-level log strings ↵Gravatar brendandouglas2018-06-27
| | | | | | unless necessary. PiperOrigin-RevId: 202317115
* Bazel,client: actually cache directory creationsGravatar Laszlo Csomor2018-06-27
| | | | | | | | | | | | | | | | | | | | Commit https://github.com/bazelbuild/bazel/commit/f5043d6831ea1c266104363b4e8911eb97f96fbc was incorrect in that it cached the file names, not the directory names. This commit fixes that. I verified that the number of calls to ExtractBlazeZipProcessor::Process is greater than the calls to MakeDirectories within (1038 vs. 172 on Linux). See https://github.com/bazelbuild/bazel/issues/5444 Change-Id: I314bdc9337c9782a5ceaed7aac785a552b222b1f Closes #5484. Change-Id: I314bdc9337c9782a5ceaed7aac785a552b222b1f PiperOrigin-RevId: 202314400
* Bazel client: add a simple profilerGravatar Laszlo Csomor2018-06-27
| | | | | | | | | | | | | | | | | | | | | | | | Add a simple profiler that can measure function call counts and durations, and report statistics by printing to stderr. Motivation: I recently needed a profiler for PR #5445 and PR #5448, so I'm adding the polished code now. Usage: 1. depend on //src/main/cpp/util:profiler 2. use StopWatch, Task, and ScopedTask objects as shown in profiler.h's class documentation See https://github.com/bazelbuild/bazel/issues/5444 Change-Id: I43f0afd124b486c694f451e8455a66ffca8137b6 Closes #5461. Change-Id: I43f0afd124b486c694f451e8455a66ffca8137b6 PiperOrigin-RevId: 202314319
* Add an interner for non source artifacts that are deserialized.Gravatar mjhalupka2018-06-27
| | | | PiperOrigin-RevId: 202311773
* C++: Makes Skylark CcCompilationInfo accept headersGravatar plf2018-06-27
| | | | | | | | | The Skylark constructor of CcCompilationInfo now accepts headers. This may be the last piece needed to get a working prototype of foreign C++ libraries. Next step would be open sourcing the sandwich. RELNOTES:none PiperOrigin-RevId: 202306252
* PiperOrigin-RevId: 202296332Gravatar twerth2018-06-27
|
* PiperOrigin-RevId: 202265344Gravatar cushon2018-06-27
|
* Make DefaultInfo.default_runfiles return all runfiles if the runfiles field ↵Gravatar cparsons2018-06-26
| | | | | | | of DefaultInfo() was used. RELNOTES: None. PiperOrigin-RevId: 202192091
* Initial check-in of skydoc rewrite.Gravatar cparsons2018-06-26
| | | | | | | | | | | | | | This skydoc rewrite uses an actual skylark interpreter with a faked build API (implementing the actual build API that Bazel uses). There's a lot left to do here, this is a barebones start. For example, this does not yet handle: - load() statements - non-global build API elements (e.g. apple_common) - output of any rule information other than attribute names - markdown output format RELNOTES: None. PiperOrigin-RevId: 202187207
* Enforce that repository mapping is never null (it can be empty).Gravatar dannark2018-06-26
| | | | | RELNOTES: None PiperOrigin-RevId: 202167782
* Debug server debug logs: use EventHandler instead of Logger.Gravatar brendandouglas2018-06-26
| | | | | | | | Logger messages aren't printed to the console, they're written to /usr/local/google/tmp, and can be prohibitively large for these debug server logs. Instead I'm going with your original suggestion in https://github.com/bazelbuild/bazel/commit/b74922932b25a71c626b47ea9a9afb7dbc506cec, and selectively suppressing debug events by wrapping the EventHandler on the way in to SkylarkDebugServer. PiperOrigin-RevId: 202166571
* Flatten JavaCompilationAgs into JavaCompilationArgsProviderGravatar cushon2018-06-26
| | | | | | | | | Consolidate the creation of JavaCompilationArgsProviders, and avoid explicit handling of the 'direct' and 'recursive' cases in clients. Also add some higher-level methods to the builder API to support adding dependencies with dep/export/runtime_dep-like semantics. PiperOrigin-RevId: 202166383
* Add newline in Args docs.Gravatar tomlu2018-06-26
| | | | | RELNOTES: None PiperOrigin-RevId: 202162804
* Instead of depending on mutable inputs of upstream CppCompileAction instances,Gravatar shahan2018-06-26
| | | | | | | | | CppCompileAction.discoverInputsStage2 retrieves values of discovered modules from ActionExecutionValue. This addresses a possible a correctness issue. PiperOrigin-RevId: 202162180
* Fix concurrent modification exception while resuming all threads.Gravatar brendandouglas2018-06-26
| | | | PiperOrigin-RevId: 202151257
* Document LateBoundDefaultGravatar cparsons2018-06-26
| | | | | RELNOTES: None. PiperOrigin-RevId: 202150316
* Remove support for header preprocessingGravatar hlopko2018-06-26
| | | | | | | This was never used. We thought it will be useful, but it's not. RELNOTES: None. PiperOrigin-RevId: 202143524
* C++: Refactor WrapCcHelper.Gravatar plf2018-06-26
| | | | | | | Makes it non-instantiable so that it's easier to migrate SWIG rules to Skylark. RELNOTES:none PiperOrigin-RevId: 202136054
* Handle evaluation of statements, not just expressions.Gravatar brendandouglas2018-06-26
| | | | | | | | | | | | | | | Also handle statements in conditional breakpoints. This is more consistent with other common debuggers (e.g. java, python). Calls Parser#parseStatement with local parsing level, so some statement types aren't handled (e.g. load statements), which is broadly consistent with other debuggers. Assignment, augmented assignment, and return statements return a non-None value, and simple expression statements still return the result of evaluating the expression. TAG_CHANGE_OK=This proto has never yet been used TYPE_CHANGE_OK=This proto has never yet been used PiperOrigin-RevId: 202135678
* Specify that some resources in objc_bundle_library are post processed before ↵Gravatar Googler2018-06-26
| | | | | | | they are used on the phone. RELNOTES: None. PiperOrigin-RevId: 202117007
* Allow private headers to appear in directory artifactsGravatar hlopko2018-06-26
| | | | | | | | | | | | | | Before, Bazel expected that it can compile whatever appeared in cc_library.srcs directory artifacts. That is true for C/C++ source files, and for headers when the C++ toolchain supported header parsing/processing (which used CppCompileAction). When the toolchain doesn't support header parsing/processing, Bazel would crash. Addresses issue #5092. One part of it. Fixes #5372. RELNOTES: None. PiperOrigin-RevId: 202114286
* C++: Remove call to initializeCcCompilationContext.Gravatar plf2018-06-26
| | | | | | | | | To get a CcCompilationInfo instance from Skylark it will either have to be through its constructor (not yet fully implemented) which will not schedule any actions or through a call to compile() which does schedule actions. RELNOTES:none PiperOrigin-RevId: 202099841
* Prefetch inputs in bazel workers.Gravatar Googler2018-06-26
| | | | PiperOrigin-RevId: 202092962
* Fix missing newline after repository_cache value in info command output.Gravatar Googler2018-06-25
| | | | PiperOrigin-RevId: 202023187
* Explicitly specify @SkylarkCallable parameters for cpp skylark modules.Gravatar cparsons2018-06-25
| | | | | RELNOTES: None. PiperOrigin-RevId: 202015490
* Explicitly specify @SkylarkCallable parameters for several skylarkbuildapi ↵Gravatar cparsons2018-06-25
| | | | | | | interfaces. RELNOTES: None. PiperOrigin-RevId: 201972439
* C++: Remove unnecessary runfiles providers.Gravatar plf2018-06-25
| | | | PiperOrigin-RevId: 201969238
* Go back to handling conditional breakpoints server side.Gravatar brendandouglas2018-06-25
| | | | | | | | I should have left it as it was -- doing it client-side is just too slow. ENUM_VALUE_OK=This proto has never yet been used PiperOrigin-RevId: 201957138
* Explicitly specify @SkylarkCallable parameters for apple skylarkbuildapi ↵Gravatar cparsons2018-06-25
| | | | | | | interfaces. RELNOTES: None. PiperOrigin-RevId: 201956915
* C++: Remove CcLinkParamsStore parameter from CcLinkingInfo.Gravatar plf2018-06-25
| | | | | | | | | | I will remove the CcLinkParamsStore class in a separate CL. For now, make sure the API doesn't expose this class. The only Skylark use was in cc_import which is migrated in this CL. RELNOTES:none PiperOrigin-RevId: 201948058
* Windows: Native launcher now works with unicode.Gravatar Yun Peng2018-06-25
| | | | | | | | | | | | | | The native launcher can now launch Java and Bash binary in directory with non-English characters. Unfortunately, python doesn't support running python zip file under directory with non-English characters. eg. python ./??/bin.zip will still fail. See https://github.com/bazelbuild/bazel/issues/4473 Change-Id: I77fe9cdaabffc2e0d25c7097da5c0c9333a9c4a3 PiperOrigin-RevId: 201939391
* Windows,client: extract embedded binaries fasterGravatar Laszlo Csomor2018-06-25
| | | | | | | | | | | | | | | | | | | | When extracting embedded binaries, the client now caches which directories it has already created and won't attempt creating them again. This saves some time on Windows: from 16.3 sec on average down to 13.2 sec. (n=10 runs, always starting Bazel with a new --output_user_root and shutting down afterwards.) On Linux I see only a marginal speedup, not significant enough to claim credit for it. :) See https://github.com/bazelbuild/bazel/issues/5444 Closes #5448. PiperOrigin-RevId: 201933181
* Windows,Bazel client: check embedded tools fasterGravatar Laszlo Csomor2018-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | The Bazel client on Windows is now 50% faster to check the embedded tools than it was before. Results: - Linux: 20 ms -> 6 ms - Windows: 294 ms -> 133 ms Measurements were done with n=10 runs and a hot server, using blaze::GetMillisecondsMonotonic(). Previously the client performed the same tasks multiple times while trying to determine if a path was a good extracted binary. (E.g. converted the path to Windows format multiple times, checked if it was a directory twice, opened the path twice.) Now the client performes these tasks only once, e.g. it converts path once and stats only once. See https://github.com/bazelbuild/bazel/issues/5444 Closes #5445. PiperOrigin-RevId: 201913758
* Make @SkylarkCallable.name mandatory.Gravatar cparsons2018-06-22
| | | | | RELNOTES: None. PiperOrigin-RevId: 201748802
* ToolchainContext directly implements SkylarkValue and SkylarkIndexable.Gravatar John Cater2018-06-22
| | | | | Change-Id: I355b138e143771fd826ab03951df821ea7d58ac5 PiperOrigin-RevId: 201740564
* Explicitly specify @SkylarkCallable parameters for android skylarkbuildapi ↵Gravatar cparsons2018-06-22
| | | | | | | interfaces. RELNOTES: None. PiperOrigin-RevId: 201735466