OSDN Git Service

android-x86/system-linkerconfig.git
4 years agoMerge "Create full test for ld.config.txt content"
Kiyoung Kim [Wed, 11 Sep 2019 03:26:38 +0000 (03:26 +0000)]
Merge "Create full test for ld.config.txt content"

4 years agoMerge "Update path to the new ART APEX."
Treehugger Robot [Thu, 5 Sep 2019 23:35:22 +0000 (23:35 +0000)]
Merge "Update path to the new ART APEX."

4 years agoCreate full test for ld.config.txt content
Kiyoung Kim [Wed, 21 Aug 2019 10:46:51 +0000 (19:46 +0900)]
Create full test for ld.config.txt content

There are some module level unit tests and backward compatibility tests,
but still there is no test that verifies ld.config.txt content is
valid in terms of syntax and also context. To test both
features in basic level, this change adds full content test which parses
content and checks if every context (such as path exists and links
between namespace is valid) is able to be used by linker.

Bug: 139639353
Test: m -j && atest passed
Change-Id: I58255ccc6602f6bcb86b897fc89f5581ccc18f08

4 years agoUpdate path to the new ART APEX.
Martin Stjernholm [Wed, 17 Jul 2019 21:26:30 +0000 (22:26 +0100)]
Update path to the new ART APEX.

Test: atest system/linkerconfig/
Test: presubmits
Bug: 135753770
Change-Id: I5ed3907fdddcbe9d720af41b01183f446e899acd

4 years agoMerge "remove link from rs to vndk"
Jooyung Han [Thu, 29 Aug 2019 16:40:46 +0000 (09:40 -0700)]
Merge "remove link from rs to vndk"
am: 5fc7297464

Change-Id: I8f3dacbeaad0c0c308c3e798cf8f49e9a3b68bbd

4 years agoMerge "remove link from rs to vndk"
Treehugger Robot [Thu, 29 Aug 2019 16:18:27 +0000 (16:18 +0000)]
Merge "remove link from rs to vndk"

4 years agoUse enum for ASAN path
Kiyoung Kim [Wed, 21 Aug 2019 01:58:30 +0000 (18:58 -0700)]
Use enum for ASAN path
am: 405bfc9ac2

Change-Id: I5422a7caae10238d0c4738f552681f549680e564

4 years agoremove link from rs to vndk
Jooyung Han [Tue, 20 Aug 2019 07:16:28 +0000 (16:16 +0900)]
remove link from rs to vndk

Linker namespace 'rs' has /system/lib/vndk-sp in its search paths.
So we don't need to link 'rs' namespace to 'vndk' namespace.

Bug: 139706981
Test: run RS-using apps from Play
Change-Id: Ic0d856ff75330086dbf8a75b92c44defa70f0c42

4 years agoUse enum for ASAN path
Kiyoung Kim [Fri, 16 Aug 2019 03:54:23 +0000 (12:54 +0900)]
Use enum for ASAN path

Currently there are two boolean arguments for search / permitted path to
define ASAN path, but it is not easy to understand each boolean value
and hard to block invalid case where path does not exist in asan but
data/asan path does. To fix this new enum class has been added to
describe ASAN path preference, so it can add more readability to
configuration codes.

Test: m -j && atest passed
Change-Id: I4688e949a23af013c6db06df2dd471cfd442e4e8

4 years agoUpdate linkerconfig up to date
Kiyoung Kim [Tue, 13 Aug 2019 01:25:47 +0000 (18:25 -0700)]
Update linkerconfig up to date
am: ac298bb8b9

Change-Id: Ie59e57ba1474b87db818d706fed5fe30458f58e4

4 years agoResolve dir path in early stage
Kiyoung Kim [Fri, 9 Aug 2019 09:42:23 +0000 (02:42 -0700)]
Resolve dir path in early stage
am: eba3ed1a97

Change-Id: Iecd401ef92cb0118cdd85fecab9d933aa0bd2240

4 years agoUpdate linkerconfig up to date
Kiyoung Kim [Wed, 7 Aug 2019 10:13:09 +0000 (19:13 +0900)]
Update linkerconfig up to date

