OSDN Git Service

android-x86/build.git
7 years agoAdd ext2, ext3, and vfat to releasetools
Brandon Bennett [Sat, 19 Nov 2011 23:02:04 +0000 (16:02 -0700)]
Add ext2, ext3, and vfat to releasetools

Support some non-standard partition that may be found in recovery.fstab

Change-Id: I0026a1d3ae5d432db10150d1a15f7bc8e7a6054b

7 years agoreleasetools: ota_from_target_files: add FullOTA_PostValidate
M1cha [Tue, 25 Nov 2014 14:30:48 +0000 (15:30 +0100)]
releasetools: ota_from_target_files: add FullOTA_PostValidate

Change-Id: I152412049f90fd546d4516cc064238c3192be553

7 years agobuild: Ensure /system unmounted at install start
Matt Mower [Fri, 21 Nov 2014 06:46:52 +0000 (00:46 -0600)]
build: Ensure /system unmounted at install start

Account for the possibility that a user has mounted system manually
before installing the FullOTA package.

Change-Id: I97d0540676a7ce98762545e76ecb1a7f6335d204

7 years agoota: Let devices specify their own recovery-from-boot.p installer
Ricardo Cerqueira [Thu, 19 Jun 2014 00:45:15 +0000 (01:45 +0100)]
ota: Let devices specify their own recovery-from-boot.p installer

Some devices apply transformations to the installed images, making
the sha1 checksums fail (or, worse, generating invalid images). If
"/system/etc/recovery-transform.sh" exists, run that instead, passing
the expected sizes and checksums as arguments in the form of

recovery-transform.sh <recovery_size> <recovery_sha1> <boot_size> <boot_sha1>

A direct emulation of the standard patcher could look like this, transformations
should be added as needed.

----------------
RECSIZE=$1
RECSHA1=$2
BOOTSIZE=$3
BOOTSHA1=$4

dd if=/dev/block/platform/msm_sdcc.1/by-name/recovery of=$C/recovery.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/boot of=$C/boot.img

if ! applypatch -c EMMC:$C/recovery.img:$RECSIZE:$RECSHA1; then
  log -t recovery "Installing new recovery image"
  applypatch -b /system/etc/recovery-resource.dat EMMC:$C/boot.img:$BOOTSIZE:$BOOTSHA1 EMMC:$C/recovery.img $RECSHA1 $RECSIZE $BOOTSHA1:/system/recovery-from-boot.p || exit 1
else
  log -t recovery "Recovery image already installed"
fi
----------------

Conflicts:
tools/releasetools/ota_from_target_files

Change-Id: Ie601841ca1cdad6b8f3b16e593d2718a92e8ca09

7 years agobuild: clean up otasigcheck
Pawit Pornkitprasan [Wed, 19 Nov 2014 16:22:41 +0000 (23:22 +0700)]
build: clean up otasigcheck

- Only mount and unmount /data if it was originally unmounted
- Don't use comparison hack, just check the result of the script

Change-Id: I4a22485d315cf91e95ce578907c49f5fa3a03222

7 years agobuild: Use project pathmap for recovery
Tom Marshall [Wed, 1 Oct 2014 14:33:51 +0000 (07:33 -0700)]
build: Use project pathmap for recovery

Change-Id: I6339ac77b899a43db21261d587252b65cb58ad79

7 years agobuild: Handle custom boot images properly
Brint E. Kriebel [Wed, 13 Aug 2014 19:27:38 +0000 (12:27 -0700)]
build: Handle custom boot images properly

When a pre-built image should be used, it should be stored in the
target files zip so that it can be used with external signing
processes.

Original-Change-Id: I2661af9ac58af30bb9314b552775046d3abf44e0
Change-Id: I10b3bd0bb33489b8ffb26d16d002f8dd6ff405ad

7 years agoota: Build uboot bootable images when necessary
Ricardo Cerqueira [Thu, 17 Nov 2011 00:13:29 +0000 (00:13 +0000)]
ota: Build uboot bootable images when necessary

Change-Id: I18996bb1f5377bbf369fb41774aaa1f5821e7d1f

7 years agoEdify: Add/Update abort messages for some asserts
Matt Mower [Thu, 28 Aug 2014 23:29:14 +0000 (18:29 -0500)]
Edify: Add/Update abort messages for some asserts

* If a bootloader or baseband assert is not satisfied, print the
  versions that are supported by the package as well as the version
  on the device.

Change-Id: I958d49281c51bd4e60d596a727bb94cfc4a21909

7 years agoAllow devices to specify certain ro. props via TARGET_UNIFIED_DEVICE
dhacker29 [Tue, 28 Jan 2014 21:51:51 +0000 (15:51 -0600)]
Allow devices to specify certain ro. props via TARGET_UNIFIED_DEVICE

This modifies buildinfo.sh to not set model, name, description, and
fingerprint in build.prop. These can then be set via custom init
lib.
This also fixes ota_from_target_files to function without these
props being preset.

Change-Id: I945b2c38e60b207d2d0f82b34f4f230ac21b0657

7 years agoRedo BOARD_CUSTOM_BOOTIMG_MK support
Ricardo Cerqueira [Wed, 5 Nov 2014 21:30:23 +0000 (21:30 +0000)]
Redo BOARD_CUSTOM_BOOTIMG_MK support

Simplified version of the previous implementation. Recovery's ramdisk
is spun off from the main recovery target again to allow overriding
just the image-generation step

[mikeioannina]: Squash cm-13.0 changes and adapt to N

7 years agobuild: recovery: Support adding device-specific items
Tom Marshall [Tue, 28 Oct 2014 23:12:15 +0000 (16:12 -0700)]
build: recovery: Support adding device-specific items

(cdesai): Also add the relevant parts from koush's
commit 7fd5a89df5ec3961c9aedfd2afad50d6d2561056
"Add initial support for charge mode. also support recovery/root in the device tree to easily copy props into recovery images."

Change-Id: I25205e68282680932917016646dabd1abadbfce6

7 years agoFix inheritance of PRODUCT_PROPERTY_OVERRIDES for CM audio files
Arne Coucheron [Sat, 3 Mar 2012 21:53:06 +0000 (22:53 +0100)]
Fix inheritance of PRODUCT_PROPERTY_OVERRIDES for CM audio files

Otherwise the ones set in CM vendor will be overridden by these.

Change-Id: I3f87dfd009d8ddfd48972c15770599742b12c4af

Author: Abhisek Devkota <ciwrl@cyanogenmod.com>
Remove extra product property overrides

This appears to clash with vendor/cm/common mk's for overrides; causes
a broken default alarm (and OnTheHunt is so bleh).

Change-Id: I5ec990d3c5ad56b573c45f1a3b20169c989851a0

7 years agobuild: Don't build video editor libraries
Michael Bestas [Thu, 1 May 2014 13:33:02 +0000 (16:33 +0300)]
build: Don't build video editor libraries

* These are gone in L

Change-Id: I7dae9c6736590be8cd080195da4062258ee4a424

7 years agobuild: Fix some colored build issues
Oliver Middleton [Sun, 12 Oct 2014 21:11:26 +0000 (22:11 +0100)]
build: Fix some colored build issues

 * Fix some broken lines in definitions.mk
 * Finish adding colors to product-graph.mk

Change-Id: I235a60c967b1f10ec6dd1cac25740badbd3b64c9

7 years agoColorize javac errors
nuclearmistake [Mon, 28 Apr 2014 01:59:42 +0000 (21:59 -0400)]
Colorize javac errors

You know those multi-line ones that are frequently interspersed with other buld output?
The ones that don't even have the word "error" in them to search for?

This makes them red.

