645 Commits

Author SHA1 Message Date
Adam Lesinski
e03f2cb2c2 Merge "AAPT: Use the right enum when checking for density configurations" into lmp-mr1-dev automerge: b443610
automerge: 83f58a2

* commit '83f58a2f7afac98199536b3090fe6f767ffb3a0d':
  AAPT: Use the right enum when checking for density configurations
2015-01-23 02:46:32 +00:00
Adam Lesinski
ed643e8182 AAPT: Use the right enum when checking for density configurations
Bug:19116675
Change-Id: I2322d8d6bdf890005c80014273e5d07df735ed50
2015-01-22 18:19:44 -08:00
Adam Lesinski
5c61dfc25f am e488ce86: am 94e30215: Merge "AAPT: Handle all old unversioned attribute usage" into lmp-mr1-dev
* commit 'e488ce8668538b45c586eba21f5bca288d749686':
  AAPT: Handle all old unversioned attribute usage
2015-01-14 20:47:47 +00:00
Adam Lesinski
28994d8d18 AAPT: Handle all old unversioned attribute usage
All references to attributes defined in pre-LOLLIPOP_MR1 SDK
are moved to version qualified resource entries.

Bug:18221682
Change-Id: Ifd739530ebcf99e6bc7ddb3f10bc5e05f0726e62
2015-01-14 12:02:15 -08:00
Adam Lesinski
6e2eb2df4c am c04a21a0: Merge "Fixup aapt usage message" automerge: 64044d0
* commit 'c04a21a0ef6cd97a45307e4c1de9088e57719ca2':
  Fixup aapt usage message
2015-01-08 20:24:33 +00:00
Johan Redestig
6ab7a7849c Fixup aapt usage message
The --preferred-configurations option was renamed to
--preferred-density in fab5087 but only part of the
usage message was changed.

Change-Id: I89d270990023beca19605901d956d29d0b0b848b
2015-01-07 09:40:58 +01:00
Adam Lesinski
915f44e1ee am 503a4494: am f1f179a7: Merge "AAPT: Copy android:revisionCode to Splits" into lmp-mr1-dev
* commit '503a4494d64d30f9b904b24a56fff986810da610':
  AAPT: Copy android:revisionCode to Splits
2014-12-16 18:02:09 +00:00
Adam Lesinski
f1f179a765 Merge "AAPT: Copy android:revisionCode to Splits" into lmp-mr1-dev 2014-12-16 17:50:04 +00:00
Adam Lesinski
54de298c01 AAPT: Copy android:revisionCode to Splits
Bug:18706179
Change-Id: I669b56e0b67dd1bfda7749ef433b55af16851154
2014-12-16 09:16:26 -08:00
Adam Lesinski
22bfb75ebb am 0f0e85a6: Merge "AAPT: attributes showing up after v21 attributes would be removed for pre-21 devices" into lmp-mr1-dev
automerge: 465d123

* commit '465d123464eadf180b618164b2ed23702bca3d86':
  AAPT: attributes showing up after v21 attributes would be removed for pre-21 devices
2014-12-16 01:43:16 +00:00
Adam Lesinski
0f0e85a689 Merge "AAPT: attributes showing up after v21 attributes would be removed for pre-21 devices" into lmp-mr1-dev 2014-12-15 23:35:23 +00:00
Adam Lesinski
ea4e5ecc27 AAPT: attributes showing up after v21 attributes would be removed for pre-21 devices
There was an inconsistency in the indexing when removing attributes
in layouts. Now we account for that shift that happens when you delete
an attribute.

Bug:18707321
Change-Id: I656eee3fb614168fa8ceeff379e8594708961dad
2014-12-10 15:55:27 -08:00
Adam Lesinski
55188f5918 am c765655a: am fbba9b57: Merge "AAPT: Dump status of required flag for uses-feature" into lmp-mr1-dev
* commit 'c765655ae1ae35f9d5f0958295f0b71270132ca7':
  AAPT: Dump status of required flag for uses-feature
