Now that we have two supers for retrofit devices, modify
the size checks. Only A/B devices launched with dynamic partitions
will get the / 2.
Test: builds
Bug: 116608795
Change-Id: Icdddcc0b3f3be307b3907e1c789933c2ace61867
TARGET_FLATTEN_APEX, when set to true, flattens APEXes that are on
/system. Flattening an APEX means files in it are not packaged as a mini
file system image, but exist in the /system partition as individual
files. This option is for devices where kernel does not support loopback
devices or the maximum number of loopback devices is too small (though
the threshold is TBD as of now).
Bug: 118485880
Test: TARGET_FLATTEN_APEX=true m apex.test; tree
out/target/product/.../system/apex/apex.test shows list of files in it.
Test; m apex.test, then a file out/target/product/.../system/apex/apex
.test.apex exists.
Change-Id: Ie13cb062c1387d55689692ba2b123e606ada8aa4
asan builds create many artifacts that normal builds do not, and
are only used for testing. Disable artifact requirements for them.
Bug: 119270428
Test: build internal asan product
Change-Id: I8692ee7e8916d40a8a787c3a07dcf7d677b19cab
$(align-package) uses $(ZIPALIGN), add it as a dependency to the
rule.
Bug: 119403628
Test: rm out/host/linux-x86/bin/zipalign && m out/target/product/sailfish/obj/APPS/SystemUI_intermediates/oat/arm64/package.odex
Change-Id: Iffc9506fd3168481ad998c5d8423ed4e13e6d11b
Filter out the relevant deps for /vendor, /product and
/product_services, and make the /system version depend
on the rest.
Also filter out phony packages, which do not produce
license files on their own (though their deps might).
Bug: 118089975
Test: diff blueline notice files before and after
Change-Id: Idc621b16237dfecafd0befa742c8d3b93be1f611
Move things around so that we don't need to check whether
we're in the "split license file mode" over and over, and
some other moves to improve readability.
Also rename the html_or_xml variables to the correct name
given the branch of the conditional we're in, to make it
easier to grok.
Bug: 118089975
Test: diff notice files for blueline before and after
Change-Id: I00fcdce31503c543c6c0ab6901531c54c9705617
Newer cores are implementing armv8-2a ISAs.
Enabling 2nd arch. variant to support for new type of cores.
Test: set TARGET_2ND_ARCH_VARIANT := armv8-2a, build without warnings and not ignore armv8-2a
BUG: 118414869
Change-Id: I1cd64ab0ad9b253ec3d109ebd1dbc7882011ce77
This adds BOARD_SUPER_PARTITION_BLOCK_DEVICES, which must contain a list
of the (non-A/B suffixed) partitions that will comprise the super
partition. It is only intended for devices which cannot have a partition
named "super". For each entry, there must be a
BOARD_SUPER_PARTITION_x_DEVICE_SIZE variable defined with the exact size
of that partition (not its image size). The sum of these sizes must be
equal to BOARD_SUPER_PARTITION_SIZE.
Bug: 116802789
Test: device with BOARD_SUPER_PARTITION_BLOCK_DEVICES builds
Change-Id: I1a79c2e08ca99ce7e42207893ef3285caffecf44
-e should be provided multiple times to pass a list. This fixes
stripping of the NOTICE file on /system to not have /product,
/vendor and /product_services entries in it.
Previously it was trying to stirp entries from the
vendor,product,product_services subdir.
Bug: 118089975
Test: m sync, inspect NOTICES file
Change-Id: I7c336b1c593565a98aa4976305f8b69bbd0c09b5
Factor out the json functions from soong_config.mk, and extend them
to support maps.
Bug: 119412419
Test: no change to soong.variables
Change-Id: Ieea08fdd2aa202f60945103e3ca82538f098a942
To avoid duplication, we would only ship one copy of the target llvm
runtime library. Change the source path to Linux on Darwin host.
Test: m checkbuild
Bug: 119288831
Bug: 119270185
Change-Id: Ie32d65d6647765a5060078cc61a089e5a47c3a36
Builds just the files on /system, but not system.img. Like sync,
but just for /system.
Test: m syncsys
Change-Id: Ic5fc60d79d20315a5aca031dff5e2394e58d6b1c
Reflect a name change.
* PRODUCT_USE_LOGICAL_PARTITIONS is deprecated and
will be removed in the future.
* ro.boot.dynamic_partitions is created. ro.boot.logical_partitions
will be removed once all the usage is removed.
Bug: 119286600
Test: builds
Change-Id: I5cb8bb1f5ebcee893fbef3a0f047c32de8773830
Path requirements can get in the way when developing, so
provide a way to disable them on the command line.
Bug: 80410283
Bug: 119025354
Test: lunch mainline_arm64; DISABLE_ARTIFACT_PATH_REQUIREMENTS=true m nothing
Change-Id: Ia44b73f3013a0ea218bd9a361037269c7557da9e
Makes pretty-error and pretty-warning behave more like $(error) and
$(warning), where you don't need to do things like quote parentheses.
Bug: 118833208
Test: trigger the private_apis && sdk set error in sdk_check.mk,
which no longer produces bash syntax errors
Change-Id: I766ff98ad4e652f59dbef9dd5654f1cd10a2d038
This fixes a bug where cross host OS notice dependecies were incorrectly
added and caused missing file errors.
Bug: 36073965
Test: Manual build + inspection
Change-Id: I3983ad6158acf939842f836fe3f44cecf9187087
The path is incorrect on Darwin. Changed to use $(HOST_OS) instead.
Fixes Darwin build.
Bug: 29275768
Test: Forrest
Change-Id: I164306ad2237bce86baf37d3291622a709bfe8f3
Some projects can't be built with libcrt_builtins yet.
Bug: 29275768
Test: m checkbuild
Change-Id: I52805f5dece6395024683d07809c4b8905dab631
Merged-In: I52805f5dece6395024683d07809c4b8905dab631
(cherry picked from commit 2a401bea9e)
libgcc is kept behind libcrt.builtins to provide unwinder symbols and
any other missing symbols.
Bug: 29275768
Bug: 119007754
Test: m checkbuild
Change-Id: Ifb16ed87afc3391f8830d771971315515f929235
Merged-In: Ifb16ed87afc3391f8830d771971315515f929235
(cherry picked from commit b9d8932279)
The PDK unzip logic does not place all the files in the same directory
it would place a zipfile, but instead inside a directory of the same
name:
a/b/platform.zip!pdk.mk
turns into:
a/b/platform/pdk.mk
So fix the PDK_FUISON_PLATFORM_DIR autodetection to take this into
account. Also don't create touch rules for the pre-extracted java files.
Bug: 118776469
Test: try building the PDK with PDK_FUSION_PLATFORM_ZIP set, and files extracted
Change-Id: Ib27d12aba773a5e6bd41fcbe8945a0bc31b8c281
Catch docs breakages in TreeHugger by building docs as part of
checkbuild targets.
Bug: 118815658
Test: m checkbuild
Change-Id: I7e71b176c680f269730d4bf98369a96138c0ee8a
Only attempt to zip2zip the bundle parts/res.zip if it was created
because of full_classes_jar or PRIVATE_EXTRA_JAR_ARGS.
Bug: 117295826
Test: m dist on unbundled target with no resources or classes
Change-Id: I6072b29c7331201f33d196c24154f9947b4b0053
This property is not device-generic, as it's used for things like
whether the product is phone/tablet/other and whether it has an
sdcard or not.
Bug: 118618261
Test: adb shell getprop ro.build.characteristics for aosp_blueline
Change-Id: I6bbf1d4c36d7f37f92c67bebde58d72aba9d0852
This change collects the shared libraries files used by tests in
suite, and deploy the files to testcases/lib*. The shared libraries then
can be zipped in general-tests.zip and device-tests.zip. And the host
test can be run in TradeFed host based on build artifacts.
Bug: 111486845
Test: m -j general-tests; m -j device-tests
Confirm the test can run in testcases directory:
out/host/linux-x86/testcases$ ./net_test_avrcp/x86_64/net_test_avrcp
unzip general-tests.zip, confirm net_test_avrcp can run.
Change-Id: I4f9322118aa4891226ea318cbd1bcee6ca48b050
Soong is already checking for reasonable paths, and it supports
generated test data as well, which this does not.
Test: OUT_DIR=$PWD/out m nothing
Change-Id: I62dd09b74f0f3347930fd51c213e2f66c7dfeb2d
They are executables, but they are not EXECUTABLES.
Bug: 112438058
Test: make SANITIZE_TARGET=hwaddress tests
Change-Id: I0f5d8d6259d7df4196bde50ec553b73099f2c8ac
For sanity, and to silence the error of not setting
PRIVATE_PLATFORM_APIS or LOCAL_SDK_VERSION.
Exempt framework-res from this, as it can't build against the SDK.
Also tweak the previous whitelisting to be more specifically for
framework-res.
Bug: 118823052
Test: make downstream products
Change-Id: Ia15aaa3b1ea95e02e3483673b668ed2cbca76ba9
This reverts commit afc4604f67.
Reason for revert: zip2zip fails for multiple resources with the same name in different directories
Bug: 117295826
Change-Id: I807dffdaced999b5514ff49fb732a461c1fc90a2
On PDK builds, we sometimes end up with multiple entries in
INTERNAL_SYSTEMIMAGE_FILES, if we've got the definition for it, and it's
in PDK_FUSION_SYSIMG_FILES. This causes us to define multiple rules in
sdk_font.mk, leading to overriding commands errors.
Bug: 118634643
Test: attempt PDK build
Change-Id: Ieb4f46c0eece96cf246197af4b03e693493cc6a1
Previously, all the UnsupportedAppUsage annotations were assumed to be
in the same target as was used at runtime. e.g. frameworks,
core-libart, etc. This change allows separate targets to be specified
in the EXTRA_HIDDENAPI_JARS. It is needed to avoid maintaining local
patches for those annotations in the libcore/ojluni/src/main/java code
which comes from upstream OpenJDK.
This was tested by making and then manually checking that the generated
out/target/common/obj/PACKAGING/hiddenapi-light-greylist.txt was the
same (after sorting) before and after this change.
Test: see above
Bug: 117818301
Change-Id: Icfadbe52601371f6a4cabef106750b16f6c6d4c8
Store the path to the AAR file from Soong so that it will be picked
up by dist if requested in TARGET_BUILD_APPS.
Test: m checkbuild
Change-Id: Ifeaf2b5ca3f405fbe79a966ceee9989a38d77f6e
Create a bundle module in addition to creating an APK, which can
then optionally be merged with bundle modules from builds for
other architectures and then be passed to bundletool to create an
app bundle.
Bug: 117295826
Test: tapas Gallery2 && m dist
Change-Id: Ib9b5558888d6d6e841e8a5dcd7037dd0fd65a730
The `hiddenapi` build tool now reads a dex file from one filename
and writes a modified dex file to another. Change the build rule
to reflect it.
This reverts commit d8c427fbba.
Change-Id: Ic9a4188a65f7a6fb28edae1aeda7422e93800c58
Test: m
Protobuf 3.5.2 does not natively support lite protos, instead they
are generated by the protoc-gen-javalite plugin compiled from
external/protobuf-javalite.
Bug: 117607748
Test: m checkbuild
Change-Id: I166d55111435762f099503db83c1a658f78e98e9
When we're using a dont_bother_goals (including snod), we don't load
build/make/core/tasks/*.mk, so sdk_addon isn't defined as a PHONY rule.
This causes a build break because build/make/core/Makefile uses
dist-for-goals with sdk_addon. dist-for-goals requires its arguments to
be PHONY targets.
Test: m snod
Change-Id: I69937fe9360be57766d17ed4c28b5d2a1e348308
For A/B devices, append slot suffix to dynamic
partition group names. This ensures that during an
update, partitions from target slot doesn't take
more than half of the super partition.
Test: flash and lpdump
Bug: 111610495
Change-Id: I07a082b67d0f9faada150c7ac3527eb737a81655
Change command-line flags of hiddenapi
The `hiddenapi` build tool now reads a dex file from one filename
and writes a modified dex file to another. Change the build rule
to reflect it.
This reverts commit 5381eb684e.
Test: m
Change-Id: I8d37935c5ea381348278ec668d474f6ffb8e8411
This reverts commit fab820c5f1.
Reason for revert: sed -i requires an argument on mac, break build on mac.
Change-Id: I0b72e28968072afbbb862bd827ee59764dd8a0be
The option will:
- Produce APK with uncompressed dex
- Declare to prefer integrity in manifest
Test: unzip -vl, dex compression looks correct with the option provided
or not.
Test: similarly, aapt dump correct attribute
Bug: None
Change-Id: I16b9a37255150c2ad84af84087dfabb536a3b07a
This reverts commit 6b00bfd2fb.
Reason for revert: marlin running out of space
Exempted-From-Owner-Approval: Needed to unblock build, no
buildcops on call in EMEA today.
Change-Id: I9e86545c8ada2523bc21116c6e958f69fb94dc26