Current implementation is based on old ld.config.txt, so it should be up
to date before actually being used. This change keeps generated
ld.config.txt same with current one under /system/etc

Test: m -j && Cuttlefish, compared with ld.config.txt from latest master
Change-Id: If739c907cc21c4572d5e22edfa18f6b3d04e3aa6

4 years agoResolve dir path in early stage
Kiyoung Kim [Wed, 7 Aug 2019 10:10:17 +0000 (19:10 +0900)]
Resolve dir path in early stage

Linkerconfig generator sorts dir path in revert order, so when a dir is
subdirectory of other dir, then subdirectory can be mentioned earlier.
However, this sorting occured before resolving environmental variables,
so this list was failing to be kept in actual reverse order. To fix this
issue, dir path should be resolved before it is collected by generator.

Test: m -j && tested from cuttlefish
Change-Id: I21f88cca25fef37e080dc1c1cb68e7a0c0186b4f

5 years agoLoad variables on runtime
Kiyoung Kim [Thu, 25 Jul 2019 10:43:35 +0000 (03:43 -0700)]
Load variables on runtime
am: 853438d3c4

Change-Id: I955fa6a47392a479064ffe02ef3762bf9dc6c9d8

5 years agoLoad variables on runtime
Kiyoung Kim [Tue, 16 Jul 2019 00:51:14 +0000 (09:51 +0900)]
Load variables on runtime

Some of the variables can be loaded from runtime based on the
environment. These variables should be loaded in various ways based on
the characteristic of each variable.

Bug: 137511540
Test: m -j && tested from cuttlefish
Change-Id: I03018eb93995270c2b2d06c267001ab33014ed7b

5 years agoEnable Kernel Logging
Kiyoung Kim [Tue, 23 Jul 2019 10:45:19 +0000 (03:45 -0700)]
Enable Kernel Logging
am: e3bad04885

Change-Id: I15f45558c53dad84f1798655ef7c9a349402ebb2

5 years agoEnable Kernel Logging
Kiyoung Kim [Tue, 23 Jul 2019 04:38:34 +0000 (13:38 +0900)]
Enable Kernel Logging

As Linkerconfig will be executed from init, logs from generating
linkerconfig can be detected from kernel log. To enable this, there
should be some configuration added in main function.

Test: m -j & Tested from Cuttlefish
Change-Id: I86c281a915ebafb8ecfafc2117d64f45657e7d20

5 years agoMake linkerconfig as static executable
Kiyoung Kim [Tue, 16 Jul 2019 00:39:41 +0000 (17:39 -0700)]
Make linkerconfig as static executable
am: 15e3835dd9

Change-Id: Id32871ea5849d53a46b59c4e243d791ac4026a43

5 years agoMake linkerconfig as static executable
Kiyoung Kim [Thu, 11 Jul 2019 08:07:03 +0000 (17:07 +0900)]
Make linkerconfig as static executable

Linkerconfig should be executed since early init stage. To do this,
linkerconfig better be static executable so it does not need to link
with libc++.

Bug: 135004088
Test: m -j && Tested from device
Change-Id: Iccf288e30ecf0ec1d65d531d0c6b12cd255a8a2b

5 years agoRename product_servicies to system_ext am: 3894a11483
Justin Yun [Mon, 1 Jul 2019 01:05:59 +0000 (18:05 -0700)]
Rename product_servicies to system_ext am: 3894a11483
am: 9e3e0e66d9

Change-Id: Ia4c9aa3eb315af9bb124a394bdeda2a19d5fc7dc

5 years agoRename product_servicies to system_ext
Justin Yun [Mon, 1 Jul 2019 00:49:55 +0000 (17:49 -0700)]
Rename product_servicies to system_ext
am: 3894a11483

Change-Id: Ib4ed981551c5ff15465857f086999a5280d00327

5 years agoRename product_servicies to system_ext
Justin Yun [Fri, 28 Jun 2019 08:25:01 +0000 (17:25 +0900)]
Rename product_servicies to system_ext

