Commit Graph

35 Commits

Author SHA1 Message Date
Luca Stefani c5597cb042 pa: Enforce privapp-permissions whitelist
Change-Id: I1ca080e5addcc0876d7346f3cf09db8e8af39312
2019-11-11 20:21:23 +05:30
Hernán Castañón Álvarez 3f3878f733 pa: do not compile ParanoidPapers.
We have Abstruct right now, no need for more wallpapers apps.

Signed-off-by: Hernán Castañón Álvarez <herna@paranoidandroid.co>
Change-Id: I85fd1d5b4e08fc83205d02f383d5dbc226b89e19
2019-10-31 05:27:08 +00:00
Stylogey 780d2c6ffe
pa: config: Don't block overlays from device
Change-Id: Ie565ce5b8593592f71b4bdee5e9614560deae0df
2019-10-27 15:16:35 +01:00
Hernán Castañón Álvarez e82d136038 pa: set navigation gestures as default.
Taken from Pixel 4 XL dump.

Signed-off-by: Hernán Castañón Álvarez <herna@paranoidandroid.co>
Change-Id: I95678a634f012396b0a4f0cfeb4e0c75b1900492
2019-10-25 00:27:19 +00:00
Hernán Castañón Álvarez 8910d72d9c pa: add google permissions.
Taken from OnePlus 7 Pro dump plus a few missing permissions added.

Change-Id: Id2a5d61bc95e90fcf92f7b544525939d6b77ec03
Signed-off-by: Hernán Castañón Álvarez <herna@paranoidandroid.co>
2019-10-16 11:25:10 -04:00
Łukasz Patron 16d6a00a66 vendor: Copy up to date handheld_core_hardware to system
* Vendor one is outdated and therefore we lose stuff
  like secure lockscreen...

Change-Id: I458867b3b322ad754b78877209b7f4d8fb78eb38
2019-10-13 13:19:45 +00:00
Jake Weinstein 2a7f90bc2b vendor: build ThemePicker
Change-Id: I38dda9cff41918d55800cf6971507dcedc4e574b
2019-10-09 01:06:09 +00:00
Chris Crump 7ee1937744 pa: Add support for custom overlays
Starting with 'Pixel Blue' accent, this commit extends the already existing overlays in AOSP with a new set of ones

Change-Id: Ib5cf02e3d031d3e430f770f9a7e279caca3273ca
2019-10-03 19:02:08 +00:00
Hernán Castañón Álvarez 508fbf6798 vendor: add privileged app permissions for Quartz
Without this, devices that enforce priv-app permissions
bootloop.

Change-Id: Id724e7e838b19af6fad041681f11a64079c52cf2
Signed-off-by: Hernán Castañón Álvarez <herna@paranoidandroid.co>
2019-10-03 14:58:21 +00:00
TheStrix 522952a243 vendor: build required QTI telephony packages
Change-Id: Id8aa434c632f930d3f32726c7b95057a6fa83fce
2019-10-03 04:02:13 +02:00
Jake Weinstein fac10b5cd1 vendor: Use speed tuning for performance critical applications
The default ART setting is quicken: run DEX code verification and
optimize some DEX instructions to get better interpreter performance.

This commit switches performance critical applications to speed:
run DEX code verification and AOT-compile all methods.

PRODUCT_DEXPREOPT_SPEED_APPS (New in Android O)
List of applications that have been identified as core to the products
and which are desirable to compile with the speed compiler filter.  For
example, persistent apps such as SystemUI get a chance to use
profile-guided compilation only at the next reboot, so it may be better
for the product to have these apps always AOT-compiled.

Change-Id: Ib2dc9a55dfb332ba3fb84a13544d564a63f37ad2
2019-10-03 01:54:10 +00:00
Hernán Castañón Álvarez 9d90e36816 pa: Welcome Abstruct!
Signed-off-by: Hernán Castañón Álvarez <hernanderes34@gmail.com>
Change-Id: I9785436475981b141369d4761b1fb1d0867f505e
2019-10-01 02:51:43 +00:00
Hernán Castañón Álvarez 194e486a94 pa: Welcome Retro Music Player!
Signed-off-by: Hernán Castañón Álvarez <hernanderes34@gmail.com>
Change-Id: Ie71c25c49e22baa792f50a8b7079ea09d46111bb
2019-10-01 02:51:29 +00:00
Chris Crump 8511007611 pa: Build ParanoidLauncher
Change-Id: I77c08001679071802cc30d4eda12957862c942c6
2019-09-30 19:35:12 +00:00
Chris Crump 8c2d016ddf pa: Import custom audio files
This adds custom audio files to be generated on PA builds. These audio files include Alarms, Effects, Ringtones, and Notifcations.