ps2: fix jar_check failures cause by leaving empty stderr files in intermediates dirs
     this is probably not the best place to store stderr before colorizing it if javac
     exits non-zero, but it seems much lighter than mkdiring a bunch of temp directories
     or using sed to mangle the paths to point to per-intermediates directory unique
     temporary file names

Change-Id: I3b9b7d8a0c76958588ac1603b6742987d6dde54c
Signed-off-by: nuclearmistake <nuclearmistake@gmail.com>
colorize non-fatal javac stderr yellow (and actually display it... at all)

woops!

Signed-off-by: nuclearmistake <nuclearmistake@gmail.com>
Change-Id: I984f428022a68a825aa041866e8d459bd6611f71

7 years agoproduct_config: Set CM_BUILD priority above TARGET_BUILD_APPS
Brint E. Kriebel [Tue, 14 Oct 2014 19:43:28 +0000 (12:43 -0700)]
product_config: Set CM_BUILD priority above TARGET_BUILD_APPS

Even if we are doing TARGET_BUILD_APPS, we may want to use a cm
target for building.

Change-Id: Ic8053bc679fa8b726be90e611aeaacdf1850cabc

7 years agoRemove HomeSample from builds
Danesh Mondegarian [Fri, 8 Nov 2013 02:44:02 +0000 (18:44 -0800)]
Remove HomeSample from builds

As good as it looks, we already have a launcher (Launcher3)

Change-Id: I87cac70eec30fd62d6f7ecb7777caa9d240fe0ee

7 years agoRemove nulls from the edify generator.
Ricardo Cerqueira [Sat, 8 Nov 2014 23:03:53 +0000 (23:03 +0000)]
Remove nulls from the edify generator.

These would break the scripts. WTF are they doing here?

Change-Id: I0c52335a27f7ae974279fde1c2461b2dba24d263

7 years agoFix file-size stats on OSX
Koushik Dutta [Fri, 1 Jun 2012 20:30:25 +0000 (13:30 -0700)]
Fix file-size stats on OSX

Kernel makefiles that the stat on the system is GNU stat. GNU stat uses the "-c" option to specify format.
Darwin stat uses the "-f" option to specify format. This discrepency will cause kernel build breaks.
On my system, I symlink stat to GNU stat. This causes the "get-file-size" define
to fail.
The fix for this is to detect "gstat", aka GNU stat, and use that appropriately.

Change-Id: I987c155b7dc3ff14ffe6da40edf834ca34b7df75

Fix up the get-file-size function that was broken due to the prior commit that made it utilize gnu stat (gstat)

Change-Id: I24bba2bfcb509ad1ad76d2260eedd685ba45c393

7 years agobuild: fix bash completion sourcing
Kyle Ladd [Thu, 12 Sep 2013 00:43:42 +0000 (20:43 -0400)]
build: fix bash completion sourcing

Sourcing functions in files from a function within a file being
sourced was giving bash a hard time. This fixes 'repo' command tab
completions.

Change-Id: Iac1b3078e20749fb474ed1270e0886cf435e24d9

7 years agoenvsetup: export ANDROID_BUILD_TOP earlier
Chirayu Desai [Tue, 19 Mar 2013 12:20:37 +0000 (17:50 +0530)]
envsetup: export ANDROID_BUILD_TOP earlier

Change-Id: Ia3497f61f4e9aaeeb793cecd3b4f488f0a48181a

7 years agoConsolidate bash version checks
James Roberts-Thomson [Tue, 16 Apr 2013 03:53:39 +0000 (15:53 +1200)]
Consolidate bash version checks

There were two checks for bash version, the 2nd was superfluous; this
patch removes the duplicate checks, and shifts the bash version check to
being back after the "are we in bash" check.

Change-Id: I57ff8c1fedce80f739c06643d2976d2c1465db1b

7 years ago[HAX] Allow per-target dtbTool
Steve Kondik [Sun, 23 Feb 2014 22:36:22 +0000 (23:36 +0100)]
[HAX] Allow per-target dtbTool

 * Revert this when fixed

Change-Id: I97ecb0448ae7bd5859454be290c5dde6248b2859

build: Default to dtbToolCM

* The default dtbTool isn't the correct module name for the module that
  actually lives in device/qcom/common/dtbtool

Change-Id: I80b427e3652b99742573bc4d2829e51645a8822b

generate_extra_images: Look for 3.10 dtbs

The dtbs have changed location between 3.4 and 3.10. Look for the
new location first and fallback to the 3.4 location if they're
missing.

Change-Id: I7aada8dbcf01ea6f62b3235b452c9329cd69e5e8

build: Generalize kernel DTB path

Use $TARGET_KERNEL_ARCH to specify the architecture-dependent
path location of the DTB files.

Change-Id: I302f407d987e1b33acb0e47b284a1cb793747691

generate_extra_images: Allow supplying arguments to dtbtool

* Also add a message to indicate when dt.img is generated

Change-Id: I670cc8aa571269d1dc1085e51b063fb890dc05f2

7 years agoBuild: Add support for specifying build variant in brunch/breakfast
JustArchi [Sun, 22 Jun 2014 12:37:30 +0000 (14:37 +0200)]
Build: Add support for specifying build variant in brunch/breakfast

This little modification allows specifying build variant in brunch/
breakfast commands. For example we can use "brunch i9300 user" to build
user variant instead of default userdebug.

When no extra argument is given, userdebug is default.

Change-Id: I935327252098ee74b34a815a023d2ac6b9a53a30

7 years agoota: Fix recovery-script cleanups in block mode
Ricardo Cerqueira [Wed, 5 Nov 2014 19:58:59 +0000 (19:58 +0000)]
ota: Fix recovery-script cleanups in block mode

Change-Id: Iadb480f8062cfb7a0e6c9024e32ac0d71a7481d7

7 years agoota_from_target_files: Validate signatures after possible data wipe
Brint E. Kriebel [Mon, 18 Aug 2014 21:28:42 +0000 (14:28 -0700)]
ota_from_target_files: Validate signatures after possible data wipe

If the data is being wiped, we want to validate the signature after
this step. This is also a good check that the data wipe succeeded.

Change-Id: Iaecfddfb2010944de0c97e7bb21d8e581f20deec

7 years agoEdify: Add AssertSomeBaseband
Matt Mower [Thu, 28 Aug 2014 21:51:02 +0000 (16:51 -0500)]
Edify: Add AssertSomeBaseband

Allow releasetools.py to assert a baseband version. Works just like
AssertSomeBootloader.

Change-Id: Ic8eb341cef1d777d983be25ba21a3bc545819c29

7 years agoota: Include copies of the recovery scripts even if shipping in block mode
Ricardo Cerqueira [Wed, 5 Nov 2014 18:16:43 +0000 (18:16 +0000)]
ota: Include copies of the recovery scripts even if shipping in block mode

7 years agoqcom_utils: Make "is-vendor-board-platform,XX" depend on BOARD_HAS_XX_HARDWARE
Ricardo Cerqueira [Wed, 5 Nov 2014 17:08:57 +0000 (17:08 +0000)]
qcom_utils: Make "is-vendor-board-platform,XX" depend on BOARD_HAS_XX_HARDWARE

Prevent qc's code from wrongly kicking in for AOSP-derived
configurations

7 years agoenvsetup: dopush: set file permissions on files pushed to /data too
Matt Mower [Tue, 20 May 2014 07:52:23 +0000 (02:52 -0500)]
envsetup: dopush: set file permissions on files pushed to /data too

* If pushing to /data, transfer old file owner, group, permissions to
  pushed files, then restorecon

Signed-off-by: Chirayu Desai <cdesai@cyanogenmod.org>
Change-Id: Ibf2945adee457a680a288f2bdfba3d2e29ba25a1