Bug: 134359158
Test: make
Change-Id: Ibc45599efe8448a1d468a67a615a600a6b5d2218

5 years agoMerge "Make executable binary for LinkerConfig" am: d6a3e8f3f6
Kiyoung Kim [Thu, 30 May 2019 05:53:36 +0000 (22:53 -0700)]
Merge "Make executable binary for LinkerConfig" am: d6a3e8f3f6
am: 3ea3762fd4

Change-Id: I61d562fa34f5f12d11e0211e9b7cab893f21636d

5 years agoMerge "Make executable binary for LinkerConfig"
Kiyoung Kim [Thu, 30 May 2019 05:48:35 +0000 (22:48 -0700)]
Merge "Make executable binary for LinkerConfig"
am: d6a3e8f3f6

Change-Id: I9a78d04237964c6b41222df45940c3cdd132d404

5 years agoMerge "Make executable binary for LinkerConfig"
Kiyoung Kim [Thu, 30 May 2019 05:31:26 +0000 (05:31 +0000)]
Merge "Make executable binary for LinkerConfig"

5 years agoMake executable binary for LinkerConfig
Kiyoung Kim [Thu, 23 May 2019 02:04:20 +0000 (11:04 +0900)]
Make executable binary for LinkerConfig

Create binary module for LinkerConfig

Change-Id: Ic51d29139a62f15ba8bf1dc4e2df5267f6995f77
Bugs: 123722631
Test: m -j & Tested from device

5 years agoManage dir list without priority am: 96a4388208
Kiyoung Kim [Wed, 15 May 2019 02:21:50 +0000 (19:21 -0700)]
Manage dir list without priority am: 96a4388208
am: a653844425

Change-Id: I7ece1ad8a7e29a950cb1c7b1f7ed8d8a3feb74d0

5 years agoManage dir list without priority
Kiyoung Kim [Wed, 15 May 2019 01:55:34 +0000 (18:55 -0700)]
Manage dir list without priority
am: 96a4388208

Change-Id: I8fa86da3566b1def63426a884c271040b4599256

5 years agoManage dir list without priority
Kiyoung Kim [Mon, 13 May 2019 08:19:51 +0000 (17:19 +0900)]
Manage dir list without priority

Dir priority was introduced to manage priorities between multiple dirs
over multiple sections. However, since the purpose of priority was not
to hide subdir over parent dir, this can be solved to keep subdir upper
than parent dir. To make this simple, dirs can be kept in reverse string
order.

Change-Id: I4e9a2a1167902c8b27ff2846bc170b5c356f084f
Bugs: 123722631
Test: m -j && atest

5 years agoMerge "Replace shared_ptr with plain object" am: 9114ffd85e
Kiyoung Kim [Fri, 10 May 2019 09:14:49 +0000 (02:14 -0700)]
Merge "Replace shared_ptr with plain object" am: 9114ffd85e
am: 2ec037b87f

Change-Id: I2c39e6ea7c0429054fc6d63e0855bcfed691daf2

5 years agoMerge "Replace shared_ptr with plain object"
Kiyoung Kim [Fri, 10 May 2019 08:15:16 +0000 (01:15 -0700)]
Merge "Replace shared_ptr with plain object"
am: 9114ffd85e

Change-Id: I1e66528aba1d2e51049ed0fa37d781e0d3dcb31d

5 years agoMerge "Replace shared_ptr with plain object"
Kiyoung Kim [Fri, 10 May 2019 05:59:30 +0000 (05:59 +0000)]
Merge "Replace shared_ptr with plain object"

5 years agoReplace shared_ptr with plain object
Kiyoung Kim [Thu, 9 May 2019 05:03:43 +0000 (14:03 +0900)]
Replace shared_ptr with plain object

Currently most of objects are managed with shared_ptr. However, as these
objects are not being shared, it can be managed with plain object. To
make it simple, it would be better to remove all shared_ptr in use.

Bug: 123722631
Test: m -j & atest passed
Change-Id: I16fbf8bc63f016dc0603e1081164fbaabcb32d8e

