Commit graph

396 commits

Author SHA1 Message Date
Marie Janssen
32ec50a1f1 make croot slightly more useful
Have croot take an argument of a directory to end up in,
so we can jump around the tree even faster.

Change-Id: Ieb6a8d47fee0412006a11192b29ed44604961312
2016-04-22 16:25:29 -07:00
Chih-Hung Hsieh
a9a55c7c7e Call clang-tidy based on WITH_TIDY* variables.
* Call clang-tidy before every C/C++ compilation if
  (1) clang-tidy is found at $(PATH_TO_CLANG_TIDY)
  (2) $(my_clang) is true
  (3) LOCAL_TIDY is 1 or true, or
      LOCAL_TIDY is undefined and WITH_TIDY is 1 or true.
* clang-tidy is called with -checks=$(my_tidy_checks),
  which has default '-*,google*,-google-readability*'
  and can be overwritten by WITH_TIDY_CHECKS.
* LOCAL_TIDY_CHECKS is appended to $(my_tidy_checks)
* Extra flags are passed to clang-tidy through
  WITH_TIDY_FLAGS or LOCAL_TIDY_FLAGS.
* To quickly find and fix clang-tidy warnings, set $(WITH_TIDY_ONLY)
  to 1 or true to skip compilation of C/C++ files.
* Add a PHONY tidy_only target,
  which includes all $(cpp_objects) and $(c_objects).
* The 'mm' and 'mmm' functions are changed to call make with
  the 'tidy_only' target when WITH_TIDY_ONLY is true or 1.
  In that case, only clang-tidy is called for C and C++ files.

Bug: http://b/27779618
Change-Id: I8adcfff217d68af49849b79aacee7d7654cafb1b
2016-04-21 12:31:13 -07:00
Elliott Hughes
910a355947 Use ulimit -p rather than prlimit.
Neither is standard, but ulimit is toybox and therefore a bit more
regular and at least has help text.

Change-Id: Id7ba9adc9ca256b821d8060506010abef30dee28
2016-03-07 14:05:22 -08:00
Ying Wang
f0cb397a9e Small fixes.
Change-Id: Ia949ed0bc93edb78d0b029f3bd3dd584e9a00dc8
2016-03-04 13:56:23 -08:00
Ying Wang
08800fd905 Speed up lunch/tapas/etc. shell utility functions.
1. Combined ~10 calls to the make build system to only one.
   We added a phony target "dump-many-vars" to the build system to dump
   "<var>=<value>" pairs. We then store the pairs as shell variables.
   With this cache get_build_var/get_abs_build_var can just return
   the shell variables instead of querying the build system.
2. Prune .git when we search for AndroidProduct.mks.

In internal source tree lunch time was reduced from ~15s to ~1.5s.

Bug: 27429759
Change-Id: I24e88598f6fab598ef26518885fd5e86e71a772d
2016-03-04 11:01:57 -08:00
Chih-Hung Hsieh
42d5c292d9 Use new clang scan-build script.
The actual clang compiler called for static analysis is decided
by build/core/binary.mk, not the one given to --use-analyzer.

BUG: 13287788
Change-Id: I58105c20b56ce17ddf329a275c750d14284d1e25
2016-02-24 19:18:45 -08:00
Neil Fuller
1f495b865e Revert "Revert "Make OpenJDK 8 the default""
Reapply the switch to JDK 8 on aosp/master.

This reverts commit 85bddfdedf.

Change-Id: If2e8733ba78b007d37914c0512cd6be1bd4c1e69
2016-01-25 17:12:41 +00:00
Neil Fuller
85bddfdedf Revert "Make OpenJDK 8 the default"
Temporary revert to help out Brillo folks.
It will be resubmitted tomorrow.

This reverts commit 4495f6afb8.

Change-Id: Id378c7d3a6e72e9be50f9404b19d5763568987a5
2016-01-25 17:04:14 +00:00
Neil Fuller
4495f6afb8 Make OpenJDK 8 the default
To return to OpenJDK 7:
export LEGACY_USE_JAVA7=true

And run envsetup.sh/lunch again.

Bug: 25786468
Change-Id: I8e00591a24d13e3b8b6baaafe0fdff6536c58770
2016-01-25 10:19:25 +00:00
Neil Fuller
8f354bc8c2 Merge "Use sensible default locations for Java" 2015-11-20 10:16:17 +00:00
Neil Fuller
91e012cd99 Use sensible default locations for Java
Use sensible default locations for Java based on
the EXPERIMENTAL_USE_JAVA8 flag.

