OSDN Git Service

android-x86/build.git
7 years agoConditionally skip dex-preopting specific prebuilts.
Ricardo Cerqueira [Wed, 15 Jun 2016 21:35:15 +0000 (22:35 +0100)]
Conditionally skip dex-preopting specific prebuilts.

Extend change I13f10e2a9c251366f29606158f8c2fb54f8ee8b so that it
optionally applies to a specific list of modules.

Change-Id: Id56aeadfb8d2581a2c7b7045725419bf4f6b8faa

7 years agobuild: add kernel header dependency if module uses kernel headers
Scott Mertz [Wed, 1 Jun 2016 20:40:25 +0000 (13:40 -0700)]
build: add kernel header dependency if module uses kernel headers

Many of the QCOM components use kernel headers, but don't declare
the dependency on them.  This is fine in CAF because of the way they
build the boot.img before anything else.  In CM, we don't build the
boot.img the same, so we run into a race between the kernel build &
these modules... and the modules lose.

Warn about modules that have this missing dependency, and add it for
them so we don't have to modify each Android.mk.

Change-Id: I95f1e47b5ef440f6f5d8f64a0c3f38d9572e839e

7 years agobuild: Fix caf and aospremote
luca020400 [Thu, 19 May 2016 19:02:51 +0000 (21:02 +0200)]
build: Fix caf and aospremote

Change-Id: I8ad28d71254941c0aacb91b1c6c702f9f13caf5f

7 years agoereleasetools: Allow for custom boot image signing tools
Brint E. Kriebel [Tue, 17 May 2016 01:53:19 +0000 (18:53 -0700)]
ereleasetools: Allow for custom boot image signing tools

Some boot images will need to be signed using specific tools. Allow
passing the path to this tool through an environment variable.

Change-Id: I958726fdae8d63fe99d639dfa361046b528a087c
Ticket: CYNGNOS-2868

7 years agoAvoid accidentally using the host's native 'as' command.
Alistair Strachan [Thu, 5 May 2016 23:29:08 +0000 (16:29 -0700)]
Avoid accidentally using the host's native 'as' command.

When invoking clang for the host to assemble .S files, the -B flag
would not be provided, which allowed the host prebuilt clang to
use an 'as' from the native environment. Most of the time this
"just works", but some newer 'as' versions cause problems with
the older prebuilt toolchain, for example by generating
unsupported relocation types.

To avoid this problem, simply use the -B flag to tell clang to
invoke the assembler from the correct prebuilt gcc prefix.

Change-Id: I18ea4f37ae637b652cfd7321c41929f8be075342
Signed-off-by: Alistair Strachan <alistair.strachan@imgtec.com>
7 years agoenvsetup: Fix aosp & caf remote
luca020400 [Thu, 5 May 2016 19:53:40 +0000 (21:53 +0200)]
envsetup: Fix aosp & caf remote

Fixes: sed: -e expression #1, char 9: unknown option to `s'

* Return if .git directory is missing and move it on the top
* Update cmremote strings ( match caf/aosp remote )

Change-Id: Ifb606a20f308e7317e9ce519d682a3fdb8bfe9bf

7 years agobuild: Fix manual invocation of aar targets.
Adnan Begovic [Mon, 2 May 2016 22:53:56 +0000 (15:53 -0700)]
build: Fix manual invocation of aar targets.

Change-Id: Ic5a4980d1d45df24f6242e31fdfd86543f56e19c
TICKET: RM-232

7 years agobuild: Make sure to check for variable definition during execution.
Adnan Begovic [Mon, 2 May 2016 22:22:30 +0000 (15:22 -0700)]
build: Make sure to check for variable definition during execution.

TICKET: RM-232
Change-Id: Ic5b3850a81b959b05a218cd967dcec71c15a4cd5

7 years agobuild: allow to set a consumer proguard file
Jorge Ruesga [Fri, 29 Apr 2016 15:55:51 +0000 (17:55 +0200)]
build: allow to set a consumer proguard file

This allow to specify a proguard file by defining LOCAL_CONSUMER_PROGUARD_FILE
that will inserted in the root directory of the aar and to be consumed by another apk
via gradle plugin

Change-Id: Ia3c11e5ea8e694800fb262b835432f86a6777f86
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
7 years agobuild: skip 'ro.product.device' using new macro "TARGET_SKIP_PRODUCT_DEVICE"
Edward Wang [Sat, 16 Apr 2016 06:03:14 +0000 (23:03 -0700)]
build: skip 'ro.product.device' using  new macro "TARGET_SKIP_PRODUCT_DEVICE"

Change-Id: Id17ef7de8b0146dd6e4b2cc3cc5b88453da38f6c
Ticket: FEIJ-62

7 years agobuild: Add BOOTIMAGE_EXTRA_DEPS for BOOT_SIGNER products too
Ethan Chen [Thu, 14 Apr 2016 00:49:36 +0000 (17:49 -0700)]
build: Add BOOTIMAGE_EXTRA_DEPS for BOOT_SIGNER products too

* Products supporting BOOT_SIGNER should depend on BOOTIMAGE_EXTRA_DEPS
  as well, since that dt.img generation is tied to that rule.

Change-Id: I7c3040d0c59c66aaac46121d6ca50ab96bdf7e72

7 years agobuild: Add MTK support
Diogo Ferreira [Wed, 16 Mar 2016 19:04:48 +0000 (19:04 +0000)]
build: Add MTK support

When setting BOARD_USES_MTK_HARDWARE, a global MTK_HARDWARE define will
be available to all target modules.

Change-Id: Id2a2996139a31afb6eb37f7ee24202587cb4beb1

