OSDN Git Service
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
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
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
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
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>
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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)
Scott Mertz [Mon, 20 Apr 2015 17:40:21 +0000 (10:40 -0700)]
Colorize more target file output
Change-Id: I25aee19e9a5a06eeeaa4040803c064a140a86778
Adnan Begovic [Wed, 15 Apr 2015 19:00:43 +0000 (12:00 -0700)]
build/core: Define find-other-aidl-files.
Useful when utilizing relative paths that mention external
projects. Mimics find-other-java-files, etc.
Change-Id: I3df67f4f35a931facbb1de76936936b092a42bb2
Brint E. Kriebel [Sat, 28 Mar 2015 03:53:59 +0000 (20:53 -0700)]
ota: Include full boot images when imgdiff fails
When generating a non-block based incremental, inclue the full boot
image when imgdiff fails to generate a patch. This logic is already
used for block based incrementals.
Change-Id: Idae484ea8c2553a3480961dfa413724e61c52e5f
Brint E. Kriebel [Thu, 26 Mar 2015 23:32:34 +0000 (16:32 -0700)]
ota_from_target_files: Fix path for SkipNextActionIfTargetExists
Without the leading forward slash, the check always fails.
Change-Id: I57320c20ca2b384713182082b1ad5321d78dbb2b
Brint E. Kriebel [Thu, 26 Mar 2015 01:14:46 +0000 (18:14 -0700)]
releasetools: add compatibility for full ota functions with incrementals
Some device-specific releasetool functions may expect that input_zip
and input_version are set. For incremental OTAs, target_zip and
target_version are set instead.
Set input_zip=target_zip and input_version=target_version to add
compatibility with these functions.
Change-Id: I6a04f67440618d3652396656cc1fe223d4a6b195
Ricardo Cerqueira [Sun, 28 Sep 2014 00:55:24 +0000 (01:55 +0100)]
Add support for mediatek platforms
This includes optional support for building the kernel with mediatek's
build system, which is usually included with OEM source drops for this
platform. (enabled by BOARD_USES_MTK_KERNELBUILD:=true)
Change-Id: I69fb50aa17d9c171bf8a7c220a0707c4bc570733
kernel: remove support for unused MTK Kernel
Remove unused MTK kernel build support.
Change-Id: I4f4df078ae03b1bd5edc7000e5b942bfc05c02bd
Brint E. Kriebel [Wed, 11 Mar 2015 01:58:23 +0000 (18:58 -0700)]
build: Update install tools packaging for target-files support
Modifies "build: ota: Support for install tools in /tmp/install" to
support signing steps being split from build steps.
Package install files into target-files INSTALL path
Read from target-files for OTA package creation
Change-Id: I64f919c2a757b5474f6cc5f82bd6c33c2a8b558a
Brint E. Kriebel [Mon, 23 Feb 2015 07:23:13 +0000 (23:23 -0800)]
releasetools: Add bootable image signing
Set PRODUCT_PRIVATE_KEY to the path of the boot image signing
certificate to sign an image for secure boot.
Change-Id: I2c767c6f9c3740bed3d7094d2d0b50a075e08abc
Brint E. Kriebel [Sun, 22 Feb 2015 23:14:26 +0000 (15:14 -0800)]
releasetools: Store and use the dt image file through target files
Target files packages may be used for signing images separate from the
build process. Store the device tree image file in the target files
package so it can be used during the signing process.
Change-Id: Ie8507121fa9c4ba57ecffeab05bd859ae5f5b788
Ameya Thakur [Tue, 30 Jul 2013 00:39:37 +0000 (17:39 -0700)]
build: Add changes to release tools and mkbootimg
Change the prototype of LoadRecoveryFstab to take in the device type
as a argument. Fix the case where mkbootimg was being passed a incorrect
argument.
Change-Id: Ic6ac596d8d96d3a5effbdf513763ec1cb92b1a03
AUDITYA BHATTARAM [Tue, 5 Aug 2014 05:38:15 +0000 (11:08 +0530)]
Fix the extra dt.img compilation issue.
Add support for optional device tree image (dt.img)
for device that doesnt have TARGET_BOOTIMAGE_USE_EXT2
Change-Id: I6e07b3ca6d049a8ebdad7ea304b4f39e7c846151
Ameya Thakur [Thu, 25 Oct 2012 02:31:42 +0000 (19:31 -0700)]
Fix case where boot/recovery.img were being built with wrong params.
The boot and recovery images now get built using the same params during ota package
generation as during a normal build.
Change-Id: I93d46e11a4245288f0e87c87a2e4bf45ac5aff69
Sreedhar [Wed, 11 Dec 2013 17:46:12 +0000 (23:16 +0530)]
Build: add DT image variable to Makefile
DT image variable is currently present in
generate_extra_images.mk.This file is moved to
build/tasks to support persist image generation
during parallel make. As build/tasks is called
at the end of Makefile, DT image variable is not
available for other images generation like boot and
recovery. Adding this variable in Makefile ensures
the variable is defined before usage
Change-Id: I21f675d8ce648dc1cf1f4f3aede33278300e08c9
CRs-fixed: 548299
David Ng [Sat, 28 Jul 2012 01:39:48 +0000 (18:39 -0700)]
build: Add support for device tree in boot.img
Add support for optional device tree image (dt.img)
to boot and recovery images. Some devices use kernel device
tree and this adds the device tree image as a section within
the boot/recovery images.
Change-Id: I91431ef2f4b86485895678916e39a8572be878eb
Scott Mertz [Thu, 26 Feb 2015 18:51:44 +0000 (10:51 -0800)]
Enable ADB by default when ro.adb.secure is not 1
* Property ro.build.type is not part of the default.prop we can't
use this to decide how to apply adb by default within this function
Change-Id: Ib3eb24c655353966d64c7148d7530244b628ce94
Michael Bestas [Thu, 19 Feb 2015 12:29:21 +0000 (14:29 +0200)]
Don't enable ADB by default on userdebug builds
Change-Id: I33ae5c6f2787017a62e679aa0c28d4b909d45935
Marcos Marado [Tue, 13 Jan 2015 15:14:28 +0000 (15:14 +0000)]
dopush only tries to push if its arg doesn't fail
`dopush mm`, as an example, tried to do mm, ignored its result, and
went to push. Now, it does mm, and if mm exits successfully it
continues to push the results, but if mm fails dopush stops,
returning mm's return code.
This is useful for having things like:
$ mmp && adb reboot
which now reboot the device weather the changes were pushed or not.
With this patch, the device will only get rebooted if the compilation
succeeds.
Change-Id: I001e3dd83e25a775919adbccbd49914da1e94cde
Koushik Dutta [Wed, 20 Jun 2012 01:39:41 +0000 (18:39 -0700)]
add unpackbootimg to otatools
Change-Id: I4e294c05eacc8bef8273247bcf1bf382291a3d31
Ricardo Cerqueira [Tue, 10 Feb 2015 23:58:10 +0000 (23:58 +0000)]
Revert "Add handheld_core_hardware.xml to telephony base"
Don't do this. handheld_core_hardware.xml includes feature declarations
that aren't mandatory, particularly cameras and magnetometers, but also
things like managed users. According to the CDD, these are optional.
Go back to the pre-L mechanism of including the declarations per-device
to make them accurate.
This reverts commit
dccce7bbe9673d4b8ce1a3559182767f926e1ff8.
Conflicts:
target/product/full_base_telephony.mk
Change-Id: I6db55082295171b78fe595e783799ee54458c4fd
Michael Bestas [Sun, 1 Feb 2015 22:11:06 +0000 (00:11 +0200)]
build: Add support for Kurdish
Change-Id: I1bc7638ff92b61be6c3212dbd5a3f1c354093458
Konsta [Thu, 22 Jan 2015 18:05:00 +0000 (20:05 +0200)]
build: Remove OpenWnn IME from target config
Change-Id: Ic34caa26bf53fc882e685794844ecfa27519e580
Michael Bestas [Sat, 29 Mar 2014 23:13:25 +0000 (01:13 +0200)]
build: Add support for Luxembourgish
Change-Id: I0fb6d8f8a33f209d5593f133c2e891fe9be102c2
Marco Brohet [Sat, 28 Dec 2013 17:11:52 +0000 (18:11 +0100)]
build: Add support for Asturian
Change-Id: If666c8390b3c095c16e66df777c67a46511f4916
Brint E. Kriebel [Sat, 24 Jan 2015 01:16:30 +0000 (17:16 -0800)]
releasetools: Add radio images to fastboot packages
Fastboot packages should include radio images, if they exist. Also
generate a flash-radio.sh file if a filesmap file exists to indicate
the partition that a radio image should be flashed to.
Change-Id: I8f603b1509a5c1b55fee1cb6f6a49a7efb8cc594
Ameya Thakur [Tue, 18 Nov 2014 23:27:07 +0000 (15:27 -0800)]
build: releasetools: ota: Add support for 32-64 bit upgrades
We now use the new API to determine if the update package is compatible
with the device it is currently being applied on or not. We also use the
32 bit updater libraries while compiling the ota package
Change-Id: I4d1d2bd90e03e6f4b2f786d25c6d02f62243c3f3
Tom Marshall [Tue, 16 Dec 2014 17:58:47 +0000 (09:58 -0800)]
build: Only set capabilities if provided
* Allows OUT/install to be compatibile with K recoveries.
Change-Id: I308ee5759da1e3c8e749e9408793f0720fb83cee
Tom Marshall [Fri, 12 Dec 2014 19:51:33 +0000 (11:51 -0800)]
build: ota: Support for install tools in /tmp/install
* Anything in OUT/install gets packaged up into the zip and extracted
to /tmp/install immediately after FullOTA_InstallBegin.
* Use /tmp/install in edify scripts and remove code related to using
and manipulating /system for install tools.
Change-Id: I315a3238e36c8d15e26f935e272f7e27dd59c320
Brint E. Kriebel [Thu, 8 Jan 2015 22:36:45 +0000 (14:36 -0800)]
releasetools: Store the build.prop file in the OTA zip
This file is often used to read information about the update contained
in the OTA. Place it in the update so it can be used by scripts.
The file is not added to the updater-script, so it will not be placed
onto the actual system.
Change-Id: I88044796cbe8f199ca02df2840fd944cba2c73fa
Ricardo Cerqueira [Mon, 5 Jan 2015 02:53:51 +0000 (02:53 +0000)]
build: Add an option to block non-enforcing builds
Prevent accidental build of test configurations. Hopping back and
forth between states (especially disabled) leaves a mess in the
filesystems, and we want to try to ensure published builds go out
enforcing.
Change-Id: I2206975968de421dec842f49b02490fa85ca9f3b
Steve Kondik [Sun, 28 Dec 2014 10:53:03 +0000 (02:53 -0800)]
core: Get the RIL variant path into the global includes
* Need to have this in the global path, so shuffle things around a little.
Change-Id: I2dd2b378d17ff3fa0e379793df31d68964d87278
Clark Scheff [Tue, 23 Dec 2014 21:30:51 +0000 (13:30 -0800)]
Add ddclient function for debugging with DDD
While debugging via the CLI is great, it is nice to have the
option to debug using a graphical front end. This patch adds
a function for using ddd to debug native code. Simply replace
gdbclient with dddclient and start debugging.
Change-Id: I3d3afe08772007b11ad6e0f839868e85386340f1
Note: Requires that ddd be installed on the host PC.
Dan Pasanen [Mon, 22 Dec 2014 05:18:16 +0000 (23:18 -0600)]
releasetools: clean up residual targetfiles-* dirs in /tmp/
Change-Id: I3792307663f8a85513e102c8bf3d78cf4e514760
Chirayu Desai [Fri, 28 Sep 2012 06:26:02 +0000 (11:56 +0530)]
envsetup: new function cmka
- The build system adds a clean-<module> target
for each module / package.
- This utilizes that and cleans and builds using mka.
- If no argument is supplied, it runs "mka clean".
- If argument is (bacon|otapackage|systemimage), it
runs installclean.
Change-Id: I582ac2f92df3278c41c254c73e9c02ad7f406851
(cherry picked from commit
eb74c2f2b9bb708e77edfdbb8ba0d0b716fef2fc)
(Also sneak in another minor change, a help entry for mkap)
Pawit Pornkitprasan [Mon, 22 Dec 2014 13:11:47 +0000 (20:11 +0700)]
build: fix dopush for SystemUI
The path for SystemUI has changed in Lollipop
Change-Id: Ib2126f48f6769e5f91d0aa1d44d4049bdbe1deff
Dan Pasanen [Thu, 18 Dec 2014 17:26:37 +0000 (11:26 -0600)]
releasetools: allow devices to specify a custom make_recovery_patch
Change-Id: I891660c1bf919b369afd4ff496fb6bab85dffe3f
Chirayu Desai [Tue, 16 Dec 2014 12:52:55 +0000 (18:22 +0530)]
Improve cmremote
Change-Id: I7e1f87ed92cddcf8df3ea4fd701f56a9ef806add
Steve Kondik [Mon, 8 Dec 2014 00:42:28 +0000 (16:42 -0800)]
build: Parse TARGET_COPY_FILES_OVERRIDES late in the setup
Change-Id: Ie3e4a168ff224e3b65e4627c0757e8813a02167f
dhacker29 [Tue, 2 Dec 2014 07:01:56 +0000 (02:01 -0500)]
Fix ro.build.product not found by ota_from_target_files in some cases
After I5dccba2172dade3dacc55d832a2042fce306b5f5 it was possible that
if override_prop was set and override_device was not set the script
was looking for a prop that did not exist.
Change-Id: I444a33de5bcb59f129bdcf631c2a6540c5926545
Ricardo Cerqueira [Sun, 30 Nov 2014 15:09:43 +0000 (15:09 +0000)]
otasigcheck: Go back to the key-rewrite check.
Using an intermediate file had the at-the-time unintended but good
side-effect of making execution failures (absent script, no
busybox in recovery, bad selinux setup) pass gracefully. Since this
check is intended as a blacklist, blocking the update when only
sure that breakage will ensue, that was a nice thing to get.
Checking the return code, while cleaner, is making non-key-related
failures like those mentioned above abort execution of the script.
The key itself isn't even checked, yet we're aborting because of it.
So go back to the original behavior: In case we're not sure... pass.
To do:
This can be cleaned up differently, and to the same effect, by returning
an explicit error code from the script and aborting when that error
comes up. Change the script to do that and come back here. :)
Change-Id: Ic9d7c3128047c25f31e2ef416c9df4d21ca0a1a8
Revert "otasigcheck: Go back to the key-rewrite check."
sigcheck now returns an explicit abort code
This reverts commit
bab150d79c7b9b1f233fc3592b69a42f0b38fbd8.
Change-Id: I2b5860ea427a4db7e29b55cc632b92c6e2910494
Cristoforo Cataldo [Sun, 30 Nov 2014 05:12:35 +0000 (06:12 +0100)]
core: Enable -mcpu=cortex-a9 flag for Cortex-A9 cpu variant
Change-Id: I9294a518bcdc21ccbae72eadd9f3c1a12982d028
core: armv7-a-neon.mk: Add missing endif
Change-Id: Id6f9c952d01d3c980115a52605d9c86038b3b5bd
invisiblek [Sat, 29 Nov 2014 17:14:13 +0000 (11:14 -0600)]
buildinfo: only set ro.build.product on non-unified devices
Change-Id: I5dccba2172dade3dacc55d832a2042fce306b5f5
Cristoforo Cataldo [Sun, 30 Nov 2014 01:06:42 +0000 (02:06 +0100)]
core: Enable -mcpu=cortex-a8 flag for Scorpion cpu variant
To be used with
http://review.cyanogenmod.org/#/c/77758/
Change-Id: I7ecc4707fa45bd7098165615c0521a12c85fb087
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
M1cha [Tue, 25 Nov 2014 14:30:48 +0000 (15:30 +0100)]
releasetools: ota_from_target_files: add FullOTA_PostValidate
Change-Id: I152412049f90fd546d4516cc064238c3192be553
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
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
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
Tom Marshall [Wed, 1 Oct 2014 14:33:51 +0000 (07:33 -0700)]
build: Use project pathmap for recovery
Change-Id: I6339ac77b899a43db21261d587252b65cb58ad79
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
Ricardo Cerqueira [Thu, 17 Nov 2011 00:13:29 +0000 (00:13 +0000)]
ota: Build uboot bootable images when necessary
Change-Id: I18996bb1f5377bbf369fb41774aaa1f5821e7d1f
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
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
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
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
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
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
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
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
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
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
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
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
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
Chirayu Desai [Tue, 19 Mar 2013 12:20:37 +0000 (17:50 +0530)]
envsetup: export ANDROID_BUILD_TOP earlier
Change-Id: Ia3497f61f4e9aaeeb793cecd3b4f488f0a48181a
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
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
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
Ricardo Cerqueira [Wed, 5 Nov 2014 19:58:59 +0000 (19:58 +0000)]
ota: Fix recovery-script cleanups in block mode
Change-Id: Iadb480f8062cfb7a0e6c9024e32ac0d71a7481d7
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
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
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
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
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
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