| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, this would get thrown when referring to the same package
from both the main and default repositories:
java.lang.IllegalArgumentException: Multiple entries with same key: tools/cpp=/home/brian/971-Robot-Code and tools/cpp=/home/brian/971-Robot-Code
at com.google.common.collect.ImmutableMap.checkNoConflict(ImmutableMap.java:136)
at com.google.common.collect.RegularImmutableMap.checkNoConflictInKeyBucket(RegularImmutableMap.java:98)
at com.google.common.collect.RegularImmutableMap.fromEntryArray(RegularImmutableMap.java:84)
at com.google.common.collect.ImmutableMap$Builder.build(ImmutableMap.java:295)
at com.google.devtools.build.lib.buildtool.BuildTool.transformPackageRoots(BuildTool.java:301)
at com.google.devtools.build.lib.buildtool.BuildTool.buildTargets(BuildTool.java:209)
at com.google.devtools.build.lib.buildtool.BuildTool.processRequest(BuildTool.java:334)
at com.google.devtools.build.lib.runtime.commands.TestCommand.doTest(TestCommand.java:119)
at com.google.devtools.build.lib.runtime.commands.TestCommand.exec(TestCommand.java:104)
at com.google.devtools.build.lib.runtime.BlazeCommandDispatcher.exec(BlazeCommandDispatcher.java:371)
at com.google.devtools.build.lib.runtime.BlazeRuntime$3.exec(BlazeRuntime.java:1016)
at com.google.devtools.build.lib.server.RPCService.executeRequest(RPCService.java:65)
at com.google.devtools.build.lib.server.RPCServer.executeRequest(RPCServer.java:434)
at com.google.devtools.build.lib.server.RPCServer.serve(RPCServer.java:229)
at com.google.devtools.build.lib.runtime.BlazeRuntime.serverMain(BlazeRuntime.java:975)
at com.google.devtools.build.lib.runtime.BlazeRuntime.main(BlazeRuntime.java:772)
at com.google.devtools.build.lib.bazel.BazelMain.main(BazelMain.java:55)
And this would get thrown for any packages in the main repository loaded
from other repositories:
java.lang.RuntimeException: Unrecoverable error while evaluating node 'PACKAGE:@//tools/build_rules/go/toolchain' (requested by nodes )
at com.google.devtools.build.skyframe.ParallelEvaluator$Evaluate.run(ParallelEvaluator.java:982)
at com.google.devtools.build.lib.concurrent.AbstractQueueVisitor$WrappedRunnable.run(AbstractQueueVisitor.java:499)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalArgumentException: Invalid BUILD file name for package '@//tools/build_rules/go/toolchain': /home/brian/bazel/tools/build_rules/go/toolchain/BUILD
at com.google.devtools.build.lib.packages.Package.finishInit(Package.java:299)
at com.google.devtools.build.lib.packages.Package$Builder.finishBuild(Package.java:1308)
at com.google.devtools.build.lib.skyframe.PackageFunction.compute(PackageFunction.java:501)
at com.google.devtools.build.skyframe.ParallelEvaluator$Evaluate.run(ParallelEvaluator.java:933)
... 4 more
Sponsor's comment: note the abundance of new Label.resolveRepositoryRelative() calls. They are ugly, but it's only making existing ugliness explicit. Yes, we should fix it, especially in the implementation of configurable attributes.
Refs #940
--
Change-Id: I8bd7f7b00bec58a7157507595421bc50c81b404c
Reviewed-on: https://bazel-review.googlesource.com/#/c/2591
MOS_MIGRATED_REVID=117429733
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=114350802
|
|
|
|
|
|
|
| |
Reduces garbage.
--
MOS_MIGRATED_REVID=109914243
|
|
|
|
|
|
|
| |
Without this change, an output xcode project artifact refers to the additional sources of its dependency projects, but does not necessarily mark these sources as action inputs.
--
MOS_MIGRATED_REVID=107428634
|
|
|
|
|
|
|
|
|
|
|
| |
of configuration over to the apple package.
This moves a small number of configuration items over. Future changes will mostly likely follow to move yet more items.
The split here is necessary as it is not only objc-related rules which require information about apple platforms and configuration -- cc rules will need this information as well to
pass appropriate args to clang.
--
MOS_MIGRATED_REVID=107396114
|
|
|
|
|
|
|
|
|
|
|
| |
The headers were modified with
`find . -type f -exec 'sed' '-Ei' 's|Copyright 201([45]) Google|Copyright 201\1 The Bazel Authors|' '{}' ';'`
And manual edit for not Google owned copyright. Because of the nature of ijar, I did not modified the header of file owned by Alan Donovan.
The list of authors were extracted from the git log. It is missing older Google contributors that can be added on-demand.
--
MOS_MIGRATED_REVID=103938715
|
|
|
|
|
|
|
|
|
|
| |
- Label parsing can be simplified
- lib.syntax is only contains the code for Skylark and is reasonably independent from the problem domain of building things
This change is mostly only changes to imports declarations. The rest is reversing the dependency between :cmdline and :syntax and moving a tiny amount of code between Printer and FilesetEntry and the addition of SkylarkPrintableValue that I couldn't be bothered to separate out into its own change.
--
MOS_MIGRATED_REVID=103527877
|
|
|
|
|
|
|
| |
Also improve test coverage for inclusion of dummy source file in xcode project targets
--
MOS_MIGRATED_REVID=103384049
|
|
|
|
|
|
|
| |
the -I include paths as non-propagated header search paths. If the paths are relative, prepend $(WORKSPACE_ROOT) to them.
--
MOS_MIGRATED_REVID=102994196
|
|
|
|
|
|
|
| |
which is in line with the order of similar fields in ObjcProvider used for Bazel build.
--
MOS_MIGRATED_REVID=101979394
|
|
|
|
|
|
|
| |
resolve the file even while outside a workspace which contains it
--
MOS_MIGRATED_REVID=101462428
|
|
|
|
|
|
|
|
|
| |
file is in both srcs and hdrs.
This uses a very restrictive definition of private headers. They may only imported by sources in the same target and other private headers. They are not transitively available to dependers, even indirectly, though this may change in the future.
--
MOS_MIGRATED_REVID=101028706
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=100924958
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Allows for building and linking to a framework in ios_application
* Currently only works for single arch builds
* Xcode generation produces correct target type, but is mostly untested
The implementation is very similar to that of objc_framework:
1) Build the ios_framework_binary as a dynamic library (-dynamiclib)
2) Symlink the library and public headers to a staging location, inside of "X.framework" bundle. Where X is the name under ios_framework_binary#framework_name
3) Pass the bundle content to ObjcCommon.addFrameworkImports, reusing the core of objc_framework rule implementation. This results in correctly set -F/-framework flags and allows clients to use the framework in a way they would use any SDK/3rd-party framework. It's allowed to import headers via #import <X/X.h> call.
4) Copy the binary and all resources into final application bundle under Frameworks/X.framework
5) Sign the app and nested frameworks
--
MOS_MIGRATED_REVID=100397239
|
|
|
|
|
|
|
| |
XcodeGen.
--
MOS_MIGRATED_REVID=97145288
|
|
|
|
|
|
|
| |
"structured_resources" on ObjC rules.
--
MOS_MIGRATED_REVID=96332700
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Breaks targets that have the same .m file in both srcs and hdrs.
*** Original change description ***
Allow private header files in the srcs attribute of objc_* rules.
This uses CppModuleMap and CppModuleMapAction to generate clang module maps for the target and its transitive dependencies. clang enforces private header usage through these maps. Right now module maps are interpreted but modules aren't enabled.
RELNOTES: Allow private header files in the srcs attribute of objc_* rules.
--
MOS_MIGRATED_REVID=95916531
|
|
|
|
|
|
|
|
|
| |
This uses CppModuleMap and CppModuleMapAction to generate clang module maps for the target and its transitive dependencies. clang enforces private header usage through these maps. Right now module maps are interpreted but modules aren't enabled.
RELNOTES: Allow private header files in the srcs attribute of objc_* rules.
--
MOS_MIGRATED_REVID=95844137
|
|
|
|
|
|
|
|
| |
Moves the bundle merging action logic into BundleSupport and eliminates
the need for InfoplistMerging.java.
--
MOS_MIGRATED_REVID=93926774
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=93170106
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is required because Apple does not accept extensions whose plist
has a minimum OS value lower than 8.0, or whose code is compiled at less
than 8.0, even if it is included in an application that is compiled for,
and marked compatible with, a lower OS version.
Note that I didn't make this an attribute for now as there are no use
cases for setting the value to anything but 8.0. If we ever need to
make this user-configurable, a value can easily be set.
Second submission attempt with small additional logic to distinguish xcode
projects across configurations.
--
MOS_MIGRATED_REVID=92267493
|
|
|
|
|
|
|
| |
companion Xcode library target.
--
MOS_MIGRATED_REVID=92198656
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=91881146
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is required because Apple does not accept extensions whose plist
has a minimum OS value lower than 8.0, or whose code is compiled at less
than 8.0, even if it is included in an application that is compiled for,
and marked compatible with, a lower OS version.
Note that I didn't make this an attribute for now as there are no use
cases for setting the value to anything but 8.0. If we ever need to
make this user-configurable, a value can easily be set.
--
MOS_MIGRATED_REVID=91831415
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=91617486
|
|
|
|
|
|
|
| |
project files.
--
MOS_MIGRATED_REVID=91300378
|
|
|
|
|
|
|
| |
RELNOTES: Always define OS_IOS in iOS builds.
--
MOS_MIGRATED_REVID=89969990
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change moves the resource compilation actions from each declaring target
to the bundle in which they're stored. This bundle is (mostly, see below) the
only thing that cares about the compiled resources. As a result, we avoid
compiling each resource many times when in a multi-architecture context.
Note that as a result of this change rules other than ios_test do no longer
add the compiled datamodels and storyboards to files to build. There (should?)
be no need for them anyhow. Also, Xcode targets will now no longer contain the
transitive closure of datamodels, only their own.
Note that in the case where the input resource is produced by a genrule the
resource compilation still happens for each architecture but we ignore the
results for all but one of the architectures to avoid bundling conflicts.
There are also some more validation checks and nicer error messages for users
when they specify illegal strings resources.
--
MOS_MIGRATED_REVID=89404405
|
|
|
|
|
|
|
|
|
|
|
|
| |
We generate a nested bundle for each architecture specified in ios_multi_cpus
which would cause any artifacts generated by these rules (such as info plists
or compiled resource files) to clash in the final application bundle (where
the bundle directory only exists once). For now just pick one architecture at
random to store the bundle in - unfortunately we still generate the bundle for
all architectures.
--
MOS_MIGRATED_REVID=89152199
|
|
|
|
|
|
|
|
|
|
| |
As we are releasing the tools somewhat independently of the rules these utility
dependencies make life a lot harder. I'm sad about losing some of the enum
type-safety but being able to treat the code independently is more than worth
it.
--
MOS_MIGRATED_REVID=89137624
|
|
|
|
|
|
|
|
|
| |
name without any extra work in Xcodegen. Use this label to determ
ine the *correct* built library.
--
MOS_MIGRATED_REVID=89135635
|
|
|
|
|
|
|
|
|
|
|
| |
Without this change we create a xcode target for each combination (target, architecture)
which causes the xcode project generation to blow up: Xcode transparently handles
architectures. Eventually we want to match Xcode's behaviour but for now we export just
a single architecture's xcode targets which should allow developers to work in xcode as
before while preserving multi-architecture compilation for IPAs in blaze.
--
MOS_MIGRATED_REVID=88973190
|
|
|
|
|
|
|
|
|
| |
correctly.
ios_extension is a direct dependency of the objc_binary, but none of the transitive dependencies should be added to the build phases, since this would cause the symbols of the linked objc_binary to contain everything the ios_extension has, which we don't want.
--
MOS_MIGRATED_REVID=86920610
|
|
|
|
|
|
|
| |
Xcode happy.
--
MOS_MIGRATED_REVID=86910779
|
|
|
|
|
|
|
|
|
| |
how app extensions are built and how they differ from application bundles.
RELNOTES: Support ios_extension and ios_extension_binary rules for creating iOS app extensions.
--
MOS_MIGRATED_REVID=86788086
|
|
--
MOE_MIGRATED_REVID=85702957
|