Commit Graph

5945 Commits

Author SHA1 Message Date
Mohamad Ayyash fc759204d6 Merge "Allow flashing a squashfs system image" 2015-03-04 22:55:22 +00:00
Dan Albert d666bb1009 Fix the mac build.
Bug: 19567451
Change-Id: I6d15259520c9813df1a44d9244c99482f713d114
2015-03-03 21:47:04 -08:00
Mohamad Ayyash b97746ef09 Allow flashing a squashfs system image
Change-Id: Ic51d11274784a8d2e9d57d5f0b821ebc89680e5a
Signed-off-by: Mohamad Ayyash <mkayyash@google.com>
2015-03-03 18:54:50 -08:00
Dan Albert b5eb905729 Catch more cases of static host executables.
Bug: 19567451
Change-Id: Ie1de436db74b727421449b43b192e9599ca8fca6
2015-03-03 18:30:27 -08:00
Dan Albert 4f2afde252 (Hopefully) fix the Mac build.
The Mac linker doesn't understand --start-group, which is needed for
properly linking libgcc/libc statically. It isn't needed for dynamic
executables though, so use that driver behavior where appropriate.

Bug: 19567451
Change-Id: Ifeb03bea55bc87561c64ddafdb99f664fef0f00e
2015-03-03 17:42:28 -08:00
Dan Albert 8bf4cc97c2 Fix building static host executables.
BUILD_HOST_static=1 forces all host binaries to be statically linked.
Since -nodefaultlibs was passed (to disable libstdc++), libgcc wasn't
being passed. This change emulates the driver's behavior.

Also fix default STL selection for BUILD_HOST_static.

Bug: 19567451
Change-Id: I617aab782d40ac76ca5a7d9dddf0f202a4e3a69b
2015-03-03 15:08:11 -08:00
Chih-Hung Hsieh d408e60718 Merge "Disable tail call optimization and use -mstackrealign to boot up on fugu." 2015-03-03 01:39:28 +00:00
Chih-Hung Hsieh 73e734bea5 Disable tail call optimization and use -mstackrealign to boot up on fugu.
http://llvm.org/bugs/show_bug.cgi?id=15086,
llvm tail call optimization is wrong for x86.

For Android/x86 to use SSE* instructions safely, stack should be 16-byte
aligned before JNI function call, which isn't true for all x86 device,
so -mstackrealign should be the default.

BUG: 19234330
Change-Id: I4c6676366788772dbe64fd7f0dd33b3ed5c9b80e
2015-03-02 16:50:39 -08:00
Narayan Kamath 095c451541 Merge "Remove unused variables." 2015-02-27 11:43:34 +00:00
Ying Wang dcd90831e5 Use a less freqent dummy file name: zipdummy
Previously if user has a directory with name dummy in the root of the
source tree, "zip -qd package.apk dummy" fails with:
"zip error: Nothing to do!".
This change mitigates the error.

Change-Id: I642e3bf0378e5b9911a068ecb72f795b3e92f1fe
2015-02-26 09:36:27 -08:00
Narayan Kamath bc0d368896 Remove unused variables.
Follow up from 13e5965306.

Change-Id: I370e52acd998ce72b4d7dbf2aba604d4b08bb0cf
2015-02-26 12:40:34 +00:00
Dmitriy Ivanov 13e5965306 Store native libs aligned to PAGE_SIZE
- Add a new flag to zipalign (-p) that page aligns shared
  libraries (zip entries ending with ".so") in the archive.

- Add a new build variable LOCAL_PAGE_ALIGN_SHARED_LIBRARIES
  to turn on this behaviour in zipalign.

- Add a new LOCAL_JNI_SHARED_LIBRARIES_ZIP_OPTIONS to control
  zip behaviour.

Bug: 8076853
Bug: 19330157

Co-Authored-By: Simon Baldwin <simonb@google.com>
Co-Authored-By: Dimitry Ivanov <dimitry@google.com>
Change-Id: I1aa2c039bb2a590ae72f256acc9ba5401c2c59b1
2015-02-26 12:31:40 +00:00
Dan Albert 876f45e73f Merge "Make some warnings impossible to override." 2015-02-25 23:13:13 +00:00
Elliott Hughes d1ea5fbf7b mips64 should avoid common LP64 errors just like arm64 and x86-64.
Change-Id: Ibce5863bee3175671862c1889869b43bcb39a074
2015-02-24 16:04:31 -08:00
Colin Cross a82f7db900 Merge "add BUILD_NATIVE_BENCHMARK" 2015-02-24 20:49:56 +00:00
Elliott Hughes ca15af1bcd Merge "Turn on -Werror=implicit-function-declaration for arm64." 2015-02-23 21:29:58 +00:00
Elliott Hughes faeae39771 Merge "Turn on -Werror=implicit-function-declaration for x86-64." 2015-02-23 18:23:24 +00:00
Dan Albert 0c91fa84ff Make some warnings impossible to override.
These CFLAGS and CPPFLAGS will always be added last, and are
controlled by the build system. This way we can add warnings that
users are not allowed to disable.

