Commit graph

565 commits

Author SHA1 Message Date
Colin Cross
fe5e6894d2 Set BUILDING_WITH_NINJA flag when parsing makefiles for ninja build
Distinguish between parsing makefiles in make for a pre-ninja build,
parsing makefiles in kati for a ninja build, and parsing makefiles in
make for a non-ninja build by leaving USE_NINJA=true enabled for the
kati pass but also setting BUILDING_WITH_NINJA.

Change-Id: I63f1ce1efe08cd86fdf41f8051901f720b38cfaf
2015-09-28 15:36:05 -07:00
Colin Cross
c53d6b90b3 Remove checkbuild and test from parse time goals
The tests goal is not a parse time goal.

The checkbuild goal is only a parse time goal so that it doesn't result
in a circular dependency between droid and checkbuild when
ANDROID_BUILD_EVERYTHING_BY_DEFAULT is set.  Get rid of the circular
dependency by making droid depend on droid_targets, and droid_targets
depend on the targets that are normally built for droid.  checkbuild can
then always depend on droid_targets, and droid can condtionally depend
on checkbuild without introducing a circular dependency.

Bug: 24413153
Change-Id: I231d80e05ffe321384a5efbcdf5578f86ad84da0
2015-09-25 16:43:36 -07:00
Colin Cross
f77030bb30 Make USE_NINJA=true the default
Build with kati + ninja by default, unless specifically disabled with
USE_NINJA=false in the environment or on the make command line.

Bug: 23565895
Change-Id: I1fa9f5c6eb4d4ed3f5b81454f89d19fd2f1f6abb
2015-09-18 15:10:21 -07:00
Ying Wang
eb1e18e689 Use $(OUT_DIR)/ninja_build to mark ninja build.
Bug: 23565895
Change-Id: I000e88a45278fd52096312262eacc52511f02efb
2015-09-16 15:29:08 -07:00
Ying Wang
8da19e3688 Generate installed-files-vendor.txt
Similar to installed-files.txt, installed-files-vendor.txt lists the
content of vendor.img.

Bug: 24009297
Change-Id: Ib8112b19cc9f54d0c0d6a829063e4fe72d8ce664
2015-09-15 14:24:00 -07:00
Dan Willemsen
057aaea54a Add HOST_CROSS_OS
Instead of using recursive make to change the HOST_OS when building the
windows SDK under linux, add the concept of cross-building to another
host os.

Bug: 23566667
Change-Id: I6dc525b601b6251d458d197c30bf4660d7485502
2015-09-09 18:12:29 +00:00
Ying Wang
3351178fb8 Cleaned the outdated incrementaljavac.
Nobody is using this feature and now we switched to jack.

Change-Id: I749b486eb347cbf3ee7b107565fc800eeb238c44
(cherry-picked from commit 90598cb70c)
2015-08-29 11:08:02 -07:00
Ying Wang
267e957373 Dist the otatools package.
Bug: 23495952
Change-Id: I1f61946580dd8ea29c3d5e1f4e859cc6d1f8554a
2015-08-24 17:13:53 -07:00
Dan Willemsen
05d97fe723 Merge "Remove legacy windows platform build support" 2015-08-18 04:31:07 +00:00
Dan Willemsen
145ae32069 Remove legacy windows platform build support
We still support HOST_OS=windows for the SDK host tools cross-builds, but
that's only when USE_MINGW is set when running under linux.

Change-Id: I37da87dc9fbbd69ba10ce4d7f2668ab3f6482d92
2015-08-17 12:35:04 -07:00
Dan Willemsen
ccc933e97b Use repeatable timestamps
This moves all of the date references under build/ to using a single
datetime that can be set manually using BUILD_DATETIME.

It also adds an option, OVERRIDE_C_DATE_TIME, that if set to true, will
redefine __DATE__ and __TIME__ for all C/C++ files so that it matches
BUILD_DATETIME.

