Commit graph

3361 commits

Author SHA1 Message Date
Andrew Hsieh
5dcf1eeb06 Merge "Add "WITH_SYNTAX_CHECK=1 make ..."" 2013-09-04 23:45:57 +00:00
Ying Wang
b107cc3c4e am 1be5fb67: am 25f39b2f: am 62cd88d0: Merge "FDO: Only support locally"
* commit '1be5fb675ac24e493b3712be6488848d6b4fae4b':
  FDO: Only support locally
2013-09-04 11:57:29 -07:00
Ying Wang
1be5fb675a am 25f39b2f: am 62cd88d0: Merge "FDO: Only support locally"
* commit '25f39b2fbe9dee8ec6c680569c22c71fce9e595c':
  FDO: Only support locally
2013-09-04 11:56:03 -07:00
Ying Wang
25f39b2fbe am 62cd88d0: Merge "FDO: Only support locally"
* commit '62cd88d0d1614bbdb643f4cf4f014283b427ec7b':
  FDO: Only support locally
2013-09-04 11:53:43 -07:00
Andrew Hsieh
e7c2d14e5a Add "WITH_SYNTAX_CHECK=1 make ..."
The new option WITH_SYNTAX_CHECK=1 instructs build system to invoke
"clang -fsyntax-only" to utilize clang's better diagnostics before calling
LOCAL_CC/LOCAL_CXX for code generation.  The compilation time is slightly
longer, and the generated object file should be the same as w/o WITH_SYNTAX_CHECK

Project use lots of GCC extensions (eg. nested function) not supported
by clang may opt out by adding LOCAL_NO_SYNTAX_CHECK:=true

Change-Id: Iaeedd07d5719f9df9675ab57e307e28a9c855c1b
2013-09-04 09:20:38 +08:00
synergydev
7c4674205c FDO: Only support locally
The issues:
  - The size increase from utilizing FDO is quite large while
    utilizing runtime profiles in build.
  - By default, FDO is utilized globally if the target arch variant
    profiles exist.
  - Not all modules can show statistical significance in
    performance comparison, yet still suffer the size increase.

The solution:
  - Only enable FDO locally with LOCAL_FDO_SUPPORT
    for modules which may benefit enough to justify the size
    tradeoff.

Solution notes:
  - I've noted statistical significance in libwebcore and libskia
    thus far from utilizing FDO.
  - Analysis included sunspider, drawcanvas benchmarks, as
    well as gooda analysis on both arm and x86
  - To support runtime profile generation in modules which have
    LOCAL_FDO_SUPPORT specified,
    BUILD_FDO_INSTRUMENTATION is still used. Otherwise,
    if the target arch variant profiles exist, FDO is utilized for
    specified modules.

Change-Id: I7e95266943ff47c7d82b02e6200fd09911d0bb57
2013-09-03 20:53:20 +00:00
Torne (Richard Coles)
e53a2dd570 am baa01faf: am 4f30a507: Merge "Fix handling of .o files in LOCAL_GENERATED_SOURCES." into klp-dev
* commit 'baa01faf1d9c5baf9e431c359ba7fb104c9f2842':
  Fix handling of .o files in LOCAL_GENERATED_SOURCES.
2013-08-30 02:46:04 -07:00
Torne (Richard Coles)
baa01faf1d am 4f30a507: Merge "Fix handling of .o files in LOCAL_GENERATED_SOURCES." into klp-dev
* commit '4f30a5076bea324b8224e4af4cfcf291f787ed4c':
  Fix handling of .o files in LOCAL_GENERATED_SOURCES.
2013-08-30 02:42:55 -07:00
Torne (Richard Coles)
a5afbe8ac6 Fix handling of .o files in LOCAL_GENERATED_SOURCES.
Rule-generated .o files (in gen_o_objects) were being given a dependency
on everything in LOCAL_GENERATED_SOURCES (except for other .o files);
unfortunately this can still create cycles in cases where there are
explicit dependencies between entries in LOCAL_GENERATED_SOURCES.

