| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
|
|
|
| |
The lack of cc_library dependencies in generated Xcode projects can be worked around using _fully_linked.a and objc_import, but some include files still fail to propagate. In particular this affects genrule outputs and proto headers.
This fixes that issue.
--
MOS_MIGRATED_REVID=118397125
|
|
|
|
|
|
|
|
|
| |
This both starts to clean up the code (making it clearer which platform each action is targeted to, caller by caller), as well as allows callers to issue
certain actions for platforms which are not implicitly ios.
We'll still need to migrate callers onto the new method signature.
--
MOS_MIGRATED_REVID=117982741
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=117974145
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=117821922
|
|
|
|
|
|
|
| |
RELNOTES[INC]: Any project that depended on the objc_options rule will be broken. Can be fixed by adding attrs (infoplists,copts) directly to rules depending on the options.
--
MOS_MIGRATED_REVID=117393853
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=114537166
|
|
|
|
| |
MOS_MIGRATED_REVID=114436999
|
|
|
|
|
|
|
| |
linker includes.
--
MOS_MIGRATED_REVID=114134316
|
|
|
|
|
|
|
|
|
|
|
|
| |
to the edges (J2ObjcAspect and J2ObjcProtoAspect).
RELNOTES[INC]:
ObjC compile actions for J2ObjC-translated code now only has access to headers from the java deps of the associated original java rule.
These compile actions no longer takes the compiler options specified in "copts" attribute on objc_binary/ios_test rules.
J2ObjC dead code removal (enabled through flag "--j2objc_dead_code_removal") now happens *after* ObjC compilation.
--
MOS_MIGRATED_REVID=113910545
|
|
|
|
|
|
|
| |
"--includes_prioritize_system_libs" flag.
--
MOS_MIGRATED_REVID=113387488
|
|
|
|
|
|
|
| |
RELNOTES[INC]: Removed --objc_dump_syms_binary.
--
MOS_MIGRATED_REVID=113186554
|
|
|
|
|
|
|
|
|
|
|
| |
build flags to clang based on a specified mode.
This handles the very basic case of objc_* rule compilation which does not depend on non-objc targets. Until we support passing bitcode flags
for cc compilation, such builds will be broken if bitcode is enabled (one may be able to get around this by propagating the appropriate bitcode flag to --copt, but we'll want to do this as part of the apple_bitcode flag). Additionally, we will want to use apple_bitcode to pass bitcode-enabling
properties to generated xcode projects.
--
MOS_MIGRATED_REVID=112192290
|
|
|
|
|
|
|
| |
version.
--
MOS_MIGRATED_REVID=111978539
|
|
|
|
|
|
|
| |
Reduces garbage.
--
MOS_MIGRATED_REVID=109914243
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=109715685
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=108057030
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
Replace uses of $SDKROOT and $DEVELOPER_DIR values in compile paths with __DEVELOPER_DIR__ and __SDKROOT__ to that xcrunwrapper can deal with them appropriately.
RELNOTES:none
--
MOS_MIGRATED_REVID=107259512
|
|
|
|
|
|
|
|
|
| |
is currently limited to compile actions started by the objc_* rules. Adding this because Xcode needs full paths to files embedded in the debug information if you want to debug while running in the simulator.
RELNOTES:none
--
MOS_MIGRATED_REVID=107253500
|
|
|
|
|
|
|
|
| |
* Adds pass-through of dependent headers
* Adds pass-through of search paths specified in "includes" attribute
--
MOS_MIGRATED_REVID=107098761
|
|
|
|
|
|
|
|
|
| |
to construct and export a J2ObjC-code-and-dep-only view of the ObjcProvider, which is then used to create the compile action for J2ObjC-generated code at the binary level. This greatly reduces the number of input artifacts for such actions.
Also export header search paths at the edges (J2ObjcAsepct and J2ObjcProtoAspect) instead of in j2objc_library. This change removes some unnecessary header search paths.
--
MOS_MIGRATED_REVID=104821185
|
|
|
|
|
|
|
| |
locations.
--
MOS_MIGRATED_REVID=104797906
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, module maps contain both "use <module>" entries that specify which
modules the current module map depends on, and "extern module" entries that
provide paths where to load the dependent module maps from.
This change adds a feature "module_map_without_extern_module", which instructs
blaze to not write the "extern module" entries into the module map. Instead,
the crosstool needs to add -fmodule-file flags for each dependent module file
where needed for the compile via the new build variable
"dependent_module_map_files".
Note that the feature is phrased negatively ("_without_") in order to simplify
the roll-out of this feature: as long as crosstools do not specify any
features, they still want the old behavior.
We cannot make the feature positive and add it to the legacy configuration, as
we currently cannot remove features that have already been set in the crosstool
file.
--
MOS_MIGRATED_REVID=104757413
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=104439072
|
|
|
|
|
|
|
| |
objc_libraries.": breaks certain objc_binary build targets.
--
MOS_MIGRATED_REVID=104146276
|
|
|
|
|
|
|
|
|
| |
not currently included in the module map. On Xcode 7, we should add them to the module map as additionalExportedHeaders, since it supports the textual keyword.
RELNOTES: Add support for objc textual headers, which will not be compiled when modules are enabled.
--
MOS_MIGRATED_REVID=104100551
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=103986912
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=103847305
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=103792157
|
|
|
|
|
|
|
| |
InstrumentedFilesCollector.
--
MOS_MIGRATED_REVID=103642172
|
|
|
|
|
|
|
|
|
|
|
| |
arguments to OTHER_LDFLAGS. Command lines now use -l"name" to link libraries. This solves the problem that libraries in Xcode 7 now have .tbd files instead of dylibs in device builds and maintains backwards compatibility with Xcode 6.
Also modifies Bazel Objclink action to pass in libraries as -l"name" arguments.
RELNOTES:Adds support for dylibs on devices for Xcode 7.
--
MOS_MIGRATED_REVID=103589448
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=103374106
|
|
|
|
|
|
|
|
|
|
| |
Adds a fully linked static library as an implicit target of objc_library. This implicit target is a library that contains the full transitive closure of libraries inside of it. For example, if liba depends on libb, then liba_fully_linked contains all of the symbols in liba and libb.
Tested:
Added unit tests that check the right libraries are linked in.
--
MOS_MIGRATED_REVID=103334108
|
|
|
|
|
|
|
|
|
| |
This uses CppModuleMap and CppModuleMapAction to generate clang module maps for the target and its transitive dependencies. To enable this feature, you must pass -experimental_objc_enable_module_maps to bazel.
For objc_* targets that need to use the "modules" language features (@import, Swift interop, etc), set the "enable_modules" attribute to 1.
--
MOS_MIGRATED_REVID=103045673
|
|
|
|
|
|
|
|
|
| |
These are not currently used by anything. The next step is for bazel to read these files and use them to check the declared dependencies for correctness.
RELNOTES:
--
MOS_MIGRATED_REVID=103023531
|
|
|
|
|
|
|
| |
the -I include paths as non-propagated header search paths. If the paths are relative, prepend $(WORKSPACE_ROOT) to them.
--
MOS_MIGRATED_REVID=102994196
|
|
|
|
|
|
|
| |
objc_libraries.
--
MOS_MIGRATED_REVID=102775222
|
|
|
|
|
|
|
|
|
| |
instrumentation/coverage purposes.
This is easier by grouping together all assembly files in a file set, thus justifying a simultaneous cleanup of the redundant usage of the assembler-with-cpp flag
--
MOS_MIGRATED_REVID=102671848
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=102175026
|
|
|
|
|
|
|
| |
XCODE_VERSION_OVERRIDE to executors if specified
--
MOS_MIGRATED_REVID=102049561
|
|
|
|
|
|
|
| |
files.
--
MOS_MIGRATED_REVID=101975830
|
|
|
|
|
|
|
|
|
| |
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=100930529
|
|
|
|
|
|
|
| |
This allows Swift code to import and use Objective-C interfaces.
--
MOS_MIGRATED_REVID=100715248
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
|
|
|
|
| |
xcode 6.4 upgrades clang from 6.0 to 6.1, which no longer needs this flag.
--
MOS_MIGRATED_REVID=100383635
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=98772452
|
|
|
|
|
|
|
|
|
|
|
|
| |
--objc_enable_binary_stripping are specified:
1. Symbol strippings. A new strip action is registered that uses Darwin tool /usr/bin/strip to remove the symbol table of the linked binary.
2. Dead-code strippings, which uses linker flag "--dead_strip" to remove unreachable code in binary link action.
RELNOTES: Add a flag "objc_enable_binary_stripping" to enable symbol and dead code strippings on linked binaries generated by ObjC rules.
--
MOS_MIGRATED_REVID=96587585
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Breaks ios_test targets.
*** Original change description ***
Add two binary size optimizations when --compilation_mode=opt is specified:
1. Symbol strippings. A new strip action is registered that uses Darwin tool /usr/bin/strip to remove the symbol table of the linked binary.
2. Dead-code strippings, which uses linker flag "--dead_strip" to remove unreachable code in binary link action.
RELNOTES: Perform symbol and dead code strippings on linked binaries generated by ObjC rules.
--
MOS_MIGRATED_REVID=96551473
|