summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Android.bp33
-rw-r--r--BUILD33
-rw-r--r--METADATA8
-rw-r--r--src/main/java/com/android/tools/build/apkzlib/zip/Eocd.java2
-rw-r--r--src/main/java/com/android/tools/build/apkzlib/zip/ZFile.java3
5 files changed, 44 insertions, 35 deletions
diff --git a/Android.bp b/Android.bp
index d1e8bfb..ef6507d 100644
--- a/Android.bp
+++ b/Android.bp
@@ -14,6 +14,39 @@
// limitations under the License.
//
+// *** THIS PACKAGE HAS SPECIAL LICENSING CONDITIONS. PLEASE
+// CONSULT THE OWNERS AND opensource-licensing@google.com BEFORE
+// DEPENDING ON IT IN YOUR PROJECT. ***
+package {
+ default_applicable_licenses: ["tools_apkzlib_license"],
+}
+
+// Added automatically by a large-scale-change that took the approach of
+// 'apply every license found to every target'. While this makes sure we respect
+// every license restriction, it may not be entirely correct.
+//
+// e.g. GPL in an MIT project might only apply to the contrib/ directory.
+//
+// Please consider splitting the single license below into multiple licenses,
+// taking care not to lose any license_kind information, and overriding the
+// default license using the 'licenses: [...]' property on targets as needed.
+//
+// For unused files, consider creating a 'fileGroup' with "//visibility:private"
+// to attach the license to, and including a comment whether the files may be
+// used in the current project.
+// See: http://go/android-license-faq
+license {
+ name: "tools_apkzlib_license",
+ visibility: [":__subpackages__"],
+ license_kinds: [
+ "SPDX-license-identifier-Apache-2.0",
+ "SPDX-license-identifier-GFDL", // by exception only
+ "SPDX-license-identifier-GPL",
+ "legacy_notice",
+ ],
+ // large-scale-change unable to identify any license_text files
+}
+
java_library_static {
name: "apkzlib_zip",
sdk_version: "24",
diff --git a/BUILD b/BUILD
deleted file mode 100644
index 0094d45..0000000
--- a/BUILD
+++ /dev/null
@@ -1,33 +0,0 @@
-licenses(["notice"]) # Apache License 2.0
-
-java_library(
- name = "apkzlib",
- srcs = glob([
- "src/main/java/**/*.java",
- ]),
- visibility = ["//tools/base/build-system/builder:__pkg__"],
- deps = [
- "//tools/apksig",
- "//tools/base/third_party:com.google.code.findbugs_jsr305",
- "//tools/base/third_party:com.google.guava_guava",
- "//tools/base/third_party:org.bouncycastle_bcpkix-jdk15on",
- "//tools/base/third_party:org.bouncycastle_bcprov-jdk15on",
- ],
-)
-
-java_test(
- name = "apkzlib_tests",
- srcs = glob(["src/test/java/**/*.java"]),
- jvm_flags = ["-Dtest.suite.jar=tests.jar"],
- resources = glob(["src/test/resources/**"]),
- test_class = "com.android.testutils.JarTestSuite",
- deps = [
- ":apkzlib",
- "//tools/base/testutils:tools.testutils",
- "//tools/base/third_party:com.google.guava_guava",
- "//tools/base/third_party:junit_junit",
- "//tools/base/third_party:org.bouncycastle_bcpkix-jdk15on",
- "//tools/base/third_party:org.bouncycastle_bcprov-jdk15on",
- "//tools/base/third_party:org.mockito_mockito-core",
- ],
-)
diff --git a/METADATA b/METADATA
new file mode 100644
index 0000000..2426d81
--- /dev/null
+++ b/METADATA
@@ -0,0 +1,8 @@
+# *** THIS PACKAGE HAS SPECIAL LICENSING CONDITIONS. PLEASE
+# CONSULT THE OWNERS AND opensource-licensing@google.com BEFORE
+# DEPENDING ON IT IN YOUR PROJECT. ***
+third_party {
+ # would be NOTICE save for GFDL in:
+ # src/test/resources/testData/packaging/text-files/wikipedia.html
+ license_type: BY_EXCEPTION_ONLY
+}
diff --git a/src/main/java/com/android/tools/build/apkzlib/zip/Eocd.java b/src/main/java/com/android/tools/build/apkzlib/zip/Eocd.java
index a9da14b..d045b9b 100644
--- a/src/main/java/com/android/tools/build/apkzlib/zip/Eocd.java
+++ b/src/main/java/com/android/tools/build/apkzlib/zip/Eocd.java
@@ -136,7 +136,7 @@ class Eocd {
int commentSize = Ints.checkedCast(F_COMMENT_SIZE.read(bytes));
/*
- * Some sanity checks.
+ * Some quick checks.
*/
if (totalRecords1 != totalRecords2) {
throw new IOException("Zip states records split in multiple disks, which is not "
diff --git a/src/main/java/com/android/tools/build/apkzlib/zip/ZFile.java b/src/main/java/com/android/tools/build/apkzlib/zip/ZFile.java
index b7949b5..cca5f40 100644
--- a/src/main/java/com/android/tools/build/apkzlib/zip/ZFile.java
+++ b/src/main/java/com/android/tools/build/apkzlib/zip/ZFile.java
@@ -27,6 +27,7 @@ import com.google.common.base.Preconditions;
import com.google.common.base.Verify;
import com.google.common.base.VerifyException;
import com.google.common.collect.ImmutableList;
+import com.google.common.collect.Iterables;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
@@ -2472,7 +2473,7 @@ public class ZFile implements Closeable {
return;
}
- for (File f : Files.fileTreeTraverser().preOrderTraversal(file).skip(1)) {
+ for (File f : Iterables.skip(Files.fileTraverser().depthFirstPreOrder(file), 1)) {
String path = file.toURI().relativize(f.toURI()).getPath();
InputStream stream;