Change-Id: Id71f69249078f62ca2687ecbf764aff0fd3a1c1b
2015-02-23 10:05:51 -08:00
Elliott Hughes f5e204b3f4 Turn on -Werror=implicit-function-declaration for arm64.
Implicit function declarations are much more dangerous on LP64 because
sizeof(int) != sizeof(void*), so any function that returns a pointer will
lose its top bits, leading to relatively hard to debug crashes.

Change-Id: Ia05beffb949ca747833c2e12c40daf896f7a60a5
2015-02-21 13:21:20 -08:00
Elliott Hughes b97d8c78e2 Turn on -Werror=implicit-function-declaration for x86-64.
Implicit function declarations are much more dangerous on LP64 because
sizeof(int) != sizeof(void*), so any function that returns a pointer will
lose its top bits, leading to relatively hard to debug crashes.

Change-Id: Ib2570326dde1b1cde09c63c9b4c973d741528ee2
2015-02-21 11:01:11 -08:00
Narayan Kamath 2fad00c56e Remove references to __CYGWIN__ and HAVE_WINSOCK2_H.
We don't support platform builds under CYGWIN and can safely
assume that all windows host builds are for MinGW32.

HAVE_WINSOCK2_H is currently unused. The only references to it
are in code that define it themselves or in application code that
by definition isn't compiled for windows.

Change-Id: I236d6e070df93f713cb716bb8a461c9c1d32a180
2015-02-21 09:55:05 +00:00
Ying Wang 5bcc416d54 [DO NOT MERGE] Trim the AOSP PLATFORM_VERSION.
With the long PLATFORM_VERSION, if you have also a long device/product
name and/or a long username, ro.build.fingerprint can easily exceed the
system property's length limit of 92 bytes.
This mitigates the risk a little bit.

Bug: 15593959
Change-Id: I9e316025227b30aa6887c9ce0065364fdbb9fc8f
2015-02-20 00:34:35 +00:00
JP Abgrall 7bb75e4f6c core: remove dependencies on genext2fs
We don't use EXT2 for bootimage anymore.
This will allow getting rid of external/genext2fs

Bug: 19282953
Change-Id: Ie56528c7877036d2501a09888a4420637f9cd647
2015-02-11 15:04:59 -08:00
Andres Morales b5df7d4837 Merge "Add version strings from android-info.txt into build.prop" 2015-02-09 22:45:57 +00:00
Andres Morales 085a0ce756 Add version strings from android-info.txt into build.prop
Allows runtime checking of expected baseband/bootloader.

Change-Id: Iccb053fee5f72f4e082a5c3482c0710b13ee7eb8
2015-02-09 08:33:31 -08:00
Andres Morales b998054f50 Merge "Add system/build.prop dependency on vendor/bootimg" 2015-02-06 18:11:30 +00:00
Andres Morales a09f2f44cc Add system/build.prop dependency on vendor/bootimg
When incremental builds only affect the system partition,
the build.prop file for other partitions might go out of
date.

Add a dependency on system/build.prop s.t. when
it's rebuilt,
the fingerprints are updated on the other
partition's build.prop's.

Bug:19058575
Change-Id: Iea7b761e0800c402eb4ce1154e8f6af5a17f7b06
2015-02-05 12:42:43 -08:00
Elliott Hughes 65d4186f85 Remove mkyaffs2image references.
Change-Id: I1d112515bc92353a5b48ec668e1cadfb51ecdaad
2015-02-04 19:58:09 -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 624ef02a50 Disable transitive dependency library symbol resolving for mips.
The transitive symbol resolving causes build breakage when a binary
linked against NDK has indirect dependency on platform libraries, or
vice versa.

Change-Id: Idbfe76079c1db14eb1156d0f396e13d26f0ff582
2015-02-03 10:58:50 -08:00
Ying Wang 747b9f18f0 Add target recoveryimage-nodeps.
Change-Id: Ie7d11ae8f40260bf23481931c18523895c87ebd7
2015-01-30 14:16:00 -08:00
Fredrik Roubert cc93f0c87c Add new build flag LOCAL_DONT_DELETE_JAR_DIRS.
Normally the build function initialize-package-file will delete all
class files and all directory entries from JAR files, but sometimes
external projects (eg. ICU4J) depend on having directory entries in
their JAR files.