Bug: 23117013
Change-Id: I7c17a32b794a5adf40b9cd69136fb0ff9f6084ec
2015-08-12 00:02:20 -07:00
Dan Willemsen
92026f2d36 Revert "Use repeatable timestamps"
OSX `date` doesn't understand -d

This reverts commit 13ba6e00f4.

Change-Id: I5970032ff02cc07bd3b087e1eeb5f19b1e4194b4
2015-08-12 01:00:19 +00:00
Dan Willemsen
13ba6e00f4 Use repeatable timestamps
This moves all of the date references under build/ to using a single
datetime that can be set manually using BUILD_DATETIME.

It also adds an option, OVERRIDE_C_DATE_TIME, that if set to true, will
redefine __DATE__ and __TIME__ for all C/C++ files so that it matches
BUILD_DATETIME.

Bug: 23117013
Change-Id: I880ef103a26bca86bd7bf42d58e62e740a6228c8
2015-08-11 17:08:03 -07:00
Ying Wang
bb1da5e614 Use unmodified MAKECMDGOALS in ninja.mk.
The build system removes targets like "PRODUCT-full-eng" from
MAKECMDGOALS in build/core/product_config.mk.
Without this change, such target isn't passed to kati.

Change-Id: I0b3949ed1f5557445d7f5d5bd59b7875c0b2ea7f
2015-07-29 12:21:54 -07:00
Ying Wang
cb03141459 Merge "Fix mmma uses like "mmma ./external/apache-harmony"" 2015-07-24 19:35:47 +00:00
Ying Wang
a5184806be Fix mmma uses like "mmma ./external/apache-harmony"
Fix mmma uses like "mmma ./external/apache-harmony" by removing the
leading ./ in entries in BUILD_MODULES_IN_PATHS.

Change-Id: I414e734c8a29434fc89ddb2b745613c33709c5e3
2015-07-24 12:30:41 -07:00
Colin Cross
3b324cb32e Build with kati+ninja when USE_NINJA=true
If USE_NINJA=true, use kati to translate makefiles into ninja files,
and then execute them with ninja.

Builds kati from source using simplified versions of the rules
in binary.mk and definitions.mk.

Adds two new goals when USE_NINJA=true: generateonly will regenerate
build.ninja but not rebuild (useful for comparing build.ninja output
between runs), and fastincremental will skip regenerating build.ninja
and go directly to running ninja, providing ~5 second incremental
builds.

Change-Id: Ib85399e730f1fbb1be7371fafeee7d1c31080771
2015-07-23 17:29:01 -07:00
Ying Wang
cd7dfdb4bf Merge "Cleanups." 2015-07-21 23:45:42 +00:00
Ying Wang
06332732a4 Create OUT_DIR before writing build_number.txt.
Change-Id: I6a84ec59194c48f4291480cb0c94db0da488518c
2015-07-21 16:39:46 -07:00
Ying Wang
bbd4755647 Cleanups.
- Deleted unused functions in definitions.mk.
- lint is never fully functional in the platform source tree.
- Retire LOCAL_DIST_BUNDLED_BINARIES: now the build system/framework
  supports JNI embedded in apk.

Change-Id: I6314cb20d1544c704ccbc4c1f9cccb9c54fb5a51
2015-07-21 16:03:19 -07:00
Colin Cross
f37b455858 Read BUILD_NUMBER from file in rules
Using $(BUILD_NUMBER) inside a rule causes odd behavior, as the rule
is different every time make is run, but since make doesn't depend
on the command line it only ends up being built with the new value
if some other dependency has changed.

To allow ninja, which does depend on the command line, to provide the
same behavior, store the build number in out/build_number.txt, and
use a shell expansion to cat the file in rules that use it.  This will
cause the rule command to stay identical between builds, while still
getting the new build number if the rule is rerun for a dependency.

Also use the same trick for BUILD_FINGERPRINT, and the date in
droiddoc rules.

Change-Id: I6c5e6b6b3ef4c613563d7f5604df0e401575ba5f
2015-07-18 12:15:04 -07:00
Claes Elgemark
cd5bee3546 Add variable ANDROID_NO_TEST_CHECK to not build all test modules
Introduce a way to speed up local builds. Don't build all test
modules if ANDROID_NO_TEST_CHECK is set to true.