kernel: remove support for unused MTK Kernel

Remove unused MTK kernel build support.

Change-Id: I4f4df078ae03b1bd5edc7000e5b942bfc05c02bd

7 years agobuild: add cmts config to global build
Khalid Zubair [Wed, 2 Mar 2016 21:57:01 +0000 (13:57 -0800)]
build: add cmts config to global build

Change-Id: I554840be954545ab7637c9e5a6fcc7cb5a5da7c1

7 years agoPreventing default locale from being overridden because of buildinfo.sh
Abhishek G [Tue, 5 Apr 2016 00:03:24 +0000 (17:03 -0700)]
Preventing default locale from being overridden because of buildinfo.sh

Adding the ability to set default locale from the device tree. Adding
the TARGET_SKIP_DEFAULT_LOCALE flag which can be set in the device tree,
thus preventing buildinfo.sh from overriding default locale.

Change-Id: I66bcedb42216acee56ceaf657a39dc23d7eea6f4
Issue-Id: FEIJ-22

7 years agoenvsetup: fix mm under zsh
Khalid Zubair [Wed, 2 Mar 2016 22:01:45 +0000 (14:01 -0800)]
envsetup: fix mm under zsh

Fix a word splitting issue in zsh. Instead of building a duplicate
ARGS array for the !GET-INSTALL-PATH case, leave it untouched. For the
GET-INSTALL-PATH case, modify the argument list as needed.

Change-Id: I902ff1bc7a53e7afa8c4737d4208592ac18f95d7

7 years agobuild: better compatibility between zsh shells
Roman Birg [Tue, 1 Mar 2016 18:27:51 +0000 (10:27 -0800)]
build: better compatibility between zsh shells

Handle equals expansion in zsh

http://www.zsh.org/mla/users/2011/msg00160.html

Change-Id: I2b0cb23991aa88c3fa2c4dce00f7c3a673176e0a
Signed-off-by: Roman Birg <roman@cyngn.com>
7 years agoenvesetup: mmm/mmma: fix for zsh
Khalid Zubair [Thu, 11 Feb 2016 22:34:12 +0000 (14:34 -0800)]
envesetup: mmm/mmma: fix for zsh

Fix broken argument handling due to differnt word-splitting behavior
in zsh [1]. Zsh arrays should be explicitly defined.

 - [1] http://zsh.sourceforge.net/FAQ/zshfaq03.html

Change-Id: Ic299c1952384001e374c64caebbb23e9792fddf2

7 years agoreleasetool: add OSIP partitions specifics
Artefvck 07 [Thu, 4 Feb 2016 17:37:15 +0000 (09:37 -0800)]
releasetool: add OSIP partitions specifics

- Declare OSIP as a new partition type
- Standard boot.img update is not possible for OSIP partitions
We are simply removing it on AOSP handling, and let the board handle
it in its own releasetool.py

Change-Id: Ie19fc3f6a0ca42e2eda264904b20fceeddbeaf53

7 years agoenvsetup: cmgerrit: fix for zsh
Khalid Zubair [Tue, 9 Feb 2016 00:54:01 +0000 (16:54 -0800)]
envsetup: cmgerrit: fix for zsh

zsh does not define $FUNCNAME, define it for zsh when necessary.

Change-Id: I097d3e572b18c84d953ca03b3714271d1d2fd5c3

7 years agoenvsetup: add function to detect shell
Khalid Zubair [Tue, 9 Feb 2016 00:27:55 +0000 (16:27 -0800)]
envsetup: add function to detect shell

Add a function to detect shell, other functions can now use this to
handle shell specific behavior.

Change-Id: I4aabc0068e836c5433053b144d163fb0ed49f752

7 years agobuild: e2fsck missing from emulator
msfkonsole [Tue, 26 Jan 2016 21:28:37 +0000 (04:28 +0700)]
build: e2fsck missing from emulator

The emulator file system was recently switched to ext4 however, e2fsck was not
added to the emulator build.

Change-Id: Ida9ed1083de7576e20a7ad11f085e5cc4f17ecf4
Signed-off-by: msfkonsole <msfkonsole@gmail.com>
7 years agoota_from_target_files: Don't validate data signatures with data wipe
Brint E. Kriebel [Tue, 3 Nov 2015 01:26:07 +0000 (17:26 -0800)]
ota_from_target_files: Don't validate data signatures with data wipe

If data is going to be wiped later in the script, there is no reason to
validate signatures. This breaks updates that may be designed to wipe
data and change signatures.

Change-Id: I0b794b43cec2d22996eaa5571688c66582475d55
Ticket: CYNGNOS-1289

7 years agoImplement 'mmap' command
Martin Brabham [Fri, 5 Feb 2016 20:59:21 +0000 (15:59 -0500)]
Implement 'mmap' command

Change-Id: I029da8a8421bea2b628b4025f9f2d6f749436c7b

7 years agobuild: Enforce checkapi-cm on system image gen.
Adnan Begovic [Tue, 9 Feb 2016 19:15:55 +0000 (11:15 -0800)]
build: Enforce checkapi-cm on system image gen.

TICKET: CYNGNOS-1950
Change-Id: If13ff02b913d5586df163ff3aee254dd4cfb4e24

7 years agoreleasetools: Don't extract BOOTABLE_IMAGES when signing target files
Brint E. Kriebel [Wed, 10 Feb 2016 23:54:05 +0000 (15:54 -0800)]
releasetools: Don't extract BOOTABLE_IMAGES when signing target files

boot and recovery images need to be re-created during the signing
process to ensure that the proper keys are embedded in the images. Don't
extract the BOOTABLE_IMAGES path if it exists in the source target files
to avoid re-using the prebuilt versions.

