735 lines
32 KiB
Bash
735 lines
32 KiB
Bash
|
|
# Maintainer: WithTheBraid <info@braid.business>
|
||
|
|
# Co-Maintainer: Polarian <polarian@polarian.dev>, Fredy García <frealgagu at gmail dot com>
|
||
|
|
# Contributor: Philip Goto <philip.goto@gmail.com>
|
||
|
|
|
||
|
|
pkgbase=flutter-newer
|
||
|
|
_group=flutter
|
||
|
|
groups=("$pkgbase")
|
||
|
|
pkgver=3.41.8
|
||
|
|
_enginever=59aa584fdf100e6c78c785d8a5b565d1de4b48ab
|
||
|
|
_materialfontsver=3012db47f3130e62f7cc0beabff968a33cbec8d8
|
||
|
|
_gradlewver=fd5c1f2c013565a3bea56ada6df9d2b8e96d56aa
|
||
|
|
_flutterarch=$(echo "$CARCH" | sed s/aarch64/arm64/ | sed s/x86_64/x64/)
|
||
|
|
_dartver="3.11.5"
|
||
|
|
_dartmin="3.11.0"
|
||
|
|
_dartmax="3.12.0"
|
||
|
|
# this host is blocked in China, according to Flutter docs, the FLUTTER_STORAGE_BASE_URL environment variable
|
||
|
|
# should be used to provide an alternative mirror
|
||
|
|
_storagebase="${FLUTTER_STORAGE_BASE_URL:-"https://storage.googleapis.com"}"
|
||
|
|
pkgrel=1
|
||
|
|
pkgdesc="A new mobile app SDK to help developers and designers build modern mobile apps for iOS and Android."
|
||
|
|
_pkgdesc="Flutter SDK component"
|
||
|
|
arch=("x86_64" "aarch64")
|
||
|
|
url="https://${_group}.dev"
|
||
|
|
license=("custom" "BSD" "CCPL")
|
||
|
|
makedepends=(
|
||
|
|
"dart>=${_dartmin}"
|
||
|
|
"dart<${_dartmax}"
|
||
|
|
"jq"
|
||
|
|
"gradle"
|
||
|
|
"unzip"
|
||
|
|
"tar"
|
||
|
|
)
|
||
|
|
options=("!emptydirs")
|
||
|
|
source=(
|
||
|
|
"${_group}-${pkgver}.tar.xz::https://github.com/${_group}/${_group}/archive/refs/tags/${pkgver/.hotfix/+hotfix}.tar.gz"
|
||
|
|
|
||
|
|
# ARTIFACTS
|
||
|
|
|
||
|
|
# material_fonts
|
||
|
|
"material_fonts-${_materialfontsver}.zip::${_storagebase}/flutter_infra_release/flutter/fonts/${_materialfontsver}/fonts.zip"
|
||
|
|
# gradle_wrapper
|
||
|
|
"gradle_wrapper-${_gradlewver}.tar.gz::${_storagebase}/flutter_infra_release/gradle-wrapper/${_gradlewver}/gradle-wrapper.tgz"
|
||
|
|
|
||
|
|
# engine/android-x86
|
||
|
|
"android-x86-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-x86/artifacts.zip"
|
||
|
|
# engine/android-x64
|
||
|
|
"android-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-x64/artifacts.zip"
|
||
|
|
# engine/android-arm
|
||
|
|
"android-arm-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-arm/artifacts.zip"
|
||
|
|
# engine/android-arm-profile
|
||
|
|
"android-arm-profile-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-arm-profile/artifacts.zip"
|
||
|
|
# engine/android-arm-release
|
||
|
|
"android-arm-release-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-arm-release/artifacts.zip"
|
||
|
|
# engine/android-arm64
|
||
|
|
"android-arm64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-arm64/artifacts.zip"
|
||
|
|
# engine/android-arm64-profile
|
||
|
|
"android-arm64-profile-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-arm64-profile/artifacts.zip"
|
||
|
|
# engine/android-arm64-release
|
||
|
|
"android-arm64-release-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-arm64-release/artifacts.zip"
|
||
|
|
|
||
|
|
# engine/android-x64-profile
|
||
|
|
"android-x64-profile-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-x64-profile/artifacts.zip"
|
||
|
|
# engine/android-x64-release
|
||
|
|
"android-x64-release-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-x64-release/artifacts.zip"
|
||
|
|
|
||
|
|
# flutter_web_sdk
|
||
|
|
"flutter_web_sdk-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/flutter-web-sdk.zip"
|
||
|
|
# pkg
|
||
|
|
"sky_engine-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/sky_engine.zip"
|
||
|
|
|
||
|
|
# engine/common
|
||
|
|
"flutter_patched_sdk-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/flutter_patched_sdk.zip"
|
||
|
|
# engine/common
|
||
|
|
"flutter_patched_sdk_product-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/flutter_patched_sdk_product.zip"
|
||
|
|
|
||
|
|
# PATCHES
|
||
|
|
|
||
|
|
"system-dart.patch"
|
||
|
|
"gradle-user-home.patch"
|
||
|
|
|
||
|
|
# thanks to lauren n. liberda from Alpine for the awesome patchset used here !
|
||
|
|
"${_group}.sh"
|
||
|
|
"version.patch"
|
||
|
|
"no-lock.patch"
|
||
|
|
"no-runtime-download.patch"
|
||
|
|
"doctor.patch"
|
||
|
|
"opt-in-analytics.patch"
|
||
|
|
)
|
||
|
|
source_x86_64=(
|
||
|
|
# dart-sdk
|
||
|
|
"dart-sdk-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/dart-sdk-linux-x64.zip"
|
||
|
|
# engine/android-arm-profile/linux-x64
|
||
|
|
"android-arm-profile-linux-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-arm-profile/linux-x64.zip"
|
||
|
|
# engine/android-arm-release/linux-x64
|
||
|
|
"android-arm-release-linux-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-arm-release/linux-x64.zip"
|
||
|
|
# engine/android-arm64-profile/linux-x64
|
||
|
|
"android-arm64-profile-linux-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-arm64-profile/linux-x64.zip"
|
||
|
|
# engine/android-arm64-release/linux-x64
|
||
|
|
"android-arm64-release-linux-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-arm64-release/linux-x64.zip"
|
||
|
|
# engine/android-x64-profile/linux-x64
|
||
|
|
"android-x64-profile-linux-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-x64-profile/linux-x64.zip"
|
||
|
|
# engine/android-x64-release/linux-x64
|
||
|
|
"android-x64-release-linux-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/android-x64-release/linux-x64.zip"
|
||
|
|
|
||
|
|
# engine/linux-$ARCH
|
||
|
|
"engine-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/linux-x64/artifacts.zip"
|
||
|
|
# engine/linux-$ARCH
|
||
|
|
"gtk-debug-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/linux-x64-debug/linux-x64-flutter-gtk.zip"
|
||
|
|
# engine/linux-$ARCH-profile
|
||
|
|
"gtk-profile-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/linux-x64-profile/linux-x64-flutter-gtk.zip"
|
||
|
|
# engine/linux-$ARCH-release
|
||
|
|
"gtk-release-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/linux-x64-release/linux-x64-flutter-gtk.zip"
|
||
|
|
# engine/linux-$ARCH
|
||
|
|
"font-subset-x64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/linux-x64/font-subset.zip"
|
||
|
|
)
|
||
|
|
source_aarch64=(
|
||
|
|
# dart-sdk
|
||
|
|
"dart-sdk-arm64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/dart-sdk-linux-arm64.zip"
|
||
|
|
# engine/linux-$ARCH
|
||
|
|
"engine-arm64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/linux-arm64/artifacts.zip"
|
||
|
|
# engine/linux-$ARCH
|
||
|
|
"gtk-debug-arm64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/linux-arm64-debug/linux-arm64-flutter-gtk.zip"
|
||
|
|
# engine/linux-$ARCH-profile
|
||
|
|
"gtk-profile-arm64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/linux-arm64-profile/linux-arm64-flutter-gtk.zip"
|
||
|
|
# engine/linux-$ARCH-release
|
||
|
|
"gtk-release-arm64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/linux-arm64-release/linux-arm64-flutter-gtk.zip"
|
||
|
|
# engine/linux-$ARCH
|
||
|
|
"font-subset-arm64-${_enginever}.zip::${_storagebase}/flutter_infra_release/flutter/${_enginever}/linux-arm64/font-subset.zip"
|
||
|
|
)
|
||
|
|
noextract=(
|
||
|
|
"material_fonts-${_materialfontsver}.zip"
|
||
|
|
"gradle_wrapper-${_gradlewver}.tar.gz"
|
||
|
|
|
||
|
|
"android-x86-${_enginever}.zip"
|
||
|
|
"android-x64-${_enginever}.zip"
|
||
|
|
"android-arm-${_enginever}.zip"
|
||
|
|
"android-arm-profile-${_enginever}.zip"
|
||
|
|
"android-arm-release-${_enginever}.zip"
|
||
|
|
"android-arm64-${_enginever}.zip"
|
||
|
|
"android-arm64-profile-${_enginever}.zip"
|
||
|
|
"android-arm64-release-${_enginever}.zip"
|
||
|
|
|
||
|
|
"android-x64-profile-${_enginever}.zip"
|
||
|
|
"android-x64-release-${_enginever}.zip"
|
||
|
|
|
||
|
|
"flutter_web_sdk-${_enginever}.zip"
|
||
|
|
"sky_engine-${_enginever}.zip"
|
||
|
|
"flutter_patched_sdk-${_enginever}.zip"
|
||
|
|
"flutter_patched_sdk_product-${_enginever}.zip"
|
||
|
|
|
||
|
|
# x64
|
||
|
|
"android-arm-profile-linux-x64-${_enginever}.zip"
|
||
|
|
"android-arm-release-linux-x64-${_enginever}.zip"
|
||
|
|
"android-arm64-profile-linux-x64-${_enginever}.zip"
|
||
|
|
"android-arm64-release-linux-x64-${_enginever}.zip"
|
||
|
|
"android-x64-profile-linux-x64-${_enginever}.zip"
|
||
|
|
"android-x64-release-linux-x64-${_enginever}.zip"
|
||
|
|
|
||
|
|
"engine-x64-${_enginever}.zip"
|
||
|
|
"gtk-debug-x64-${_enginever}.zip"
|
||
|
|
"gtk-profile-x64-${_enginever}.zip"
|
||
|
|
"gtk-release-x64-${_enginever}.zip"
|
||
|
|
"font-subset-x64-${_enginever}.zip"
|
||
|
|
|
||
|
|
# arm64
|
||
|
|
"engine-arm64-${_enginever}.zip"
|
||
|
|
"gtk-debug-arm64-${_enginever}.zip"
|
||
|
|
"gtk-profile-arm64-${_enginever}.zip"
|
||
|
|
"gtk-release-arm64-${_enginever}.zip"
|
||
|
|
"font-subset-arm64-${_enginever}.zip"
|
||
|
|
|
||
|
|
# dart
|
||
|
|
"dart-sdk-x64-${_enginever}.zip"
|
||
|
|
"dart-sdk-arm64-${_enginever}.zip"
|
||
|
|
)
|
||
|
|
|
||
|
|
sha256sums=('5b1e2b56c46fc801e7ccda1d2671bef0d7ceda250eaee0aa6708757d3cf70ff5'
|
||
|
|
'e56fa8e9bb4589fde964be3de451f3e5b251e4a1eafb1dc98d94add034dd5a86'
|
||
|
|
'31e9428baf1a2b2f485f1110c5899f852649b33d46a2e9b07f9d17752d50190a'
|
||
|
|
'c0bbf4c97465f5d980adf4cb8c5b08bfc5c83765cf8449a0040fed96b2b6dfdf'
|
||
|
|
'fabdded4b99b9a8dc13e4b0cd689e056ce4ca5cc2fc720ebdce46540f4f61d93'
|
||
|
|
'292a7f72cfbc1f776a71f0e3ebc4bcb7cbb22526cc8cd6aa38a0e12068d78a04'
|
||
|
|
'59471ed9d184b1a415dea5fcc0f15c4cf67470671e69f1cbf16454e73176a806'
|
||
|
|
'ccb0b718ea37033087bc0cf9b7ad72c48b6059f9750c26d7a799a0c059c94f4d'
|
||
|
|
'ab30f62ad3e504ff3f90ad8b9375a36dfaeb515dd931b968c7ea89bbf35a5d33'
|
||
|
|
'7556f1527452c545c659c731386fae92044b53a516f7151882d88a22573248b3'
|
||
|
|
'2f9573081075ef6eec6f41c510b83051a592946637c5360ef7f498c321ca3d75'
|
||
|
|
'df65e4203bac7b257635bb061cef6fe421694ef84b51aad633b2352cb8ea9afa'
|
||
|
|
'08a1960676f9fd5b65d9246ca498000aafae670f65910c61a7fc445230c0d5de'
|
||
|
|
'544aac38a8e17fc4f69055f8527fda0d39fa8a1c1a6782947f25011b1869f650'
|
||
|
|
'2a1e241c982e9e84e2c3708a47fa15d46efdec32165fc781547818e12e56e881'
|
||
|
|
'1e85925ed58e03dfae6933fc8b83553edb5715e249cb16cd7a1f13e2143c6e50'
|
||
|
|
'12aae288cf53f0f4476ae8da7d20e46930dc1aa54c82a7ad33c93815af46588a'
|
||
|
|
'47bea61b2d62a4637d56f2807661afd7d427f1f48434d1d132b7e6e10ffb6aa8'
|
||
|
|
'e41d25d8cba8b0bb51ee0b20cb6b730bfb2c491d67c669ab8e3550d60b37fb5c'
|
||
|
|
'b4c104129eb57e7e3edca2e23376b8b034de2d466189bdc1c3e2a304506889a3'
|
||
|
|
'f0c88e34c130f243786f7673d4c5f8fb5d1089c84b0604085aeb35a7fa8b3682'
|
||
|
|
'cadd32aaac6beeb91052174d50494bb7e16444759fcdc8224ea13550657f525f'
|
||
|
|
'e26c476ad75647fe4441d56888b95837f586db5feb0fada5e51005eb0582ce32'
|
||
|
|
'34b02703c48f6686ffb2691a510607cfbe69beff9e726b47834b3298839542ca'
|
||
|
|
'1578e819b6ee479b6db7a095bcfa74372d3ff555642c6d6ea7112e97bb6f2027')
|
||
|
|
sha256sums_x86_64=('95f656395ee65b1dfefd901bfde47ffba372632c73aedf6d4a5a0745af7ede99'
|
||
|
|
'bb404b6db7ebe7659029d1317feddbd71478f4ed45179e2ff73809ecf4b17da8'
|
||
|
|
'463cc7ecae76a93eeb674200fd84f22828ba77abb2c6092e0ad842b5a78ebf6b'
|
||
|
|
'a8d9b7138961de4ccda6b8da3705325eea7c120e9a057a7a6c734287be333a24'
|
||
|
|
'8ada43a61478eb161858383d9aff34539e4793e2c96c478ee21ca238d3ac7a65'
|
||
|
|
'fefb35edcd75286fc5c1cd180173e41cf858a67f3fe06bf30fb7a02661834a66'
|
||
|
|
'63500eb4b868f18dcb97cf1d97fcaa7e49527d139da1c75499954d49ea7102b2'
|
||
|
|
'711e8a1ff2d32ad8e466932a0700bd86010691101845bd6d10abb5d632ca8d69'
|
||
|
|
'f24957d2d0ffec95c30cbf4f9d6f9fb5e7e2fb2689bbebba56b6233918dc8264'
|
||
|
|
'1f97105ba7a98f3572666f850d1fdb8a3247418f84c738fb1d8abd29b414e221'
|
||
|
|
'649fff2f7c97b6255c91e66e23a0e18d6e185c95464e2adbded2ae2e02b74348'
|
||
|
|
'a530e658c56d3d53d633c5cd49c4889f31858c48987645e39c9c34d03de01c60')
|
||
|
|
sha256sums_aarch64=('6c7be6855ad072137ef3294a0858d84b6920049f45a6981b17dc557d1dbf3acb'
|
||
|
|
'959709551f4d8fb969e148d38466f15ecf456aa913e45386692bbe6c6729a6c4'
|
||
|
|
'76e6d37367f7f4ddecc4e28f7e71e53430abf4546333e067d00e4a3fbf51c5c5'
|
||
|
|
'3282e3a25e511e6a35317f0f4440dba0374972e9861c63eba72f83aefa607f4c'
|
||
|
|
'fd32cdb5a9331412138564958aff62e2662ebd618c2bff2988757fed70c20858'
|
||
|
|
'cd54a1d2d94dc6e56c7514c37c46765da07aa04367831db675b178a165130e40')
|
||
|
|
|
||
|
|
prepare() {
|
||
|
|
# SDK
|
||
|
|
|
||
|
|
# this is required in case people try to build with `aur/dart-sdk-dev` instead of `extra/dart`
|
||
|
|
DART_BINARY=$(readlink $(command -v dart))
|
||
|
|
DART_ROOT=${DART_ROOT:-${DART_BINARY/\/bin\/dart*/}}
|
||
|
|
|
||
|
|
if [ "${DART_ROOT}" != "/opt/dart-sdk" ]; then
|
||
|
|
echo -e "\n\n++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n\n"
|
||
|
|
|
||
|
|
echo -e " WARNING !!!\n"
|
||
|
|
|
||
|
|
echo -e " Your default Dart SDK does not seem to be installed into\n"
|
||
|
|
echo -e " /opt/dart-sdk\n"
|
||
|
|
echo -e " Please consider using the original 'extra/dart' package"
|
||
|
|
echo -e " from the Arch Linux package repositories. We otherwise"
|
||
|
|
echo -e " cannot ensure the Flutter tool will work as expected.\n\n"
|
||
|
|
echo -e " Dart executable: $(command -v dart)"
|
||
|
|
echo -e " Resolved Dart SDK: ${DART_ROOT}"
|
||
|
|
|
||
|
|
echo -e "\n\n++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n\n"
|
||
|
|
fi
|
||
|
|
|
||
|
|
if [[ ! "$DART_ROOT" =~ ^\/opt\/ && ! "$DART_ROOT" =~ ^\/usr\/ ]]; then
|
||
|
|
echo "FATAL: DART_ROOT is neither in /opt nor /usr. You must use a system wide Dart installation for this package. Exiting."
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
if [ -d "${srcdir}/${_group}" ]; then
|
||
|
|
rm -rf "${srcdir}/${_group}"
|
||
|
|
fi
|
||
|
|
|
||
|
|
mv "${srcdir}/${_group}-${pkgver/.hotfix/+hotfix}" "${srcdir}/${_group}"
|
||
|
|
patch -p1 -i "${srcdir}/system-dart.patch" -d "${srcdir}/${_group}"
|
||
|
|
patch -p1 -i "${srcdir}/gradle-user-home.patch" -d "${srcdir}/${_group}"
|
||
|
|
patch -p1 -i "${srcdir}/version.patch" -d "${srcdir}/${_group}"
|
||
|
|
patch -p1 -i "${srcdir}/no-lock.patch" -d "${srcdir}/${_group}"
|
||
|
|
patch -p1 -i "${srcdir}/no-runtime-download.patch" -d "${srcdir}/${_group}"
|
||
|
|
patch -p1 -i "${srcdir}/doctor.patch" -d "${srcdir}/${_group}"
|
||
|
|
patch -p1 -i "${srcdir}/opt-in-analytics.patch" -d "${srcdir}/${_group}"
|
||
|
|
|
||
|
|
echo "${pkgver}" > "${srcdir}/${_group}/version"
|
||
|
|
mkdir -p "${srcdir}/${_group}/bin/cache/artifacts"
|
||
|
|
cat > "${srcdir}/${_group}/bin/cache/flutter.version.json" <<EOF
|
||
|
|
{
|
||
|
|
"frameworkVersion": "$pkgver",
|
||
|
|
"channel": "$_channel",
|
||
|
|
"repositoryUrl": "https://github.com/flutter/flutter.git",
|
||
|
|
"frameworkRevision": "archlinuxaur0000000000000000000000000000",
|
||
|
|
"frameworkCommitDate": "2038-01-19 03:14:08",
|
||
|
|
"engineRevision": "$(cat "${srcdir}/${_group}/bin/internal/engine.version")",
|
||
|
|
"dartSdkVersion": "$(dart --version | awk '{print $4}')",
|
||
|
|
"devToolsVersion": $(jq '.version' < ${DART_ROOT}/bin/resources/devtools/version.json),
|
||
|
|
"flutterVersion": "$pkgver"
|
||
|
|
}
|
||
|
|
EOF
|
||
|
|
|
||
|
|
if [ -d "${srcdir}/gradlew" ]; then
|
||
|
|
rm -rf "${srcdir}/gradlew"
|
||
|
|
fi
|
||
|
|
|
||
|
|
mkdir "${srcdir}/gradlew"
|
||
|
|
pushd ${srcdir}/gradlew
|
||
|
|
gradle init --type basic --project-name flutter --dsl kotlin --incubating
|
||
|
|
gradle wrapper
|
||
|
|
popd
|
||
|
|
|
||
|
|
cd "${srcdir}/${_group}/bin/cache/artifacts"
|
||
|
|
|
||
|
|
# why should we use a pre-build gradle wrapper if we have it in the arch repos ?
|
||
|
|
mkdir -p gradle_wrapper/gradle
|
||
|
|
cp -pr "${srcdir}/gradlew/gradle/wrapper" gradle_wrapper/gradle
|
||
|
|
cp -pr "${srcdir}/gradlew/gradlew" gradle_wrapper
|
||
|
|
|
||
|
|
# ARTIFACTS
|
||
|
|
cd "${srcdir}"
|
||
|
|
|
||
|
|
unzip -o -q "${srcdir}/dart-sdk-${_flutterarch}-${_enginever}.zip" -d dart
|
||
|
|
|
||
|
|
mkdir -p "${srcdir}/${_group}/bin/cache/artifacts"
|
||
|
|
|
||
|
|
cd "${srcdir}/${_group}/bin/cache"
|
||
|
|
|
||
|
|
unzip -o -q "${srcdir}/flutter_web_sdk-${_enginever}.zip" -d flutter_web_sdk
|
||
|
|
unzip -o -q "${srcdir}/sky_engine-${_enginever}.zip" -d pkg
|
||
|
|
|
||
|
|
cd "${srcdir}/${_group}/bin/cache/artifacts"
|
||
|
|
|
||
|
|
mkdir -p "gradle_wrapper"
|
||
|
|
tar -xzf "${srcdir}/gradle_wrapper-${_gradlewver}.tar.gz" -C "gradle_wrapper"
|
||
|
|
unzip -o -q "${srcdir}/material_fonts-${_materialfontsver}.zip" -d "material_fonts"
|
||
|
|
|
||
|
|
mkdir -p engine/android-arm-profile
|
||
|
|
mkdir -p engine/android-arm64-profile
|
||
|
|
mkdir -p engine/android-x64-profile
|
||
|
|
mkdir -p engine/android-arm-release
|
||
|
|
mkdir -p engine/android-arm64-release
|
||
|
|
mkdir -p engine/android-x64-release
|
||
|
|
|
||
|
|
if [ "$CARCH" == "x86_64" ]; then
|
||
|
|
|
||
|
|
unzip -o -q "${srcdir}/android-arm-profile-linux-x64-${_enginever}.zip" -d engine/android-arm-profile/linux-x64
|
||
|
|
unzip -o -q "${srcdir}/android-arm-release-linux-x64-${_enginever}.zip" -d engine/android-arm-release/linux-x64
|
||
|
|
unzip -o -q "${srcdir}/android-arm64-profile-linux-x64-${_enginever}.zip" -d engine/android-arm64-profile/linux-x64
|
||
|
|
unzip -o -q "${srcdir}/android-arm64-release-linux-x64-${_enginever}.zip" -d engine/android-arm64-release/linux-x64
|
||
|
|
unzip -o -q "${srcdir}/android-x64-profile-linux-x64-${_enginever}.zip" -d engine/android-x64-profile/linux-x64
|
||
|
|
unzip -o -q "${srcdir}/android-x64-release-linux-x64-${_enginever}.zip" -d engine/android-x64-release/linux-x64
|
||
|
|
|
||
|
|
fi
|
||
|
|
|
||
|
|
unzip -o -q "${srcdir}/android-x86-${_enginever}.zip" -d engine/android-x86
|
||
|
|
unzip -o -q "${srcdir}/android-x64-${_enginever}.zip" -d engine/android-x64
|
||
|
|
unzip -o -q "${srcdir}/android-arm-${_enginever}.zip" -d engine/android-arm
|
||
|
|
unzip -o -q "${srcdir}/android-arm-profile-${_enginever}.zip" -d engine/android-arm-profile
|
||
|
|
unzip -o -q "${srcdir}/android-arm-release-${_enginever}.zip" -d engine/android-arm-release
|
||
|
|
unzip -o -q "${srcdir}/android-arm64-${_enginever}.zip" -d engine/android-arm64
|
||
|
|
unzip -o -q "${srcdir}/android-arm64-profile-${_enginever}.zip" -d engine/android-arm64-profile
|
||
|
|
unzip -o -q "${srcdir}/android-arm64-release-${_enginever}.zip" -d engine/android-arm64-release
|
||
|
|
|
||
|
|
unzip -o -q "${srcdir}/android-x64-profile-${_enginever}.zip" -d engine/android-x64-profile
|
||
|
|
unzip -o -q "${srcdir}/android-x64-release-${_enginever}.zip" -d engine/android-x64-release
|
||
|
|
|
||
|
|
unzip -o -q "${srcdir}/flutter_patched_sdk-${_enginever}.zip" -d engine/common
|
||
|
|
unzip -o -q "${srcdir}/flutter_patched_sdk_product-${_enginever}.zip" -d engine/common
|
||
|
|
|
||
|
|
unzip -o -q "${srcdir}/engine-${_flutterarch}-${_enginever}.zip" -d engine/linux-${_flutterarch}
|
||
|
|
unzip -o -q "${srcdir}/gtk-debug-${_flutterarch}-${_enginever}.zip" -d engine/linux-${_flutterarch}
|
||
|
|
unzip -o -q "${srcdir}/gtk-profile-${_flutterarch}-${_enginever}.zip" -d engine/linux-${_flutterarch}-profile
|
||
|
|
unzip -o -q "${srcdir}/gtk-release-${_flutterarch}-${_enginever}.zip" -d engine/linux-${_flutterarch}-release
|
||
|
|
unzip -o -q "${srcdir}/font-subset-${_flutterarch}-${_enginever}.zip" -d engine/linux-${_flutterarch}
|
||
|
|
}
|
||
|
|
|
||
|
|
build() {
|
||
|
|
export PUB_CACHE="${srcdir}/${_group}/pub-cache"
|
||
|
|
cd "${srcdir}/${_group}"
|
||
|
|
dart pub get -C "packages/flutter_tools" --no-offline --no-precompile
|
||
|
|
dart --verbosity=error --disable-dart-dev \
|
||
|
|
--snapshot="bin/cache/flutter_tools.snapshot" --snapshot-kind="app-jit" \
|
||
|
|
--packages="packages/flutter_tools/.dart_tool/package_config.json" \
|
||
|
|
--no-enable-mirrors "packages/flutter_tools/bin/flutter_tools.dart" --version
|
||
|
|
cd ../..
|
||
|
|
|
||
|
|
echo "${_enginever}" > "${srcdir}/${_group}/bin/cache/engine.stamp"
|
||
|
|
touch "${srcdir}/${_group}/bin/cache/engine.realm"
|
||
|
|
|
||
|
|
sed -Ei 's|'"$PUB_CACHE"'|/usr/lib/flutter/pub-cache|g' "${srcdir}/${_group}/packages/flutter_tools/.dart_tool/package_config.json"
|
||
|
|
find "$PUB_CACHE" -name '*.aot' -delete
|
||
|
|
}
|
||
|
|
|
||
|
|
# SDK
|
||
|
|
|
||
|
|
_package() {
|
||
|
|
pkgdesc="${_pkgdesc} - full installation of development tool and runtime"
|
||
|
|
depends=(
|
||
|
|
"${pkgbase}-devel" "${pkgbase}-target-linux" "${pkgbase}-target-android" "${pkgbase}-target-web" "${pkgbase}-intellij-patch")
|
||
|
|
provides=("${_group}=${pkgver}")
|
||
|
|
conflicts=("${_group}")
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-common() {
|
||
|
|
pkgdesc="${_pkgdesc} - common SDK files and pub cache"
|
||
|
|
install="${_group}-common.install"
|
||
|
|
provides=("${_group}-common=${pkgver}")
|
||
|
|
conflicts=("${_group}-common")
|
||
|
|
|
||
|
|
install -Dm644 "${srcdir}/${_group}/LICENSE" "${pkgdir}/usr/share/licenses/${_group}/LICENSE"
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_driver"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_goldens"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_localizations"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_test"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_web_plugins"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/fuchsia_remote_debug_protocol"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/integration_test"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/flutter/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter"
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/flutter_driver/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter_driver"
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/flutter_goldens/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter_goldens"
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/flutter_localizations/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter_localizations"
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/flutter_test/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter_test"
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/flutter_web_plugins/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/flutter_web_plugins"
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/fuchsia_remote_debug_protocol/"{pubspec.yaml,lib} "${pkgdir}/usr/lib/${_group}/packages/fuchsia_remote_debug_protocol"
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/integration_test/"{pubspec.yaml,lib,android} "${pkgdir}/usr/lib/${_group}/packages/integration_test"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-target-linux() {
|
||
|
|
pkgdesc="${_pkgdesc} - linux target files"
|
||
|
|
depends=(
|
||
|
|
"${pkgbase}-tool"
|
||
|
|
"${pkgbase}-engine-linux"
|
||
|
|
"dart>=${_dartmin}"
|
||
|
|
"clang"
|
||
|
|
"cmake"
|
||
|
|
"ninja"
|
||
|
|
"pkgconf" # base-devel, but runtime dependency
|
||
|
|
# runtime shared libraries
|
||
|
|
"gtk3"
|
||
|
|
"libglvnd" # https://github.com/flutter/engine/pull/16924
|
||
|
|
)
|
||
|
|
provides=("${_group}-target-linux=${pkgver}")
|
||
|
|
conflicts=("${_group}-target-linux")
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/bin"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/flutter_tools/bin/tool_backend.sh" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/bin"
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/flutter_tools/bin/tool_backend.dart" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/bin"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-target-web() {
|
||
|
|
pkgdesc="${_pkgdesc} - web target files"
|
||
|
|
depends=(
|
||
|
|
"${pkgbase}-tool"
|
||
|
|
"${pkgbase}-engine-web"
|
||
|
|
)
|
||
|
|
provides=("${_group}-target-web=${pkgver}")
|
||
|
|
conflicts=("${_group}-target-web")
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/lib/src/web"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/flutter_tools/lib/src/web/file_generators" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/lib/src/web"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-target-android() {
|
||
|
|
pkgdesc="${_pkgdesc} - android target files"
|
||
|
|
depends=(
|
||
|
|
"${pkgbase}-tool"
|
||
|
|
"${pkgbase}-engine-android"
|
||
|
|
"${pkgbase}-gradle"
|
||
|
|
)
|
||
|
|
optdepends=("android-sdk: develop for Android devices"
|
||
|
|
"java-environment: develop for Android devices"
|
||
|
|
)
|
||
|
|
provides=("${_group}-target-android=${pkgver}")
|
||
|
|
conflicts=("${_group}-target-android")
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_tools"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/bin/internal"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/flutter_tools/gradle" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools"
|
||
|
|
# TODO: get rid of this ugly hack
|
||
|
|
mkdir -m777 "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/gradle/.kotlin"
|
||
|
|
|
||
|
|
install -Dm644 "${srcdir}/${_group}/bin/internal/engine.version" "${pkgdir}/usr/lib/${_group}/bin/internal"
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-gradle() {
|
||
|
|
pkgdesc="${_pkgdesc} - gradle wrapper"
|
||
|
|
provides=(
|
||
|
|
"${_group}-gradle=${pkgver}"
|
||
|
|
)
|
||
|
|
conflicts=(
|
||
|
|
"${_group}-gradle"
|
||
|
|
)
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/gradle_wrapper" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-tool() {
|
||
|
|
pkgdesc="${_pkgdesc} - CLI tool (for packaging only)"
|
||
|
|
depends=(
|
||
|
|
"${pkgbase}-common"
|
||
|
|
# TODO: completely compile Flutter tool standalone and drop dependency
|
||
|
|
"dart>=${_dartmin}"
|
||
|
|
# commands first
|
||
|
|
"bash"
|
||
|
|
"curl"
|
||
|
|
"file" # base-devel, but runtime dependency
|
||
|
|
"git"
|
||
|
|
"coreutils" # explicit dependency to mkdir, rm
|
||
|
|
"unzip"
|
||
|
|
"which" # base-devel, but runtime dependency
|
||
|
|
"xz"
|
||
|
|
"zip"
|
||
|
|
"glu" # libGLU.so.1 required for flutter test
|
||
|
|
)
|
||
|
|
provides=("${_group}-tool=${pkgver}")
|
||
|
|
conflicts=("${_group}-tool")
|
||
|
|
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/dev"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/.dart_tool"
|
||
|
|
|
||
|
|
# otherwise flutter analyze will crash
|
||
|
|
touch "${pkgdir}/usr/lib/${_group}/dev/.hack-flutter-analyze"
|
||
|
|
|
||
|
|
install -Dm644 "${srcdir}/${_group}/bin/cache/engine.stamp" "${pkgdir}/usr/lib/${_group}/bin/cache"
|
||
|
|
install -Dm644 "${srcdir}/${_group}/bin/cache/engine.realm" "${pkgdir}/usr/lib/${_group}/bin/cache"
|
||
|
|
install -Dm644 "${srcdir}/${_group}/bin/cache/flutter_tools.snapshot" "${pkgdir}/usr/lib/${_group}/bin/cache"
|
||
|
|
install -Dm644 "${srcdir}/${_group}/bin/cache/flutter.version.json" "${pkgdir}/usr/lib/${_group}/bin/cache"
|
||
|
|
install -Dm644 "${srcdir}/${_group}/version" "${pkgdir}/usr/lib/${_group}"
|
||
|
|
install -Dm644 "${srcdir}/${_group}/packages/flutter_tools/.dart_tool/package_config.json" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools/.dart_tool"
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/bin"
|
||
|
|
install -Dm755 "${srcdir}/${_group}.sh" "${pkgdir}/usr/lib/${_group}/bin/flutter"
|
||
|
|
ln -sf "/usr/lib/flutter/bin/flutter" "${pkgdir}/usr/bin/flutter"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-devel() {
|
||
|
|
pkgdesc="${_pkgdesc} - CLI tool (for application development)"
|
||
|
|
depends=(
|
||
|
|
"${pkgbase}-tool"
|
||
|
|
"dart>=${_dartmin}"
|
||
|
|
)
|
||
|
|
replaces=("${_group}-tool-developer")
|
||
|
|
provides=("${_group}-devel=${pkgver}")
|
||
|
|
conflicts=("${_group}-devel")
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}"
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/packages/flutter_tools"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/examples" "${pkgdir}/usr/lib/${_group}"
|
||
|
|
cp -ra "${srcdir}/${_group}/packages/flutter_tools/templates" "${pkgdir}/usr/lib/${_group}/packages/flutter_tools"
|
||
|
|
|
||
|
|
# TODO: patch `flutter create` to run without pub cache
|
||
|
|
cp -ra "${srcdir}/${_group}/pub-cache" "${pkgdir}/usr/lib/${_group}/pub-cache"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-intellij-patch() {
|
||
|
|
pkgdesc="${_pkgdesc} - IntelliJ Flutter plugin hotfix"
|
||
|
|
depends=("${pkgbase}-common")
|
||
|
|
optdepends=(
|
||
|
|
"android-studio"
|
||
|
|
"intellij-idea-community-edition"
|
||
|
|
"intellij-idea-ultimate-edition"
|
||
|
|
)
|
||
|
|
provides=("${_group}-intellij-patch=${pkgver}")
|
||
|
|
conflicts=("${_group}-intellij-patch")
|
||
|
|
|
||
|
|
# this is required in case people try to build with `aur/dart-sdk-dev` instead of `extra/dart`
|
||
|
|
DART_BINARY=$(readlink $(command -v dart))
|
||
|
|
DART_ROOT=${DART_ROOT:-${DART_BINARY/\/bin\/dart*/}}
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache"
|
||
|
|
|
||
|
|
# * not my fault grumble * : The IntelliJ Flutter plugin enforces this relative Dart SDK
|
||
|
|
ln -sf "${DART_ROOT}/bin/dart" "${pkgdir}/usr/lib/${_group}/bin/dart"
|
||
|
|
ln -sf "${DART_ROOT}" "${pkgdir}/usr/lib/${_group}/bin/cache/dart-sdk"
|
||
|
|
}
|
||
|
|
|
||
|
|
# ARTIFACTS
|
||
|
|
|
||
|
|
_package-artifacts-engine-common-google-bin() {
|
||
|
|
pkgdesc="${_pkgdesc} - common engine files"
|
||
|
|
depends=(
|
||
|
|
"${pkgbase}-common"
|
||
|
|
"${_group}-sky-engine"
|
||
|
|
"${_group}-material-fonts"
|
||
|
|
"dart>=${_dartmin}"
|
||
|
|
)
|
||
|
|
provides=(
|
||
|
|
"${_group}-engine-common=${pkgver}"
|
||
|
|
)
|
||
|
|
conflicts=(
|
||
|
|
"${_group}-engine-common"
|
||
|
|
)
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/common" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine/common"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-artifacts-sky-engine-google-bin() {
|
||
|
|
pkgdesc="${_pkgdesc} - sky-engine"
|
||
|
|
provides=(
|
||
|
|
"${_group}-sky-engine=${pkgver}"
|
||
|
|
)
|
||
|
|
conflicts=(
|
||
|
|
"${_group}-sky-engine"
|
||
|
|
)
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/pkg" "${pkgdir}/usr/lib/${_group}/bin/cache/pkg"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-artifacts-material-fonts-google-bin() {
|
||
|
|
pkgdesc="${_pkgdesc} - material fonts"
|
||
|
|
provides=(
|
||
|
|
"${_group}-material-fonts=${pkgver}"
|
||
|
|
)
|
||
|
|
conflicts=(
|
||
|
|
"${_group}-material-fonts"
|
||
|
|
)
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/material_fonts" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/material_fonts"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-artifacts-engine-linux-google-bin() {
|
||
|
|
pkgdesc="${_pkgdesc} - linux engine"
|
||
|
|
depends=(
|
||
|
|
"${_group}-engine-common"
|
||
|
|
)
|
||
|
|
provides=(
|
||
|
|
"${_group}-engine-linux=${pkgver}"
|
||
|
|
"${pkgbase}-engine-linux=${pkgver}"
|
||
|
|
)
|
||
|
|
conflicts=(
|
||
|
|
"${_group}-engine-linux"
|
||
|
|
)
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/linux-${_flutterarch}" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/linux-${_flutterarch}-profile" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/linux-${_flutterarch}-release" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-artifacts-engine-web-google-bin() {
|
||
|
|
pkgdesc="${_pkgdesc} - web engine"
|
||
|
|
depends=(
|
||
|
|
"${_group}-engine-common"
|
||
|
|
)
|
||
|
|
provides=(
|
||
|
|
"${_group}-engine-web=${pkgver}"
|
||
|
|
"${pkgbase}-engine-web=${pkgver}"
|
||
|
|
)
|
||
|
|
conflicts=(
|
||
|
|
"${_group}-engine-web"
|
||
|
|
)
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/flutter_web_sdk" "${pkgdir}/usr/lib/${_group}/bin/cache"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-artifacts-gradle-google-bin() {
|
||
|
|
pkgdesc="${_pkgdesc} - gradle wrapper"
|
||
|
|
depends=(
|
||
|
|
"${pkgbase}-common"
|
||
|
|
)
|
||
|
|
provides=(
|
||
|
|
"${_group}-gradle=${pkgver}"
|
||
|
|
)
|
||
|
|
conflicts=(
|
||
|
|
"${_group}-gradle"
|
||
|
|
)
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/gradle_wrapper" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-artifacts-engine-android-google-bin() {
|
||
|
|
pkgdesc="${_pkgdesc} - android engine"
|
||
|
|
depends=(
|
||
|
|
"${_group}-engine-common"
|
||
|
|
)
|
||
|
|
provides=(
|
||
|
|
"${_group}-engine-android=${pkgver}"
|
||
|
|
"${pkgbase}-engine-android=${pkgver}"
|
||
|
|
)
|
||
|
|
conflicts=(
|
||
|
|
"${_group}-engine-android"
|
||
|
|
)
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/android-arm" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/android-arm-release" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/android-arm-profile" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/android-arm64" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/android-arm64-release" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/android-arm64-profile" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/android-x64" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/android-x64-release" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/android-x64-profile" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/${_group}/bin/cache/artifacts/engine/android-x86" "${pkgdir}/usr/lib/${_group}/bin/cache/artifacts/engine"
|
||
|
|
}
|
||
|
|
|
||
|
|
_package-artifacts-dart-google-bin() {
|
||
|
|
pkgdesc="${_pkgdesc} - Dart SDK"
|
||
|
|
depends=(
|
||
|
|
"glibc"
|
||
|
|
)
|
||
|
|
provides=(
|
||
|
|
"dart=${_dartver}"
|
||
|
|
)
|
||
|
|
conflicts=(
|
||
|
|
"dart"
|
||
|
|
)
|
||
|
|
|
||
|
|
install -dm755 "${pkgdir}/opt"
|
||
|
|
install -dm755 "${pkgdir}/usr/bin"
|
||
|
|
install -Dm755 "${srcdir}/dart/LICENSE.dart_sdk_archive.md" "${pkgdir}/usr/share/licenses/dart/LICENSE"
|
||
|
|
|
||
|
|
cp -ra "${srcdir}/dart/dart-sdk" "${pkgdir}/opt/dart-sdk"
|
||
|
|
|
||
|
|
chmod -R ugo+rX "${pkgdir}/opt"
|
||
|
|
|
||
|
|
ln -sf "/opt/dart-sdk/bin/dart" "${pkgdir}/usr/bin/dart"
|
||
|
|
ln -sf "/opt/dart-sdk/bin/dartaotruntime" "${pkgdir}/usr/bin/dartaotruntime"
|
||
|
|
}
|
||
|
|
|
||
|
|
pkgname=("${pkgbase}" "${pkgbase}-common" "${pkgbase}-gradle" "${pkgbase}-tool" "${pkgbase}-devel" "${pkgbase}-target-linux" "${pkgbase}-target-android" "${pkgbase}-target-web" "${pkgbase}-intellij-patch" "${pkgbase}-artifacts-engine-common-google-bin" "${pkgbase}-artifacts-engine-linux-google-bin" "${pkgbase}-artifacts-engine-web-google-bin" "${pkgbase}-artifacts-engine-android-google-bin" "${pkgbase}-artifacts-sky-engine-google-bin" "${pkgbase}-artifacts-material-fonts-google-bin" "${pkgbase}-artifacts-gradle-google-bin" "${pkgbase}-artifacts-dart-google-bin")
|
||
|
|
|
||
|
|
for _p in "${pkgname[@]}"; do
|
||
|
|
eval "package_$_p() {
|
||
|
|
$(declare -f "_package${_p#$pkgbase}")
|
||
|
|
_package${_p#$pkgbase}
|
||
|
|
}"
|
||
|
|
done
|
||
|
|
|