7 years agoenvsetup: fixup dopush
Matt Mower [Tue, 20 May 2014 07:52:23 +0000 (02:52 -0500)]
envsetup: fixup dopush

* After clobber, $OUT does not exist and tee cannot create .log; fix
  this by calling mkdir -p $OUT
* Make sure Copy and Install are at the beginning of the log line being
  analyzed and also search for ':' so that "Copying:" lines don't count
* Fix Copy file list by quoting so shell doesn't think this is a
  command: $LOC $(...)
* Fix 'only copy files from $OUT' now that multiple file pushing works
  right
* Only stop java services once (if needed) and then wait to restart
  services until after all files have been pushed
* Change location of SystemUI.apk to priv-app

Signed-off-by: Chirayu Desai <cdesai@cyanogenmod.org>
Change-Id: I65edd34bf445b28c2638cb3e9621719121fb962f

7 years agobuild: Store the jenkins build number in misc_info
Brint E. Kriebel [Thu, 10 Jul 2014 17:38:59 +0000 (10:38 -0700)]
build: Store the jenkins build number in misc_info

If the jenkins build number is available, list it as build_number in
the misc_info.txt file.

Change-Id: I6500c6b53661f2904dff738d25d8a8d24a7dca80

7 years agoota: Make sure we don't install on top of an incompatible system
Ricardo Cerqueira [Fri, 9 May 2014 21:21:28 +0000 (22:21 +0100)]
ota: Make sure we don't install on top of an incompatible system

If the system has data present, make sure said data doesn't depend
on a system signature different from our own. If we can't find
our platform key, abort the installation

Change-Id: I16572daf9464de326a9d0d126597cfbf03208f94

7 years agoDon't set CCACHE_BASEDIR if its already set
Mike Grissom [Mon, 26 Aug 2013 23:09:51 +0000 (16:09 -0700)]
Don't set CCACHE_BASEDIR if its already set

 * enable use of shared ccache

Change-Id: Ic708a5d5169291d674b167aa2c87bf2c8adaafae

7 years agobuild: Include an extra device.mk
Steve Kondik [Sun, 18 May 2014 22:34:30 +0000 (15:34 -0700)]
build: Include an extra device.mk

Change-Id: I4373f78f57c81e46affc2f6a6bc854bf4c3d00db

build: Clean up use of vendor/extra

 * extra_config.mk is not needed anymore
 * Include BoardConfigExtra.mk if available

Change-Id: Icd0db0852ceee5cb5c701c9a40b829e1f3ebd69e

7 years agobuild: Add new public keys to recovery
Brint E. Kriebel [Thu, 15 May 2014 19:30:37 +0000 (12:30 -0700)]
build: Add new public keys to recovery

Change-Id: I11dea464297813be36e60c23728dde8893535c46

build: Move bacon public key to device tree

Change-Id: I50c780203f7ecdd3008ac07146b7c9db91f9a443

7 years agobuild: Set ccache base to build top
Tom Marshall [Fri, 16 May 2014 20:46:24 +0000 (13:46 -0700)]
build: Set ccache base to build top

This enables ccache sharing between different build tree paths.

Change-Id: I99636bdd2779a6ccf0649f027e35cf67df44b6ae

7 years agobuild: use /usr/bin/env to call python
Andrew Bartholomew [Sat, 10 May 2014 14:58:07 +0000 (10:58 -0400)]
build: use /usr/bin/env to call python

Hardcoding the path to python instead of env is not recommended.  This
can break the build in some Linux environments that link /usr/bin/python
to python3.

Change-Id: I4c62eb391acc6d468ce24ac8640834e965e76e78

7 years agoStore the base64 release key in the OTA zips
Ricardo Cerqueira [Wed, 7 May 2014 16:28:49 +0000 (17:28 +0100)]
Store the base64 release key in the OTA zips

This can be directly grepped in pre-existing package.xml tables
to make sure we're not trying to update to a differently signed
build

Change-Id: I7528a8e7c484ea9209cd665b9263328ae834586a

7 years agotools: getb64key - print the base64 version of a PEM public key file
Ricardo Cerqueira [Tue, 1 Oct 2013 19:42:45 +0000 (20:42 +0100)]
tools: getb64key - print the base64 version of a PEM public key file

Change-Id: Ia94ff560c88dfe85c3fa55db5c8219aa0d3419ee

7 years agobuild: edify: use set_metadata for backuptool
Tom Marshall [Wed, 9 Apr 2014 23:14:07 +0000 (16:14 -0700)]
build: edify: use set_metadata for backuptool

Also use saner permissions on backuptool.sh

Change-Id: I50742b51867aa358f5924b8dc208833092a35bd9

7 years agoStore the value from TARGET_OTA_ASSERT_DEVICE to a file
Brint E. Kriebel [Wed, 22 Jan 2014 23:51:46 +0000 (15:51 -0800)]
Store the value from TARGET_OTA_ASSERT_DEVICE to a file

This is needed so it can be read in when re-signing a package to
allow for the proper device asserts.

Change-Id: I8f3bb491bbbaa4d2b827a45ef83f12c6c83e6712

7 years agoAllow individual projects to enforce a property's value
Ricardo Cerqueira [Fri, 3 Jan 2014 02:46:15 +0000 (02:46 +0000)]
Allow individual projects to enforce a property's value

Some projects require system properties to be set to a specific
value (for example, a shared library needing a property pointing
to its own path) in order to work correctly, but some device
configurations are mistakenly setting those properties with the
wrong value (usually inherited from the original OEM build).

"PRODUCT_PROPERTY_UBER_OVERRIDES += property=value" can (and
should) be used in that project's makefile to ensure the value
is the correct one. This variable is intended for software projects,
and should never be used in product makefiles (BoardConfig, cm.mk,
AndroidProduct)

Change-Id: I1986e7c444e51cce8b198e43fdc793fad16d6276

7 years agobuild: Add QCOM target-specific config
Steve Kondik [Sat, 28 Dec 2013 23:48:20 +0000 (15:48 -0800)]
build: Add QCOM target-specific config

 * Needed to support global DirectTract config on legacy targets
 * Let's also eliminate some boilerplate

Change-Id: I736c10a5e7e1f3d1e0de9e60f29b60add276f151

build: Fix cflags for QC targets

Change-Id: I2281bec3afb4d80e80845718d880dc24ef7baf32

build: qcom: Set QCOM_*_PATH variables for hardware/qcom-* projects

This consolidates a bunch of one-off logic scattered throughout the
code base.  Usage in Android.mk files is trivial:

At top level, use e.g. "ifeq ($(call my-dir),$(QCOM_AUDIO_PATH))".
This works for all variants, including non-variants (i.e. AOSP).

Within subdirs, use e.g. hardware/qcom/audio => $(QCOM_AUDIO_PATH)

Change-Id: Iee2497ea9a7efeb4ae9e861b84c532b19da7b69d

build: Introduce project pathmap and use it for qcom variants

The project pathmap tracks the path to the top level of a project.  The
following functions are provided:

 * project-set-path adds an entry.
 * project-set-path-variant adds a "variant" entry.
 * project-path-for retrieves an entry.

To use as a guard in Android.mk:

  ifeq ($(call my-dir),$(call project-path-for,projectname))

To use for include paths in Android.mk:

  LOCAL_C_INCLUDES += $(call project-path-for,projectname)/...

Set project pathmap for qcom project variants.

Change-Id: I8dceca72a1ba80fc7b1830c5ab285d444f530457

build: Set QCOM variants for non-QCOM_HARDWARE defined targets