Change-Id: Icdf61367efc2364f89c7ab1c61a81536431aea2e
Ticket: CYNGNOS-1994

7 years agoprebuild: compress shared libraries in prebundled apks
Scott Mertz [Tue, 9 Feb 2016 19:28:53 +0000 (11:28 -0800)]
prebuild: compress shared libraries in prebundled apks

Prebundled APK shared libraries get installed like any
other APK.  Compress these libraries in the APK to save
space.

Change-Id: If3f85b43e492dd42d2da89d3b3f0a1b1b44ccdbb

7 years agoreleasetools: Replace key values in permission files during re-signing
Brint E. Kriebel [Thu, 4 Feb 2016 21:48:13 +0000 (13:48 -0800)]
releasetools: Replace key values in permission files during re-signing

Permission files may grant permissions based on signatures in the same
way mac_permissions grants selinux permissions. In order to have this
work properly with dev-key and production key signed builds, allow these
files to be re-written during the signing process to replace the value
of the keys in production signed builds.

Change-Id: Id0311e49f8bba5a9f71b2fa49b480cb74779c853
Ticket: CYNGNOS-1877, RM-179

7 years agobuild: Always run checkapi when building system image
Tom Marshall [Thu, 17 Dec 2015 00:07:10 +0000 (16:07 -0800)]
build: Always run checkapi when building system image

This should significantly reduce the number of quail stars given out.

This only applies when building the system image.  Packages may still
be built and tested individually without any impact.

If you like to live dangerously, set I_WANT_A_QUAIL_STAR in your
environment.

Change-Id: I3da6646f022f2e967ebe2c3dd9ed616fab7991fe

7 years agoenvsetup: dopush: fix error when device is not connected
Khalid Zubair [Tue, 2 Feb 2016 20:00:14 +0000 (12:00 -0800)]
envsetup: dopush: fix error when device is not connected

$(adb get-state) was unquoted and returns an empty string when no device
is connected causing the if and until statements to be malformed.

Fix quoting and refactor the test to a separate function.

Change-Id: I2cfa0a7b2033e5a379cab2cae64ed57f5495dbed

7 years agoreleasetools: Use the first entry of a mount point when reading fstab
Brint E. Kriebel [Fri, 29 Jan 2016 19:47:56 +0000 (11:47 -0800)]
releasetools: Use the first entry of a mount point when reading fstab

There may be multiple entries in fstab for a mount point. Use the first
value found so the entries are prioritized in order.

Change-Id: Ibd2631413d3e00507d3a0ec84fb91755f1c7993c
Ticket: OPO-326

7 years agoRevert "binary: Generate dummy rule for relocated protobuf headers"
Ricardo Cerqueira [Sat, 26 Mar 2016 02:56:10 +0000 (02:56 +0000)]
Revert "binary: Generate dummy rule for relocated protobuf headers"

This reverts commit ba297413c51feab9fa43be5af56e12b79891f5fb.
The dummy rule creates an empty file. Instead of relying on header
dependency resolution, copy all protobuf output when the source
is generated in replacement of separate source/header steps.

Change-Id: I358459be7c812afea5be56e14dc74ea11abb3502

7 years agobinary: Generate dummy rule for relocated protobuf headers
Ricardo Cerqueira [Fri, 26 Feb 2016 18:06:39 +0000 (18:06 +0000)]
binary: Generate dummy rule for relocated protobuf headers

Similar to (and dependent on) the rule already in place for pb
headers, to avoid dependency breakage when builds are interrupted
for random reasons

Change-Id: Ie88f468f8a5b0d240121db6791a1053c4a7c5bfb

7 years agobinary: Don't run protobuf header relocations if origin/target are the same
Ricardo Cerqueira [Tue, 26 Jan 2016 20:45:16 +0000 (20:45 +0000)]
binary: Don't run protobuf header relocations if origin/target are the same

Change-Id: I3746746bdf1526674f345d884e2eccef85e946ef

7 years agobinary: Allow specifying a path for generated proto headers
Ricardo Cerqueira [Mon, 25 Jan 2016 16:49:27 +0000 (16:49 +0000)]
binary: Allow specifying a path for generated proto headers

protobuf compilation defaults to dropping the generated objects and
headers onto a path derived from the origin source path. This poses
a problem with some of our repositories since they're not placed in
their original paths, and may include hard references to pb headers
assuming the original directory.

Typical use of this will be to place a

LOCAL_PROTOC_OUTPUT := <original repo path>

line in the relevant module block (for example, "hardware/ril" for our
"hardware/ril-caf")

Change-Id: Ib9b0cadd47e29a0d2e693b331cfc18e71b048ee5

7 years agomms: introduce a shortcut to quickly rebuild kernel/boot.img
Khalid Zubair [Wed, 21 Oct 2015 19:43:14 +0000 (12:43 -0700)]
mms: introduce a shortcut to quickly rebuild kernel/boot.img

Add a new shortcut to short circuit the long build process that walks
the entire tree collecting all Android.mks. The resulting dependency
list is sufficient to rebuild the kernel, copy product files and
repack the system image with updated modules.

This shortcut allows Kernel devs to rebuild just the boot.img and
kernel modules very quickly (20s vs 3min).

Change-Id: Ie0a69f241ea7b920859ff1e02c3542b79952462c

7 years agopy3: update all the things
Anthony King [Tue, 3 Nov 2015 00:23:11 +0000 (00:23 +0000)]
py3: update all the things

Change-Id: I5e11b46b7c2f7f8760d6c0e713ca99c1e88b7cd3

