Commit graph

3303 commits

Author SHA1 Message Date
Rashed Abdel-Tawab
0d2fa55f2f lineage: Dynamically add custom APNs
For Example new devices need the new Sprint APNs, so add a new board flag for
them to set that will make the build system add the new APNs to
the APN config XML. If the flag is not set, continue to use the
old APNs.
To add or replace APNs, the custom_apns.py script has been
added. If CUSTOM_APNS_FILE is defined, custom_apns.py
is run and generates a new version of apns-conf.xml.

Change-Id: I7ff12a4342de2a7663b2b66fd627244214a8dc71
2018-12-13 07:25:18 +01:00
LuK1337
57490e6120 lineage: Support system-as-root A-only backuptool
Change-Id: I8336e5ab3c9d03fae7426044066318b987653d99
2018-12-06 17:45:15 +01:00
Kevin F. Haggerty
f4720d0925 lineage-iosched: restorecon scheduler tuneables before touching them
* LineageOS/android_system_sepolicy@0e3235f45d removed open, read,
  and write for init to general sysfs types. As schedulers are
  changed, the related directories gets dynamically torn-down and
  rebuilt, but they lacks proper contexts. We need to make sure the
  context is correct before init can write to these nodes.

Change-Id: Ic6f4567c173799bc56ecccc217040392f73aeaba
2018-11-29 05:57:39 +01:00
Ethan Chen
f0bb4c3c98 lineage: Add techpack/audio to include path also
Change-Id: Ib5af4c77f3342c01325e32222401d7584bac337a
2018-11-28 01:20:19 -08:00
Artem Borisov
e0ca332693 vendor/lineage: Build TrebuchetQuickStep
We want all the fancy P features here.

Change-Id: I08342b8919f2df48aefa4b46410c9cb5d685565c
2018-11-16 19:47:17 +01:00
Bruno Martins
a7b0cf7ec3 privapp-permissions: Whitelist CHANGE_OVERLAY_PACKAGES permission
* LineageParts now uses AOSP permission CHANGE_OVERLAY_PACKAGES for styles

Change-Id: Iedf4c5165f2512879bcea7d5d28abe2ff20ca0a5
2018-11-14 12:17:29 +01:00
Bruno Martins
6ea9815254 lineage: Consider techpack/audio when generating kernel headers
* New fancy kernels have techpack modules and we need to
   account for headers of those modules.

Change-Id: I4da9606d5933209287dd5e881f06ee1e39443f70
2018-11-13 22:40:44 +01:00
Luca Stefani
99a66bffdc extract_utils: Redirect vdexextractor log to /dev/null
Change-Id: I55028997c0396d57c024e6c42a53907f6d1510c8
2018-11-13 22:06:17 +01:00
Christopher N. Hesse
e4a40881b6 common: Allow custom vendor to override properties
Test case: override ro.adb.secure in vendor/extra/product.mk
Before this patch, the override would not affect the resulting
property.

Change-Id: I0deb8a6865030b09ed6ba0ede1658319ca033e67
2018-11-07 22:40:46 +01:00
Tim Schumacher
49d26ba39a repopick: Try to fast-forward first
Change-Id: I4890ce8075556eb3f57d89c283543f620f39fa02
2018-10-27 21:57:56 +02:00
Christopher N. Hesse
b20fd5171e verity_tool: Implement status getter
VB1.0 and VB2.0 are handled.

Change-Id: Id3753d3b7b87f3a8a2c03b96dd49be59b96e6d03
2018-10-25 09:45:24 +02:00
Nathan Chancellor
4d0d438095 kernel.mk: Support kernels that use LTO
Google added support for LTO + CFI in the Pixel 3 kernel, which requires
not only Clang but a couple of additional binaries, namely llvm-ar and
llvm-dis for IR generation. Google expects these binaries to be in PATH
according to their definitions and the build.config.common file:

https://android.googlesource.com/kernel/msm/+/android-9.0.0_r0.31/Makefile#637
https://android.googlesource.com/kernel/msm/+/android-9.0.0_r0.31/build.config.common

However, kernel.mk does not add the LLVM bin directory to PATH so the
build fails because the binaries can't be found. We could add LLVM_AR
and LLVM_DIS to the make commands like CC and CROSS_COMPILE; however,
adding the bin directory to PATH is a more sustainable solution as
Google might require new binaries in the future.

Additionally, LTO needs access to the LLVMgold library so it needs to be
available in LD_LIBRARY_PATH.

Add a PATH_OVERRIDE variable that will set up PATH and LD_LIBRARY_PATH
with the bin and lib64 folders from the requested LLVM toolchain
respectively when building with Clang. This won't affect kernels that
don't use LTO like Wahoo.

