| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
separate class
RELNOTES: None.
PiperOrigin-RevId: 196517537
|
|
|
|
|
|
|
|
|
|
|
| |
The only use case was for Objective-C rules so that different set of sources specified in the same rule could be compiled with either ARC or no ARC. To replace source specific build variables, we call into CcLibraryHelper twice for each set of sources.
This has led to separating the building of compilation providers and outputs from those related to linking. In the case of Objective-C, the compilation outputs are merged and then passed to a single invocation of linking in CcLibraryHelper.
In a later CL, the distinction between compilation and linking will be refined by separating them in different classes.
RELNOTES:none
PiperOrigin-RevId: 179167102
|
|
|
|
|
|
| |
This is a trivial change with a large file footprint.
PiperOrigin-RevId: 169169864
|
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 163114020
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the configuration.
This is part of the crusade to kill package loading in configuration creation.
AppleConfiguration still retains the version information for the following reasons:
- Some Skylark rules access it that way. The plan is to create an xcode_config_alias() rule that can be an implicit dependency of Skylark rules and to export the version information to Skylark from XcodeVersionsProvider.
- The minimum OS version is part of the name of the output directory. The plan for that is simply to remove it. Hopefully we can get away with it.
- They allow us to add assertions to make sure the new mechanism works like the old one.
RELNOTES: None.
PiperOrigin-RevId: 163038724
|
|
|
|
|
| |
WANT_LGTM=all
PiperOrigin-RevId: 153584480
|
|
|
|
| |
PiperOrigin-RevId: 153202296
|
|
|
|
| |
PiperOrigin-RevId: 153161442
|
|
|
|
| |
PiperOrigin-RevId: 152011915
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
a configuration to be passed into the cc backend and used to scope output artifacts.
Artifacts involved:
(1) Object files: see change in CppHelper, CppModel, CppCompileActionBuilder
(2) Archive files: see change in CppModel
(3) Archive objfile list: see change in ObjcVariablesExtension.
Other little things that needed to be cleaned up to enable this:
(1) neverlink set on objc archive actions. Without neverlink, colliding solib artifacts are generated from the two archives arising from the multi-arch split.
(2) Toolchain selection in CrosstoolCompilationSupport uses passed-in configuration instead of :cc_toolchain attribute. This allows for each of the compiles spawned from apple_binary.srcs to select the correct toolchain based on the child configuration.
--
PiperOrigin-RevId: 147550618
MOS_MIGRATED_REVID=147550618
|
|
|
|
|
|
|
|
|
|
| |
duplicate-args need to be preserved.
(Example: "-iquote foo -iquote bar" is a legitimate series of flags)
--
PiperOrigin-RevId: 147512419
MOS_MIGRATED_REVID=147512419
|
|
|
|
|
|
|
|
| |
objc_proto_library and objc_import rules.
--
PiperOrigin-RevId: 146410669
MOS_MIGRATED_REVID=146410669
|
|
|
|
|
|
|
|
| |
compilation actions.
--
PiperOrigin-RevId: 144356912
MOS_MIGRATED_REVID=144356912
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=140131142
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This cl merges two classes used to hold build variables context into one. Those
classes are (previously top-level) jcgd.build.lib.rules.cpp.Variables, and its
inner class View. Both represent a collection of build variables and imo it
makes sense to merge them to make the code simpler.
Also, I cleaned up the build variables api to use primitive strings or instances of VariableValueBuilders, and I've hidden subclasses of VariableValues.
Last but not least, I refactored the code to use immutable collections exclusively. That revealed that 'module_files' variable is sometimes registered twice. I want to clean this eventually ([]).
--
MOS_MIGRATED_REVID=139329823
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following link features are *not* implemented yet:
1) Objc++ linking semantics
2) Dead stripping
3) --should_prioritize_static_libs
4) DSYM generation
5) Coverage support
6) Swift interop
7) Linkmap
--
MOS_MIGRATED_REVID=139232434
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now flag_group can be marked with iterate_over field, that denotes for which
sequence variable the flag_group will be expanded repeatedly. This cl does that
in backwards compatible way as before, the iteration happened implicitly when the
used variable was found to be sequence at runtime. Because of that it adds some
extra code that will be removed once all the crosstools are migrated to the
explicit iteration.
--
MOS_MIGRATED_REVID=138501033
|
|
|
|
|
|
|
| |
objc_library.
--
MOS_MIGRATED_REVID=134773363
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also:
- Move minimum os information into AppleConfiguration
- Update watchos and tvos minimum version defaulting behavior
such that, if unspecified in flags, the minimum OS is equal
to the SDK version.
- Expose Apple Platform to apple_common in skylark
--
MOS_MIGRATED_REVID=134712763
|
|
|
|
|
|
|
|
|
|
|
| |
watchOS.
Currently, the minimum watchOS version is always fixed to the SDK version being used, which may not always be desired (for example, building with the 3.0 SDK but support running on 2.2). The watch flags aren't being used yet (nor are the tvOS flags), but will pave the way for us to fix that.
The necessary CROSSTOOL support is in unknown commit.
--
MOS_MIGRATED_REVID=133602832
|
|
--
MOS_MIGRATED_REVID=130547971
|