Commit Graph

1786 Commits

Author SHA1 Message Date
Colin Cross
5d90e94a62 Merge "Fix mac soong build"
am: 35ef8bdf32

Change-Id: I1e9e3b5103fc627d5043316e8acc32e7d3cde1e5
2016-08-02 00:12:59 +00:00
Treehugger Robot
35ef8bdf32 Merge "Fix mac soong build" 2016-08-02 00:02:06 +00:00
Dan Albert
58f703c3ee Merge changes I21f54c67,I41f6e493,I6f2ae636 am: 3a5af487f2 am: 9ac9847f0b
am: fa4a65a43a

Change-Id: I785c7cec0003c8ad4dab74afbb0d361f9540c5b6
2016-08-01 23:16:22 +00:00
Dan Albert
fa4a65a43a Merge changes I21f54c67,I41f6e493,I6f2ae636 am: 3a5af487f2
am: 9ac9847f0b

Change-Id: Iac7953e87766d1859492f0239c6baca1c53ff5bd
2016-08-01 23:13:22 +00:00
Dan Albert
8bdccb9429 Add a real parser for the version scripts.
Bionic's version scripts are unfortunately complicated enough that the
naive processing I was doing before is not going to be sufficient.
Add a real parser/generator with a bunch of tests to fix this.

Test: cc/test_gen_stub_libs.py && make ndk
Change-Id: I0f73b41ade1e6cf4e31bf70ba43a743429ce770b
2016-08-01 16:12:40 -07:00
Dan Albert
c42458e2ff Add tag for "versioned=API".
This adds the `versioned=API` tag. This should be a very uncommonly
needed tag, and is really only needed to fix versioning mistakes that
are already out in the wild.

For example, some of libc's __aeabi_* functions were originally placed
in the private version, but that was incorrect. They are now in
LIBC_N, but when building against any version prior to N we need the
symbol to be unversioned (otherwise it won't resolve on M where it is
private).

Test: make ndk
Change-Id: I0cd2f80cf4b32356356914cf7ff4119e67f15032
2016-08-01 16:12:32 -07:00
Dan Albert
9ac9847f0b Merge changes I21f54c67,I41f6e493,I6f2ae636
am: 3a5af487f2

Change-Id: I94ecadea6ce396788f3b86f16783943410458834
2016-08-01 23:10:53 +00:00
Treehugger Robot
3a5af487f2 Merge changes I21f54c67,I41f6e493,I6f2ae636
* changes:
  Allow more symbol file tags at top level.
  Add a new tag to NDK symbol files: future.
  Don't warn for TODOish comments.
2016-08-01 23:06:55 +00:00
Dan Albert
08532b6779 Allow more symbol file tags at top level.
A version block might need to be omitted for reasons beyond just
"future". Support all the same tags we do at symbol scope.

Test: `make ndk` with libc/libm migration patches.
Change-Id: I21f54c67079dae10fee1e5e08bcd01f8810e7a67
2016-08-01 16:04:37 -07:00
Colin Cross
a24166b5c7 Fix mac soong build
Change-Id: I50b3ca1af571d00a0cc5efc80c5d1c6f0b1f789b
2016-08-01 15:42:38 -07:00
Colin Cross
7ef288f99e Move toolchain and global variables into separate package am: b98c8b0595 am: f820949bb8
am: c34e2c6611

Change-Id: I0a0d2cb5b711244ee0b930366be57fe9b928f157
2016-08-01 22:26:51 +00:00
Colin Cross
c34e2c6611 Move toolchain and global variables into separate package am: b98c8b0595
am: f820949bb8

Change-Id: I9768fb39714f9e31d1f215ae2429f9214737cd06
2016-08-01 22:23:49 +00:00
Colin Cross
f820949bb8 Move toolchain and global variables into separate package
am: b98c8b0595

Change-Id: Ia93d006fca1a219276c9f387c564778c9c961894
2016-08-01 22:21:22 +00:00
Dan Albert
a85042a040 Add a new tag to NDK symbol files: future.
Symbols that have been added to a library but should not be exposed
in any of the current NDK API levels should be tagged with "future".
These will be suppressed from the NDK libraries.

Once all this is in better shape we'll have `sdk: "current"`. Symbols
tagged with "future" will be available for that.

Note that this tag can be applied directly to a version. Aside from
being more ergonomic than tagging an entire section, this also solved
the problem of gen_stub_libs.py emitting an empty global section
(which is not valid syntax) in the case where every symbol is
"future". Tag the version instead and it will be omitted.

Test: `make ndk` with libc/libm migration patches.
Change-Id: I41f6e4939c406f695ab5725f360ec6554ad8ab31
2016-08-01 14:36:22 -07:00
Dan Albert
db26530b73 Don't warn for TODOish comments.
These just make it harder to detect when the file is clean of
interesting errors.