Bug: 25786468
Change-Id: I7ec035b5329785efc41b3f971d5e3ae202293576
2015-11-19 16:41:36 +00:00
Marie Janssen
4afc2c0f6f envsetup: fix for provision to work on zsh
The -p option means something else on zsh and breaks this function.

Bug: None
Change-Id: Ie0ba8119e34c616f5b8f931806063d6b1d3d893e
2015-11-10 10:41:15 -08:00
Gaurav Shah
881ec090c4 Merge "build: Add support for defining products in /product"
am: acb8a7c1f8

* commit 'acb8a7c1f8cacaf136edba1a25d64467d352a432':
  build: Add support for defining products in /product
2015-11-02 22:27:08 +00:00
Lee Campbell
455f6f458d build: Add support for defining products in /product
The build will now search for AndroidProducts.mk in /product

BUG: 22030305

Change-Id: I2d067d95d0c8dc1341a55167f9ac7f6926e04ce3
2015-11-02 14:17:47 -08:00
Mike Frysinger
2bd3f6e12c Merge "use find -exec ... + everywhere"
am: 6ff6e9552c

* commit '6ff6e9552c90d091adf4e3f686d2922585d8060f':
  use `find -exec ... +` everywhere
2015-10-22 19:44:08 +00:00
Mike Frysinger
5e47973204 use find -exec ... + everywhere
This is more efficient as find itself can handle correctly passing
arguments down to the command, and this is in POSIX.  The current
versions of OS X also support this form.

BUG=None
TEST=mgrep still works

Change-Id: Ie570867609113868daaf068658c4f7e6f4ae42fa
2015-10-22 09:50:59 -04:00
Roland Levillain
fef5ba8ec7 Merge "Typos in envsetup.sh."
am: 8503cfb49c

* commit '8503cfb49c797bffa2568cffaab483071230fef0':
  Typos in envsetup.sh.
2015-10-20 21:44:10 +00:00
Roland Levillain
39341924db Typos in envsetup.sh.
Change-Id: I31cc811e1352b9c924bdf164561f334b032d6f5c
2015-10-20 12:51:06 +01:00
Ying Wang
3a6ad87039 Merge "envsetup: Show error when supplied dir isn\'t present with mmm"
am: 475054a16a

* commit '475054a16ad57b184fa476c093cf1ce8e9ec3e15':
  envsetup: Show error when supplied dir isn't present with mmm
2015-10-19 23:21:46 +00:00
Abhinav1997
a72a6e7c72 envsetup: Show error when supplied dir isn't present with mmm
When a directory isn't present with mmm, don't show "No Android.mk present", rather show that the directory isn't present

Change-Id: I7259a60012c6f30c470daa60d5a5097d01ffc4c7
Signed-off-by: Abhinav1997 <abhinav.jhanwar.august2@gmail.com>
2015-10-19 22:38:42 +02:00
Brian Carlstrom
10abe69478 am b43cf696: am 848b8e9d: am fa2ce3b3: am f73f79f1: Merge "Use /filelist when OUT_DIR is set" into mnc-dev
* commit 'b43cf69672c72c025f0fe764d49ec950e3b57b81':
  Use $OUT_DIR/filelist when OUT_DIR is set
2015-10-04 20:05:54 +00:00
Brian Carlstrom
f2257427d9 Use $OUT_DIR/filelist when OUT_DIR is set
Change-Id: Iadf3f05e752d71371d3d74e670ade3e937b1cd92
2015-09-30 20:36:15 -07:00
David Zeuthen
2fb9d0904f am 0238e879: Merge "envsetup.sh: Add \'provision\' function."
* commit '0238e879893bbbbab4e75b0fd1355c43547ca31e':
  envsetup.sh: Add 'provision' function.
2015-09-30 21:51:55 +00:00
David Zeuthen
1b126ffedc envsetup.sh: Add 'provision' function.
This will run ${ANDROID_PRODUCT_OUT}/provision-device which in turn can
run fastboot (and other vendor-specific bits, if needed) to repartition
the device and reflash all partitions with known versions. Options
passed to the 'provision' command will be passed on to said script which
is expected to pass them on to fastboot.

