FP4: Import extract-utils templates
Change-Id: I691c4893e500aa791868adb82573ef2357805faf
diff --git a/extract-files.sh b/extract-files.sh
new file mode 100644
index 0000000..6c27121
--- /dev/null
+++ b/extract-files.sh
@@ -0,0 +1,79 @@
+#!/bin/bash
+#
+# Copyright (C) 2016 The CyanogenMod Project
+# Copyright (C) 2017-2020 The LineageOS Project
+#
+# SPDX-License-Identifier: Apache-2.0
+#
+
+set -e
+
+DEVICE=**** FILL IN DEVICE NAME ****
+VENDOR=**** FILL IN VENDOR NAME ****
+
+# Load extract_utils and do some sanity checks
+MY_DIR="${BASH_SOURCE%/*}"
+if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi
+
+ANDROID_ROOT="${MY_DIR}/../../.."
+
+HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh"
+if [ ! -f "${HELPER}" ]; then
+ echo "Unable to find helper script at ${HELPER}"
+ exit 1
+fi
+source "${HELPER}"
+
+# Default to sanitizing the vendor folder before extraction
+CLEAN_VENDOR=true
+
+KANG=
+SECTION=
+
+while [ "${#}" -gt 0 ]; do
+ case "${1}" in
+ -n | --no-cleanup )
+ CLEAN_VENDOR=false
+ ;;
+ -k | --kang )
+ KANG="--kang"
+ ;;
+ -s | --section )
+ SECTION="${2}"; shift
+ CLEAN_VENDOR=false
+ ;;
+ * )
+ SRC="${1}"
+ ;;
+ esac
+ shift
+done
+
+if [ -z "${SRC}" ]; then
+ SRC="adb"
+fi
+
+function blob_fixup() {
+ case "${1}" in
+ vendor/lib/libsample1.so)
+ sed -i 's|/data/misc/sample1|/data/misc/sample2|g' "${2}"
+ ;;
+ vendor/lib64/libsample2.so)
+ "${PATCHELF}" --remove-needed "libsample3.so" "${2}"
+ "${PATCHELF}" --add-needed "libsample4.so" "${2}"
+ ;;
+ vendor/lib/libsample5.so)
+ "${PATCHELF}" --replace-needed "libsample6.so" "libsample7.so" "${2}"
+ ;;
+ vendor/lib/libsample7.so)
+ "${PATCHELF}" --set-soname "libsample7.so" "${2}"
+ ;;
+ esac
+}
+
+# Initialize the helper
+setup_vendor "${DEVICE}" "${VENDOR}" "${ANDROID_ROOT}" false "${CLEAN_VENDOR}"
+
+extract "${MY_DIR}/proprietary-files.txt" "${SRC}" "${KANG}" --section "${SECTION}"
+
+"${MY_DIR}/setup-makefiles.sh"