5 years agoImplement Legacy and base configuration am: ff9cbf7c6c
Kiyoung Kim [Wed, 24 Apr 2019 01:27:48 +0000 (18:27 -0700)]
Implement Legacy and base configuration am: ff9cbf7c6c
am: cc848940c5

Change-Id: I1ad8219deb122d1059dc9c148d4aa8ed6fd26977

5 years agoImplement Legacy and base configuration
Kiyoung Kim [Wed, 24 Apr 2019 01:07:40 +0000 (18:07 -0700)]
Implement Legacy and base configuration
am: ff9cbf7c6c

Change-Id: I283a5381acc2002c2a5226006236a33265a99f39

5 years agoImplement Legacy and base configuration
Kiyoung Kim [Thu, 14 Mar 2019 09:26:24 +0000 (18:26 +0900)]
Implement Legacy and base configuration

Implement legacy and base configuration as first configuration from linkerconfig.
Implement backward compatibility test to track folders from vendor.

Bug: 123722631
Test: m -j && atest
Change-Id: I2a33faffa03a73bd2ed0bfe92de367d635767472

5 years agoCreate writer and handle environment variable am: 6d7cb59052 am: 37b436b189
Kiyoung Kim [Wed, 13 Mar 2019 11:59:08 +0000 (04:59 -0700)]
Create writer and handle environment variable am: 6d7cb59052 am: 37b436b189
am: 17cc1a0fa5

Change-Id: Ieb520cb1254421149fa9e035a2a2b1490dfba649

5 years agoCreate writer and handle environment variable am: 6d7cb59052
Kiyoung Kim [Wed, 13 Mar 2019 11:55:07 +0000 (04:55 -0700)]
Create writer and handle environment variable am: 6d7cb59052
am: 37b436b189

Change-Id: I68a7e94af78bdedf58d31762b10cb6aae399c5d4

5 years agoCreate writer and handle environment variable
Kiyoung Kim [Wed, 13 Mar 2019 11:51:05 +0000 (04:51 -0700)]
Create writer and handle environment variable
am: 6d7cb59052

Change-Id: I4433dffb56fb2ba156017564858548173734912b

5 years agoCreate writer and handle environment variable
Kiyoung Kim [Wed, 13 Mar 2019 06:07:57 +0000 (15:07 +0900)]
Create writer and handle environment variable

To handle better with generating configuration and resolving variables,
new modules are introduced - ConfigWriter and Variables.

Bug: 123722631
Test: m -j && atest

Change-Id: Ibd44d5f93d566ce6d9bc04d474de83ec1e5e8ff4

5 years agoDefine modules for linker config am: 7d422b30e4 am: f1cd620730
Kiyoung Kim [Tue, 12 Mar 2019 07:10:36 +0000 (00:10 -0700)]
Define modules for linker config am: 7d422b30e4 am: f1cd620730
am: 0e2e81215a

Change-Id: I6ee96f92cd15002970d98d4a825daa7a421fbee3

5 years agoDefine modules for linker config am: 7d422b30e4
Kiyoung Kim [Tue, 12 Mar 2019 07:06:35 +0000 (00:06 -0700)]
Define modules for linker config am: 7d422b30e4
am: f1cd620730

Change-Id: I73f51b0a6cc59892d4b15ebe7b427fca683299ef

5 years agoDefine modules for linker config
Kiyoung Kim [Tue, 12 Mar 2019 07:02:33 +0000 (00:02 -0700)]
Define modules for linker config
am: 7d422b30e4

Change-Id: Idefba3fe241e2fc37b3cdc1baf4a5e2f279e3c65

5 years agoDefine modules for linker config
Kiyoung Kim [Tue, 5 Mar 2019 08:06:13 +0000 (17:06 +0900)]
Define modules for linker config

Define modules for linker config and implement config string generator
for each modules.

Bug: 123722631
Test: m -j && atest linkerconfig_modules_unittest
Change-Id: Id9a234830c381267c23ec7af657f354d51a58889

5 years agoInitial empty repository
Thomas Joseph Avila [Tue, 26 Feb 2019 00:46:43 +0000 (16:46 -0800)]
Initial empty repository