These are the standard audio files shipped with Pixel devices, specifically the Pixel 2 XL

Change-Id: Ic785569be4ceb71696fa5dbea53858b578277f17
2019-09-30 19:34:48 +00:00
Chris Crump fb4d588b27 pa: Update PA version for Android 10
- Follows a more simplified version structure.
 - Allow setting time of day (credits: LineageOS)

Co-authored-by: TheStrix <parthbhatia98@gmail.com>
Change-Id: Iedd15d3b487354203d732c8519f99321a8a1f192
2019-09-30 17:37:56 +00:00
TheStrix ea73f88128 pa: Restructure config files
- Set version props in build/core/
 - Add new config targets for devices to inherit from, common_full_phone & common_full_tablet_wifionly.
 - Update the config inherit path for all pa devices.
 - Remove deprecated hostapd configs.
 - todo: Remove pa privapp configs for now. Need to update/adapt to new style.
 - Add init.d support.
 - Add init scripts (prebuilt/etc/init) from LineageOS.
 - Update few permission configs from LineageOS.

Change-Id: I86791110eb698d7ba43cc05051345dc08b215ce3
2019-09-30 08:54:16 -04:00
Rashed Abdel-Tawab a0d74b1477 kernel: Add GCC toolchains to the path
Tools like `as` only exist in the GCC toolchain, so we need that

Change-Id: I025d0d9bdf6eda94a538d2d6ddafbecc8830f471
2019-09-18 13:58:06 +05:30
Luca Stefani 54841d6119 kernel: Fix nproc number
kati wrapper is forcing this to 2 for some reason. Hack around it.

Change-Id: Ie056f3e43645515f3c5922e0fbf79a0b5ecf7856
2019-09-18 13:54:12 +05:30
Rashed Abdel-Tawab 3f832e2498 kernel: Use absolute path for kernel O= argument
The kernel make command is executed in the build root. Without absolute
out paths, kernel out start with "out/" meaning it would be created in
the kernel source. Add BUILD_ROOT to the argument to ensure it's always
made in the actual out/ dir.

Change-Id: I425134a893d4d5c9f31efccaf75e153b5462b76c
2019-09-18 13:53:56 +05:30
Rashed Abdel-Tawab 13ec3040d1 kernel: Set kernel toolchain roots for aarch64, arm, and x86
The GCC toolchains are no longer added to the path by default, so
we need to hardcode the full paths for these. Also set variables
for every arch, and then set the toolchain to the arch specific var.
This is so we can set the ARM32 cross compile flag for vDSO32
enabled kernels.

Change-Id: I7e099a26a17f4a3cc9be6232a26c671e8fcfbdef
2019-09-18 13:53:24 +05:30
dianlujitao 5dd8eee003 kernel: Use linux-android- toolchains to build kernel on aarch64 and x86
* -androidkernel ones became symlinks to -android ones long time ago, use
   -android executables directly to simplify the logic on these platforms.
 * Keep arm on -androidkernel because it doesn't boot for some reason.

Change-Id: I97dd93121fc0e805a965e3f8b84466dd7bd686c0
2019-09-18 13:53:20 +05:30
Rashed Abdel-Tawab f08cca6e95 kernel: Use prebuilt binaries
perl, lz4c, and a bunch of other binaries are not allowed anymore.
So we need to provide our own.

Change-Id: Idbc88b76247b3dda7c5d52e5eed2d548c33f6f2d
2019-09-18 13:53:03 +05:30
Rashed Abdel-Tawab 30de4fce54 kernel: Link against prebuilt openssl
Using preinstalled system headers and libraries is no longer allowed.
So we're gonna make our own prebuilts/openssl so we can build kernels.

Change-Id: Ic5bc3b14c37b3bca352932c6f19a592377dbaf27
2019-09-18 13:53:03 +05:30
Rashed Abdel-Tawab 897cb2871c kernel: Use full user defined path to ccache
The built ccache command is now deprecated and spits out errors. ccache is
also no longer used for the full build unless CCACHE_EXEC is defined. Move
the kernel to the same logic in order to actually use ccache and silence
the warnings.

Change-Id: Iccedd9d5868d31060677667cc18810aae0149a26
2019-09-18 13:53:03 +05:30
Rashed Abdel-Tawab 20a07e76ed kernel: Use full path to the gcc/g++ commands
gcc and g++ are now dissallowed commands so just run the full commands

Change-Id: I2ba5675a3f5410f51fc37b723714b35f1e4628c8
2019-09-18 13:53:03 +05:30
Rashed Abdel-Tawab 3e3007c6a9 kernel: Use full path to the make command
make is now a dissallowed command so just run the full command

