Commit Graph

43189 Commits

Author SHA1 Message Date
Colin Cross 2738597af0 Fix product variables with no soong.variables
If soong.variables didn't exist, loadFromConfigFile would write default
values to soong.variables, but return with the product variables set to
the zero values.  Replace jsonConfigurable.DefaultConfig() with
SetDefaultConfig() that modifies the current object, and call it before
writing the values.

Change-Id: I7b7404c7a51975dc4493e25c775b3cf56ef335e3
2015-09-18 10:59:41 -07:00
Dan Willemsen 26ca1fdca1 am 33c4578b: Merge "Use SRCDIR as a working directory"
* commit '33c4578b5f2fe9a7ba058d704c1f47690783ee63':
  Use SRCDIR as a working directory
2015-09-18 06:54:19 +00:00
Dan Willemsen 33c4578b5f Merge "Use SRCDIR as a working directory" 2015-09-18 06:48:57 +00:00
Dan Willemsen 87b17d1ff4 Use SRCDIR as a working directory
The existing behavior of using the build directory as the working
directory is useful if you want to move/copy the output directory around
and SRCDIR still refers the the source. But, it's more useful to have
the source directory be the working directory. Tools like cpp(__FILE__)
and other debug prints embed relative paths from the working directory.
We also have tools that expect the working directory to be $TOP.

Change-Id: Ia0f1d3c6b7df72d61cf5628efa2baa98bd19775b
2015-09-17 23:42:25 -07:00
Colin Cross 76c62b912d am 05d6f67f: Merge "Set host and device arches from product variables"
* commit '05d6f67ff75c319e4abe2d70984872f4b8407ac1':
  Set host and device arches from product variables
2015-09-18 01:02:28 +00:00
Colin Cross 05d6f67ff7 Merge "Set host and device arches from product variables" 2015-09-18 00:55:59 +00:00
Colin Cross ffe6a381e2 am c3ba6cb9: Merge "Make Test_per_src a property on all binaries"
* commit 'c3ba6cb9707730e0fc553fa86b9fe6b6c9bbb4b9':
  Make Test_per_src a property on all binaries
2015-09-17 22:44:56 +00:00
Colin Cross c3ba6cb970 Merge "Make Test_per_src a property on all binaries" 2015-09-17 22:34:04 +00:00
Colin Cross 4225f65920 Set host and device arches from product variables
Read the host and device arches from soong.variables.

Bug: 23567214
Change-Id: Ie44db4dcf431a4c7dddcdc26117d4daa734c1f67
2015-09-17 15:21:42 -07:00
Colin Cross 6002e056fd Make Test_per_src a property on all binaries
Change-Id: I36b84807cac3d8fd7ef50c8ffb8e2a85ddc10509
2015-09-17 15:21:42 -07:00
Dan Willemsen c6d5fa58c4 am 550eb33a: Update build.ninja.in for go 1.5
* commit '550eb33aa5dae1616118b99480eb216b0f133e94':
  Update build.ninja.in for go 1.5
2015-09-17 21:39:50 +00:00
Dan Willemsen 550eb33aa5 Update build.ninja.in for go 1.5
Change-Id: I7a5b3cba2335fbc61b308ad4acc5148b4bd0a97f
2015-09-17 14:16:32 -07:00
Dan Willemsen 9c73419dc0 am 47cf66b8: Add platform_sdk_version product variable
* commit '47cf66b8d1b9e479ab87b54403480cb39e3acae8':
  Add platform_sdk_version product variable
2015-09-17 00:49:31 +00:00
Dan Willemsen 47cf66b8d1 Add platform_sdk_version product variable
For libc to use

Change-Id: I5048509e27ea4e4dc7773e7bd33e7f7b4deca608
2015-09-16 16:48:54 -07:00
Dan Willemsen 0a62ffdfe1 am cde6dce0: Merge "Allow \'sanitize\' to be arch-specific."
* commit 'cde6dce0268251e015b79efd9e20d6395298b391':
  Allow 'sanitize' to be arch-specific.
2015-09-16 23:08:31 +00:00
Dan Willemsen a939dfcd2b am 0eeea1e6: Merge "Port LOCAL_NO_LIBGCC from make"
* commit '0eeea1e6f2a3f3f9d6d4208f756415e433878266':
  Port LOCAL_NO_LIBGCC from make
