This package builds binary packages that will download the Android SDK components at install time.

In this file:
    - "component" refers to the SDK packages
    - "package" refers either to the Debian source package or the Debian binary package

The SDK components for which this source package builds Debian binary packages are:
    - build-tools (versioned packages)
    - cmdline-tools (versioned packages)
    - emulator
    - ndk (versioned packages)
    - patcher (versioned packages)
    - platforms (versioned packages)
    - platform-tools
    - sources (versioned packages)

"versioned packages" means there is a binary package for each version. They can be installed concurrently.

By defaults, SDK components marked as obsolete will be ignored. To enable them, set SKIP_OBSOLETE_PACKAGES variable to 0 in d/scripts/_components_to_package.sh.

To update this source package:
    - run debian/scripts/upgrade_package_versions.sh
    - update d/version_list_unpacked_size.txt
        - run
            - `dpkg-buildpackage`
        - then from within a schroot as root user run
            - `DEBIAN_FRONTEND=noninteractive debian_chroot=$debian_chroot ./debian/scripts/get_unpacked_size.sh`
    - update d/changelog and set version to the timestamp in d/version_list.info
        `gbp dch -N $(grep TIMESTAMP= debian/version_list.info  | cut -f2 -d=)`
    - run debian/scripts/update-udev-rules.sh to update 51-android.rules
    - Check for updates of shlib dependencies of google-android-extras-google-auto-installer by running
        - apt install ../google-android-extras-google-auto-installer*.deb
        - dpkg-shlibdeps $(find /usr/lib/android-sdk/extras/google/auto -type f -executable -exec echo -e{} \;) -Tdebian/google-android-extras-google-auto-installer.substvars.in -l/usr/lib/android-sdk/extras/google/auto --ignore-missing-info
    - Commit the changes:
        - run `dh clean`
        - run `git status`
        - Commit to git the newly added *.sha1 files, and remove the ones that were deleted

Script debian/scripts/upgrade_package_versions.sh:
    - downloads the latest XML file (repository2-1.xml) from google servers/mirrors
    - uses XSL stylesheets stored in d/scripts to create version_list.txt holding the available SDK component packages
    - extracts the date of Generation of the XML and updates d/version_list.info
        This date is in comment in the XML. For example: <!--Generated on 2021-10-04 15:38:28.320947 with ADRT.-->
    - extracts the licenses from the XML file to d/licenses/name.copyright
    - creates */**/package.xml files
    - updates d/control
    - updates d/tests/control
    - permits to add manually some packages that are not listed in the XML

debian/rules:
    - generates the files to build the binary packages based on the corresponding *.in files. For example $package.alternatives $package.bug-script $package.config $package.control $package.dirs $package.install $package.postinst $package.postrm $package.templates ...
        - copyright file for each binary package uses the copyright as set in the XML for that component
    - generates the *.sha1 files
    - sets the Installed-Size of the binary package
    - so that we can use "dh_installalternatives", d/rules creates the target files and removes them once dh_installalternatives updated the maintainer scripts.

sha1 sums (located in in for-postinst/default/) :
    - are intentionnaly shipped in the source package so that we can detect if the sha1 of a given component changed in the XML

51-android.rules:
    - sourced from https://github.com/M0Rf30/android-udev-rules
    - you can update with the latest released version by using script debian/scripts/update-udev-rules.sh
    - only modification applied by this package is change of group from "adbusers" to "plugdev"

licenses/*:
    - these files are automatically generated by debian/scripts/upgrade_package_versions.sh
    - for more details see:
      https://salsa.debian.org/google-android-tools-team/android-sdk-meta/-/blob/master/debian/README.source

*/**/package.xml:
    - these files are automatically generated by debian/scripts/upgrade_package_versions.sh

To build a package that contains the zip files from google, run with the list of packages, as they are outputed when running dpkg-buildpackage, separated by space.
    ./debian/scripts/make_zip_package.sh ndk,25.1.8937393 build-tools,33.0.0 platforms,android-33~33 platform-tools

    This replicates the package in another directory and add the field "XS-With-Zips: yes" to debian/control.in which, when present at build time will take the zip and add it to the binary package.