Instead, make handling of generated .o files consistent with other
generated files (which don't automatically get any dependencies on other
generated files) by excluding them from the target side of the rule.

Change-Id: I3fb5652dc3d85012c179a03b81887d16a85ab3bf
2013-08-29 15:36:34 +01:00
Ying Wang
fbf26d6f2a am c97e86dc: am c62c92c3: Create an empty zip file if no dict file found.
* commit 'c97e86dca8de224960f592f4104c585c40a7946a':
  Create an empty zip file if no dict file found.
2013-08-28 18:45:52 -07:00
Ying Wang
c97e86dca8 am c62c92c3: Create an empty zip file if no dict file found.
* commit 'c62c92c3d737304cbd38e99e92f29e193b15b7c8':
  Create an empty zip file if no dict file found.
2013-08-28 18:43:32 -07:00
Ying Wang
c62c92c3d7 Create an empty zip file if no dict file found.
Instead of touch an empty file.

Change-Id: Ifa8bb04cea6fc0fc3165337f6815d5976bac677d
2013-08-28 18:38:25 -07:00
Ying Wang
18c5126262 am 54e81f54: am 37b82aac: Skip compiling Java if an apk has no Java code.
* commit '54e81f546ccbb82b1b3a6d27026f8c58bd24731d':
  Skip compiling Java if an apk has no Java code.
2013-08-28 17:36:31 -07:00
Ying Wang
54e81f546c am 37b82aac: Skip compiling Java if an apk has no Java code.
* commit '37b82aacd958ee5b820d0058a808e8f13e9b22bb':
  Skip compiling Java if an apk has no Java code.
2013-08-28 17:34:24 -07:00
Ying Wang
37b82aacd9 Skip compiling Java if an apk has no Java code.
Change-Id: Iee204e03ad5bc8ce5c3b4b3863c19c89184826e2
2013-08-28 17:28:36 -07:00
Ying Wang
664a236795 resolved conflicts for merge of 9915650b to master
Change-Id: Ice0f39a84363b76ea37801eb09a1d5cfd79d38fe
2013-08-28 14:45:37 -07:00
Ying Wang
9915650b98 am 990cf5e5: Better handle of need_compile_java.
* commit '990cf5e57d5f3e454dd60f1d532f4dabe92a1b32':
  Better handle of need_compile_java.
2013-08-28 14:09:39 -07:00
Ying Wang
53efca6c5b am 161aa74d: am 576e0146: Make it a fatal error if no source files for Java module.
* commit '161aa74de6aaa03d67f9dac10b71f15ebe728b3c':
  Make it a fatal error if no source files for Java module.
2013-08-28 14:06:41 -07:00
Ying Wang
990cf5e57d Better handle of need_compile_java.
Change-Id: I609a27e2b35b08962243b6516c6c525c0c938d3c
2013-08-28 14:05:20 -07:00
Ben Cheng
e3b1fc39f9 am db4113fd: am d58df2de: Merge "Re-tighten default compiler options."
* commit 'db4113fdcce77872cc4657d74ac4136b356de928':
  Re-tighten default compiler options.
2013-08-28 11:32:25 -07:00
Ben Cheng
db4113fdcc am d58df2de: Merge "Re-tighten default compiler options."
* commit 'd58df2de78b798f8fc301afcfeb61f574629b8ce':
  Re-tighten default compiler options.
2013-08-28 11:29:41 -07:00
Ying Wang
161aa74de6 am 576e0146: Make it a fatal error if no source files for Java module.
* commit '576e0146a91f0f092cf67208c864ab9635b42222':
  Make it a fatal error if no source files for Java module.
2013-08-28 11:26:37 -07:00
Ying Wang
576e0146a9 Make it a fatal error if no source files for Java module.
Change-Id: Ia04158c11381b6b1687b9d5c699a9ea8ae3cb317
2013-08-28 11:19:36 -07:00
Ben Cheng
85ccf735e2 Re-tighten default compiler options.
Remove "-Wno-unused-parameter -Wno-unused-but-set-parameter" added for
GCC 4.8 experiment.

BUG: 10495043
(cherry picked from internal master 1cea0755f4)