This change adds the flag LOCAL_DONT_DELETE_JAR_DIRS (analogous to the
flag LOCAL_DONT_DELETE_JAR_META_INF) which when set will skip deletion
of directory entries in initialize-package-file.

Change-Id: I4464b947b7528fca23925affa95e4071915f04d4
2015-01-29 17:44:27 +00:00
Yabin Cui 9560d31716 Merge "Kill HAVE_PTHREADS." 2015-01-27 22:59:46 +00:00
Yabin Cui 0d1f0f8e5a Kill HAVE_PTHREADS.
Bug: 19083585
Change-Id: I5be0d2f95c3c45e7f67de6a8daeb49709ef1f9e9
2015-01-27 14:34:36 -08:00
Ying Wang ff1fe68514 Allow to build "winsdk-tools" alone.
Allow to run "make winsdk-tools" without building the full win_sdk.

Bug: 19149444
Change-Id: If98495035f4f84dbcab7af2a74434e589bbfd4d1
2015-01-27 22:01:12 +00:00
Bill Yi 5c3d75f5ea Remove platform/bootable/bootloader/legacy from pathmap
BUG:19164048
Change-Id: Ib640db9be77a859a28c533190e3b5edacf84a412
2015-01-27 13:47:05 -08:00
Ying Wang 0757768f43 Build hostdex on only Linux.
Change-Id: I9213684e4c65632c54e9929f693f4b6a24beb95a
2015-01-26 09:52:28 -08:00
Dan Albert cfc95cf435 Merge "Fix comma in $(if ...)." 2015-01-25 22:30:19 +00:00
Logan Chien e481e7d494 Fix comma in $(if ...).
Change-Id: I2f9fba5b5c0384ef12ee9e5f48fa01102436a425
2015-01-25 21:15:12 +08:00
Dan Albert 172cd7653e Merge "Allow coverage with clang." 2015-01-24 23:32:20 +00:00
Dan Albert 9ba25d6bfd Merge "Enable host coverage." 2015-01-24 23:32:16 +00:00
Dan Albert 2c03e04480 Allow coverage with clang.
Note that this doesn't play nicely with acov out of the box. Clang
apparently generates .gcno files that aren't compatible with gcov-4.8.
This can be solved by installing gcc-4.6 and invoking lcov with
`--gcov-tool /usr/bin/gcov-4.6`.

http://stackoverflow.com/questions/17758126/clang-code-coverage-invalid-output

Change-Id: I79547e1c579fa79db47ff07d5e90c42cedbd5cbb
2015-01-24 15:18:01 -08:00
Dan Albert 43e128acfc Enable host coverage.
Don't remember why I didn't enable this for the host when I made the
first pass, but it works just fine.

Change-Id: I0892c0bc353bf8b60b432ba9f69f97281177d41d
2015-01-24 13:24:19 -08:00
Chih-Hung Hsieh 840bc269ee Merge "Add -static to static link command, for clang." 2015-01-24 01:03:02 +00:00
Chih-Hung Hsieh 69b1fe6d1c Add -static to static link command, for clang.
Clang driver needs -static flag, not -Bstatic,
to produce statically linked modules.
However, -static is not added if LDFLAGS contains -shared,
which is used in bionic/linker to create a shared object with static libraries.

BUG: 18008984

Change-Id: I75c3e24973ee77170285ec4c8e7aacc345722685
2015-01-23 13:02:43 -08:00
Ying Wang 14d02a39b0 Add dependency of import_includes on LOCAL_MODULE_MAKEFILE
So the build system regenerates import_includes when you modify
Android.mk to add a new dependency library.

Change-Id: Ic92b097b659bb68a9065e1d66da59e0dc7e2836a
2015-01-22 15:44:04 -08:00
Narayan Kamath 8f5fc9e246 Merge "Add ro.product.locale" 2015-01-22 14:04:53 +00:00
Ying Wang 8768c6b70b Merge "Remove phone from frameworks/base subdirs" 2015-01-21 20:06:59 +00:00
Ying Wang 29a2987562 Merge "Running jarjar on Java resources." 2015-01-21 20:04:20 +00:00
Ying Wang 07acdbfd32 Running jarjar on Java resources.
Before this change, Java resources are added as a separate step
(add-java-resources-to-package) after dex is run, so jarjar isn't run on
the resource files.
With this change, we add Java resources immediately after we call javac,
so jarjar is run on the resource files (the module's own resource, as
well as resources carried by static Java libraries).
When we generate the final apk/jar, we use the jarjar'ed jar as the
inital pacakge file, with class files and empty folders removed.

(cherry-picked from commit 140274707e)

Bug: 18837479
Change-Id: I15ecf282bfb65fd53dd03fbd03dd4c71927c186a
2015-01-21 11:57:52 -08:00