Change-Id: Ib16fa0d3180de2f96accb2f7648b07a017f8f98b
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
2018-10-25 02:42:15 +02:00
Arekusu Rin
ab6ec3af07 sensitive_pn: General update + new Bulgarian phone numbers
Bulgarian numbers: Most of these were directly sourced from Crisis or 
Emergency centers' websites. At least half are from one of the leading 
NGOs' detailed map that includes contact details for numerous hotlines, 
centers, etc.

The non-Bulgarian numbers were sourced from https://116111.eu and
from the CM 14.1 sensitive_pn file.

Change-Id: I925b36ad7f616acf24c4c1e2109ea817a6de9338
(cherry picked from commit c88df996bea6f45093a6493d85c84b2df8a204d8)
2018-10-23 21:22:18 +02:00
Luca Stefani
f6096e989a Add CDEX support for boot JAR files
Change-Id: I0039256c883a58c5a5125fd9bff6e6ec3b98688d
2018-10-21 10:28:37 +02:00
Michael Bestas
b4c4aba96d kernel: Remove kernel{x}config
* They haven't been working since ninja build was introduced

Change-Id: Icb51412b7a70cdec7f077a6d3d56f7720188bcb0
2018-10-20 21:50:38 +02:00
Michael Bestas
2425d1ea38 kernel: Remove deprecated flag errors
* All devices should have migrated by now

Change-Id: Iecef58a1193b87ecb084eccda27a3b4e89f42219
2018-10-20 21:50:38 +02:00
Sam Mortimer
8e44326c2f vendor/lineage: Remove kernel.mk headers generation
*) This has been deprecated by the bp mobule
   generated_kernel_headers.

*) To build with kernel headers, do this:
   LOCAL_HEADER_LIBRARIES += generated_kernel_headers
   Or for soong targets:
   header_libs: [ "generated_kernel_headers" ],

Change-Id: Idad445709f0ee0ec11b41b40123b14976a0052ad
2018-10-20 21:50:38 +02:00
Rashed Abdel-Tawab
9fa7e80692 lineage: Dynamically generate kernel headers using lineage generator
Add a soong vendor plugin for kernel config variables so we can use
these in go.

Change-Id: Id31f2be8fcc5aba2d965dbe815edaaf1d28279c6
2018-10-20 21:50:38 +02:00
Sam Mortimer
80381b736a vendor/lineage: Add soong generator module type
*) Similar to genrule but can be used to generate content
   when the output directory and file structure are not
   known ahead of time.

*) An example use case is to build kernel headers.

Change-Id: I10deb7ba8825393b0b5fdbf2d96b12ad37257e12
2018-10-20 21:50:38 +02:00
Rashed Abdel-Tawab
a836d79629 lineage: 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
2018-10-20 21:50:38 +02:00
Paul Keith
cd6a1689a0 Revert "soong_config: Add TARGET_NEEDS_PLATFORM_TEXT_RELOCATIONS"
* The per-process API level override will take care of this

This reverts commit cf7f7d48d0.

Change-Id: I3c0b5879ddf8e9dcc0b56a6e9a2855e515685389
2018-10-19 02:20:24 +02:00
Michael Bestas
c77bb3a5ba kernel: Correct CROSS_COMPILE_ARM32 toolchain
* Missed in the original commit that switched to
  androidkernel toochain

Change-Id: I9b6d2e7216b48d22bcb7eec62c4fd9c05a895d18
2018-10-10 18:30:54 +02:00
Youhan Wang
fa7702c08d RJIO: Change Roaming protocal to IPV4V6.
Bug:19664
Change-Id: Icf80b445de9fd0fab9ac708c8c153faa5ad5fd9e
2018-10-07 16:33:57 +02:00
Meng Wang
f130a434b6 apns: update RJIO APNs
Changes:
1. Rename "Internet" to "JIO 4G" per carrier request
2. Make IMS APN invisible per carrier request
3. Remove "carrier_enabled=true" to reduce
   redundency as that's default value

Bug: 32935086
Change-Id: Ic7ce9978ed03aa24f116cad3b4fb049277864b89
2018-10-07 16:33:57 +02:00
TheStrix
5aad07422e extract_utils: Fix output dex file name generated by vdexExtractor
- Reflect the changes required by:
   ff58255706
 - Also fix JARVDEX file path for deodexing jars

Change-Id: Ief355b0bd9e69a67b552d0bd2060f43adb39fb5f
2018-10-07 12:17:35 +02:00
codeworkx
1c29bf66dd extract_utils: add CDEX support via compact_dex_converter
Source: https://github.com/anestisb/vdexExtractor#compact-dex-converter

Change-Id: I63664cae02e51a05e5a62c0c5c0595eead6c6513
2018-10-05 18:25:46 +02:00
Han Wang
c5175f31f3 overlay: Remove config_persistUsbDriveNotification
* No one changes this overlay, so we assume it always be true