Since this is a rather destructive operation involving data loss etc.,
user confirmation is required. This confirmation can be bypassed using
the option --no-confirmation.

Change-Id: Iec5667f2f5070b95d2eb70ad1b2984909ae4184c
2015-09-30 17:18:22 -04:00
Ying Wang
945bc2f288 am 92facb1f: Merge "Substitue "/" with "-" in the MODULES-IN phony goal names."
* commit '92facb1fed26492746aca267df51b6082286521c':
  Substitue "/" with "-" in the MODULES-IN phony goal names.
2015-09-24 23:59:29 +00:00
Ying Wang
61cd884a11 Substitue "/" with "-" in the MODULES-IN phony goal names.
This avoids Ninja's path canonicalization on those goal names.
Without this, Ninja complains about duplicate rules for
MODULES-IN/a/b/.. and MODULES-IN/a.

Bug: 24309760
Change-Id: Id3aa9da5d3887a2cd1426cbb5fdf35659c65805e
2015-09-24 16:24:42 -07:00
Ying Wang
2f9f1fb32f resolved conflicts for 964f06b1 to stage-aosp-master
Change-Id: I0cebad2e440ec7d605afafac893352f06ca2f419
2015-09-23 19:31:44 -07:00
Ying Wang
caeaa08f9d Re-implement mma/mmma using make goals.
Previously we use command line variable BUILD_MODULES_IN_PATHS which
causes kati to regenerate build.ninja if any variable value changes.

TODO: Remove the old rules of BUILD_MODULES_IN_PATHS in
build/core/main.mk and ninja.mk once users have re-sourced envsetup.sh.
Probably in a few weeks.

Caveat: With this change, if a user sources the new envsetup.sh, mma/mmma
won't work in old branches from the same shell.

Bug: 24309760
Change-Id: I212e82aeebaaa2bd4114e2066f1995da8886b5e2
2015-09-23 16:31:02 -07:00
Dan Albert
2afd720936 am 86e1aa1a: Merge "Move python-adb to development/python-packages."
* commit '86e1aa1a1d3593861f3a127e337fbdb8d965ee4f':
  Move python-adb to development/python-packages.
2015-09-21 17:34:25 +00:00
Dan Albert
f5caa3d3ba Move python-adb to development/python-packages.
Nothing else was being imported from system/core yet, and a path under
development makes more sense for this.

Bug: http://b/22881740
Change-Id: Ib0beb02137805b3e382535514a2bc067b7fd1d33
2015-09-18 13:40:26 -07:00
Ying Wang
1dd4dfbfd7 am 6eb3d977: Merge "Remove legacy kernel build toolchain PATH setup in envsetup.sh"
* commit '6eb3d977c5a8b7612058f1a55e648f8200de2b8f':
  Remove legacy kernel build toolchain PATH setup in envsetup.sh
2015-09-15 23:09:38 +00:00
Ying Wang
750396dd30 Remove legacy kernel build toolchain PATH setup in envsetup.sh
We used to rely on envsetup.sh to set up PATH before doing kernel build.
Now we have new kernel build process.
Also the variable doesn't work any more as we don't have corresponding arm-eabi
toolchain for the latest arm-linux-androideabi toolchain.

Change-Id: I99443fdc58e94f57f4f1f7e88da6dd127f3b2fac
2015-09-14 19:32:50 -07:00
Dan Albert
8405451f90 am 4982ef9d: am 010f652e: Merge "Add system/core to the PYTHONPATH."
* commit '4982ef9d76d4ca7189e56377a4032d8fe68fd994':
  Add system/core to the PYTHONPATH.
2015-07-31 22:31:58 +00:00
Dan Albert
515ab1e2d1 Add system/core to the PYTHONPATH.
There's an adb Python interface now, and system/core needs to be in
the PYTHONPATH for `import adb` to find it.

Change-Id: I712767a2ba96cb017ce5857dc367e4cacf2ec51f
2015-07-31 13:38:47 -07:00
Nick Kralevich
41da3d1209 am abbf8eeb: am a521a37d: Merge "mgrep: add output to environment commands"
* commit 'abbf8eeb674b1a9d9b8ac1cc8744f03144c3968c':
  mgrep: add output to environment commands
