This can fix the error "/bin/bash: Argument list too long", if we get a
really long apk list.
Bug tracker Link: http://code.google.com/p/android/issues/detail?id=38937
Change-Id: I72258125c4297dfd9f8f502a96dbfa5a08f3cc50
Bug: 5368571
Now we have a phony target "tests" instead.
The target can be built in any other build variant (eg userdebug).
For example, "make PRODUCT-full-userdebug tests dist" will build and
put the *-test-* zip file in the dist dir.
The "tests" target will include all modules tagged as "tests" in
addition to other modules in specific target out directories.
Change-Id: I8383097380d8e6846c3e2107d6dd5f68788cfc39
Instead we should explicitly set up the dependency, if the module will
be used in the build process; Use LOCAL_MODULE_TAGS with eng, debug or
tests if the module is for testing; or add to PRODUCT_PACKAGES if it's
required by a product.
Change-Id: I326e97df6630dee4acc6582ce6cef2dec8289155
PRODUCT_COPY_FILES now is a list of words like <source
path>:<destination path>[:<owner>].
The optional :<owner> is used to indicate the owner of a vendor file.
Bug: 7048854
Change-Id: I435d1e18b7a091fb62513062cfc2e420e51557ec
If you try to build a recovery image without having built the main
system, creating the recovery resourc file can fail due to the
directory not existing.
Change-Id: I2daff847c0b58dfa519d0f742636f01dba28c689
Put the recovery UI images into a file in /system/etc where we can use
them for constructing the recovery image, so they don't need to be
included in OTA packages.
Change-Id: Iab2144865298c8967eb31660abd3bb11e6ec26fa
This patch adds BOARD_CUSTOM_BOOTIMG_MK. It is needed for some devices like
Sony Xperia S (LT26) because it needs a own bootimg format.
If BOARD_CUSTOM_BOOTIMG_MK is not set the build will be done in the normal
way, so other devices are not affected.
Change-Id: I66c8be6b107988d3238001e1dc612c044ed01aaa
Signed-off-by: Andreas Makris <andreas.makris@gmail.com>
The module names are phony targets and we should avoid having file targets
depend on phony targets.
Instead the build system makes sure to use the file dependency with
PRODUCT_PACKAGES.
Change-Id: I8dc59d8f9ed92c146b8827d71278e27214e60f3a
init used to automatically execute hardware specific init.rc files from
init.<hardware>.rc. If the hardware specific init.rc file was installed
in recovery.img, various unwanted services would try to start, so init*.rc
was deleted when creating the recovery root directory.
init was recently modified to explicitly import init.${ro.hardware}.rc
from the default init.rc, rather than always trying to load it. Since
recovery replaces the default init.rc with a custom one, it will never
try to load hardware specific init files.
In addition, there are cases where we need to start hardware specific
services, for example watchdogd, so we need
init.recovery.${ro.hardware}.rc to be installed.
Modify the build rule to delete the default init.rc from the recovery
root directory so it can be replaced with the custom recovery init.rc,
but leave all the hardware specific init files in place.
Bug: 6953625
Change-Id: I5d9555e3d54d2f1d9f49fb981bd412c53741337e
Arrange to take $(BOARD_MKBOOTIMG_ARGS) and pass it to all invocations
of mkbootimg from within make, and to store it in the target_files so
it can be used by future invocations of img_from_target_files and
ota_from_target_files.
Bug: 6918260
Change-Id: I7130ac52e96bd51d4d8b80ca036635e1626f01f1
- app_process is not in PDK, and this makes native debugging difficult
So provide symbol file instead of source
Bug: 6774048
Change-Id: I1a3a86cf64d8f1d22cdb3a22714f508de963099b
Set BUILD_EMULATOR to true when HOST_OS is linux.
Disable the emulator package target if BUILD_EMULATOR is not true.
Change-Id: I8987c0a091622baa0e861b451e635c4ddb148b29
Set BUILD_EMULATOR to true when HOST_OS is linux.
Disable the emulator package target if BUILD_EMULATOR is not true.
Change-Id: I8987c0a091622baa0e861b451e635c4ddb148b29
Include the MMAC install perms policy configuration
file to the list of SELINUX dependencies.
This changes depends on the project:
git.selinuxproject.org/~seandroid/selinux/mac-policy
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
Change-Id: Ief91d6a717741c91c5ba8745452bb247dc8048ec
This eases cross-repo dependencies between device/ and
vendor/.
Change-Id: I72e283d22f16e50555ec7ba7bcf9c61ea07f083c
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This ensures there is a dependency between the root image
and changes to property_contexts file.
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
Change-Id: I9bd2c3fc44015d6013e6a1f200f8abded271654f
Also fixes atree to accept an alternate command via the env var ATREE_STRIP
and correctly splits it for execvp if it contains arguments.
Change-Id: I8691bdc569bea3dddfde6249217dc305b6ef19f7
- make platform-java will add necessary Java stuffs from out/target/common/
to platform.zip
- make platform works as before: no Java libraries
- normal fusion build will pick up the file, and define TARGET_BUILD_PDK_JAVA
besides TARGET_BUILD_PDK if Java stuffs are included
- For TARGET_BUILD_PDK_JAVA, java.mk does not touch LOCAL_SDK_VERSION, which will lead into
pulling non-SDK Java APIs
Bug: 6482799
Change-Id: I90b1a0b06dc774150711680a6612f2b97b9eab3f
aapt is not needed for a dist build and not available in a pdk dist
build. Create a new list DISTTOOLS that dist builds depends on,
and change OTATOOLS to be DISTTOOLS plus aapt, which is build by
make otatools.
Change-Id: I9a39020640b0e2cade8073aa14ee2ada9a20d78b
PDK fusion builds will include system/etc/event-log-tags from a full
build from platform.zip, which needs to be merged into the event-log-tags
built locally based on *.logtags from projects that have source.
Bug: 6297675
Change-Id: I91409f37c6dc88d6942eade2946155c2a6640b6f
This allows us to have per-host OS (or OS + arch) atree files in case we
need to get tools which source varies per host OS, example:
- sdk/build/tools.linux.atree
- sdk/build/tools.linux-x86_64.atree
- sdk/build/tools.windows.atree
etc.
(cherry picked from commit 3ab307a68c)
Change-Id: I05140bb02ecd41152e47ecdf404b1b8fb34fdf24
With "foo bar : req", the build command will be run separately for foo
and bar.
Instead with "foo : bar" and "bar : req", the build command will be run
only once to produce both targets.
Also running the same build command concurrently may lead to build race
condition.
Change-Id: I8af2817546a7e2697a553c9320bd10f6bd4f20a2
Pass the file_contexts configuration to the releasetools scripts
so that the security contexts of files can be properly set for OTA
and update packages.
Requires Ica5fb73d6f2ffb981b74d1896538988dbc4d9b24
Change-Id: I5a63fd61a7e74d386d0803946d06bcf2fa8a857e
This configuration is used to determine the file security contexts
to set on the files in the yaffs2 or ext4 image that is generated.
This is similar to the android_filesystem_config.h tables for determining
the UID/GID/mode, but as a configuration rather than code.
Change-Id: I7c6f59fe7cb8bc4c86c8790f991b12dd93a61f68
Bug: 6241618
If platform appears on the build command line, build platform.zip,
which essentially is the zip package of the system directory.
Put the platform.zip to the dist dir if "dist" is specified too,
so the platform.zip can be downloaded from the build page.
Change-Id: I988dd5c753a4ee744b4e3dccf261d8df904d9847
(it was getting fairly complicated in bash),
update HTML output to have a table of contents,
and fix typos/bugs in notice file CSS
Change-Id: I51131f594e3bbe63f03165fa42f5ceeaec518543
BUILD_PDK and some of the other infrastructure will go away once
we're done with the new new PDK work, but for now don't disturb
that stuff.
Change-Id: Ia39bf759ec03f203858ddcc4880af72bd132cb5a
This allows us to have per-host OS (or OS + arch) atree files in case we
need to get tools which source varies per host OS, example:
- sdk/build/tools.linux.atree
- sdk/build/tools.linux-x86_64.atree
- sdk/build/tools.windows.atree
etc.
Change-Id: I9a1256548345fb866b0750fce6810913413dd946
The notice_files target generates $(TARGET_OUT_INTERMEDIATES)/NOTICE.txt and
$(TARGET_OUT_INTERMEDIATES)/NOTICE.html. The former is not needed and the
latter is an explicit dependency of $(TARGET_OUT_INTERMEDIATES)/NOTICE.html.gz.
We can therefore remove the target and the logic to generate NOTICE.txt.
Change-Id: I6179c049bebe590c7298e8be0a30e30265423468
Bug: 5153694
To build cache.img, set BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE (required,
ext4 only for now), BOARD_CACHEIMAGE_PARTITION_SIZE (optional) in
BoardConfig.mk.
Change-Id: I1d8b91646aa1dba88285e008ad3335768bcbddd2
Bug: 5398808
Before this change we have duplicate code in the Makefile and the
python-based releasetool. That's a real headache to maintain.
Change-Id: I8ddf04a79c6886540e89d990f723d8f77c9dd883
The fingerprint should only say dev-keys if it's actually using custom
keys; builds with the old default (from build/target/product/security)
should still say test-keys.
Change-Id: Ib8c662c348cf63f5db47e2f8f81bc3246cb15fdc
Generate an empty target even if there is no packages defined in the
source tree. Such case can happen when building in an unbundled branch.
Change-Id: Id8b94bc00557cd5ea2066859e440427474ced5f5
Bug: 5265104
- Move installed-files.txt forward to ahead of system.img in the
dependency graph, so that even if the system.img fails to build due to
too large size we can still get the size stats.
- Change the script tools/fileslist.py to sort items in decreasing size.
Change-Id: I5913bc51971e341ffbfcf3fa449c987f126e409b
Save these in the target_files so we don't have to depend on using the
contents of android_filesystem_config.h at the tip of tree.
Bug: 5266067
Change-Id: Ica5dd43a2013c9db72d7c9434f9d7de1abaf18f9
This patch defines the DLL_EXTENSION variable to the host
shared library suffix (i.e. either ".so", ".dll" or ".dylib")
when packaging the SDK.
This is required by another patch to sdk/build/tools.atree that
will use ${DLL_EXTENSION} to copy the GLES emulation host libraries
to $SDK/tools/lib
Change-Id: I120d39e905afb453b0702d5f0eb2707f214385cc
This patch allows development/sdk/ to provide ABI-specific .atree
files. This is useful to copy prebuilt CPU model-specific files
to the SDK platform image directory.
This is needed to deal with the fact that for ARMv7 platform builds,
the kernel image to use is prebuilt/android-arm/kernel-qemu-armv7 instead
of prebuilt/android-arm/kernel/qemu
Change-Id: Icdca751852c01421fccf196436a9bc1114ea90f7
We need this to allow products to specify the default USB configuration,
and allow the build system to add adb to this configuration
for eng and userdebug builds.
For example:
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
persist.sys.usb.config=mtp
Change-Id: I83d7d918e57a8117eb96919e17d8ad52afdc0388
Signed-off-by: Mike Lockwood <lockwood@android.com>
When the build is invoked with the fake target "sdk_repo" and
a main target of sdk, win_sdk or sdk_addon, we now create
packages in DIST_DIR that can directly be used to populate the
SDK Repository.
This is quite close to how we actually distribute the SDK.
Change-Id: I863ac8baf159432d7c95df46cba6e4f3b9122629
The purpose of this patch is to add the ability to specify a
target-specific extension to sdk/build/tools.atree, under the
name sdk/build/tools.$(TARGET_ARCH).atree
This is needed to move x86-specific changes out of tools.atree
in order to fix the build of internal Android branches that
don't include other x86-related changes to the build system.
Another patch, following this patch, will fix the build itself
by moving the x86-stuff to sdk/build/tools.x86.atree.
NOTE: The root cause of the problem is that tools.atree
probably shouldn't be in the public AOSP repository, but
under development/build/ instead. However, fixing this
requires more drastic changes to the build system.
Change-Id: Ie365c55527bcad38e1e5248f618e2fd5a96431a1
Change-Id: I1fc3cb491d593d3e28f90278cfc8de5d77852932
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
When the build is invoked with the fake target "sdk_repo" and
a main target of sdk, win_sdk or sdk_addon, we now create
packages in DIST_DIR that can directly be used to populate the
SDK Repository.
This is quite close to how we actually distribute the SDK.
Change-Id: Ie7e0f789bafd73d5ee2461349155a6e562e2edd9
Before this change, to build APKCERTS_FILE you have to build any modules
in the system first, which include modules that only need to be checked,
instead of being built. This can reduce the build time when "dist" is
specified.
Change-Id: I64bee67977adcaf7b7c8df3f8f6492c9c33bc69d