py3: update releasetools with proper print syntax

Change-Id: I48534a72e6559f60af5f9b1c09040b34b7575b63

py3: ota_from_target_files.py: fix logic that broke

Change-Id: I032097c463598d1246feb92c02567175a65f90fd

7 years agopy3: post_process_props
Anthony King [Sat, 31 Oct 2015 19:27:39 +0000 (15:27 -0400)]
py3: post_process_props

Change-Id: Idf7ed5daa4eaa88f5421c798862ea6bb09593cdc

7 years agopy3: java-event-log-tags
Anthony King [Sat, 31 Oct 2015 19:25:51 +0000 (15:25 -0400)]
py3: java-event-log-tags

Change-Id: I0bf4cbe990c21b6d57e54e96ea62c56ca2d41b86

7 years agopy3: java-layers
Anthony King [Sat, 31 Oct 2015 19:17:53 +0000 (15:17 -0400)]
py3: java-layers

Change-Id: Id3759aa6e25e06dfe7604fc1580ee3060175c485

7 years agopy3: product_debug
Anthony King [Sat, 31 Oct 2015 19:06:38 +0000 (15:06 -0400)]
py3: product_debug

Change-Id: I4a1e25753a9addd199f148e7eec883b3d9ea337a

7 years agopy3: merge-event-log-tags
Anthony King [Sat, 31 Oct 2015 18:54:16 +0000 (14:54 -0400)]
py3: merge-event-log-tags

Change-Id: I875d48c67efa129e800bcc834f41d39fc25a62e4

7 years agopy3: compare_filelist
Anthony King [Sat, 31 Oct 2015 18:30:58 +0000 (14:30 -0400)]
py3: compare_filelist

Change-Id: If44ecbf8b09732f3da72b2ade9c6172dd30e58c3

7 years agopy3: update check_boot_jars
Anthony King [Sat, 31 Oct 2015 17:55:41 +0000 (13:55 -0400)]
py3: update check_boot_jars

Change-Id: I71ba943fb8c23713efc7c2a815fd2ddb9fa659f2

7 years agopy3: update checktree
Anthony King [Sat, 31 Oct 2015 18:04:43 +0000 (14:04 -0400)]
py3: update checktree

Change-Id: Ibaf304bf1103ba3f1451525001f9fb90c164a027

7 years agopy3: parsedeps
Anthony King [Sat, 31 Oct 2015 19:40:11 +0000 (15:40 -0400)]
py3: parsedeps

Change-Id: I7a1df87da284e771eeca65c44ab91f88aaab5c80

7 years agopy3: filter-product-graph
Anthony King [Sat, 31 Oct 2015 18:55:28 +0000 (14:55 -0400)]
py3: filter-product-graph

Change-Id: I1f028e054f8b261b486d152b57d6a97bfb9c42af

7 years agopy3: fileslist
Anthony King [Sat, 31 Oct 2015 18:34:19 +0000 (14:34 -0400)]
py3: fileslist

Change-Id: Id80525a2aebb361b8cd178c02861f370ecae91eb

7 years agodopush: Add support for OS X
LuK1337 [Tue, 1 Dec 2015 13:53:23 +0000 (14:53 +0100)]
dopush: Add support for OS X

* OS X's sed doesn't have `-r` parameter and requires
different color stripping regex.

Change-Id: I2438f0492b1b564be6b7596fa123fc17eb64b25f

7 years agoimg_from_target_files: Imports added to fix the script
Jessica Wagantall [Fri, 4 Dec 2015 23:01:12 +0000 (15:01 -0800)]
img_from_target_files: Imports added to fix the script

Change-Id: Ib9e43c9d0a067106f5d554b7ea2fa414ce93a55b

7 years agobuild: recovery: Support extra recovery resources
Tom Marshall [Wed, 2 Dec 2015 19:23:53 +0000 (11:23 -0800)]
build: recovery: Support extra recovery resources

If set, RECOVERY_EXTRA_RESOURCE_DIR will override default resources.

Device specific private directories in TARGET_DEVICE_DIR and
TARGET_RECOVERY_DEVICE_DIRS will continue to override both of these.

Change-Id: I9e5a2210ffe53483173056f3dc4b17fe669509e7

7 years agoPermit redirection of vendor to system
Sam Mortimer [Mon, 16 Nov 2015 22:47:25 +0000 (14:47 -0800)]
Permit redirection of vendor to system

For devices where /system/vendor needs to be a symlink to /vendor.

This allows a target to set TARGET_COPY_OUT_VENDOR := system in
order to force modules that want to be placed in vendor to instead
be redirected into /system.
eg angler

Change-Id: I4bffcefcda0b33dc5350b1702ec6d0166b18d775

7 years agoenvsetup: Remove Busybox references
Steve Kondik [Mon, 16 Nov 2015 02:47:58 +0000 (18:47 -0800)]
envsetup: Remove Busybox references

 * Toybox provides the necessary commands.

Change-Id: Ia65948a49cb9f7093a6d2b651f6a8a67e300ad6e

7 years agoeat: GTFO after done eating
Steve Kondik [Tue, 10 Nov 2015 22:51:21 +0000 (23:51 +0100)]
eat: GTFO after done eating

 * We need to use sideload_auto_reboot if we want to eat and run.

Change-Id: I09c31bdd7a381f5fe74cd527c3019f1c3d9be2c3

7 years agobuild: Add option to disable block-based ota
Tom Marshall [Sat, 22 Nov 2014 16:43:59 +0000 (08:43 -0800)]
build: Add option to disable block-based ota

While block-based is great when building on a local machine, it kills rsync
performance when syncing rebuilds from remote machines.  Provide an option
to disable it for those whose network bandwidth is less than their device's
emmc bandwidth.