Change-Id: I9390dc5a8bcd17f316354b88bdbc65ac8663b369
2019-09-18 13:53:03 +05:30
Rashed Abdel-Tawab da7e86ec86 pa: Dynamically generate kernel headers using pa generator
Add a soong vendor plugin for kernel config variables so we can use
these in go.

Change-Id: Id31f2be8fcc5aba2d965dbe815edaaf1d28279c6
2019-09-18 13:52:02 +05:30
Rashed Abdel-Tawab 326811ca07 kernel: Add TARGET_KERNEL_ADDITIONAL_FLAGS to allow setting extra cflags
Also fix KERNEL_MAKE_FLAGS not being used by the kernel make command

Change-Id: I8786d6c1de6652f87a02c990c4b56f62b0cc0203
2019-09-06 14:03:05 +05:30
Ethan Chen 9ff17e3775 build: Use ifeq/else ifeq/else construction in board config
* Instead of nesting ifeq/else/ifeq/else/endif/endif construction, make
  allows the more readable ifeq/else ifeq/else/endif construction. Use it
  instead.

Change-Id: Ifd2635929799db593e04a13827f05c97e95487e4
2019-09-06 14:03:05 +05:30
Rashed Abdel-Tawab 6f382fceae kernel: Set correct kernel compiler prefixes for aarch64 clang
These configuration options are set based on the Google configurations
located in kernels
(ex. https://github.com/LineageOS/android_kernel_google_wahoo/blob/lineage-16.0/build.config)

This is composed of 2 parts:

Revert "kernel: Correct CROSS_COMPILE_ARM32 toolchain"

This reverts commit c77bb3a5ba45699aeef45d3af8b8a0a59f0c6a14.
This breaks builds when building with upstream commit
ad15006cc78459d059af56729c4d9bed7c7fd860. That commit fixes LD being
used from outside the path, however androidkernel toolchains don't
have elfedit. Google specifically doesn't use androidkernel, so we
need to follow them on this.

Set CROSS_COMPILE_PREFIX to aarch64-linux-android- for clang builds

Upstream commit ad15006cc78459d059af56729c4d9bed7c7fd860 makes the
kernel build system use GCC toolchains for elfedit, so we have to
actually use a real GCC toolchain, not the androidkernel one.

Change-Id: I79ac4ac47d3ba6c2abbc5ce40e56ed5c707295b4
2019-09-06 14:03:05 +05:30
Rashed Abdel-Tawab 6d3f244ad4 pa: Rework DTBO image generation
Currently we handle the DTBO images from start to finish, including
AVB footers, and just drop them in $(PRODUCT_OUT)/dtbo.img when done.
While this works for the most part, we are limited in what we can do
with the DTBO images. For example non-A/B device recovery images must
have a copy of the DTBO image appended to recovery (see AOSP docs:
https://source.android.com/devices/bootloader/recovery-image ). This
means that we need to pass the pre-AVB dtbo image into
BOARD_PREBUILT_DTBOIMAGE in order to let the AOSP build system handle it.

This commit reworks the way the DTBO images are built, placing them at
$(PRODUCT_OUT)/dtbo-pre.img instead and setting BOARD_PREBUILT_DTBOIMAGE
to that path so the AOSP build system can pick the images up and sign
them and append to recovery (for applicable devices).

Change-Id: I8819d7cd92ba298de67dbc7f6b321917ba8524f1
2019-09-06 14:03:05 +05:30
Ethan Chen f88cf43f97 kernel: Add more threads to kernel build process
Change-Id: I9c90de7820308542c7bb15605df519976dd04e0b
2019-09-06 14:03:05 +05:30
Rashed Abdel-Tawab fd307eb0d0 pa: Move some kernel definitions to BoardConfigKernel
Kernel source settings should always come at BoardConfig population
time so things that use the variable later don't end up pointing to
an empty or wrong variable.

The following is also squashed in:

Author: Christopher N. Hesse <raymanfx@gmail.com>
Date:   Fri Aug 10 00:23:54 2018 +0200
    tasks: kernel: Honor prebuilt kernel flag
    For devices that want to use a prebuilt kernel, TARGET_KERNEL_SOURCE
    would still be set to TARGET_AUTO_KDIR, meaning the build system would
    still try to build the kernel if TARGET_AUTO_KDIR was present.
    Setting TARGET_PREBUILT_KERNEL indicates this is not wanted, so don't
    attempt to do it.
    Change-Id: Ic79b3ac1b9c946fd258ada43dce2b08bb74ea0d9

Change-Id: If046b86ff0d18c76898e90295be873a8379f678a
2019-09-06 13:50:50 +05:30
LuK1337 ef934b4af9 vendor: Add vendor.pa.biometrics.fingerprint.inscreen permission
Change-Id: I149508317c4f0312e88faf5324275867e79e35e9
2019-08-24 16:49:39 +00:00