Change-Id: I6f2ae6368cdbd2800ce3f0461a3d456f79e6e994
2016-08-01 14:36:22 -07:00
Colin Cross
42742b8bb0 Rename compiler, linker and installer methods to be unique
compiler, linker, and installer interfaces may be implemented by a
single decorator object, rename their methods to be unique to avoid the
same method being called multiple times.

Test: out/soong/build.ninja unchanged
Change-Id: I1608c41cd68f614ba99c11bb9fcc7936f618d9aa
2016-08-01 13:47:15 -07:00
Colin Cross
b98c8b0595 Move toolchain and global variables into separate package
Move all of the configuration into a cc/config package

Change-Id: If56fc7242062ed1ce3cb297f78a1e0ef7537373c
2016-08-01 13:37:01 -07:00
Dan Willemsen
039e3cf08b Merge changes from topic \\\'soong_init_rc\\\' am: f0cfc7b9e4 am: 763ebb5ac0
am: 96683b9e53

Change-Id: Ic5292ad8a00a4db2aab80068d45c0440da1a5ce8
2016-07-30 03:36:19 +00:00
Dan Willemsen
96683b9e53 Merge changes from topic \\'soong_init_rc\\' am: f0cfc7b9e4
am: 763ebb5ac0

Change-Id: I6e844c661e8e8c452ffaad0532c5a25f5223ab55
2016-07-30 02:09:10 +00:00
Dan Willemsen
763ebb5ac0 Merge changes from topic \'soong_init_rc\'
am: f0cfc7b9e4

Change-Id: I677bd126c2de4b0033e1f8f6dc2d870c6d30de1f
2016-07-30 02:06:48 +00:00
Colin Cross
5b521857ec Separate cc.go am: 4d9c2d17c3 am: 474a2ca076
am: 0df8c87dd7

Change-Id: I2587f5598adbc8a7f8c68b0527b0bcb77e9fa800
2016-07-30 00:00:31 +00:00
Colin Cross
0df8c87dd7 Separate cc.go am: 4d9c2d17c3
am: 474a2ca076

Change-Id: I4f67054b72bcab3c73ff55b471dae47dfaa4fb29
2016-07-29 23:54:53 +00:00
Colin Cross
474a2ca076 Separate cc.go
am: 4d9c2d17c3

Change-Id: Ia5d7300754eae013c95c408454def1f399b81307
2016-07-29 23:52:36 +00:00
Dan Willemsen
f0cfc7b9e4 Merge changes from topic 'soong_init_rc'
* changes:
  Include frameworks/native
  Add init_rc property, equivalent to LOCAL_INIT_RC
2016-07-29 23:44:33 +00:00
Dan Willemsen
c947526c69 Include frameworks/native
Change-Id: Ic20d27727a48b397089a7eca43a701e3e56567ba
2016-07-29 15:24:08 -07:00
Dan Willemsen
2277bcbc2a Add init_rc property, equivalent to LOCAL_INIT_RC
Change-Id: I914bfff8cbdf71b6cfb2271199a964b2cdcb72d0
2016-07-29 15:24:08 -07:00
Colin Cross
4d9c2d17c3 Separate cc.go
Split cc.go into files per module type, plus files for the compiler,
linker, and installer stages.

Change-Id: Id44c03f42fcd180950ccd008d4de0c144ea3597b
2016-07-29 15:17:58 -07:00
Dan Albert
9666537f3b Merge \\\"Generate NDK sysroots from the platform build.\\\" am: c6b4e452b4 am: 0f3417c257
am: c209136e37

Change-Id: I4538de73fd4f4f3a3a3bc25fefba4e4b319b4cf2
2016-07-28 16:12:26 +00:00
Dan Albert
c209136e37 Merge \\"Generate NDK sysroots from the platform build.\\" am: c6b4e452b4
am: 0f3417c257

Change-Id: Ia79947f6f40c62128ac6849b6e0d1ad699e4f0ff
2016-07-28 16:09:21 +00:00
Dan Albert
0f3417c257 Merge \"Generate NDK sysroots from the platform build.\"
am: c6b4e452b4

Change-Id: I11563aa2d2bd01e77f7f07a1601e39bbf796593a
2016-07-28 16:06:25 +00:00
Dan Albert
c6b4e452b4 Merge "Generate NDK sysroots from the platform build." 2016-07-28 15:58:52 +00:00
Dan Willemsen
072c6911c4 Merge \\\"Dump Soong module type statistics to Make\\\" am: 9d545785ae am: e1cb827381
am: f8797be192