Usage: export BLOCK_BASED_OTA=false

Change-Id: I1dfaa5478a87dad286014dbe57cd5a03da4d1980

7 years agobuild: Disable relocation packing on recovery and utility executables
Tom Marshall [Fri, 30 Oct 2015 13:08:48 +0000 (06:08 -0700)]
build: Disable relocation packing on recovery and utility executables

Change-Id: I2a543537c114cfc1a6d9746fe7c0bc00338ad32d

7 years agoConditionally create symlink /system/vendor if needed
dhacker29 [Thu, 5 Nov 2015 05:55:01 +0000 (00:55 -0500)]
Conditionally create symlink /system/vendor if needed

We don't need to build a vendor image in CM, just create the symlink
for Nexus devices that use a vendor partition

To use add BOARD_NEEDS_VENDORIMAGE_SYMLINK := true to BoardConfig.mk

Change-Id: Id39ee89007af39346f0887796ed3cbad81765c46

7 years agobuild: create dt.img task
Luca Stefani [Sat, 31 Oct 2015 11:50:20 +0000 (04:50 -0700)]
build: create dt.img task

* Remove dt.img creation from generate_extra_images

Change-Id: I676b588cd9acb671771acda638abefee036f0519

build: Don't load dt.img task if custom mkbootimg is used

Change-Id: I7617554a8dc6f44ea0c6a713d834da4fe558caec

core: Account for prebuilt DT images

Change-Id: I52b49fd3e9fc0cb196372e3249c7e3d8b888cdd1

dt_image: Fix build error