2014-12-09 00:43:14 +00:00
Adam Lesinski
73a05114b0 AAPT: Dump status of required flag for uses-feature
Outside of a feature-group, the legacy uses-feature tag
has a boolean required flag that should be emitted in
dump badging.

Bug:17790999
Change-Id: I43023af00e9c9ed4bc35795c3a983fc719bf9b7a
2014-12-08 15:54:12 -08:00
Adam Lesinski
e97908d32e Merge commit '0953ab27' into manualmerge
Change-Id: I36dea45f7571096136ea7bda5e2680bd85a0df32
2014-12-05 11:06:21 -08:00
Adam Lesinski
720beef28d Merge "AAPT: Move private attrs to new type for framework" into lmp-mr1-dev 2014-12-04 18:24:41 +00:00
Adam Lesinski
9b624c186c AAPT: Move private attrs to new type for framework
Private attributes are typically placed after public
attributes in the resource table. Each time a new version
of the Android framework is released, new public attributes
take the place of the private attributes, and the private
attributes are shifted after the new public ones.

This means that any apps built against the newer SDK
may inadvertently be using private attributes on older
devices.

This change moves all private attributes to a completely
different type ID, so there will never be collisions across
versions.

These private attributes are automatically moved to a synthesized
type only for the system resources.

Bug:18263655

Change-Id: I7a850512953fadcc9f3524d509cea30249782db8
2014-12-03 15:59:20 -08:00
Adam Lesinski
455550d586 am 72a6aeac: am 91ca64ea: Merge "AAPT: Add pathMotion custom classes to Proguard Keep set" into lmp-mr1-dev
* commit '72a6aeaca0712d9b72b9f773e2b72bb45ddd3cb8':
  AAPT: Add pathMotion custom classes to Proguard Keep set
2014-12-03 20:42:22 +00:00
Adam Lesinski
62c5df52e7 AAPT: Add pathMotion custom classes to Proguard Keep set
Bug:18590044
Change-Id: Ia5dbf55317d2cc89826316e8d10f031b5d340e57
2014-12-02 16:23:59 -08:00
Adam Lesinski
3550c6c5d6 am f17611a2: am 130e30fe: Merge "AAPT: Add custom transition classes to Proguard keep set" into lmp-mr1-dev
* commit 'f17611a29e3b0d0c7a5d28a1ce92682a2c097de6':
  AAPT: Add custom transition classes to Proguard keep set
2014-12-03 00:05:33 +00:00
Adam Lesinski
4c488ff931 AAPT: Add custom transition classes to Proguard keep set
Bug:18590044
Change-Id: Ib24831e669a09f0e6f32434081c0e2499702399c
2014-12-02 15:40:17 -08:00
Dan Albert
6698749dd4 Add appropriate casts for char16_t.
C++11 defines a real char16_t, which is not implicitly convertible to
uint16_t (and by extension jchar). Add casts as needed.

Bug: 18300613
Change-Id: I00752002ef2e938bdb57f70947e8fd53ec103293
2014-11-20 11:47:40 -08:00
Yabin Cui
d493fa6d79 am 537888be: Merge "kill HAVE_LOCALTIME_R"
* commit '537888be7d5cfa6bfa9ddd459a622ea208339735':
  kill HAVE_LOCALTIME_R
2014-11-13 19:05:06 +00:00
Yabin Cui
25d58a9357 kill HAVE_LOCALTIME_R
Bug: 18361583
Change-Id: Ia79e2b641fd6c61ae5d2b8f2db5456bd3d36a25b
2014-11-13 09:57:22 -08:00
Dan Albert
b28ff487fb resolved conflicts for merge of 5e6cf242 to lmp-mr1-dev-plus-aosp
Change-Id: If21bd328a5c8ea3474abfe624e910d4830c72dc9
2014-11-12 13:24:42 -08:00
Dan Albert
ff1d8a6635 Move frameworks/base over to libc++.
Bug: 15193147
Change-Id: I96109d2d383f0c8a4aaa611f29fcf887afb3c69e
2014-11-12 11:22:20 -08:00
Adam Lesinski
be6c125783 am da772234: Merge "AAPT: Ignore densities specified in -c flag" into lmp-mr1-dev
automerge: 1e2e05b