On master branch this reduces what is built by more than
300 apps and 50 java libraries. Time for doing this on a
12 core machine running with -j13 is about 10 minutes.

Change-Id: I90feb108695ee60d0dbbf497644f767cc3748215
2015-06-23 15:49:54 +02:00
Dan Albert
e76bb83fcd Fix JDK check for USE_MINGW=1.
Change-Id: I3bdd9258e8870fc00a5f1f74682a949dc487d851
2015-05-05 11:41:52 -07:00
Elliott Hughes
ae1d4b0d18 Fix a trivial comment typo.
Bug: https://code.google.com/p/android/issues/detail?id=170069
Change-Id: Iacd308893561a991971b191d4d10a78ca82753d4
2015-04-25 11:02:40 -07:00
Mathieu Chartier
62a7cac50d Change eng builds from interpret-only to verify-at-runtime
Faster dex2oat -> faster boot after syncing core libraries.

Bug: 19762303
Change-Id: Ic266ed9c59829e0e18acc4adc103724cf480de7f
2015-03-20 11:15:20 -07:00
Mathieu Chartier
8b11285dd9 Revert "Rename dalvik.vm.usejit to debug.dalvik.vm.usejit"
Bug: 19735273

This reverts commit 3abfcfc17b.

Change-Id: Iac930925ab6d5cd5947fa4077c8d93e2984927d5
2015-03-18 19:06:28 -07:00
Mathieu Chartier
3abfcfc17b Rename dalvik.vm.usejit to debug.dalvik.vm.usejit
Bug: 19735273
Change-Id: Ia0d748b511230f5e0c7d0763de3abeab9d6e0ca7
2015-03-16 16:29:30 -07:00
Ying Wang
f738b3bb9f Load cts/build/config.mk after build/core/config.mk
So that the cts config.mk can use global variables set by the core build
system config.mk.

Change-Id: I2571564abbb53257eee54485a3357ab1305eb870
(cherry picked from commit bacf5f8008)
2015-03-16 10:56:03 -07:00
Mathieu Chartier
2a2a03046e JIT default opt-in
Bug: 17950037
Change-Id: I97fd6b1797e54ad3dea1930889f32a717543490d
2015-03-12 14:45:22 -07:00
Ying Wang
16ba2ed82b resolved conflicts for merge of 4c178ebc to lmp-mr1-dev-plus-aosp
Change-Id: If84527e9333b855d406dc7ac317868f4cfd3f1f2
2015-02-04 11:28:56 -08:00
Ying Wang
14cc23d433 Remove support of factory ramdisk/bundle.
Bug: 18779515
Change-Id: Ia6d51d43965447e2e95944a7d2b4b41adb121cb7
2015-02-04 11:00:01 -08:00
Ying Wang
10500d0ea7 resolved conflicts for merge of 5cb4276e to lmp-mr1-dev-plus-aosp
Change-Id: Ia7f011f24276e7e8e045a2544e5dff2b758b1c62
2015-01-30 16:57:37 -08:00
Ying Wang
747b9f18f0 Add target recoveryimage-nodeps.
Change-Id: Ie7d11ae8f40260bf23481931c18523895c87ebd7
2015-01-30 14:16:00 -08:00
Christopher Ferris
8b62f12195 am 9f9ccbfd: Merge "Fix missing parenthesis."
* commit '9f9ccbfd6a84e56df00c49b0aec25236b702e01d':
  Fix missing parenthesis.
2015-01-22 00:13:30 +00:00
Christopher Ferris
a8f5b8d0e2 Fix missing parenthesis.
Change-Id: Ib9eda50a6f9096dad35cf81ac3b3cdc26636a016
2015-01-20 18:23:05 -08:00
Ying Wang
912da64598 am 73a730ca: Merge "Remove libdvm support from the core build system."
* commit '73a730caf566fb778ad36f6d991666c482918d22':
  Remove libdvm support from the core build system.