build/core/tasks/dt_image.mk:38: *** missing `endif'.  Stop.

Change-Id: If333d378e091ff9d333729dc8a75323966954194

build: only specify least specific directory to dtbtool

New kernels (3.18) place dtb files into the qcom subdirectory,
but older kernels simply create a qcom subdirectory and place
the dtb files at the same level in the heirarchy.  Rather than
looking for the first directory that exists, dtbtool has been
modified to search all subdirectories for dtb files, and
therefore we have to remove the specific subdirectories.

Change-Id: I82e948c0a20605f051a60fdfaae9679e1fa6555e

core: tasks: Use KERNEL_ARCH in dt_image task

* KERNEL_ARCH equals to TARGET_ARCH or TARGET_KERNEL_ARCH if specified

Change-Id: I906e04fd646467ce70da92cb047f0fa0a6ebdb94

build: Use compatibility DTB directory path for custom DTB tool builds

* dtbToolCM is able to search subdirectories, but we are not guaranteed
  that other dtbTool binaries have the same capability. Re-specify
  multiple paths for non-dtbToolCM builds just in case.

Change-Id: Id69e000af5eba60a07662b178cb95950451efd17

build: Add dt.img and kernel target

Change-Id: I4a266d8bd2b01ec4ec696f10f0cc7e912f25a38a

dt_image: Rename target

Change-Id: I2fbe952b55296b6e1a533d071c769788ab3f14ae
Signed-off-by: Brandon McAnsh <brandon.mcansh@gmail.com>
7 years agobuild: fix dopush with zsh
Luca Stefani [Mon, 2 Nov 2015 13:33:10 +0000 (05:33 -0800)]
build: fix dopush with zsh

Change-Id: I4a9e71cfa820583c4d48363815f1ced05d972b54

7 years agobuild: skip checking boot jars by default
Scott Mertz [Fri, 30 Oct 2015 19:48:06 +0000 (12:48 -0700)]
build: skip checking boot jars by default

Currently, builds are failing this because of
non-whitelisted classes in the boot jar.  Lets
disable this check until we can refactor the code.

Change-Id: I1d4b231d43702441a2d5ee9e3c058b9b2a88a38c

7 years agobuild: Introduce ainfo, aerror functions
Tom Marshall [Wed, 28 Oct 2015 18:04:01 +0000 (11:04 -0700)]
build: Introduce ainfo, aerror functions

envsetup.sh calls make directly to set some build vars.  Any "bare" info or
error messages interfere with the logic, so they must be guarded with
checks for CALLED_FROM_SETUP.  This is tedious and error prone, so provide
an alternative that handles this logic automagically.

Change-Id: I9f9a355a6ae58f2b173cffce796e37be1e68238c

7 years agomka: allow mka to be run from anywhere in the tree
Khalid Zubair [Tue, 6 Oct 2015 18:00:55 +0000 (11:00 -0700)]
mka: allow mka to be run from anywhere in the tree

The Android build system expects to be launched from the top of the
tree. Invoking mka at any other level often has unintended consequence
(e.g. targets the host ARCH because ARCH was not set).  The various
build shortcuts like m and mm invoke Make from the top of the tree. mka
now does the same.

Change-Id: Id956cf04cbaf1d12d12549ca54e32b9c2ce1fc29

7 years agobuild: Remove extra $ to properly parse build number file
Rashed Abdel-Tawab [Wed, 24 Aug 2016 04:00:56 +0000 (00:00 -0400)]
build: Remove extra $ to properly parse build number file

7 years agoFix OSX support for new CLI Tools (starting with 7.1)
Brian Chu [Wed, 7 Oct 2015 06:49:43 +0000 (23:49 -0700)]
Fix OSX support for new CLI Tools (starting with 7.1)

To build on OSX with late-2015 CLI Tools, the build system must include C++
headers from a new location.  Mid-2015 CLI Tools and older can still be used, so
the older location will also be kept.

Change-Id: I422d28cb41ab57fcc816538a822df8aecdf7d9d6

7 years agobuild: Make sure we're building our secondary resource package as dependency.
Adnan Begovic [Wed, 30 Sep 2015 19:17:41 +0000 (12:17 -0700)]
build: Make sure we're building our secondary resource package as dependency.

  This allows us to reference internal or public resources without
  going explicitily through the platform sdk.

Change-Id: Iba361a3dcd20bc62a06e600e0240fb09d4e7bda4

7 years agobuild/core: Allow EXTERNAL_CLEAN_TARGETS to dump vars.
Adnan Begovic [Fri, 14 Aug 2015 01:07:23 +0000 (18:07 -0700)]
build/core: Allow EXTERNAL_CLEAN_TARGETS to dump vars.

Change-Id: I4623ad38959aaeac75d6b7905133562a195ef531

7 years agobuild/core: Inherit vendor/* makefiles for check-api.
Adnan Begovic [Wed, 27 May 2015 01:21:15 +0000 (18:21 -0700)]
build/core: Inherit vendor/* makefiles for check-api.

Change-Id: I72d409075192b18c35068566c5687092d45be9b4

7 years agobuild: Ignore filters on platform library.
Adnan Begovic [Wed, 13 May 2015 10:55:25 +0000 (03:55 -0700)]
build: Ignore filters on platform library.

Change-Id: I32b0cd514e58752927fe89044a886d8fc8e18447

7 years agobuild: Add IGNORE_SUBDIR to clear vars.
Adnan Begovic [Wed, 13 May 2015 07:52:31 +0000 (00:52 -0700)]
build: Add IGNORE_SUBDIR to clear vars.

Change-Id: Icc539d6d4e0a2d5a025416841dc05fe6bcb6199f

7 years agobuild/core: Create means of ignoring subdir layer for packages.
Adnan Begovic [Fri, 8 May 2015 21:42:25 +0000 (14:42 -0700)]
build/core: Create means of ignoring subdir layer for packages.

  An external resource package that acts as a secondary framework
  resource should be presented in system/framework similarily to
  the framework-res module.

Change-Id: Ie4110a184cd7262035110a6a04bb7ea91e7a42b0

7 years agobuild/target: Include CM platform jar in system server.
Adnan Begovic [Mon, 27 Apr 2015 17:48:47 +0000 (10:48 -0700)]
build/target: Include CM platform jar in system server.

  Also lock to non-release type builds.

Change-Id: Iaeecc4b1d8722f543b36cab76081cd49130a9eea

7 years ago[2/3] CmHardwareService: add cm hardware jar to system server
Scott Mertz [Tue, 17 Feb 2015 10:43:12 +0000 (02:43 -0800)]
[2/3] CmHardwareService: add cm hardware jar to system server

Change-Id: Ie6ecb4af88a20163aceb3c38b38e10af10f1720f

7 years agoThemes: Include tm command line tool
d34d [Fri, 13 Feb 2015 18:35:31 +0000 (10:35 -0800)]
Themes: Include tm command line tool

Change-Id: Icecf9c322102a3d5489d165d53f21c62835dcca7

7 years agoimg_from_target_files: Skip oem.img in fastboot image creation
Brint E. Kriebel [Wed, 9 Sep 2015 00:11:37 +0000 (17:11 -0700)]
img_from_target_files: Skip oem.img in fastboot image creation

We don't need this package to be included in fastboot images, so skip
it when we are creating fastboot images.

Change-Id: I1e0676f5cbf7468088e6997f83ae845578864668
Ticket: CYNGNOS-936

7 years agobuild: Fix import build step.
Adnan Begovic [Thu, 1 Oct 2015 22:37:55 +0000 (15:37 -0700)]
build: Fix import build step.

Change-Id: Id5a042bd12cf37eec7c856a22d5a7de0e175c2e7

7 years agobuild: Separate commands in recovery foreach loops
Matt Mower [Tue, 8 Sep 2015 15:57:18 +0000 (10:57 -0500)]
build: Separate commands in recovery foreach loops

The foreach loops output a space separated list, not necessarily one
command per line. Separate commands with semicolons. Notably, this
fixes an issue with multiple device directories included in
TARGET_RECOVERY_DEVICE_DIRS.

Change-Id: I5ebdc84ecaaacabaea77b8b752141e2041622480

7 years agobuild: Create a oem image when BOARD_OEMIMAGE_FILE_SYSTEM_TYPE is defined
Diogo Ferreira [Fri, 4 Sep 2015 10:59:13 +0000 (11:59 +0100)]
build: Create a oem image when BOARD_OEMIMAGE_FILE_SYSTEM_TYPE is defined

This adds the capability of generating a OEM image with the build
and adding it to target files when BOARD_OEMIMAGE_FILE_SYSTEM_TYPE
is set.

Change-Id: I6c596d58d9d5ece1a261d953eeb8c60eac30e642
Ticket: CYNGNOS-936

7 years agobuild: allow using host flex binary
luca020400 [Mon, 7 Sep 2015 13:22:02 +0000 (15:22 +0200)]
build: allow using host flex binary

* Prebuilt flex doesn't work on newer glibc
  flex-2.5.39: loadlocale.c:131: _nl_intern_locale_data: Assertion `cnt < (sizeof (_nl_value_type_LC_COLLATE) / sizeof (_nl_value_type_LC_COLLATE[0]))' failed.
* Enable with USE_HOST_LEX=yes

Change-Id: Id683ff2fdf03edf88f8459ed32986a05334cd7fc

7 years agoproduct: Let a device customize its own locales
Ricardo Cerqueira [Sat, 15 Aug 2015 14:29:29 +0000 (15:29 +0100)]
product: Let a device customize its own locales