* Nexus devices and others typically do not define the QCOM_HARDWARE
  flag, so the variant path should always default to the AOSP variant.
* Unconditionally set the variant to the AOSP HAL by default.

Change-Id: I714170897128f92718af266366cfcbf3136e8981

build: Automatically set QCOM audio, display, media variants

* Device platform should determing the HAL that ought to be used. This
  commit forces QCOM_HARDWARE to select the -caf HAL variants, which
  are then broken down by platform within the variant path.

Change-Id: I6fc7a3def7b93112f034a3b89552f302727cdbf8

build: Enable QCOM_BSP, QC_AV with QCOM_HARDWARE

Change-Id: Ibf9dd35272521109fea52e46bacf6e1e3074ed6a

pathmap: Point QC HAL pathmaps directly to the source

Directly map to the actual HAL directory, including the
board platform. This lets project-path-for point directly
to the respective HALs.

Change-Id: Ic4ed61bbdea9d0b5683502bf84a8410e76858527

Enable QCOM_BSP_LEGACY flag for pre-8974 targets

Change-Id: I895f1b1cbad0d260e1bca87ccb61e6194de023fd

build: Fix QCOM_BSP_LEGACY cflags

Change-Id: I880f32892d9e082e3ba92878414f3cb3c6f08066

Fix QCOM_BSP_LEGACY

Checks in the Android.mk files do not enable the cflags for .h
files, causing a build that crashes constantly.

Change-Id: I315c760488445629fda860ba70066417c7d68b8b

build: Clean up QCOM flag definitions

Change-Id: I66bca2db83260ccd65b82e540ee9f7961f00b030

build: Add QCOM flags to Clang CFLAGS

Change-Id: I56f0d4106f5d3d27c1ace744d30c1c81f0052bbd

build: Remove unused qcom CFLAG

Change-Id: I6ead3e57899bcb007d4d284901f918a65a9e6926

build: Set QCOM global cflags for secondary arch

Change-Id: I637d94f9b0ddee2c8d6057de44355e482163dd36

build: Fix copypasta in 2nd target clang flags

Change-Id: Ieedce8754b145e53d72a5d6a4b41fbe5cdf6473f

build: Allow devices to specify a RIL variant

Change-Id: Ia5d35d916be358fb7be7ead6bd05cc3628b35a37

build: qcom: Set the correct project path for device-specific cameras

Change-Id: I37696dae2c05c4e9f4fc824fbba63af47483ea17

build: Allow QC platforms to share/customize HAL variants

* Allow devices to override HAL variant using QCOM_HARDWARE_VARIANT
* 8909 and 8916 share HALs by default
* 8610, 8226, 8974 share HALs by default
* 8992, 8994 share HALs by default

Change-Id: Idfbdc405a35c5ba518fc71c8b691fc177ddf9068
(cherry picked from commit 338b399a2976993f0758c2f4e61620e987f4cb19)

build: Add a couple more custom pathmap variables

Change-Id: Ie44b9844c6d82dd73d1ea1f16b565f8bb06652c1

qcom: Enable TARGET_COMPILE_WITH_MSM_KERNEL

In the 6.0 HALs, CAF added the TARGET_COMPILE_WITH_MSM_KERNEL
which is enabled when building AOSP with an in-line kernel.
Since we only use in-line kernel builds, go ahead and enable
it across the board for all Qualcomm devices

Change-Id: I36bba34b7f1009b0776256cf0e0ce57e6c7377f4

qcom: Add QTI_BSP

Change-Id: Id99fb17044e453af050e6e3ff59cd3f5a47da268

qcom: Remove QCOM_DIRECTTRACK

* DirectTrack/LPA/tunnel for 8960 only works with AwesomePlayer, which
  has been deprecated. Don't bother allowing this to compile.

Change-Id: I4d3e6dd9f1e3047a379fd76af4f6b45d791210de

build: Allow devices to specify a WLAN variant

Change-Id: I59616fa641c4ccddea7eb5fb77e9aeb0423ef234

build: Add bt-vendor variant and fix wlan variant

Change-Id: Ie3c433420504f0f14783f99e2d5fcdd46f1a3f37

build: Adjust for device-specific HAL paths

* QCOM variant HALs are pretty much deprecated, long live
  device-specific HALs!

Change-Id: I636d1e851519aba31ea3744b369aea06d6db6f68

build: qcom: Define legacy ALSA audio flag

Change-Id: I83cf184f56e1293f6abaaac7849505260499c9af

build: End this nightmare.

 * Disable QC AV enhancements across the board. It brings no value
   for CyanogenMod now.  We are unable and unwilling to make this
   shit work for commercial products- for aftermarket it would
   be a complete waste of time to even try.

Change-Id: Id6f0086c107c24178410e726738e666341fdbfe1

qcom: Select Sony display/media variants for Sony devices

Sony's msm8226 and msm8974 devices use HALs that match the 3.10 kernel
they use. Select a custom variant here.

Change-Id: Iecfb6bdf0e989ba5231bce6e650b6926417f7f90

qcom: Fix non-QC target pathmappings

* The actual key for camera, gps, loc-api is qcom-$(name), not $(NAME).

Change-Id: Id0f2ed760cae3b5627983ef5a2206775bc880637

qcom: Add dataservices to project pathmap

* Set vendor/qcom/opensource/dataservices as the default dataservices
  provider.
* Devices can override this choice by setting
  USE_DEVICE_SPECIFIC_DATASERVICES and providing dataservices in the
  $(TARGET_DEVICE_DIR)/dataservices directory.
* Set $(TARGET_DEVICE_DIR)/dataservices as the default dataservices
  provider for non-QC hardware (Nexus devices).

Change-Id: Ie003110d7b745367947b4b728bc83800c0351068

qcom: Add support for custom device specific paths

* There are many supported devices with common trees,
  and they may wish to put their hals there.
* Allow setting the path to the hal by using
  DEVICE_SPECIFIC_<component>_PATH when
  USE_DEVICE_SPECIFIC_<component> is true.

Change-Id: I1335d322cd43440b028b51cff6023dd05e1d1024

qcom: Explicitly build the custom audio policy for legacy alsa

Change-Id: Ib0efba23e20ff156c032fe0ad428c5fa08b15f8d

qcom: Allow usage of default QC HAL paths

Change-Id: Icbeaa995047289b5e10cdebf805f8bd8cb7978b1

qcom: Use correct path for BT vendor

Change-Id: I81971e65a7f75ad5755bfdbed229c30d447c7d55

qcom: Support 8937/8953

Change-Id: I84b1807e88d5be1230eab64bd1275a0677ce510f

build: Readd msm7x27a to QCOM Targets

Change-Id: I87db6ee43059c256d338babbdfe414030a06b53e
Signed-off-by: Caio Oliveira <caiooliveirafarias0@gmail.com>
7 years agobuild: Add support for PRODUCT_COPY_FILES_OVERRIDES
Steve Kondik [Fri, 13 Dec 2013 17:47:42 +0000 (12:47 -0500)]
build: Add support for PRODUCT_COPY_FILES_OVERRIDES

 * We may have a case where prebuilts need to be built from
   source instead based on an externalized config.
 * New directive takes a list of destination files to remove from
   PRODUCT_COPY_FILES so that other instructions can be supplied.

Change-Id: I7feff16440e54d1676ffddbbd96d5947efa43ede

7 years agoenvsetup: Mark zsh as compatible
Emilio López [Sun, 3 Nov 2013 16:05:43 +0000 (13:05 -0300)]
envsetup: Mark zsh as compatible

Basic functionality has been tested on zsh 5.0.2 and has been found to
work correctly.

Change-Id: I02e5e3bedf56b43104c280d9737ae7b334357643