* commit '1e2e05bf8cb1445f9e431ca54837bb01f762d9e6':
  AAPT: Ignore densities specified in -c flag
2014-11-11 22:15:44 +00:00
Adam Lesinski
d660e05c84 am 8aa93764: Merge "Fixing NULL pointer access causing segmentation fault in aapt"
* commit '8aa93764ea025b1c20f96b366ae6efb17e4f2d67':
  Fixing NULL pointer access causing segmentation fault in aapt
2014-11-11 19:53:52 +00:00
Adam Lesinski
a2bb565db5 AAPT: Ignore densities specified in -c flag
The --preferred-density flag knows how to handle missing resources of
specific densities. Using -c with a density leads to missing resources.

Change-Id: I2251d842f48c08ed083663bb7ed608e14c4983c8
2014-11-10 17:56:11 -08:00
Adam Lesinski
4d29c66930 Merge commit 'fa31eb2c' into manualmerge
Conflicts:
	tools/split-select/RuleGenerator_test.cpp

Change-Id: I0d1261301d433f32e857cf1b0d75a861205f7625
2014-11-10 14:32:11 -08:00
Jörgen Ekström
da44fe0e1f Fixing NULL pointer access causing segmentation fault in aapt
In cases where resource packages are generated which does
not have public resources for all resource types - NULL
pointers sneaks into the mOrderedConfigs vector causing
the aapt tool to crash. The solution in this fix simply
ignores the NULL elements when later processing the sorted
vector.

The NULL elements are inserted during applyPublicEntryOrder
function call

Change-Id: I8b7135932e2d235018da2e2f7e09f0d22f1b2f59
2014-11-07 13:41:06 +00:00
Adam Lesinski
dcdfe9fef4 split-select: Fix rules generated for anydpi density
Change-Id: I9de569ca9a76eb22df4d0e178df847ba1c7d0b01
2014-11-06 14:57:34 -08:00
Adam Lesinski
685d363d7a Merge commit 'fb96e54' into manualmerge
Conflicts:
	tools/aapt/Resource.cpp

Change-Id: I4147c3550e9426f3429146eaeb16f10ba76b5b15
2014-11-05 12:30:25 -08:00
Adam Lesinski
8a5bb15efa Fix automerge issue
Duplicate method declaration.

Change-Id: I9355bd7c716e668ad7892fd12e93352455d149b5
2014-11-03 20:35:54 -08:00
Adam Lesinski
b2808c03c3 Merge "Fix build due to bad merge" into lmp-mr1-dev-plus-aosp 2014-11-04 03:37:50 +00:00
Adam Lesinski
0cc963c663 Fix build due to bad merge
- tools/aapt/qsort_r_compat.c was removed
  and the merge added it back to the src list in Android.mk

Change-Id: I15aae8adc68f82ac2381020ac0b96a7b1ab59f9c
2014-11-03 18:37:49 -08:00
Adam Lesinski
4dfff4e727 am 5fa90218: am f7ffcaa7: Merge "Build the split-select tool without C++11 support" into lmp-mr1-dev
* commit '5fa9021822577f1e4676db49a6b5cb5d36e4614a':
  Build the split-select tool without C++11 support
2014-11-04 02:20:47 +00:00
Adam Lesinski
3fd340028f Merge commit '78be0498' into manualmerge
Conflicts:
	libs/androidfw/ResourceTypes.cpp
	tools/aapt/Android.mk
	tools/aapt/StringPool.cpp
	tools/aapt/StringPool.h