Change-Id: Iaa5674a7c5c20a2bad59acaea66629c720710a91
2018-09-30 02:32:28 +02:00
Nvertigo
1682f8a763 apns: NOS: fix tethering and mms.
This fixes BUGBASH-2328 for Portuguese carrier NOS (mcc="268"
  mnc="03").

  This is an ugly workaround since you can't edit the APN definition
  anymore: if you try to save an APN with type dun, you get the error
  message: "Carrier does not allow adding APNs of type dun." But it's
  working.

  Since the preinstalled APNs does not need to be edited and this
  doesn't break anything else for this carrier, this is acceptable.

  Thanx to tfae@xda.

Change-Id: Ic81a9549bf9610805e68b9be56c811b008cbdacb
2018-09-30 01:04:24 +02:00
codeworkx
485f65f633 tools: update smali/baksmali to 2.2.5
Change-Id: I0d9b2f8acde17b20576d66d87ab9a8c51865e4dc
Source: https://bitbucket.org/JesusFreke/smali/downloads/
2018-09-24 16:22:10 +02:00
codeworkx
fcad7cfc40 tools: update vdexExtractor from 0.4.1 to 0.5.2 for P compat
Source: https://github.com/anestisb/vdexExtractor

Linux
Compiled on  : Arch Linux, 4.18.8-arch1-1-ARCH
Compiled with: Clang 6.0.1 (tags/RELEASE_601/final)
Target: x86_64-pc-linux-gnu

Darwin
Compiled on  : MacOSX 10.13
Compiled with: Apple LLVM version 9.0.0 (clang-900.0.39.2)
Target: x86_64-apple-darwin17.4.0

Change-Id: I4f1ac8a9aa01887edf54a4f59e4a99f34e870606
2018-09-24 16:22:09 +02:00
Paul Keith
1b5fa5e8c6
lineage: Use add_json_str_omitempty directive for TARGET_LD_SHIM_LIBS
* The code is ifdef'ed out, so let's match that expecation here

Change-Id: I59c8e276c3dd28c4f46222f66d626e48b2aa6551
2018-09-22 07:59:58 -06:00
Danny Baumann
fc6e3810e6
soong_config: Allow process-specific override of target SDK version
Change-Id: I775e852c17af12d2233e644e3db10c10bcb20d19
2018-09-20 19:24:38 -06:00
codeworkx
d51aef27d5 lineage: disable adb auth on eng build
We have to set ro.adb.secure to 0 on eng builds to get access.