2014-12-16 21:47:13 +00:00
Ying Wang
d54520a667 Remove libdvm support from the core build system.
Now libart is the only supported runtime and
we don't need the build variables PRODUCT_RUNTIMES and
DALVIK_VM_LIB.

Bug: 18465297
Change-Id: Ibfda931cde0649163d79b584fb5ccad927a9bc2b
2014-12-16 10:08:00 -08:00
Ian Rogers
296fb4c77c am 93efec89: Merge "Pass instruction set variant to dex2oat."
* commit '93efec89e067c5fe6f4585a5f0f033826310ee76':
  Pass instruction set variant to dex2oat.
2014-11-14 00:34:24 +00:00
Ian Rogers
a18a28305d Pass instruction set variant to dex2oat.
Also, add it to the ANDROID_BUILD_PROPERTIES.
Remove non-default instruction set features.
Bug: 18056890

Change-Id: I9169cdfecbb176f62b941852948222edc3f511fd
2014-11-08 17:07:23 -08:00
Ian Rogers
4606ae776b am b78348d5: am 5968de73: Merge "Remove stale dexopt flags."
* commit 'b78348d5b49ab2899b414d5700f0d7e6e797dfc6':
  Remove stale dexopt flags.
2014-11-06 00:12:02 +00:00
Ian Rogers
b78348d5b4 am 5968de73: Merge "Remove stale dexopt flags."
* commit '5968de73fb78e2ca8f32ab0588cac92f74a0435e':
  Remove stale dexopt flags.
2014-11-06 00:05:36 +00:00
Ian Rogers
9c7fc4b325 Remove stale dexopt flags.
Change-Id: Ib58d39012eabd5f854b9434ab922340fcfe43b57
2014-11-05 14:53:53 -08:00
Neil Fuller
4b642748dd am acd65c7d: am 97ef1d46: Merge "Add OpenJDK 8 experimental support"
* commit 'acd65c7db0212bff2b7b1878a26b7a105522cd44':
  Add OpenJDK 8 experimental support
2014-10-29 17:11:52 +00:00
Neil Fuller
c5c60e2c2a am f7ce9508: am 4dfda1fa: Merge "Remove Java 6 build support"
* commit 'f7ce9508dec85c67d3a2ebe84db073a01355eba5':
  Remove Java 6 build support
2014-10-29 17:11:24 +00:00
Neil Fuller
acd65c7db0 am 97ef1d46: Merge "Add OpenJDK 8 experimental support"
* commit '97ef1d46cdae3776e49900b2ed92748f6127bbb0':
  Add OpenJDK 8 experimental support
2014-10-28 04:50:49 +00:00
Ying Wang
83cd45517d Store symbols.zip in apps_only build. automerge: a60fb49
automerge: a73b611

* commit 'a73b611e6b2a626b144170f15509e02f3318976e':
  Store symbols.zip in apps_only build.
2014-10-28 03:36:22 +00:00
Ying Wang
a60fb49704 Store symbols.zip in apps_only build.
Bug: 18103055
Change-Id: I0eb335e944138b0edc3050d19c076891f499a07c
2014-10-27 17:57:11 +00:00
Neil Fuller
f7ce9508de am 4dfda1fa: Merge "Remove Java 6 build support"
* commit '4dfda1fa4201e41022396b77054168ffc73b590c':
  Remove Java 6 build support
2014-10-24 20:18:15 +00:00
Neil Fuller
960f22c11d Add OpenJDK 8 experimental support
Targeting 1.7: just adding support for the tools.

Various issues exist with OpenJDK 8: it doesn't build to completion
yet.

Change-Id: I54942f497264234e4bef488c8d17d243b4ef2f14
2014-10-23 14:07:29 +01:00
Neil Fuller
46e00ea4ba Remove Java 6 build support
Change-Id: I9754844af58e3f81d7eb9dae286128d17a2cb56c
2014-10-22 10:53:59 +01:00