2015-09-16 23:08:30 +00:00
Dan Willemsen cde6dce026 Merge "Allow 'sanitize' to be arch-specific." 2015-09-16 23:04:19 +00:00
Dan Willemsen 0eeea1e6f2 Merge "Port LOCAL_NO_LIBGCC from make" 2015-09-16 23:04:07 +00:00
Dan Willemsen 9e0cb35c29 Allow 'sanitize' to be arch-specific.
The usecase here is system/core/liblog, which wants to turn off
sanitizer only for the target module, since the target sanitizers depend
on liblog.

Change-Id: I99141574a1c4c4847aa8a72bdcc88901fd9b01cd
2015-09-16 15:41:55 -07:00
Dan Willemsen d67be22400 Port LOCAL_NO_LIBGCC from make
Change-Id: Iba400de882547654b2a5184d420e38113d7545ee
2015-09-16 15:20:36 -07:00
Colin Cross e2946615e7 am a6bc19e4: Check that a product variable is set
* commit 'a6bc19e415cf96e6060692b5d538a7a76a270353':
  Check that a product variable is set
2015-09-16 21:48:41 +00:00
Colin Cross 480e8f503e am b43a159c: Replace asan with sanitize
* commit 'b43a159c13c47495d64089821f6b0bfd49ebd237':
  Replace asan with sanitize
2015-09-16 21:48:40 +00:00
Colin Cross a6bc19e415 Check that a product variable is set
Store product variables in pointers so that we can only apply the
properties if the product variable was set to a value.  Also only apply
bool properties if they are true, adn rearrange the code to do the
cheapest checks first.

Remove device_uses_logd, it doesn't exist any more.

Change-Id: Icf42408f57bd611746f8d985bfceb50c7f95ea59
2015-09-16 14:19:55 -07:00
Colin Cross b43a159c13 Replace asan with sanitize
LOCAL_ADDRESS_SANITIZER has been replaced with LOCAL_SANITIZE.

Change-Id: I81fe7e0c9135cfd4a222fae4012ab5082cc58f29
2015-09-16 14:19:55 -07:00
Dan Willemsen ff7293e832 am 8a12ccd2: Merge "Freeze environment reading after saving deps"
* commit '8a12ccd282f6d64266bb487d247305df48487f53':
  Freeze environment reading after saving deps
2015-09-16 00:02:33 +00:00
Dan Willemsen 8a12ccd282 Merge "Freeze environment reading after saving deps" 2015-09-15 23:57:07 +00:00
Dan Willemsen 7c684e2ac4 am f8e98b08: Add libbenchmark\'s new dependency on libbase.
* commit 'f8e98b0804ffa468f04fe7ff77c78371e9aba774':
  Add libbenchmark's new dependency on libbase.
2015-09-15 23:10:23 +00:00
Dan Willemsen 9ec56e2bb8 am fa3924e4: Disallow using stlport.
* commit 'fa3924e4801bb03d7a285a64463b824e9a532990':
  Disallow using stlport.
2015-09-15 23:10:22 +00:00
Dan Willemsen 53e4e36831 am 3bf6b472: Update flags to match make
* commit '3bf6b472299efa1a0e666010d68351bae949f826':
  Update flags to match make
2015-09-15 23:10:21 +00:00
Dan Willemsen e60e8fe3ab am c3c75569: Merge "Add cortex-a53 cpu variant"
* commit 'c3c755692407b0db44122eceefc0deda8bc664f3':
  Add cortex-a53 cpu variant
2015-09-15 23:10:20 +00:00
Colin Cross cccecd7f91 am 2e238cfa: Merge "Add support for include_files"
* commit '2e238cfa31c8813809f8998100d1efe24b60473e':
  Add support for include_files
2015-09-15 23:09:46 +00:00
Dan Willemsen f8e98b0804 Add libbenchmark's new dependency on libbase.
See https://android-review.googlesource.com/150583

Change-Id: I6f9700b3e51a3b681d3d91b88103eed31764f61e
2015-09-15 22:21:47 +00:00
Dan Willemsen fa3924e480 Disallow using stlport.
See https://android-review.googlesource.com/149486

Change-Id: I577a16c8c52e2c7d939c3b5026e18ad90e4b9f26
2015-09-15 22:21:16 +00:00
Dan Willemsen 3bf6b47229 Update flags to match make
Change-Id: I8ba24723d5b507fa178255c124b11356719700cb
2015-09-15 22:20:03 +00:00
Dan Willemsen c3c7556924 Merge "Add cortex-a53 cpu variant" 2015-09-15 22:19:48 +00:00
Colin Cross 2e238cfa31 Merge "Add support for include_files" 2015-09-15 21:06:44 +00:00
Dan Willemsen e7680babe2 Freeze environment reading after saving deps
Any reads after the deps are saved won't show up as dependencies later.
So panic if new environment variables are read after saving deps.