7 years agoenvsetup: drop unnecesary exports
Emilio López [Sun, 3 Nov 2013 16:04:27 +0000 (13:04 -0300)]
envsetup: drop unnecesary exports

export -f is a bashism and we don't actually need it, so lets remove it.

Change-Id: I9228cef0c4a9543b3d34fdc39a368ad0238431e2

7 years agoenvsetup: do not print an error if complete fails
Emilio López [Sun, 3 Nov 2013 16:02:13 +0000 (13:02 -0300)]
envsetup: do not print an error if complete fails

complete is a bashism; so it will fail on other shells. Avoid printing
an error if that is the case.

Change-Id: Id6d6311792f409cc3a697c7a2bb003863f1afe60

7 years agocore: main: remove all the spam about including make files
cybojenix [Sat, 2 Nov 2013 13:18:36 +0000 (17:18 +0400)]
core: main: remove all the spam about including make files

Change-Id: Ifd2ef0e239d16b169c572472416c2c31df62a367

7 years agoenvsetup: Fix remote functions to deal with symlinks
Steve Kondik [Sat, 16 Nov 2013 11:48:30 +0000 (03:48 -0800)]
envsetup: Fix remote functions to deal with symlinks

Change-Id: I6f35dc30dda22149b2c37e1c6c7d41ea7239d3bb

7 years agobuild: Add cafremote command to envsetup
Steve Kondik [Sun, 27 Oct 2013 20:34:36 +0000 (13:34 -0700)]
build: Add cafremote command to envsetup

 * So lazy!

Change-Id: I99a988180abb4fb486d4ebbb842bb9eda03bf1bc

7 years agoFor user builds, use a release build id in the description if one exists
Ricardo Cerqueira [Mon, 11 Nov 2013 00:51:48 +0000 (00:51 +0000)]
For user builds, use a release build id in the description if one exists

Companion change to Ic5913e587400dd38c04aa05de3a7becced77a59e

Change-Id: If5edbf56d567701f96f0ba46af9a90ffa8310c24

7 years agoDon't make assumptions about the formats of build descriptions
Ricardo Cerqueira [Fri, 1 Nov 2013 00:47:32 +0000 (00:47 +0000)]
Don't make assumptions about the formats of build descriptions

Change-Id: Id83a7594e9e1b9b4ffbdbaba695506d8d0d21a46

7 years agocm: Fix global selinux policy inclusion
Ricardo Cerqueira [Tue, 5 Nov 2013 22:17:59 +0000 (22:17 +0000)]
cm: Fix global selinux policy inclusion

We're adding CM-specific policies to an overlay instead of patching
external/sepolicy, so we need to make sure it's included to prevent
misbehaving systems

Change-Id: I7989a1093f9abc8360d492e73a860eb4afad10ad

7 years agobuild: Add script to generate extra images
Steve Kondik [Wed, 23 Oct 2013 05:23:27 +0000 (22:23 -0700)]
build: Add script to generate extra images

Change-Id: I53081c7a2b4f18bc8c8a27b04d311a6b078b2022

Use CM standard qcom naming

Change-Id: I360b3dcf1fe82140a7993189e881f9d77b571bef

generate_extra_images: Remove deprecated image generation

* Remove msm7x27a/msm7x30 nand images
* Remove msm8930 1G userdata

Change-Id: I81b93d34893d504a53f2aadb9c3ac2089c06860c

generate_extra_images: Rename targets and add 'sec' prefix

Change-Id: Ie7debfb33349d16d9a457ff817072af2f3a10c0f

7 years agobuild: Add support for vendor product and device name
Steve Kondik [Sat, 26 Oct 2013 19:58:57 +0000 (12:58 -0700)]
build: Add support for vendor product and device name

 * CM's build system assumes some convention-over-configuration which
   we might need to override in order to conform to vendor requirements.
 * Allow overriding of target and product names using these new
   variables. This allows for CM conventions to work, while generating
   the correct fingerprint dynamically without post processing the
   strings.

Change-Id: Ic5913e587400dd38c04aa05de3a7becced77a59e

7 years agoStore the path to the ota file generator where it can be reused
Ricardo Cerqueira [Fri, 18 Oct 2013 20:48:46 +0000 (21:48 +0100)]
Store the path to the ota file generator where it can be reused

Change-Id: I8896713c79a751b79fbbcc75f6ba30dad4ea9fac

7 years agobuild: Don't run backuptool on GMS builds
Steve Kondik [Mon, 7 Oct 2013 09:34:47 +0000 (02:34 -0700)]
build: Don't run backuptool on GMS builds

Change-Id: I5dde27f9d16b88049171db9805221d92e67f3e5d

7 years agoAdd a unique build number to every build
Ricardo Cerqueira [Wed, 25 Sep 2013 23:10:20 +0000 (00:10 +0100)]
Add a unique build number to every build

SDK-readable via android.os.Build.INCREMENTAL

Change-Id: If9885adebe12a56b2b2e353285721be695bc411b

Fix exporting the unique build identifier

Change-Id: Ie58e981b7e83a4351d137dfd8995dce7d365d950

Fix incremental build number on Darwin

Darwin does not include sha1sum, but it should have openssl.

Change-Id: If2b685c1478f9486bed21dfba0c655d9e02db72b

Use openssl instead of sha1sum

Change-Id: Iab8a74d4af6646104cb23312853f811a38bdec0d

7 years agoAdd PRODUCT_BOOTANIMATION
William Roberts [Tue, 20 Aug 2013 23:02:53 +0000 (16:02 -0700)]
Add PRODUCT_BOOTANIMATION

Just add PRODUCT_BOOTANIMATION in your product
makefiles and point it to the zip file you would
like to have used as the boot animation.

The coresponsing build system handles picking
the last one, which is the last product to set this.

Change-Id: I8c95a515a8fbb92d363141eb79e254712dccc162
Signed-off-by: William Roberts <wroberts@tresys.com>
Fix for build break when PRODUCT_BOOTANIMATION is unset

Change-Id: I236c2dd35ba0e632ed327ed6dc36324c9e59587a

Restore original behavior when PRODUCT_BOOTANIMATION is undefined

Change-Id: I3ee7141f7c26cee033b8a30824caf38fcacec5a8