Use TARGET_LOCALES. If existing, it'll override the defaults except
for en_US

Change-Id: I450fa5023ba48f07622d23158012b5b7d5f2130b

7 years agoApply correct, optimized mfpu compiler flag for ARMv7-A Cortex CPUs
arter97 [Tue, 9 Sep 2014 02:44:22 +0000 (11:44 +0900)]
Apply correct, optimized mfpu compiler flag for ARMv7-A Cortex CPUs

For those ARMv7-A Cortex CPUs that can handle VFPv4 floating point,
We can set "-mfpu=neon-vfpv4" instead of generic "-mfpu=neon"
to gain extra performance improvements.

References :
 - GCC : https://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html
 - Cortex A15 : http://www.arm.com/products/processors/cortex-a/cortex-a15.php
 - Cortex A9 : http://www.arm.com/products/processors/cortex-a/cortex-a9.php
 - Cortex A8 : http://www.arm.com/products/processors/cortex-a/cortex-a8.php
 - Cortex A7 : http://www.arm.com/products/processors/cortex-a/cortex-a7.php
 - Cortex A5 : http://www.arm.com/products/processors/cortex-a/cortex-a5.php

Currently prebuilt clang doesn't support neon-vfpv4 flag so fall back to neon
Also added support for cortex-a5 arch

Change-Id: I91893789ed8edabf3767e1782e494b81158332bb
Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com>
Signed-off-by: Maxime Poulain <maxime.poulain@student.uclouvain.be>
7 years agoForce bsdiff for recovery_from_boot.p if not using GZIP
Andreas Blaesius [Fri, 15 May 2015 10:11:44 +0000 (06:11 -0400)]
Force bsdiff for recovery_from_boot.p if not using GZIP

imgdiff expects a ramdisk to use GZIP, which is causing a chunk
size issue if recovery is using LZMA

Change-Id: I3194b4faed25a298fe23b4e24b6dea2885bafda8

7 years agobuild: Enable custom ccache cache dir for Android
Matt Mower [Wed, 10 Jun 2015 00:35:53 +0000 (19:35 -0500)]
build: Enable custom ccache cache dir for Android

During lunch, check environment variables for ANDROID_CCACHE_DIR.
If it is specified, CCACHE_DIR is set to match. Prevents issues
with multiple versions of ccache writing to the same cache dir.

ANDROID_CCACHE_SIZE should also be specified, allowing for a distinct
cache directory size from the default. Syntax for ANDROID_CCACHE_SIZE
is the same as applied in the command: 'ccache -M$ANDROID_CCACHE_SIZE'

Change-Id: I17497a6f56347850e0fa7b8ebd4de0b5a0b13e55

7 years agobuild: Fix extra userdata generation some more
Brint E. Kriebel [Thu, 6 Aug 2015 20:21:29 +0000 (13:21 -0700)]
build: Fix extra userdata generation some more

Use the prefix variable when placing the file in the target files
package.

Change-Id: Ia4b795416b58c493c3ea91b964e3b6f4cdf0fef1
Ticket: OPO-191

7 years agobuild: Fix extra userdata generation
Brint E. Kriebel [Thu, 6 Aug 2015 20:21:29 +0000 (13:21 -0700)]
build: Fix extra userdata generation

Image generation has been combined into the target file script and
requires the prefix parameter to work properly. This also needs to be
called properly when creating fastboot packages.

Change-Id: I1f716cc375ffe401d5f18487330fc9bb809ff3b4
Ticket: OPO-191

7 years agobuild: Allow packaging of factory image files into target files
Brint E. Kriebel [Thu, 23 Jul 2015 17:36:27 +0000 (10:36 -0700)]
build: Allow packaging of factory image files into target files

Files may be required inthe target files package for factory flashing
processes. Allow these to be added using PRODUCT_FACTORYIMAGE_FILES.

Change-Id: I74b42daee7b73f762f3c75904c6c278b1e5f5c53
Ticket: RM-112

7 years agomisc_info: Add factory script location to misc_info when available
Brint E. Kriebel [Wed, 22 Jul 2015 21:10:29 +0000 (14:10 -0700)]
misc_info: Add factory script location to misc_info when available

When a factory script is specified for the device, store the location
of the script in the misc_info package for proper use during package
signing.

Change-Id: Icd3ab59ebb68b8b6c92aff8eaf9e44322cdcbc18
Ticket: RM-112

7 years agoAllow setting the recovery density separately from the aapt config
Chirayu Desai [Wed, 15 Jul 2015 14:17:45 +0000 (19:47 +0530)]
Allow setting the recovery density separately from the aapt config

Change-Id: I817a4c01302956ec846503d9a585c43e690e45bf

7 years agobuild: Fix device detection for a few of the envsetup commands
Steve Kondik [Fri, 10 Jul 2015 09:31:24 +0000 (02:31 -0700)]
build: Fix device detection for a few of the envsetup commands

 * Edge case where a certain developer ended up with a blank system
   partition in recovery. Wonder how that happened?

Change-Id: I17854a53bf18d07c98c4b7f53df252d6f1d7113d

7 years agobuild: Fix image creation for F2FS-only configuration
Steve Kondik [Fri, 10 Jul 2015 07:58:53 +0000 (00:58 -0700)]
build: Fix image creation for F2FS-only configuration

 * Add f2fs dependencies regardless of whether we're building ext4
   images or not.

Change-Id: I886c52edaf56eb96fb931384440f33b00aa5c9ec

7 years agominnow_max: search for cm.mk in additional directories
Howard M. Harte [Fri, 22 May 2015 16:54:20 +0000 (09:54 -0700)]
minnow_max: search for cm.mk in additional directories