Change-Id: Ia51deaf750804d3b99e69c001939a104c2d8c9f2
2015-09-15 20:30:03 +00:00
Dan Willemsen 00faa6d9da Add cortex-a53 cpu variant
Used in bionic

Change-Id: I5936f8468937fc259ef75d8278a592b8a7b07077
2015-09-15 13:25:38 -07:00
Dan Willemsen dd4101c126 am 98b26c57: Use the blueprint plugin infrastructure
* commit '98b26c576a9e96b31dbb0263baa1866e5d0ab2ef':
  Use the blueprint plugin infrastructure
2015-09-15 00:41:50 +00:00
Dan Willemsen 98b26c576a Use the blueprint plugin infrastructure
Instead of using this hardcoded list, use the blueprint plugin
infrastructure to find them at build time and load them.

Bug: 23567252
Change-Id: Iae87e8c9bf020f4beb42c418b9a6bf8b0fe8b601
2015-09-15 00:31:30 +00:00
Colin Cross d4c2852b1c am 485e572a: Read product variables from soong.variables
* commit '485e572aeb8690abcb2907149f01f25fc85394db':
  Read product variables from soong.variables
2015-09-14 23:19:59 +00:00
Colin Cross 39d97f2a56 Add support for include_files
Support include_files and local_include_files to pass -include arguments
to gcc.

Change-Id: Ie3f03218fcbc9732741da91671b20e240f3de3a6
2015-09-14 16:09:36 -07:00
Colin Cross 485e572aeb Read product variables from soong.variables
Refactor the soong.config loading code to support reading in
product variables from soong.variables.

Change-Id: I389e6bb5c501b53167267d5f5d0d25557811cf72
2015-09-14 16:09:36 -07:00
Colin Cross b0d7a94a38 am 7f64b6de: Support product variables
* commit '7f64b6de3156da72cb310c0d16083e5e36481e48':
  Support product variables
2015-08-27 05:22:58 +00:00
Colin Cross 596c4314c7 am 8f301d58: Fix duplicated ARCH_X86_HAVE_SSE* clauses
* commit '8f301d583fb41374c3a3b9041e5189e2640ab2ee':
  Fix duplicated ARCH_X86_HAVE_SSE* clauses
2015-08-27 05:22:57 +00:00
Colin Cross efaa7dc1e7 am 6e18ca49: Fix java resource glob file list location
* commit '6e18ca49f83c18772299677a4bd949d9dc978a62':
  Fix java resource glob file list location
2015-08-25 01:35:40 +00:00
Colin Cross 7f64b6de31 Support product variables
Allow modules to vary their properties based on product variables.
For now, DEVICE_USES_LOGD, DEVICE_USES_JEMALLOC, and DEVICE_USES_DLMALLOC,
and BOARD_MALLOC_ALIGNMENT are supported.

Product variables can provide a value (only bool and int supported for
now), and if any of the product variable properties contains a "%d"
then Sprintf will be called with the property value as the format
and the product variable value convert to an int as the only argument.

For example:

    product_variables: {
        dlmalloc_alignment: {
            cflags: ["-DMALLOC_ALIGNMENT=%d"],
        },
    },

will cause -DMALLOC_ALIGNMENT=16 to be added to any top level
properties called "cflags".

Change-Id: I74882a6ab4914d3e222f8d06cfac371b7b829ae5
2015-08-24 16:20:08 -07:00
Colin Cross 8f301d583f Fix duplicated ARCH_X86_HAVE_SSE* clauses
ARCH_X86_HAVE_SSE* should not have second_arch set, they always
apply to x86 regardless of TARGET_ARCH vs. TARGET_2ND_ARCH.

Change-Id: I21fa4c88e9c966a7181f3b17c95c06080b678556
2015-08-24 16:20:08 -07:00
Colin Cross 6e18ca49f8 Fix java resource glob file list location
The source path was being appended to the module out directory
to create the file list file, which was resulting in .. in the
source path moving the file list file up the directory tree.
Use SrcDirRelPath to convert the globbed resource directories
to be relatiave to $srcDir before appending them.

Also do the same fix to generated aidl, logtags, yacc, and lex
files.

Change-Id: I2e636bd30abf03bc1d80a897951a9812cc3e09ef
2015-08-24 16:19:43 -07:00
Colin Cross b53c6e083f am cbac5fbe: Update build.ninja.in for blueprint go 1.5 support
* commit 'cbac5fbe78bb7162049744e6aad234d572e2cab6':
  Update build.ninja.in for blueprint go 1.5 support
2015-08-24 22:51:56 +00:00