Change-Id: I66162a7e43d74fd17e1638d7651e9010b24ab2c3
2016-07-28 08:20:05 +00:00
Dan Willemsen
f8797be192 Merge \\"Dump Soong module type statistics to Make\\" am: 9d545785ae
am: e1cb827381

Change-Id: Idd251371ae9fb8ec41be079ca2e0248742e4eeca
2016-07-28 08:17:37 +00:00
Dan Willemsen
e1cb827381 Merge \"Dump Soong module type statistics to Make\"
am: 9d545785ae

Change-Id: I95dcbe1625e952abb34ab71811aeee94e66587d9
2016-07-28 08:14:43 +00:00
Dan Willemsen
9d545785ae Merge "Dump Soong module type statistics to Make" 2016-07-28 08:08:27 +00:00
Dan Albert
914449fca8 Generate NDK sysroots from the platform build.
The list of migrated libraries is currently empty. Libraries will be
migrated as follow up patches.

Test: Migrated libc to this system and everything still builds.
      build.ninja shows libraries being built and used and headers are
      collected for the sysroot.
Bug: http://b/27533932
Change-Id: Iaba00543c1390f432befe0eed768ed3fbb8a9b96
2016-07-28 00:42:05 -07:00
Colin Cross
d59e5cc623 Merge \\\"Finish cc.Customizer\\\" am: fb8f9a800e am: 8c0cfc146f
am: 09b78964b1

Change-Id: I00fa8a576dbb653acc7fffd0227f06495b306f49
2016-07-28 06:05:40 +00:00
Colin Cross
09b78964b1 Merge \\"Finish cc.Customizer\\" am: fb8f9a800e
am: 8c0cfc146f

Change-Id: I4a9e802eb3b7307110c709c80dc7517f8763116f
2016-07-28 06:02:39 +00:00
Colin Cross
8c0cfc146f Merge \"Finish cc.Customizer\"
am: fb8f9a800e

Change-Id: Ib09e17935b6071b72e5f185f45fdb58e8bc9e269
2016-07-28 05:59:40 +00:00
Treehugger Robot
fb8f9a800e Merge "Finish cc.Customizer" 2016-07-28 05:50:34 +00:00
Colin Cross
0c7c313f95 Merge \\\"Add libnativehelper to root Android.bp\\\" am: 85676d2234 am: b69eb4c1d2
am: a33c60dcb2

Change-Id: I688961156fb3d9fef5904f65fd9f8dcafdb7c24e
2016-07-28 04:23:14 +00:00
Colin Cross
a33c60dcb2 Merge \\"Add libnativehelper to root Android.bp\\" am: 85676d2234
am: b69eb4c1d2

Change-Id: Ic29b17682291842d0e4a2c53d4b37b3b70397150
2016-07-28 04:19:44 +00:00
Colin Cross
b69eb4c1d2 Merge \"Add libnativehelper to root Android.bp\"
am: 85676d2234

Change-Id: I1a639aed9c29fe3f16243892591bf8492abd0f3a
2016-07-28 04:16:45 +00:00
Treehugger Robot
85676d2234 Merge "Add libnativehelper to root Android.bp" 2016-07-28 04:10:54 +00:00
Colin Cross
5eca44df0f Merge \\\"Fix static+shared with generated sources\\\" am: c951ef1164 am: 5980699b62
am: a6b6f8c185

Change-Id: Ie49d7bb16a1b875f562c1d0e9af4eb5c192bfe02
2016-07-28 00:53:52 +00:00
Colin Cross
a6b6f8c185 Merge \\"Fix static+shared with generated sources\\" am: c951ef1164
am: 5980699b62

Change-Id: Ibfc83de83d258ed9eec0529087fa741c013ef30b
2016-07-28 00:48:45 +00:00
Colin Cross
5980699b62 Merge \"Fix static+shared with generated sources\"
am: c951ef1164

Change-Id: Ic8e896a5307348b16489cb5844aaa3b5c506e398
2016-07-28 00:46:21 +00:00
Colin Cross
76fada06c6 Finish cc.Customizer
The Customizer interface now provides a Flags method that takes a
CustomizerFlagsContext and can call AppendCflags to insert extra cflags
on a module.

Change-Id: I821242e7574e8ff653580325d1bef2998a50e29c
2016-07-27 17:15:49 -07:00
Colin Cross
c951ef1164 Merge "Fix static+shared with generated sources" 2016-07-28 00:12:37 +00:00
Colin Cross
59120dafe7 Merge \\\"Allow defaults modules to have defaults\\\" am: 2846cc448b am: 1ec9eb2961
am: 7d7904a1a0

Change-Id: I18f7d54a5ab9f282ff3cf637fd2226e895eeb6be
2016-07-28 00:11:52 +00:00