Change-Id: Ifa221709b1351a9268c06872e2b667138995c3da
2013-08-28 11:17:43 -07:00
Ben Cheng
1cea0755f4 Re-tighten default compiler options.
Remove "-Wno-unused-parameter -Wno-unused-but-set-parameter" added for
GCC 4.8 experiment.

BUG: 10495043
Change-Id: I774deb09c782fe79eb473fdefd471725a1f97fd5
2013-08-28 11:06:31 -07:00
Ying Wang
2ef478933d am bf05f6cc: am 495f6840: In apps_only build dist a module only if it has a BUILT file.
* commit 'bf05f6cc3ecb6f8ca66e4bcb8e750116ddc59691':
  In apps_only build dist a module only if it has a BUILT file.
2013-08-27 15:09:46 -07:00
Ying Wang
bf05f6cc3e am 495f6840: In apps_only build dist a module only if it has a BUILT file.
* commit '495f68402493de82606b8c06213bae5bb1156a8b':
  In apps_only build dist a module only if it has a BUILT file.
2013-08-27 15:07:53 -07:00
Ying Wang
495f684024 In apps_only build dist a module only if it has a BUILT file.
This allows you to specify a PHONY target in TARGET_BUILD_APPS.

Change-Id: Idd813cd0dbdb14c705fbd3187596d4c64b99d045
2013-08-27 15:04:57 -07:00
Ying Wang
600c0509ec am ea0237dd: am 10d2e0cd: Remove the vendor-specific vars from the protected list.
* commit 'ea0237dd89b45fe22b4cd2f07175514c5eb246ef':
  Remove the vendor-specific vars from the protected list.
2013-08-26 15:17:26 -07:00
Ying Wang
366957d636 am a7045832: am 62c81f82: Collect NOTICE files for apps_only build.
* commit 'a7045832658da491f8e4436d747ba8d17fc8fef9':
  Collect NOTICE files for apps_only build.
2013-08-26 15:17:25 -07:00
Ying Wang
b5101e3242 am 85418952: am b6cf5b2f: am b88ca53a: am ddce2eb0: am de32713f: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
* commit '8541895267c385656e31dca78848091a4720661d':
  Collect and store proguard obfuscation dictionary files.
2013-08-26 15:17:25 -07:00
Ying Wang
ea0237dd89 am 10d2e0cd: Remove the vendor-specific vars from the protected list.
* commit '10d2e0cd9119d25ba58d27004c18f4b894992a80':
  Remove the vendor-specific vars from the protected list.
2013-08-26 15:05:47 -07:00
Ying Wang
a704583265 am 62c81f82: Collect NOTICE files for apps_only build.
* commit '62c81f821f3675ea57485bfa6cb3320b7178759e':
  Collect NOTICE files for apps_only build.
2013-08-26 15:04:13 -07:00
Ying Wang
8541895267 am b6cf5b2f: am b88ca53a: am ddce2eb0: am de32713f: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
* commit 'b6cf5b2f41d460405a0a22812255b2700a79fb20':
  Collect and store proguard obfuscation dictionary files.
2013-08-26 15:01:13 -07:00
Ying Wang
b3ad11246d am 27f2cfb7: am 29695daa: am 653a037d: am 638ce57a: Treat LOCAL_APK_LIBRARIES like shared Java libraries.
* commit '27f2cfb72e932a3ccbb592ef9b75e37542ceabc4':
  Treat LOCAL_APK_LIBRARIES like shared Java libraries.
2013-08-26 15:00:57 -07:00
Ying Wang
10d2e0cd91 Remove the vendor-specific vars from the protected list.
Change-Id: I915a61034c9c3e2b886f609c4b8f4043e97bda61
2013-08-26 14:57:52 -07:00
Ying Wang
62c81f821f Collect NOTICE files for apps_only build.
In apps_only build (after running tapas or exporting TARGET_BUILD_APPS),
run "make notice_files" to collect and combine the NOTICE files of
modules that are needed by the apps.