Intel's product configuration files are structured slightly
differentily than others.  Device-specific configuration is nested
one additional level, as follows:

device/intel/<family>/<product>/

Change-Id: I78b02978dc759b94024e5c5533d1108ac2634549

7 years agoenvsetup: repolastsync
Matt Mower [Sun, 29 Dec 2013 18:57:20 +0000 (12:57 -0600)]
envsetup: repolastsync

Prints date and time of last repo sync. Example:
Last repo sync: 11 Jun 2015, 21:54:59 CDT / 12 Jun 2015, 02:54:59 UTC

Change-Id: I4280b500e58237479194ad2e230ed7466db87755

7 years agootasigcheck: Extract the key
Chirayu Desai [Mon, 8 Jun 2015 18:41:29 +0000 (00:11 +0530)]
otasigcheck: Extract the key

* commit b110c751b181423d268531c624db212d2d81e816
  "build: ota: Support for install tools in /tmp/install"
  erroneously removed the line extracting the releasekey,
  making the script a no-op as it couldn't find a key to
  compare against.

Change-Id: I0dc5d15dbf4b0531de4df9e62a5bd47ec463c2a1

7 years agobuild: Add the factorypackage target
Diogo Ferreira [Fri, 3 Apr 2015 11:39:37 +0000 (12:39 +0100)]
build: Add the factorypackage target

The build system generates several artifacts, among them update zips,
OTAs and update packages for fastboot.

Shipping devices typically need extra-special packages in order to
fulfill factory automation requirements.

This patches adds a "factorypackage" target that can be customized
by devices by providing a script that converts target files into the
desired format. The script path should be set into
TARGET_RELEASETOOL_FACTORY_FROM_TARGET_SCRIPT.

Change-Id: I993f12766c96274f096c5f6c6da5aaa32394abbc

7 years agoRemove LatinIME as it is included per target in vendor/cm
dhacker29 [Sun, 7 Jun 2015 02:22:05 +0000 (22:22 -0400)]
Remove LatinIME as it is included per target in vendor/cm

Change-Id: Ibce4a244ec0653a7c7798d864047ac667866a1dc

7 years agoAllow dopush to load binaries onto the "wrong" device
Chris Sarbora [Thu, 4 Jun 2015 00:25:30 +0000 (17:25 -0700)]
Allow dopush to load binaries onto the "wrong" device

 * Lets solitary projects be built+pushed quickly even without a full build
 * Affects mmp, mmmp, mkap as well

Change-Id: I53594bcbece9f9458d28c3ea930453c14df95fe8

7 years agoenvsetup: cleanup the full list
Anthony King [Thu, 30 Apr 2015 22:16:10 +0000 (23:16 +0100)]
envsetup: cleanup the full list

echo each one and stick it in columns. It was unreadable before

Change-Id: I99c50595dcf35f0f03d5d3d6b01043ad8a8306d2

7 years agolunch: sort the choices
Anthony King [Thu, 30 Apr 2015 21:57:08 +0000 (22:57 +0100)]
lunch: sort the choices

This will sort the lunch array when lunch is called,
giving us a consistent list of devices, which is easier
to search through

Change-Id: I80854e8b949950cbc928121a184b64fc3b8164c8

envsetup: lunch: always sort the menu

this fixes the use case of 'lunch 34' straight after envsetup

Change-Id: I19d45016edf254131015aab8476bc815bec9abe4

7 years agobuild: avoid recovery patch if device setup can't do it correctly
Hashcode [Mon, 1 Jun 2015 22:32:09 +0000 (15:32 -0700)]
build: avoid recovery patch if device setup can't do it correctly

In the case of Amazon OMAP4's there is a 2nd-bootloader which is inserted at
a fixed location in both boot.img and recovery.img.  If this 2nd-bootloader
is not present, it puts the device in a non-booting state requiring the user
to recover the device using fastboot tools.

Also, due to the extra binary information in the image, imgdiff hangs during
build.

For devices like this, allow bypass of the recovery patch generatation.

NOTE: In previous versions of CM the BOARD_CUSTOM_BOOTIMG_MK flag accomplished
this, but was never forward ported to cm-12.0 and on.  Use a new board flag
here for clarity as most custom bootimg makefiles can still process a patch
for recovery.
https://github.com/CyanogenMod/android_build/blob/cm-11.0/core/Makefile#L935

Change-Id: I9284ee227358224e3add9862db5c1fbd0f5bd226

7 years agoenvsetup: add mk_timer
Anthony King [Thu, 30 Apr 2015 21:19:48 +0000 (22:19 +0100)]
envsetup: add mk_timer

this wraps around any method call, mainly for 'make'.

mka needs this on linux, since ionice and schedtool don't
respect functions

Change-Id: If8cdd235ed9eba377dd90ab8b12e93036a377ea5

7 years agobuild: Move msm899x FLAC metadata flag to qcom_utils.mk
Rashed Abdel-Tawab [Fri, 1 May 2015 23:32:21 +0000 (19:32 -0400)]
build: Move msm899x FLAC metadata flag to qcom_utils.mk

Change-Id: I8fa0be15b16324e692547a44ba340657541ca831

7 years agoGenerate extra userdata partition if needed
Ethan Chen [Mon, 2 Jun 2014 23:49:59 +0000 (16:49 -0700)]
Generate extra userdata partition if needed

* To support variants of devices which may come in 16/32/64GB variants.

Change-Id: I74c32d8316f0450a1445fe95a95e5cabb7a9dd1b
(cherry picked from commit aae837f9cbcff739cb660016a6d1abd7ef4663db)