7 years agoenvsetup: Wait for device in installboot/installrecovery
Steve Kondik [Sat, 31 Aug 2013 00:34:37 +0000 (17:34 -0700)]
envsetup: Wait for device in installboot/installrecovery

 * Useful when you're racing against a bug that causes a kernel panic
   shortly after USB turns on :(

Change-Id: I2a503e4b195e632ed5b67a77b942e80c47d0ff45

envsetup: Use wait-for-online so these cmds work in recovery

Change-Id: I7a85e7068f373b1d726aa6b27a51862fa9b7c6fd

7 years agobuild: allow dopush to work properly with network adb
Sam Mortimer [Sun, 11 Aug 2013 05:57:08 +0000 (22:57 -0700)]
build: allow dopush to work properly with network adb

Change-Id: I9efe60814d66dc8eb17544e6c2b94473dc903133

7 years agorecovery: Always allow the CM release key
Ricardo Cerqueira [Wed, 3 Jul 2013 22:06:02 +0000 (23:06 +0100)]
recovery: Always allow the CM release key

Avoid the "Untrusted" warning in recovery when flashing a CM-signed
build

Change-Id: I13900bd7e2539fdc7442477a844391b8c5d87dda

7 years agoenvsetup: Fix installrecovery for new fstab format
Steve Kondik [Sat, 10 Aug 2013 04:03:42 +0000 (21:03 -0700)]
envsetup: Fix installrecovery for new fstab format

Change-Id: I26ab441c28350cce70bb976b249b16c6b83ab8da

envsetup: Fix giant derp

Change-Id: I490556f18c40c3614e4e554d7db3306a16ff99d8

7 years agoeat: Support v2 fstabs
Ricardo Cerqueira [Sat, 27 Jul 2013 12:51:56 +0000 (13:51 +0100)]
eat: Support v2 fstabs

Change-Id: I5220d7e9232174e2acbdc2d6c931827af959f212

7 years agoenvsetup: add a helper to fix "out/target/common" not being really common
Chirayu Desai [Sun, 30 Jun 2013 04:34:25 +0000 (10:04 +0530)]
envsetup: add a helper to fix "out/target/common" not being really common

* out/target/common isn't really common, and if you do
  back to back builds for multiple devices, that is noticable.
* Use out/target/common-$device instead, and link the appropriate
  dir to out/target/common every time lunch() is run, if
  CM_FIXUP_COMMON_OUT is set.
* Refer https://groups.google.com/forum/#!topic/android-building/ispbOgzoyg8
  for more info.

Change-Id: I11e7df0e68e2a60ce32576f06397d60fc9465b60

7 years agobuild: get rid of the sparse expand stuff
Shareef Ali [Wed, 29 May 2013 03:44:31 +0000 (22:44 -0500)]
build: get rid of the sparse expand stuff

* i don't see a reason why we are doing this because we never deal
with flashing system img rawly
* This will put useless write on ssd..
* we don't have space on ssd

Change-Id: Icd53d161b8515f5eca238b98ad68515d69caa34f

7 years agoenvsetup.sh: add missing dquotes
Christopher Lais [Mon, 3 Jun 2013 20:15:39 +0000 (15:15 -0500)]
envsetup.sh: add missing dquotes

Change-Id: Ic86a5dd36b0f32cd7dc4d2f9c187566398796ed6

7 years agodopush: push files to /data too
Chirayu Desai [Sun, 19 May 2013 14:24:32 +0000 (19:54 +0530)]
dopush: push files to /data too

Change-Id: I85e24575a04955ae17b978f038edc46e1e6bfa2c

7 years agoSign final packages with a different key if requested
Ricardo Cerqueira [Mon, 1 Jul 2013 22:35:26 +0000 (23:35 +0100)]
Sign final packages with a different key if requested

...and throw it into recovery builds as well

Change-Id: Ic96d4d49d821cb03d5318e3e9ad93d02fb92573e

7 years agolets make the lunch list look a little neater
cybojenix [Fri, 28 Jun 2013 19:30:00 +0000 (20:30 +0100)]
lets make the lunch list look a little neater

It's very simple, but with more and more devices coming in, a long list won't cut it
There are probably better ways of doing this, feel free to comment

Change-Id: I9bd1fef920f985a133c882df9987b6be29dbc7b8

7 years agoadd adb to the disttools
Koushik Dutta [Tue, 18 Jun 2013 21:17:21 +0000 (14:17 -0700)]
add adb to the disttools

Change-Id: I898fa5c9396606144e57dba8453f476b9e9440ab

7 years agorepopick: initial commit
Chirayu Desai [Wed, 5 Jun 2013 14:44:33 +0000 (20:14 +0530)]
repopick: initial commit

Change-Id: Ie42c11d335da07f6d164a0fcb887011e5fd6dcf4

repopick: add -b shortcut option

  * useful for people like me who want to pick into temp branch so
    that the picks survive a repo sync
  * shortcut to "--start-branch auto --abandon-first --ignore-missing"

Change-Id: Ia4d4309d27e46a15ff4b74525668d974f4251dcb

repopick: handle additional error cases around subprocesses

  * gracefully error if the project path cannot be found
  * poll() was not a reliable determination of EOF on my
    Darwin-Python 2.7 system.

Change-Id: I203c2a75820f8acc079a5c9751d1c04daf6f3a16

repopick: allow running from a subdir of ANDROID_BUILD_TOP

Change-Id: I6dfcd5dfe700174ed87dc8627b23519c62b4cb27

envsetup: hmm repopick

Change-Id: I483cb36721f31dbf1f67e46cbe8a306b2a9e2c15

repopick: decode the result as UTF-8

Change-Id: I51f2defa861c86b51baa7bad1df1d9666b952160

repopick: gracefully handle empty/non-JSON server responses

Change-Id: Idbabdbfb4a910de0ad405f02b2a84cf2bc9ef3dc

repopick: remove the superfluous information from date

  * '2011-11-17 06:54:52.000000000' -> '2011-11-17 06:54:52'

Change-Id: I73d37c9aba13d4be6b4d2d2fc0f2f83971a3e77b

repopick: let's be nice to our servers :)

* Prefer fetching changes from GitHub, and if that fails,
  silently fall-back to Gerrit.

Change-Id: Ibf68d4b69a7e8dbee2adb8f7f4250340b8be629c

repopick: skip a cherry pick if its already been merged

* override this behavior with the -f argument

Change-Id: I280b4945344e7483a192d1c9769c42b8fd2a2aef

RepoPick : Add support for git pull

Allow user to git pull patchsets and dependencies.

Change-Id: If5520b45fe79836eac628b3caf0526f11f8953d9
(cherry picked from commit df646304bdcef329e3fe7c12b68107de1f4cd42a)

repopick: allow specifying a topic to pick all commits from

Change-Id: I4fb60120794a77986bf641de063a8d41f4f45a23

repopick: support specifying a range of commits to pick

* for example: repopick 12345-12350

Change-Id: I21dd0ef5f19d7b3899fa40ec4c28a0e9dba8a4df

repopick: handle variant hal branching

Change-Id: Ib0dee19abc13a7fb8d8e42c09b73c1b4f35ca938

Allow repopick to cherry-pick a specific patch set

Use 'repopick 123456/9' where '123456' is the change number
and '9' is the desired patchset.

Change-Id: I2d9f6939fbde50b2a6057b75d2e7f722be5a3e21

repopick: Catch errors on url load failure

Exit gracefully if server cannot be reached or if it reports an error.

Change-Id: I86a1a45d3a1f8dfdb49a0400cb728c965dbad8df

repopick: Allow using a custom query

Change-Id: I87e92d3cbfa35367d87f55c92a6d12a6d4282232

repopick: Allow the github fetch to fail

* This is optional and done to save gerrit server
  bandwidth, however it may fail in cases where
  the 'github' remote is a mirror which doesn't
  sync the changes.
* Let it try fetching from gerrit if fetching from
  github fails.

Change-Id: I6d183ff83572d817d78633280d8b20e3efdaf8f0

Support custom gerrit servers via HTTP or SSH

Please test/provide feedback.

Change-Id: Id7043dc009c1fe5614f73a5da2aa021c0d784a4b
Ticket: RM-14

repopick: skip abandoned commits

Change-Id: I7f203fc4f790bf26acce1112c5c24c703acd9326

repopick: handle hardware_ril/ril-caf

Change-Id: Ib72255d899529effb0d6121034f42a7532d4a02b

Fix custom URL error. Merged from cm_build_config

Change-Id: Iffe7766f137889f113bc5a94254058dc4dbf0ea3
(cherry picked from commit 04d470c5efa7510cc86e614cb401a9b6a41947f0)

repopick: open changes are either NEW or OPEN, not just OPEN

Gerrit's API is terrible. I believe it was written by monkeys.

Change-Id: Idb39a357c241ce7923549a3d217f7ee632326e92

repopick: print the status of a skipped cherry pick

Change-Id: I5181910dc80fe4cf2d69cc22089e191b36a80c9e

repopick: Update script with some fixes

Make quiet actually be quiet.
Allow overriding the path for a repopick.
Sort query and topic results to have a better chance of them applying
cleanly.
Don't try to pull from github when using a custom gerrit address.
Catch git command failures and properly return failure codes.

Change-Id: I7ff010fbfbf1026c6fe03cb27649f677637e1bb5

repopick: support projects which get checked out multiple times

see: caf branches for multimedia, where different branches get checked
out under different paths.

Change removes hacks needed for -caf branches, as this data is taken
directly out of 'repo manifest'

Change-Id: Id7aa24709c3dc6bc874899ef605e58271fec082c

repopick: Actually try to fetch from Gerrit if fetching from GitHub fails

* Exit on failure only if fetching didn't fail.

Change-Id: Iae75dfcff590ed72afd93f58772440e4f3b0ca27

repopick: Allow commits to be excluded from a topic importation

 * Add the ability to 'repopick -t TOPIC -e 120586,120587'

Change-Id: Ib99c095174a0987f68cb8261b7af3f59272b05b5
Signed-off-by: AdrianDC <radian.dc@gmail.com>
py3: repopick

Change-Id: I65e6bb295bd475cc391579023940642b5747f521

py3: update all the things

Change-Id: I5e11b46b7c2f7f8760d6c0e713ca99c1e88b7cd3

repopick: Don't crash if change not found

If change is not located, skip it. Resolves the following:

Traceback (most recent call last):
  File "(omitted)/build/tools/repopick.py", line 258,
in <module>
    review = [x for x in reviews if x['number'] == change][0]
IndexError: list index out of range

Change-Id: I96423ddc809ac1c7994998db4e1929ca813f20ca

repopick: support specifying a range of commits to pick

* for example: repopick 12345-12350

Change-Id: I3b8f2c331a6ac5488032432e133bd4b44d0bf007

7 years agoenvsetup: use $(CURDIR) for getting current directory
Chirayu Desai [Wed, 1 May 2013 10:18:08 +0000 (15:48 +0530)]
envsetup: use $(CURDIR) for getting current directory

Change-Id: I5f00faf64ec31d86dd2e48ec038748ce8499380b

7 years agoeat: get the proper MODVERSION
Chirayu Desai [Sat, 4 May 2013 12:29:18 +0000 (17:59 +0530)]
eat: get the proper MODVERSION

* The version in system/build.prop might be
  different than what the zip is named on incremental
  builds.
* Use CM_VERSION from the build system instead.

Change-Id: If4508921d8fd05219a2f358a2397a13b247065bd
Signed-off-by: Chirayu Desai <cdesai@cyanogenmod.org>
7 years agocout: move to $out
nebkat [Fri, 28 Dec 2012 10:40:45 +0000 (10:40 +0000)]
cout: move to $out

Change-Id: I3b5bf8a5f62dcdf267662bb97a2073150152cfa6

7 years agoenvsetup: Make installboot work in recovery mode too
Steve Kondik [Sat, 13 Apr 2013 20:23:35 +0000 (13:23 -0700)]
envsetup: Make installboot work in recovery mode too

 * Needs a change to adb to allow waiting for recovery

Change-Id: Ia90645513f46bcb5f20b7c74c55ef15842710d3d

7 years agoeat: Eat using adb sideload
Steve Kondik [Sat, 13 Apr 2013 14:19:52 +0000 (07:19 -0700)]
eat: Eat using adb sideload

 * Requires new recovery and updated adbd

Change-Id: I65990822ab63313701d74783d95611d128d90f94

7 years agoprint CM_VERSION in build config
Chirayu Desai [Mon, 25 Mar 2013 06:32:12 +0000 (12:02 +0530)]
print CM_VERSION in build config

Change-Id: Iead654e30798a11e636ec743683f3431d14a858c

7 years agoenvsetup: include bash completion script from vendor/cm
Chirayu Desai [Sat, 16 Mar 2013 14:30:17 +0000 (20:00 +0530)]
envsetup: include bash completion script from vendor/cm

Change-Id: Id90d84748df41d6626dfd46befabe0054c6d14e7

7 years agobacon: generate cm package
Chirayu Desai [Sun, 23 Dec 2012 03:51:46 +0000 (09:21 +0530)]
bacon: generate cm package

Change-Id: I3cece868e56f85bfa0b31a62a51e6eab2070ab06

7 years agoenvsetup: Don't tread on my $PROMPT_COMMAND
Steve Kondik [Thu, 27 Dec 2012 23:28:34 +0000 (15:28 -0800)]
envsetup: Don't tread on my $PROMPT_COMMAND

 * I want my own PROMPT_COMMAND to coexist with Android's, so stash it
   in the environment and add it to the new command.

Change-Id: I200902f135d0c5c620a8eb3ce9cefdba318cf9d3

envsetup: Fix $PROMPT_COMMAND

Change I200902f135d0c5c620a8eb3ce9cefdba318cf9d3 broke the android
PROMPT_COMMAND on scenarios where the existing prompt already had
a hardstatus adjustment, since appending it to Android's just clobbered
Android's in favor of the original.

So instead of appending them, inject android's at the beggining of the
existing one (and create a default if none exists)

Change-Id: I1fbcbfdb6220d886dda3662da498d1759a4c195b

envsetup: Really fix PROMPT_COMMAND handling

 * Add ANDROID_NO_PROMPT_COMMAND to not change it at all.
 * Export ANDROID_PROMPT_PREFIX so it can be used elsewhere.

Change-Id: Ib2a487404d3b8a367a21582e8a0ce69c2d212a9a

envsetup: More PROMPT_COMMAND

* Get rid of ANDROID_NO_PROMPT_COMMAND, the pre-existing STAY_OFF_MY_LAWN
does the same thing
* Remove any pre-existing android prefixes to avoid accumulation
scenarios in consecutive builds (i.e., multiple build identification
strings in hardstatus)

Change-Id: I86661e066e18ea6ad0c742fa1dc6555780fa5441

envsetup: add quotes around PROMPT_COMMAND

Better compatibility for zsh.

Change-Id: Ie010c30580e67e3b5357e3cc869114a525762677

7 years agoenvsetup: push to connected device only if it is $CM_BUILD
Chirayu Desai [Wed, 26 Dec 2012 05:23:58 +0000 (10:53 +0530)]
envsetup: push to connected device only if it is $CM_BUILD

Change-Id: Icce057cb31d6fbc9abb0292311c88c32fea3540c

7 years agobuild: Update domain name
Pawit Pornkitprasan [Tue, 11 Dec 2012 09:41:07 +0000 (16:41 +0700)]
build: Update domain name

cyanogenmod.com -> cyanogenmod.org

Change-Id: Icae50c103d94e2018027c971bf1a77f01e2602c6

7 years agobuild: Add board platforms to qcom_utils
Steve Kondik [Fri, 7 Dec 2012 08:21:36 +0000 (00:21 -0800)]
build: Add board platforms to qcom_utils

Change-Id: I85458167bf2b9c04b029d09b87bf791ff4cfd04d

build: Use common name for QCOM 7K boards.

This is needed to build QCOM HAL without external modifications. The
device would now have to specify msm7x27 or msm7x30 instead of
specifying the full name.

Patch Set 2: Add msm7x27a into the list.

Change-Id: I25018e397b5aad27fab5244731a574ae86752e17

Add new version to qcom_utils.mk

Change-Id: I1ca1532fd4968450715ecd0cca7729e0e6d507ef

Build: update qcom_utils.mk

Add build macro to determine Android Release

Adding platform sdk version 18 for JB MR2.

Change-Id: I79aa831ddd335bd14bd777506c210acc5d9960f1

qcom_utils: Update list of QCOM_BOARD_PLATFORMS

Add msm8226 (Moto G) and other upcoming platforms
Change-Id: Icf895cbcf86791ca800636a1c0893b3a905a27a0

qcom_utils: Add msm8992 and msm8994

 * The Snapdragon 808 will be releasing as the msm8992 so
   reference it as such.
 * The Snapdragon 810 is already released and used, so build the
   qcom utilities for devices using msm8994.

Change-Id: I564cb68295099a73fefd24d43e19ca371968ef44

Adding msm8909 as a QCOM board platform

Change-Id: I01c35348b463a769454d7b64e6710a647cabe4f7

build: add msm8996 to QCOM targets

Change-Id: I4d19bc681d64f56c4e64ac87943058012f76a4ef

build: Add msm8952 as a QCOM board platform

Change-Id: I738db8dc479676d7dfa74c89218c0dad21973ade

qcom: Support 8937/8953

Change-Id: I84b1807e88d5be1230eab64bd1275a0677ce510f

build: Readd msm7x27a to QCOM Targets

Change-Id: I87db6ee43059c256d338babbdfe414030a06b53e
Signed-off-by: Caio Oliveira <caiooliveirafarias0@gmail.com>
7 years agomka: change how make is called
Arnav Gupta [Fri, 23 Nov 2012 17:47:44 +0000 (10:47 -0700)]
mka: change how make is called

in some environments make -j N xxx results in compiling target 'N' instead of 'xxx'
make -jN xxx will always make 'xxx' with N number of threads
Signed-off-by: Arnav Gupta <championswimmer@gmail.com>
Change-Id: I77f17c9286a5ef1d61163d8f978900fb4c24e2e7

7 years agoomnom (brunch + eat) command
Nebojsa Cvetkovic [Fri, 9 Nov 2012 23:02:54 +0000 (23:02 +0000)]
omnom (brunch + eat) command

Change-Id: I524e5a1450de7ea9c93512eebcb10f320e68fa82

7 years agobuild: Add "installrecovery" command
Steve Kondik [Wed, 24 Oct 2012 23:40:42 +0000 (16:40 -0700)]
build: Add "installrecovery" command

 * Similar to "installboot", add an "installrecovery" command which
   writes the recovery image to the correct partition of a running
   device.

Change-Id: I1dcca44fd0d8afa08ece9e99cd914547acb99c83

7 years agocleanbuild: add *.zip.md5sum to installclean_files
Chirayu Desai [Thu, 1 Nov 2012 07:28:45 +0000 (12:58 +0530)]
cleanbuild: add *.zip.md5sum to installclean_files

Change-Id: I4b68bb9a8d421a54b008c5318fa82ed230bd6441

7 years agodopush: improvements
Chirayu Desai [Tue, 16 Oct 2012 14:10:18 +0000 (19:40 +0530)]
dopush: improvements

- use $OUT instead of replacing device name with a new line
  and then "tail"ing it.
- adb shell stop/start if file is SystemUI.apk or framework/*
- and some cleanup.

Change-Id: I49278406dc53285b4919f7d41116ad849ec38250

7 years agobuild: work around missing readlink -f on Mac
David Ferguson [Thu, 4 Oct 2012 14:15:58 +0000 (10:15 -0400)]
build: work around missing readlink -f on Mac

Change-Id: I5d56366cf33a2b02f1886c87815d00cff279779d

7 years agoenvsetup: set OUT_DIR to an absolute path always
Chirayu Desai [Thu, 27 Sep 2012 12:41:25 +0000 (18:11 +0530)]
envsetup: set OUT_DIR to an absolute path always

OUT_DIR was set to $(TOPDIR)out previously,
but $(TOPDIR) was null, so it was a relative path.
This broke releasetools, inline kernel building, etc
since they require absolute paths.
Fix it so that it is set to $(shell readlink -f .)/out
if $(TOPDIR) is null.

Also remove hacks which checked if (OUT_DIR) was out
and changed it to $(ANDROID_BUILD_TOP)/out to workaround
the aforementioned problem.

Change-Id: I459a3b1325a1bbea0565cd73f6acf160d4ed9b39

7 years agobuild: Add "installboot" command to install boot images
Steve Kondik [Mon, 24 Sep 2012 06:46:55 +0000 (23:46 -0700)]
build: Add "installboot" command to install boot images

 * For devices that lack fastboot, this command will copy the boot image
   to a running device, write it out to the correct partition with dd,
   copy the modules and set the correct permissions.
 * Field surveys have discovered that a specific CM device maintainer is
   handling two devices, one with boot partition p7 and one at p8.
 * Extensive research has unveiled the fact that mixing up these
   partitions across these two specific devices will cause
   corruption of the TZ firmware, which cannot be restored and results
   in an unrecoverable brick.
 * Automate the process so this idiot (me) stops breaking shit.

Change-Id: I0dc5449daf128181e2e349ea26ad5741cc87bfe7

7 years agobuild: Add "aospremote" command
Steve Kondik [Mon, 17 Sep 2012 18:33:18 +0000 (11:33 -0700)]
build: Add "aospremote" command

 * Adds the git remote for the matching AOSP repository.

Change-Id: Iad03fb95874ff39a39083218aec0d834e82b4480

7 years agoenvsetup.sh: Fix the `reposync` function
Alan Orth [Fri, 7 Sep 2012 08:44:27 +0000 (11:44 +0300)]
envsetup.sh: Fix the `reposync` function

It seems ionice can't find `repo` if it's in ~/bin, even if ~/bin
is in the user's $PATH.  Placing repo into /usr/bin or /usr/local/
bin works, but is undesirable (build instructions from both AOSP
and CM tell users to put repo into ~/bin, and repo likes to update
itself from time to time).

This forces the reposync function to use the full path to the repo
binary.

Change-Id: I9dc4a3d4ec3f39563e3a84de7321189700079c2e

7 years agobuild: Remove wallpapers from full_base.
Andreas Schneider [Fri, 31 Aug 2012 20:45:52 +0000 (22:45 +0200)]
build: Remove wallpapers from full_base.

They are already in the cm common config for the full phone.

Change-Id: I02fc0ea73e92ae8b19931d05e6783e3cfa166af2

7 years agobuild: Add Qualcomm's helper macros
Steve Kondik [Mon, 20 Aug 2012 18:00:51 +0000 (11:00 -0700)]
build: Add Qualcomm's helper macros

 * This is used everywhere in Qualcomm's code. There's no reason we need
   to constantly replace it with uglier stuff in our Makefiles.

Change-Id: I0183a338470ec96a38f356a47bae65a0d3fb2c95

7 years agoenvsetup: Add some more commands
Daniel Bateman [Sat, 4 Aug 2012 08:48:09 +0000 (03:48 -0500)]
envsetup: Add some more commands

 * mmp: Like mm but pushes the built files afterward.

 * mmmp: Like mmm but pushes the built files afterward.

These may be useful when doing debugging on a individual library,
since it builds the library and pushes the new library to the device.

Examples:

mmmp -B device/samsung/vibrantmtd/libgps
mmmp -B packages/apps/Torch

Thanks: tpruvot for revisions

Change-Id: Ia6bdd2b63797ea86e164af69496b70ea6d7c5156

7 years agoupdate ota_from_target_files to handle mounting/unmounting for backupscript
Austen Dicken [Sun, 15 Jul 2012 21:28:05 +0000 (16:28 -0500)]
update ota_from_target_files to handle mounting/unmounting for backupscript

backupscript should not be mounting/unmounting itself as it makes other
scripts have unexpected results (such as modelid_cfg, which expects /system
to be mounted)

instead have the ota script handle the mounting/unmounting

Change-Id: I94511f4147c624d975cb3ecbeaa8b0e98f63437c