hikey: Add self-extractors for binaries tarball generation

copy file hikey-target_files-123456.zip to device/linaro/hikey/self-extractors
$ cd device/common
$ ./generate-packages.sh 123456 KKK hikey hikey linaro hikey

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>

Change-Id: I481ed9196fc4bb2d3cbe2a09a77c518ec520513d
diff --git a/self-extractors/Android.mk b/self-extractors/Android.mk
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/self-extractors/Android.mk
diff --git a/self-extractors/PART1 b/self-extractors/PART1
new file mode 100644
index 0000000..935267e
--- /dev/null
+++ b/self-extractors/PART1
@@ -0,0 +1,12 @@
+#
+# Usage is subject to the enclosed license agreement
+
+echo
+echo The license for this software will now be displayed.
+echo You must agree to this license before using this software.
+echo
+echo -n Press Enter to view the license
+read dummy
+echo
+
+more << __EOF__
diff --git a/self-extractors/PART2 b/self-extractors/PART2
new file mode 100644
index 0000000..30e8d43
--- /dev/null
+++ b/self-extractors/PART2
@@ -0,0 +1,22 @@
+__EOF__
+
+if test $? != 0
+then
+  echo ERROR: Couldn\'t display license file 1>&2
+  exit 1
+fi
+
+echo
+
+echo -n Type \"I ACCEPT\" if you agree to the terms of the license:\ 
+read typed
+
+if test "$typed" != I\ ACCEPT
+then
+  echo
+  echo You didn\'t accept the license. Extraction aborted.
+  exit 2
+fi
+
+echo
+
diff --git a/self-extractors/PART3 b/self-extractors/PART3
new file mode 100644
index 0000000..6847be5
--- /dev/null
+++ b/self-extractors/PART3
@@ -0,0 +1,12 @@
+
+if test $? != 0
+then
+  echo
+  echo ERROR: Couldn\'t extract files. 1>&2
+  exit 3
+else
+  echo
+  echo Files extracted successfully.
+fi
+exit 0
+
diff --git a/self-extractors/PROLOGUE b/self-extractors/PROLOGUE
new file mode 100644
index 0000000..c856ef1
--- /dev/null
+++ b/self-extractors/PROLOGUE
@@ -0,0 +1,2 @@
+#!/bin/bash
+#
diff --git a/self-extractors/extract-lists.txt b/self-extractors/extract-lists.txt
new file mode 100644
index 0000000..8f6344e
--- /dev/null
+++ b/self-extractors/extract-lists.txt
@@ -0,0 +1,6 @@
+  linaro)
+    TO_EXTRACT="\
+            SYSTEM/vendor/lib64/egl/libGLES_mali.so \
+            SYSTEM/vendor/lib/egl/libGLES_mali.so \
+            "
+    ;;
diff --git a/self-extractors/linaro/COPYRIGHT b/self-extractors/linaro/COPYRIGHT
new file mode 100644
index 0000000..4e017c2
--- /dev/null
+++ b/self-extractors/linaro/COPYRIGHT
@@ -0,0 +1 @@
+# (C) HiSilicon Co. Ltd.
diff --git a/self-extractors/linaro/LICENSE b/self-extractors/linaro/LICENSE
new file mode 100644
index 0000000..4a8cdd5
--- /dev/null
+++ b/self-extractors/linaro/LICENSE
@@ -0,0 +1,177 @@
+THIS END USER LICENCE AGREEMENT ("LICENCE") IS A LEGAL AGREEMENT
+BETWEEN YOU (EITHER A SINGLE INDIVIDUAL, OR SINGLE LEGAL ENTITY) AND
+ARM LIMITED ("ARM") FOR THE USE OF THE SOFTWARE ACCOMPANYING THIS
+LICENCE. ARM IS ONLY WILLING TO LICENSE THE SOFTWARE TO YOU ON
+CONDITION THAT YOU ACCEPT ALL OF THE TERMS IN THIS LICENCE. BY
+CLICKING "I AGREE" OR BY INSTALLING OR OTHERWISE USING OR COPYING THE
+SOFTWARE YOU INDICATE THAT YOU AGREE TO BE BOUND BY ALL OF THE TERMS
+OF THIS LICENCE. IF YOU DO NOT AGREE TO THE TERMS OF THIS LICENCE, ARM
+IS UNWILLING TO LICENSE THE SOFTWARE TO YOU AND YOU MAY NOT INSTALL,
+USE OR COPY THE SOFTWARE, AND YOU SHOULD PROMPTLY RETURN THE SOFTWARE
+TO YOUR SUPPLIER.
+
+"Software" means any software, firmware and data accompanying this
+Licence, any printed, electronic or online documentation supplied with
+it under the terms of this Licence for the MALI GPU Driver.
+
+  1. LICENCE GRANTS TO YOU.
+
+  1.1 ARM hereby grants to you, subject to the terms and conditions of
+  this Licence, a non-exclusive, non-transferable, revocable, worldwide
+  licence to: (i) use the Software or certain components or optional
+  functionality in the Software, as applicable, solely for the purposes
+  of designing or developing applications for use in conjunction with
+  MALI GPU based products manufactured under licence from ARM; and (ii)
+  modify the Software or certain components or optional functionality in
+  the Software for the purposes of porting the Software to your target;
+
+  2. RESTRICTIONS ON USE OF THE SOFTWARE.
+
+  COPYING: You shall not use or copy the Software except as expressly
+  authorised in this Licence. You may make one additional copy of the
+  delivered Software for backup or archival purposes.
+
+  BENCHMARKING: This Licence does not prevent you from using the
+  Software for internal benchmarking purposes. However, you shall treat
+  any and all benchmarking data relating to the Software, and any other
+  results of your use or testing of the Software which are indicative of
+  its performance, efficacy, reliability or quality, as confidential
+  information and you shall not disclose such information to any third
+  party without the express written permission of ARM.
+
+  COPYRIGHT AND RESERVATION OF RIGHTS: The Software is owned by ARM or
+  its licensors and is protected by copyright and other intellectual
+  property laws and international treaties. The Software is licensed not
+  sold. You acquire no rights to the Software other than as expressly
+  provided by this Licence. You shall not remove from the Software any
+  copyright notice or other notice and shall ensure that any such notice
+  is reproduced in any copies of the whole or any part of the Software
+  made by you or other permitted users.
+
+  REVERSE ENGINEERING: Except to the extent that such activity is
+  permitted by applicable law you shall not reverse engineer, decompile
+  or disassemble any of the Software. If the Software was provided to
+  you in Europe you shall not reverse engineer, decompile or disassemble
+  any of the Software for the purposes of error correction.
+
+  3. SUPPORT.
+
+  ARM is not under an obligation to provide support, but it may do so at
+  its own discretion, and if it does, it will only be in respect of the
+  Software as delivered and not any modifications thereto.
+
+  4. NO WARRANTIES.
+
+  YOU AGREE THAT THE SOFTWARE IS LICENSED "AS IS", AND THAT ARM
+  EXPRESSLY DISCLAIMS ALL REPRESENTATIONS, WARRANTIES, CONDITIONS OR
+  OTHER TERMS, EXPRESS OR IMPLIED OR STATUTORY, INCLUDING WITHOUT
+  LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, SATISFACTORY
+  QUALITY, AND FITNESS FOR A PARTICULAR PURPOSE.
+
+  YOU EXPRESSLY ASSUME ALL LIABILITIES AND RISKS, FOR USE OR OPERATION
+  OF SOFTWARE APPLICATIONS, INCLUDING WITHOUT LIMITATION, SOFTWARE
+  APPLICATIONS DESIGNED OR INTENDED FOR MISSION CRITICAL APPLICATIONS,
+  SUCH AS PACEMAKERS, WEAPONRY, AIRCRAFT NAVIGATION, FACTORY CONTROL
+  SYSTEMS, ETC. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE
+  ENTIRE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  5. LIMITATION OF LIABILITY.
+
+  TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL
+  ARM BE LIABLE FOR ANY INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL
+  DAMAGES (INCLUDING LOSS OF PROFITS) ARISING OUT OF THE USE OR
+  INABILITY TO USE THE SOFTWARE WHETHER BASED ON A CLAIM UNDER CONTRACT,
+  TORT OR OTHER LEGAL THEORY, EVEN IF ARM WAS ADVISED OF THE POSSIBILITY
+  OF SUCH DAMAGES.
+
+  ARM does not seek to limit or exclude liability for death or personal
+  injury arising from ARM's negligence or ARM's fraud and because some
+  jurisdictions do not permit the exclusion or limitation of liability
+  for consequential or incidental damages the above limitation relating
+  to liability for consequential damages may not apply to you.
+
+  NOTWITHSTANDING ANYTHING TO THE CONTRARY CONTAINED IN THIS LICENCE,
+  THE MAXIMUM LIABILITY OF ARM TO YOU IN AGGREGATE FOR ALL CLAIMS MADE
+  AGAINST ARM IN CONTRACT TORT OR OTHERWISE UNDER OR IN CONNECTION WITH
+  THE SUBJECT MATTER OF THIS LICENCE SHALL NOT EXCEED THE GREATER OF:
+  (I) THE TOTAL OF SUMS PAID BY YOU TO ARM (IF ANY) FOR THIS LICENCE;
+  AND (II) $10.00 USD. THE EXISTENCE OF MORE THAN ONE CLAIM WILL NOT
+  ENLARGE OR EXTEND THE LIMIT.
+
+  6. CONFIDENTIALITY.
+
+  You acknowledge that the Software and any benchmarking data and
+  related information mentioned in Clause 2 may contain trade secrets
+  and confidential material and you agree to maintain all such
+  information in confidence and apply security measures no less
+  stringent than the measures which you apply to protect your own like
+  information, but not less than a reasonable degree of care, to prevent
+  their unauthorised disclosure and use. Subject to any restrictions
+  imposed by applicable law, the period of confidentiality shall be
+  indefinite. You agree not to use any such information other than in
+  normal use of the Software under the licences granted in this Licence.
+
+  7. U.S. GOVERNMENT END USERS.
+
+  US Government Restrictions: Use, duplication, reproduction, release,
+  modification, disclosure or transfer of the Software is restricted in
+  accordance with the terms of this Licence.
+
+  8. TERM AND TERMINATION.
+
+  This Licence shall remain in force until terminated by you or by
+  ARM. Without prejudice to any of its other rights if you are in breach
+  of any of the terms and conditions of this Licence then ARM may
+  terminate this Licence immediately upon giving written notice to you
+  or on thirty (30) days written notice without cause. You may terminate
+  this Licence at any time. Upon termination of this Licence by you or
+  by ARM , you shall stop using the Software and confidential
+  information and destroy all copies of the Software and confidential
+  information in your possession, together with all documentation and
+  related materials. The provisions of clauses 4, 5, 6, 7, 8 and 9 shall
+  survive termination of this Licence.
+
+  9. GENERAL.
+
+  This Licence is governed by English Law. Except where ARM agrees
+  otherwise in: (i) a written contract signed by you and ARM; or (ii) a
+  written contract provided by ARM and accepted by you, this is the only
+  agreement between you and ARM relating to the Software and it may only
+  be modified by written agreement between you and ARM. Except as
+  expressly agreed in writing, this Licence may not be modified by
+  purchase orders, advertising or other representation by any person. If
+  any clause or sentence in this Licence is held by a court of law to be
+  illegal or unenforceable the remaining provisions of this Licence
+  shall not be affected thereby. The failure by ARM to enforce any of
+  the provisions of this Licence, unless waived in writing, shall not
+  constitute a waiver of ARM's rights to enforce such provision or any
+  other provision of this Licence in the future.
+
+  At ARM's request, you agree to check your computers for installations
+  of the Software and any other information requested by ARM relating to
+  Software installation and to provide this information to ARM. You
+  agree that auditors nominated by ARM may also perform such checking
+  and reporting on behalf of ARM by prior appointment during your normal
+  business hours on seven (7) days' notice. ARM shall bear the auditors'
+  costs for that audit unless it reveals unlicensed usage in which case
+  you shall promptly reimburse ARM for all reasonable costs and
+  expenses, including professional fees, relating to such audit. Any
+  information which is disclosed to ARM or such auditors during checking
+  or audit shall be treated as your confidential information and shall
+  only be used by ARM for licence management, compliance and enforcement
+  purposes.
+
+  The Software provided under this Licence is subject to U.S. export
+  control laws, including the U.S. Export Administration Act and its
+  associated regulations, and may be subject to export or import
+  regulations in other countries. You agree to comply fully with all
+  laws and regulations of the United States and other countries ("Export
+  Laws") to assure that the Software, is not (1) exported, directly or
+  indirectly, in violation of Export Laws, either to any countries that
+  are subject to U.S.A. export restrictions or to any end user who has
+  been prohibited from participating in the U.S.A. export transactions
+  by any federal agency of the U.S.A. government; or (2) intended to be
+  used for any purpose prohibited by Export Laws, including, without
+  limitation, nuclear, chemical, or biological weapons proliferation.
+
+Mali GPU Userspace LES-PRE-20376
diff --git a/self-extractors/linaro/staging/BoardConfigPartial.mk b/self-extractors/linaro/staging/BoardConfigPartial.mk
new file mode 100644
index 0000000..c0aab8b
--- /dev/null
+++ b/self-extractors/linaro/staging/BoardConfigPartial.mk
@@ -0,0 +1,13 @@
+# Copyright 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
diff --git a/self-extractors/linaro/staging/device-partial.mk b/self-extractors/linaro/staging/device-partial.mk
new file mode 100644
index 0000000..444703e
--- /dev/null
+++ b/self-extractors/linaro/staging/device-partial.mk
@@ -0,0 +1,19 @@
+# Copyright 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Linaro blob(s) necessary for Hikey hardware
+PRODUCT_COPY_FILES := \
+    vendor/linaro/hikey/proprietary/lib64/libGLES_mali.so:system/lib64/egl/libGLES_mali.so:linaro \
+    vendor/linaro/hikey/proprietary/libGLES_mali.so:system/lib/egl/libGLES_mali.so:linaro \
+
diff --git a/self-extractors/root/BoardConfigVendor.mk b/self-extractors/root/BoardConfigVendor.mk
new file mode 100644
index 0000000..af30aa1
--- /dev/null
+++ b/self-extractors/root/BoardConfigVendor.mk
@@ -0,0 +1,17 @@
+# Copyright 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+LOCAL_STEM := hikey/BoardConfigPartial.mk
+
+-include vendor/linaro/$(LOCAL_STEM)
diff --git a/self-extractors/root/device-vendor.mk b/self-extractors/root/device-vendor.mk
new file mode 100644
index 0000000..d555b9f
--- /dev/null
+++ b/self-extractors/root/device-vendor.mk
@@ -0,0 +1,19 @@
+#
+# Copyright 2016 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+LOCAL_STEM := hikey/device-partial.mk
+
+$(call inherit-product-if-exists, vendor/linaro/$(LOCAL_STEM))