2015-07-15 21:27:43 +00:00
William Roberts
23a298b190 mgrep: add output to environment commands
Change-Id: I7a97e00c7ef5ac179333303d89511c2f72cbd100
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2015-07-13 09:29:52 -07:00
Jeff Vander Stoep
e50b3ec5f8 am f9af2646: am ed6e4d19: Merge "selinux: add tools to dev path"
* commit 'f9af26462fe9dd7c68ca49a8b5b148f00d4ea3ec':
  selinux: add tools to dev path
2015-06-12 20:05:32 +00:00
Jeff Vander Stoep
5aa6832e6b selinux: add tools to dev path
Adds audit2allow to the path. No build required.

(cherry picked from 5f50f05340)
Bug: 21724977
Change-Id: Ide320a56b9cdbfa426b978443f6df07fa2a38fbc
2015-06-12 20:02:25 +00:00
Jeff Vander Stoep
5f50f05340 selinux: add tools to dev path
Adds audit2allow to the path. No build required.

Bug: 21724977
Change-Id: Ide320a56b9cdbfa426b978443f6df07fa2a38fbc
2015-06-12 10:16:06 -07:00
Ying Wang
bc0f1f5651 am ac3f88d8: am 080f57ae: Merge "Remove the unnecessary full_x86_64 and full_mips64."
* commit 'ac3f88d8a2812cd2134f9b67ec4a928d886a4eb6':
  Remove the unnecessary full_x86_64 and full_mips64.
2015-06-08 20:08:09 +00:00
Ying Wang
0a76df5ce7 Remove the unnecessary full_x86_64 and full_mips64.
For historical reason, the aosp_* products were named full_*.
We keep the full, full_x86 and full_mips in case some tools still
reference these legacy names; But no reason the have the full_* product
names for the new 64-bit archs.

Change-Id: I240ed0c6ded0ded2d80603bd0c5ff24750999afc
2015-06-08 11:57:26 -07:00
Christopher Ferris
4c4db2d809 am ce78cf40: am 6bd0bbd5: Merge "Portable way to color"
* commit 'ce78cf40a4dbdfe2644215102c1269a4e72bec8b':
  Portable way to color
2015-05-29 05:07:18 +00:00
Jacky Cao
89483b83fb Portable way to color
Change-Id: I62ae1da772f4e3eb80ed26aca89ebe47aff8efa7
2015-05-17 10:07:42 +08:00
Ying Wang
55c838f115 am 0b584f2b: am f994458b: am b4b996a8: Merge "Include vendorsetup scripts in order"
* commit '0b584f2b394051684e2506cc7304b583df29bca6':
  Include vendorsetup scripts in order
2015-04-04 21:40:06 +00:00
Oleksiy Avramchenko
15760a8a96 Include vendorsetup scripts in order
This fixes randomness of the combo index.

Change-Id: I533161fea8d1bc0c9dbd6ca2f3393d27310c9588
2015-04-03 11:58:09 +02:00
Ying Wang
131d2f15c8 am 8b6fabc4: am 18aad5fe: am 24a71e15: Merge "Return non-zero if can\'t locate top of the tree in m/mm/mmm."
* commit '8b6fabc4619f6b1c5c4c1834783268bea0e77afc':
  Return non-zero if can't locate top of the tree in m/mm/mmm.
2015-04-02 01:40:19 +00:00
Ying Wang
0c1374cc70 Return non-zero if can't locate top of the tree in m/mm/mmm.
Bug: 20017058
Change-Id: I85fac71061673d00a1b583ad13afc8567d794cd6
2015-04-01 10:16:03 -07:00
Adrian Roos
afa958f413 Allow variable overrides in mmm and mmma
Change-Id: I12e8cc62e72d0af3b777f69727eafec9aa1713e3
2015-03-05 19:52:55 +01:00
Greg Hackmann
e39b0c118a am 01e0cb2c: am fc93e284: am 6492792d: Merge "Consult tput about color control sequence support"
* commit '01e0cb2ce011e65099737ca6052d10758d885c8b':
  Consult tput about color control sequence support
2015-03-03 22:24:52 +00:00
Greg Hackmann
fc93e284dd am 6492792d: Merge "Consult tput about color control sequence support"
* commit '6492792d8a30f218fff6d54765ba5502de0a9a2a':
  Consult tput about color control sequence support
2015-03-03 19:02:37 +00:00