Bug: 10445634
Change-Id: I6555bba1104e43b48c723c82143c46d444a75e80
2013-08-24 13:55:59 -07:00
Ying Wang
c6ff6987f4 Treat LOCAL_APK_LIBRARIES like shared Java libraries.
This fix proguard build.
Bug: 10307372

Change-Id: Id99d6e903077b4bacdea2e68cbb78e46a4a6afb8
(cherry picked from commit 638ce57a58)
2013-08-24 01:57:02 +00:00
Ying Wang
b6cf5b2f41 am b88ca53a: am ddce2eb0: am de32713f: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
* commit 'b88ca53a465ef004a60ceb9c4c641c3c997edeb5':
  Collect and store proguard obfuscation dictionary files.
2013-08-23 12:19:48 -07:00
Ying Wang
b88ca53a46 am ddce2eb0: am de32713f: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
* commit 'ddce2eb007c97b8ca94bc7b3190a83006df0c187':
  Collect and store proguard obfuscation dictionary files.
2013-08-23 12:18:11 -07:00
Ying Wang
ddce2eb007 am de32713f: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
* commit 'de32713f47b33c6d4c0bb4c8943e1eccf81aa0c5':
  Collect and store proguard obfuscation dictionary files.
2013-08-23 12:16:16 -07:00
Ying Wang
de32713f47 Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev 2013-08-23 19:14:20 +00:00
Ying Wang
ae9115a525 Collect and store proguard obfuscation dictionary files.
Collect and store proguard obfuscation dictionary files.
Only do this for apps_only build for now.

Bug: 9407666
Change-Id: I51c78bf0f42f959dc920de230e60e0f71ed0d0ea
2013-08-23 12:13:24 -07:00
Ying Wang
27f2cfb72e am 29695daa: am 653a037d: am 638ce57a: Treat LOCAL_APK_LIBRARIES like shared Java libraries.
* commit '29695daa9734a8dfb516b7ff2e35b2b263e6b37b':
  Treat LOCAL_APK_LIBRARIES like shared Java libraries.
2013-08-23 12:10:20 -07:00
Ying Wang
29695daa97 am 653a037d: am 638ce57a: Treat LOCAL_APK_LIBRARIES like shared Java libraries.
* commit '653a037d70d770d2fc03d4f205a9c626af5f5c76':
  Treat LOCAL_APK_LIBRARIES like shared Java libraries.
2013-08-23 12:07:45 -07:00
Ying Wang
653a037d70 am 638ce57a: Treat LOCAL_APK_LIBRARIES like shared Java libraries.
* commit '638ce57a5848c10d781502bf198a2b93aeb58a7a':
  Treat LOCAL_APK_LIBRARIES like shared Java libraries.
2013-08-23 12:03:47 -07:00
Ying Wang
638ce57a58 Treat LOCAL_APK_LIBRARIES like shared Java libraries.
This fix proguard build.
Bug: 10307372

Change-Id: Id99d6e903077b4bacdea2e68cbb78e46a4a6afb8
2013-08-23 11:59:49 -07:00
Ying Wang
53a64d90d7 am 92ed0994: am c3e977ac: am 2363485c: am 06de9f94: am 8709497e: Merge "Revert "Collect and store proguard obfuscation dictionary files."" into jb-mr2-dev
* commit '92ed0994d94db0f52815841669707ad0ed8a2257':
  Revert "Collect and store proguard obfuscation dictionary files."
2013-08-23 10:24:01 -07:00
Ying Wang
92ed0994d9 am c3e977ac: am 2363485c: am 06de9f94: am 8709497e: Merge "Revert "Collect and store proguard obfuscation dictionary files."" into jb-mr2-dev
* commit 'c3e977acf150c54a73d7a4cd7f5d47474a122a66':
  Revert "Collect and store proguard obfuscation dictionary files."
2013-08-23 10:21:06 -07:00
Ying Wang
752a316ab7 am 76570123: am 58ad7061: am 93b95dc4: am aa87a11d: am afd7457a: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
* commit '765701236789cda7ebdf76d1f8f1592cdaa8e436':
  Collect and store proguard obfuscation dictionary files.
2013-08-23 10:20:28 -07:00