Change-Id: Ie128f78c52c2f46b0a26d57eeed6a186aa7d9b67
2018-09-14 14:35:14 +02:00
Sam Mortimer
af96975506 vendor/lineage: Add support for java source overlays
*) Set JAVA_SOURCE_OVERLAYS in a device makefile as follows:
   # Java sourcefile overlays (for Android.bp built modules only)
   # Format is a whitespace separated set of rules, each of which
   # structured as follows:
   # modulename|overlay directory|glob pattern within overlay dir
   JAVA_SOURCE_OVERLAYS := \
           org.lineageos.hardware|$(LOCAL_PATH)/lineagehw|**/*.java

*) As of this commit, java sources overlays are only allowed for
   module org.lineageos.hardware.

Change-Id: I6be1c12567081357f5231a84df98ac002c0563b4
2018-09-12 19:50:45 +02:00
Kevin F. Haggerty
59009f8a5e soong_config: Allow extension of valid gralloc 1.0 buffer usage bits
* fw/native change I7f4174581e24e361577640b9263514a168ed482d
  implemented validation of the buffer description info prior to
  creating the descriptor. Some of our legacy devices need to
  whitelist additional usage bits to support various functionality.
* The TARGET_ADDITIONAL_GRALLOC_10_USAGE_BITS variable can contain
  a singular roll-up value (e.g., 0x02000000U), a left-shifted bit
  (e.g., (1 << 25)), a bitwise OR of these things, or essentially
  anything that the compiler can choke down.

Change-Id: I2127d33b03426b5e0f981aae837e07d82163fa17
2018-09-10 23:31:20 +02:00
Rashed Abdel-Tawab
403a0ad3d8 overlay/common: Unlock swipe gesture nav bar
* The setting will only appear on devices with software nav bar.

Change-Id: I243992335282456aa8198228382094ddeb5e577b
2018-09-09 19:39:42 +02:00
jhenrique09
d36312c1fd overlay: Set searchbar and suggestion corner radius
Change-Id: Ife8253f423c61c59437df82494e95ecf54f34e04
2018-09-07 17:23:44 +02:00
Ethan Chen
7992a6e919 qcom_target: Add wlan-caf to CFI paths
* The default AOSP hardware/qcom/wlan path is listed in
  PRODUCT_CFI_INCLUDE_PATHS since wpa_supplicant is compiled with
  control flow integrity checks. Add the Qualcomm WLAN variant to
  PRODUCT_CFI_INCLUDE_PATHS as well so wpa_supplicant can safely link
  it without exploding.

Change-Id: Id5577846e1e1ea11f8a665d62847c80803e285f7
2018-09-07 10:43:18 +02:00
Adrian DC
0f8230b528 repopick: Warn about empty commits instead of failing
* If a cherry-pick results in an empty commit
    (hints about git commit --allow-empty),
    we should warn instead of failing all repopicks

Change-Id: I8410d7d02c4118c8072de609cf3c291e2d8523e6
2018-09-05 22:41:06 +02:00
Rashed Abdel-Tawab
a94cf0c781 qcom: Declare PRODUCT_SOONG_NAMESPACES for HALs
HALs are starting to move to blueprint files, which means that pathmap
ifeqs no longer work. This results in modules with the same name in
different platform HAL directories. Since these modules aren't used or
linked anywhere outside the HAL directories and a device's device.mk,
we can safely use a soong namespace to isolate the different HAL
directories' blueprints. This defines the PRODUCT_SOONG_NAMESPACES
make flag so make knows which namespace to look in as well.

Change-Id: I549e6da863465d79b12c7453aa169d5d963afa52
2018-09-03 22:30:59 +01:00
Rashed Abdel-Tawab
b8ac142535 lineage: Move QC board variables earlier
These variables are usually set in a device's BoardConfig, setting them
in qcom_target is at the very end of the "configuration process" which
results in them being unavailable to plenty of other configuration
"things" (ex. soong namespaces or soong config). Move them to right
after a device's BoardConfig has been found and loaded.

Change-Id: Iddd731202d22ed3f8eb010197ce20d3c75a1f40a
2018-09-03 22:30:59 +01:00
Kevin F. Haggerty
d1ec4b453c soong_config: Add add_json_str_omitempty function
* This function wraps add_json_str so that it does not add the soong
  variable key:value pair to json structure if the second argument
  (value) is empty/unset, preventing the need for more complex
  conditional logic in the middle the code that builds the struct
* This concept allows us to make use of the omitempty field option
  for purposes like single variables controlling ifdef blocks as well
  as carrying the desired value

Change-Id: I99c8c162069c2aa8ff3d0bab2636b01181e74a9d
2018-09-03 08:21:15 +02:00
Bruno Martins
d4e632e9d1 overlay/common: Do not show wallpaper attribution
* We do not ship Google's wallpapers

Change-Id: I7203aaf2c3a426fcc303cd3b3fa13085a8a99b0c
2018-09-03 01:01:14 +02:00
Luca Stefani
d934700c0d build: Add dtbo task
Change-Id: I1101cb204ab583a204447d63e6a031a17179dfe7
(cherry picked from commit 8bffb053db418022c7cba5d67234412edd675862)
2018-09-02 13:08:16 +02:00
Michael Bestas
a504aa4498 envsetup: Add githubremote function
* Useful for picking changes from our repositories
  to AOSP based repositories before forking them

Change-Id: I4f1d733354591fd3db431dd590ccf46e12f6a342
2018-08-30 23:17:00 +02:00
Luca Stefani
dab1569b81 Add rules for non platform apps that use hidden APIs
Change-Id: I483f00cc0735f47665c5cb61ed0a187fb4e7d655
2018-08-30 20:51:09 +02:00
LuK1337
040b292b8d privapp-permissions: Add FlipFlap permissions
Change-Id: I6be90c2558c439d3994f6438690d7b3d84069ef6
2018-08-28 02:14:34 +02:00
Bruno Martins
b169042dfe soong_config: Remove extra spacing
* Let's not rewrite the whole list while adding new vars

Change-Id: Icab6116839bbb74a75d207310562faf9d780828b
2018-08-27 10:08:54 +01:00
Ethan Chen
53f62b407b config: Use standard inherit-product-if-exists for vendor/extra
* prepend-product-if-exists was developed specifically to handle some
  special cases where Cyanogen Inc configuration ordering needed to be
  handled ahead of the standard inclusion order.

Change-Id: Ia3e041fb9e3c84d0763d18e4a401121bc210b976
2018-08-27 09:51:45 +01:00
Joey
7b701643b0 lineage: enable roundIcons by default
We're using circular shape for adaptive icons,
by turning roundIcons on we either get
better circular icons (for apps such as Chrome) or
the same icons as before.

Trebuchet will still allow to swap icons shape

Change-Id: If64ecb427b98e099c55fd3eebdb49dad9cb3dbf2
Signed-off-by: Joey <joey@lineageos.org>
2018-08-27 09:51:27 +01:00