Change-Id: I9d69efdfb892032895ace12159d193304f02dc6c
2014-11-03 18:06:22 -08:00
Adam Lesinski
de7de47fef Add error checking to aapt for split generation
Change-Id: Ica627db6a671f6a6c35f98bfd9c03598ffe103ce
2014-11-03 15:55:44 -08:00
Adam Lesinski
f7ffcaa7a4 Merge "Build the split-select tool without C++11 support" into lmp-mr1-dev 2014-11-03 23:38:56 +00:00
Adam Lesinski
c3dc0b57b8 Build the split-select tool without C++11 support
It was complicated to get the tool building on Windows, Linux,
and OSX with C++11 support.

OSX uses Clang to build C++11 binaries, which requires the libc++
standard library. Since most of the dependencies of this program
are built against libstdc++, this was difficult to resolve.

Now we build without C++11 support.

Change-Id: I4e537c113734508a8f480a1c402ed237de4f0e60
2014-11-03 12:09:58 -08:00
Adam Lesinski
4bf58108d4 Fix issues that will be present in C++11
- char16_t is a distinct type, so stay consistent
  with it throughout the code base.
- char16_t is defined as minimum size of 16 bits.
  Since we mmap and cast data structures onto raw memory,
  we need a precise definition (uint16_t), so we cast between
  that (and static_assert that they are the same size).

Change-Id: I869c32637543bbcfb39d2643e7d9df10d33acd3c
2014-11-03 11:49:47 -08:00
Tim Kilbourn
a9aecc0c29 Merge "aapt updates for Android TV" into lmp-mr1-dev automerge: 6af7d76
automerge: 181c18e

* commit '181c18efd438f7a5e8cc18327367c49bf51795be':
  aapt updates for Android TV
2014-10-24 21:24:59 +00:00
Tim Kilbourn
d9b1cad71e aapt updates for Android TV
- Output whether an app claims to be a game (android:isGame)
- Output android:banner if it is specified at the application level.

Change-Id: I7118b524f62cdfc4effeef21b32b3cdd814d9bfa
2014-10-24 12:59:24 -07:00
Adam Lesinski
08d1c80847 Merge commit 'cd8442d4' into manualmerge
Conflicts:
	tools/aapt/ResourceIdCache.cpp

Change-Id: I5341d47ed0fe891d6fefb174f644e636ce966eb8
2014-10-23 14:55:57 -07:00
Adam Lesinski
40e8eefbed First commit of split-select tool
This tool emits a set of rules as JSON for when a Split APK
should match a target device.

Change-Id: I8bfbdfbdb51efcfc645889dd03e1961f16e39645
2014-10-23 10:39:31 -07:00
Dan Albert
11d3d1016b am 9295a135: am e40974d9: Merge "Fix an overflow found by ASAN."
* commit '9295a1354eb8220be9a0a40985253c6cdfac35c3':
  Fix an overflow found by ASAN.
2014-10-20 22:01:04 +00:00
Dan Albert
2095ed4ef6 am 9295a135: am e40974d9: Merge "Fix an overflow found by ASAN."
* commit '9295a1354eb8220be9a0a40985253c6cdfac35c3':
  Fix an overflow found by ASAN.
2014-10-20 22:01:02 +00:00
Dan Albert
d395f79133 Fix an overflow found by ASAN.
Sometimes len is 0.

Change-Id: I031000188edc57663a5519b00cbbb751600d32f4
2014-10-20 14:45:55 -07:00
Adam Lesinski
217b17a915 am d3969d92: am 6dfe03ae: am 73a8c596: am 3f8c7dec: Merge "AAPT: Fix path for final generated resources on Windows" into lmp-dev
* commit 'd3969d927eef2f04ec097244c5f2bff5e7c0689e':
  AAPT: Fix path for final generated resources on Windows
2014-10-20 21:16:17 +00:00