OSDN Git Service
Gabriele M [Tue, 10 Jan 2017 22:14:12 +0000 (23:14 +0100)]
ota_from_target_files: Remove device dependent arguments
These device-specific arguments are defined at build time and are
necessary to generate the zip correctly. Don't use command line
arguments to specify them, but write all the needed information
in misc_info.txt when the target-files zip is generated.
ota_from_target_files will then read misc_info.txt and set
everything automatically.
Change-Id: Ibdbca575b76eb07b53fccfcea52a351c7e333f91
Tom Powell [Sat, 21 Jan 2017 04:47:49 +0000 (20:47 -0800)]
releasetools: support reading release keys out of some sort of command
key passphrases may live in some sort of secure storage, support running
an arbitrary command to retrieve them.
Change-Id: I49862cf60f1b73a2356e0c492e1038beef28a95f
(cherry picked from commit
9caf8603575aecf51761feaeac6db619be76cfd3)
Gabriele M [Wed, 11 Jan 2017 15:11:57 +0000 (16:11 +0100)]
releasetools: Add script to sign zips
Change-Id: I9cbeb6edea79a7e9bb0fc692e53497b54058d67f
(cherry picked from commit
040a8b007974c6cb56d361d6db8ba96f9b63da10)
Adrian DC [Wed, 18 Jan 2017 23:41:12 +0000 (00:41 +0100)]
build: Warn about prebuilt apk in PRODUCT_COPY_FILES
* Show a warning if an apk is found in PRODUCT_COPY_FILES
* Partially reverts "build: Disable check
for blocking prebuilt apk in PRODUCT_COPY_FILES"
Change-Id: I4830c4f46b1ee33d916d015b6ed02d02ecf7faa3
Arne Coucheron [Tue, 17 Jan 2017 20:53:18 +0000 (21:53 +0100)]
build: Disable check for blocking prebuilt apk in PRODUCT_COPY_FILES
Sometimes we have broken packages due to newly introduced bugs, so some
people might want to be able to ship prebuilt working packages.
This will make them able to, like in all previous ROMs.
Change-Id: Ic3171ce220b04ee18ed47016a030f1d93a7ec43d
Sam Mortimer [Tue, 17 Jan 2017 20:30:20 +0000 (12:30 -0800)]
build sign_target_files_apks.py: clean tmp on exit
Currently, this script creates and leaves nearly 2GB in tmp
per run. Clean up on exit.
Change-Id: I4247dd2508e9d27de57c611c18e70800d7a47f33
(cherry picked from commit
462425468899f264155a3413aab75a099d1bbd25)
Matt Mower [Tue, 10 Jan 2017 19:48:56 +0000 (13:48 -0600)]
Revert "build: Enable custom ccache cache dir for Android"
Developers can specify ccache parameters by sourcing a personal build
environment script before envsetup. For example:
CMHOME=$HOME/android/cm
export USE_CCACHE=1
export CCACHE_DIR=$CMHOME/.ccache
$CMHOME/prebuilts/misc/linux-x86/ccache/ccache -M50G
# Maybe someday, currently not supported in ccache 3.1.x
# echo "max_size = 50G" > "$CCACHE_DIR/ccache.conf"
This reverts commit
d99981e6f2576d5fcce8bc5f6255407184b2de16.
Change-Id: Ic7b36a6d61269647aec022a86570cfa2068f65d7
Dan Pasanen [Sun, 8 Jan 2017 07:01:52 +0000 (01:01 -0600)]
core: move platform-specific helper macros to target makefiles
* These (qcom specifically) are now needed sooner than we had
previously been importing them. Move to vendor/cm and include
them within their <platform>_target.mk makefiles.
Change-Id: I06c6ab66446e2f0b54c245cf6c2cf665b649e0c9
Luca Stefani [Thu, 5 Jan 2017 15:30:15 +0000 (16:30 +0100)]
build: Replace pushd with cd
* For consistency
Change-Id: I96711e3be7b73ebadd589f460e5c5e90d000a4f7
Michael Bestas [Fri, 6 Jan 2017 23:38:09 +0000 (01:38 +0200)]
Merge tag 'android-7.1.1_r9' of https://android.googlesource.com/platform/build into cm-14.1
Android 7.1.1 release 9
Michael Bestas [Fri, 6 Jan 2017 23:38:00 +0000 (01:38 +0200)]
Merge tag 'android-7.1.1_r6' of https://android.googlesource.com/platform/build into cm-14.1
Android 7.1.1 release 6
Luca Stefani [Sun, 1 Jan 2017 20:45:07 +0000 (21:45 +0100)]
lunch: Use cd - instead of popd
* ZSH breaks a lot of things.
Change-Id: Idee8485bee673bebf6fe5857253306b20aa92eb5
Matt Mower [Mon, 2 Jan 2017 08:31:27 +0000 (02:31 -0600)]
envsetup: Tweak nested executed commands
$(( causes some text editors to expect arithmetic is incoming and then
syntax highlighting is thrown off for the rest of the script due to
missing )). Include a space before the subshell command to help
distinguish the nested command.
Change-Id: I5bae8f32b3c70ac460681fcfde1df0febbe554fd
Matt Mower [Mon, 2 Jan 2017 08:24:58 +0000 (02:24 -0600)]
envsetup: Combine nested else; if into elif in check_product()
Change-Id: I2ea97b892d6e3d0beab2910ae88143b1c213608c
Zhao Wei Liew [Sun, 1 Jan 2017 07:23:10 +0000 (15:23 +0800)]
build: core: Rebrand CM_VERSION to LINEAGE_VERSION
Change-Id: Ie169e28c6992b9ed474641dec2b9244eb1a3bd38
Simon Shields [Wed, 28 Dec 2016 00:31:07 +0000 (11:31 +1100)]
build: support lineage device trees
Change-Id: I087a97e31cab2ccfba16b5378cef429785baf7d0
Luca Stefani [Wed, 31 Aug 2016 13:12:01 +0000 (15:12 +0200)]
core: Fix build_{date,number}
Change-Id: I81e6cb0e5e191f669bb665207d71f28f3fa19581
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
binary: Don't run protobuf header relocations if origin/target are the same
Change-Id: I3746746bdf1526674f345d884e2eccef85e946ef
build: Fix LOCAL_PROTOC_OUTPUT
* This code was refactored in 7.1 adjust accordingly.
* This is used by projects like ril-caf where the proto-c generated
sources dir might not match the project path.
Change-Id: I7a7d0bb7a397b02deb5406a591059a877ac2c6da
Dan Pasanen [Thu, 29 Dec 2016 20:58:32 +0000 (14:58 -0600)]
core: finish using PRIVATE_RECOVERY_OUT rather than hard-coding "RECOVERY"
* This macro was added for a reason, that reason being for devices
without a dedicated recovery partition (marlin/sailfish for example?)
* Use it
Change-Id: Ieb08d498f1e201a01557b40aac8a30df26c97673
Dan Pasanen [Mon, 19 Dec 2016 17:23:13 +0000 (11:23 -0600)]
core: we're now lineage
* Change necessary bits to support our project move
Change-Id: Ie6a04eec45b6eb9f6f76f29e3163abd3f95f5da6
Zhao Wei Liew [Wed, 21 Dec 2016 00:33:26 +0000 (08:33 +0800)]
build: Ensure that we can always find the CM envsetup script
Change-Id: Ie145a2667cd14f7e4e4622a0d8b46f1e01c0b3c3
Luca Stefani [Sun, 18 Dec 2016 15:57:49 +0000 (16:57 +0100)]
envsetup: Split cached vars
* Broken after ZSH v5.3
Change-Id: I99febebfa22efd702c2dea13369a9dd90f8e6120
Dan Pasanen [Fri, 2 Dec 2016 02:06:14 +0000 (20:06 -0600)]
core: allow specifying building ramdisk(s) with lzma
* Add a flag that specifies which ramdisk(s) to compress with lzma
* If not specified, fall back to gzip
* Example: LZMA_RAMDISK_TARGETS := boot,recovery
Change-Id: I9cce4da90343fb6dfb7039863649e37d78262726
Dan Pasanen [Tue, 6 Dec 2016 15:45:46 +0000 (09:45 -0600)]
blockimgdiff: plz don't spam my terminal, thx
Change-Id: I44b1e7b2725e781ea65209f1b26f521f12a67a00
Gabriele M [Tue, 29 Nov 2016 14:56:50 +0000 (15:56 +0100)]
build: Conditionally disable ccache for modules with FDO enabled
ccache supports the compiler option -fprofile-use since v3.2. If the
current wrapper is ccache v3.2 or newer, don't disable it when FDO
is turned on.
Change-Id: I506010173f60b791eae0d65afeac36995c57dbe6
Luca Stefani [Tue, 29 Nov 2016 20:41:05 +0000 (21:41 +0100)]
binary: Append cc/cxx wrapper to sdclang
* Make ccache great again
Change-Id: I20da69f3f8ce695e7e5e4bdd06f7436cc5331003
Steve Kondik [Tue, 8 Nov 2016 20:51:59 +0000 (12:51 -0800)]
build: Require devices to opt-in for SDCLANG
* Only devices which see a measureable benefit should use this
since it requires more resources to build.
* Set TARGET_USE_SDCLANG to true in your BoardConfig if your
device benefits from it.
Change-Id: I12ee20b0627ff0ca121d653cde482e5449a768cc
AndropaX [Wed, 2 Nov 2016 06:10:46 +0000 (07:10 +0100)]
build: Increase diff timeout
This sometimes breaks packing on weak PCs
Change-Id: I1f10ef8b046e06be865d9e5213095afae251a29d
Martin Blumenstingl [Sun, 6 Mar 2016 21:06:28 +0000 (22:06 +0100)]
Fix a race condition while building the recovery patch (needed for msm8226)
RECOVERY_PATCH_INSTALL has a dependency on RECOVERY_FROM_BOOT_PATCH.
This is correct, because RECOVERY_PATCH_INSTALL uses make_recovery_patch
which needs the imgdiff tool. imgdiff on the other hand is a dependency
of RECOVERY_FROM_BOOT_PATCH. This should ensure that all dependencies
are met.
However, RECOVERY_FROM_BOOT_PATCH is defined after
RECOVERY_PATCH_INSTALL, making the dependency effectively non-existant.
Moving RECOVERY_FROM_BOOT_PATCH before RECOVERY_PATCH_INSTALL fixes a
race-condition where sometimes imgdiff was not build before
RECOVERY_PATCH_INSTALL is called.
Upstream is not affected by this bug, since it does not contain
RECOVERY_PATCH_INSTALL anymore.
The following error can be observed whenever someone hits this race
condition (which is basically always reproducible when building with
-j1):
Installing recovery patch to system partition
Warning: could not find SYSTEM/build.prop in <built-in function zip>
using prebuilt recovery.img from BOOTABLE_IMAGES...
using prebuilt boot.img from BOOTABLE_IMAGES...
Traceback (most recent call last):
File "./build/tools/releasetools/make_recovery_patch", line 55, in <module>
main(sys.argv[1:])
File "./build/tools/releasetools/make_recovery_patch", line 51, in main
common.MakeRecoveryPatch(input_dir, output_sink, recovery_img, boot_img)
File "build/tools/releasetools/common.py", line 1461, in MakeRecoveryPatch
_, _, patch = d.ComputePatch()
File "build/tools/releasetools/common.py", line 1146, in ComputePatch
p = Run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
File "build/tools/releasetools/common.py", line 100, in Run
return subprocess.Popen(args, **kwargs)
File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1335, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
build/core/Makefile:1047: recipe for target
'out/target/product/t00n/system/bin/install-recovery.sh' failed
Fixes:
3d1c612e5c82 ("Revert "Revert "core: Makefile: Build
install-recovery into the system image""")
Change-Id: I28e8c845ffc830553ca5177cbe22ae72b185b437
Michael Bestas [Thu, 25 Aug 2016 21:37:02 +0000 (00:37 +0300)]
Source CM specific envsetup
Change-Id: I39d3e711a6beab47e3284919a9a4fef15b0f40b9
Simon Shields [Fri, 7 Oct 2016 06:18:33 +0000 (17:18 +1100)]
ninja: increase maximum suffix length
HFS+ and ext4 both support filenames up to 255 characters in length.
It should be ok to allow longer suffixes. This fixes mmp in places with
long paths (where otherwise the build system defaults to using md5sum
for the suffix)
Change-Id: I93e39875470417ce1b0febe7a9e0da37b56b5b00
Luis Vidal [Wed, 13 Jul 2016 22:16:08 +0000 (15:16 -0700)]
Add LOCAL_AIDL_FLAGS
Allow modules to define custom AIDL flags
Change-Id: I5609e6eb0a10d441cea2556179c8496293116dcf
Quang Ngô [Sun, 25 Sep 2016 03:08:49 +0000 (10:08 +0700)]
We want Browser
See: https://git.io/viAru
Change-Id: I6f68e3e5cb09a8b64a8869396bb43c76e9bc181b
SteadyQuad [Tue, 4 Oct 2016 09:36:18 +0000 (11:36 +0200)]
Show complete command with args when ComputePatch fails
When Difference.ComputePatch() failed for some reason, only
the first part of the failed command was show with the error,
not all arguments.
old (simplified):
WARNING: failure running ['imgdiff', '-b', '/tmp/recovery-resource.dat']:
new:
WARNING: failure running ['imgdiff', '-b', '/tmp/recovery-resource.dat',
'/tmp/tmpSsy_kf', '/tmp/tmpOMCXSn', '/tmp/tmpA3FtZw']:
Change-Id: Id8b498df3ed7934815430e4b4c2651ef4aa781c6
Dan Pasanen [Wed, 21 Sep 2016 13:31:42 +0000 (08:31 -0500)]
ninja: use host's ninja if it exists
* For whatever reason mainline ninja improves my build significantly
* Allow users to bust out of using whatever binary is provided with the
build system and use their own copy if they have it installed
Change-Id: I14dbb7b9d8a028d1b0f16e136a8310584df329be
Zhao Wei Liew [Mon, 8 Aug 2016 23:24:10 +0000 (07:24 +0800)]
build: Allow both OpenJDK and OracleJDK by default
Some users would like to build with Oracle JDK on Linux,
while others would like to build with OpenJDK on Darwin.
CM should build fine with either configuration, so drop
the OpenJDK checks to allow both of them.
Change-Id: I64d7887c2fab4dd301b07d7df0d19f28e97d80ab
Anthony King [Sun, 8 Feb 2015 03:19:03 +0000 (21:19 -0600)]
build: use the system's ccache by default
* ccache gets updated semi-frequently and some builders would like
to be able to take advantage of new features without having to
rely on the prebuilt version getting updated
* If a build system has ccache installed already, use that version
instead of the prebuilt
Change-Id: I8988c8a25fab3694d84633f957c2b92ce84cf69e
Alexander Martinz [Thu, 15 Sep 2016 17:26:49 +0000 (19:26 +0200)]
support macOS sdk 10.12
Change-Id: Ief6c7141303f8f431d95d330b87293d67bcc1386
Signed-off-by: Alexander Martinz <eviscerationls@gmail.com>
Brandon McAnsh [Thu, 1 Sep 2016 04:22:53 +0000 (21:22 -0700)]
Revert "main: Use date -d on OSX"
Operation not permitted using -d
Needs to be looked into
This reverts commit
b4bf8caf60c2d61b1dc41d635b68081e57a77d55.
Change-Id: I54799e64d31ee6204523e3c51f2fb28ef10a3281
flintman [Wed, 17 Dec 2014 13:25:44 +0000 (08:25 -0500)]
libart: Allow adjustment of the base address
On some devices the base address may need to be adjusted to
prevent overlapping of memory. This will allow the adjustment
to take place in the boardconfig.mk
Change-Id: I17da0301960f1b0183db20b7b592eb1efd28343d
Dan Pasanen [Mon, 5 Sep 2016 23:38:05 +0000 (18:38 -0500)]
build: remove dotfiles on a make clean as well
* kati & ninja create dotfiles (example: .ninja_log) in out/
Change-Id: I83ffd1c26a37f7ffef45fd4598435db93058ab67
dianlujitao [Sun, 4 Sep 2016 11:09:53 +0000 (19:09 +0800)]
build: Don't create /system/vendor symlink in recovery ramdisk
* Sometimes we want to put some private recovery resources there.
Change-Id: I0cfa68ad92872cef654dbe1c71a536f7a950e53f
Dan Pasanen [Mon, 5 Sep 2016 23:17:44 +0000 (18:17 -0500)]
build: don't dex preopt by default on linux
Change-Id: I7726cb87da576d1fcc59a4a3108e5a7ca2bf5304
Ricardo Cerqueira [Wed, 7 Sep 2016 23:13:56 +0000 (00:13 +0100)]
build: Fix a few mis-merges
Change-Id: I6b785bbef48babac21aeb6c4d90999830ddad50d
Ricardo Cerqueira [Wed, 7 Sep 2016 23:05:21 +0000 (00:05 +0100)]
build_image: Unbreak verity/FEC generation
Change-Id: Icbd36b11659ced7764599c5d2e0e91be67a3e4bc
Chris Sarbora [Wed, 17 Dec 2014 22:41:04 +0000 (14:41 -0800)]
Allow finer control over how product variables are inherited.
Change-Id: I3abc22eea94293d1d0ebf0a81b396ebea0baf5a8
(cherry picked from commit
29357f5ea1dd8507f70efc330b2e5966d13504e8)
Michael Bestas [Sun, 11 Oct 2015 16:10:28 +0000 (19:10 +0300)]
Revert "Remove mkyaffs2image references."
* Can be enabled on devices that need it with TARGET_USERIMAGES_USE_YAFFS
This reverts commit
65d4186f85ddd8c3f6d0c521f31911cceee573c1.
Change-Id: I891f2e6a963178ffec92fedb25e7e28c60a768d1
Brandon McAnsh [Thu, 1 Sep 2016 04:47:46 +0000 (00:47 -0400)]
Add WITHOUT_CHECK_API guard around checkapi
* Granted we should never not check the API, the flag was added
so we need to account for it
Change-Id: Iae58ab6484c5c72904cae30e74f5ea1e89a86618
Signed-off-by: Brandon McAnsh <brandon.mcansh@gmail.com>
Simon Shields [Sun, 28 Aug 2016 13:52:24 +0000 (23:52 +1000)]
build: add BOARD_GLOBAL_C[PP]FLAGS to TARGET_GLOBAL_C[PP]FLAGS
* workaround these being reset after BoardConfig.mk is run
Change-Id: Ibe984d862df0e1a5910ea80a66c44d599c299f10
Brandon McAnsh [Wed, 31 Aug 2016 02:24:18 +0000 (22:24 -0400)]
main: Use date -d on OSX
* OSX doesn't have an -r flag on date
Change-Id: I04cb58366926418fb9b05482514800a5a72af0e1
Signed-off-by: Brandon McAnsh <brandon.mcansh@gmail.com>
Luca Stefani [Tue, 30 Aug 2016 22:38:04 +0000 (15:38 -0700)]
build: Re-add I_WANT_A_QUAIL_STAR
* This partially reverts commit
c7d6cc2a9cda88c8b110f69d8e121a732d570aa7
* Move cmsdk check to checkapi-cm, android checkapi shouldn't be
under this ifeq
Change-Id: Ia7c9853cc5f978ed533f2879367428eb1d64bd46
Chirayu Desai [Fri, 26 Aug 2016 16:43:51 +0000 (22:13 +0530)]
envsetup: fix lunch
Change-Id: I9dea4605857741132b8d10143c20d4bd7829086a
Luca Stefani [Fri, 26 Aug 2016 19:18:56 +0000 (14:18 -0500)]
build: Don't add cm jars if cm sdk is disabled
Change-Id: Iaec955e1738cd644d879db0c38d66d250c24ce91
Dan Pasanen [Thu, 15 Oct 2015 14:10:50 +0000 (09:10 -0500)]
releasetools: don't attempt to read fingerprint on unified devices
* You wont find this in the build.prop on these devices and this is
how we handled them in previous versions
Change-Id: I56332c87916da1a1206980df0e7a6ca8a55f0e8e
Christopher N. Hesse [Wed, 16 Sep 2015 12:29:36 +0000 (14:29 +0200)]
All operating systems are beautiful
Thou shalt not discriminate OS X.
Change-Id: I9c993d44ca74cb15631ea25d6105a3398ea57e95
Rashed Abdel-Tawab [Wed, 24 Aug 2016 19:22:56 +0000 (15:22 -0400)]
build: Add build flag to disable CMSDK usage
Change-Id: Ib4d966b1bcc5cf1578a28c0fcd3f9077c14af573
Michael Bestas [Sun, 6 Dec 2015 23:21:59 +0000 (01:21 +0200)]
core_minimal: Change make_f2fs to mkfs.f2fs
Change-Id: Ic95ea804a4dffb3af5ea5ba7e495bb5175281a78
Rashed Abdel-Tawab [Tue, 23 Aug 2016 19:58:56 +0000 (15:58 -0400)]
Add workaround for iTerm2 integration on macOS
Elektroschmock [Wed, 17 Aug 2016 18:30:50 +0000 (20:30 +0200)]
core_minimal.mk: Remove duplicate packages
Change-Id: Iaf7833334985450576ffb0a8d1b1babf39fcb63a
Steve Kondik [Mon, 8 Aug 2016 06:07:32 +0000 (23:07 -0700)]
build: Source a CM-specific global BoardConfig
* Read vendor/cm/config/BoardConfigCM.mk. Kind of surprised we haven't
needed this until now.
Change-Id: I91cd89b14f6a5975e91f15dcfce1070502aa3861
Ricardo Cerqueira [Mon, 11 Jul 2016 10:17:56 +0000 (11:17 +0100)]
build: Use the password manager for the verity key if possible
If we're operating with a password dict, try to use it for verity
Change-Id: Ie0e8e33c873fc9f1ae9bd6da559f9cbbced183e9
Ref: CYNGNOS-3156
Ricardo Cerqueira [Mon, 4 Jul 2016 15:34:19 +0000 (16:34 +0100)]
build: Let the verity signer and metadata builders ask for a password
Don't grab stdin/out for these tools. We want to know when a password
is being requested (and be able to actually provide one) if the corresponding
key needs it
Change-Id: I8dd439322b7d8942adc9ce7ce0912fb20c69654f
Ref: CYNGNOS-3156
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
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
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
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>
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
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
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>
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
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
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
Khalid Zubair [Wed, 2 Mar 2016 21:57:01 +0000 (13:57 -0800)]
build: add cmts config to global build
Change-Id: I554840be954545ab7637c9e5a6fcc7cb5a5da7c1
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
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
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>
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
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
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
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>
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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>
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
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
Rashed Abdel-Tawab [Wed, 24 Aug 2016 04:00:56 +0000 (00:00 -0400)]
build: Remove extra $ to properly parse build number file
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
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