Name:           dart
Version:        2.18.5
Release:        1%{?dist}
Summary:        Dart SDK

License:        BSD
URL:            https://dart.dev

Source0:        https://storage.googleapis.com/dart-archive/channels/stable/release/%{version}/sdk/dartsdk-linux-x64-release.zip
Source1:        https://storage.googleapis.com/dart-archive/channels/stable/release/%{version}/sdk/dartsdk-linux-ia32-release.zip
Source2:        https://storage.googleapis.com/dart-archive/channels/stable/release/%{version}/sdk/dartsdk-linux-arm64-release.zip
Source3:        https://storage.googleapis.com/dart-archive/channels/stable/release/%{version}/sdk/dartsdk-linux-arm-release.zip

%global         SHA256SUM0 f64fbc5b90c6817d6f3a25cf9cec4277343cf265df233600838050639c593889
%global         SHA256SUM1 220aa95150a73931dc5606092291d49a291f30fda4abed121468f01ae54a7f10
%global         SHA256SUM2 f8c6d7e1b0f090c536a64a6a130b065533efd83c290f4510f42325389a0c27a5
%global         SHA256SUM3 505df0bfcdb1a22b6486718f6833514926f39f4b28f390b3b67ef8fc7b149255

ExcludeArch:    s390x ppc64

BuildRequires:  curl unzip
Requires:       glibc

%description
Dart SDK libraries and command-line tools for building Dart applications.
This is an unofficial package.

%global debug_package %{nil}
%define _build_id_links none

%prep
echo 'Prep for %{_arch}'
%ifarch x86_64
echo "%SHA256SUM0  %SOURCE0" | sha256sum -c -
%autosetup -T -b 0 -n dart-sdk
%endif
%ifarch %{ix86}
echo "%SHA256SUM1  %SOURCE1" | sha256sum -c -
%autosetup -T -b 1 -n dart-sdk
%endif
%ifarch aarch64
echo "%SHA256SUM2  %SOURCE2" | sha256sum -c -
%autosetup -T -b 2 -n dart-sdk
%endif
%ifarch %{arm}
echo "%SHA256SUM3  %SOURCE3" | sha256sum -c -
%autosetup -T -b 3 -n dart-sdk
%endif

%install
mkdir -p %{buildroot}%{_libdir}/dart
cp -r . %{buildroot}%{_libdir}/dart

%check
echo -e 'void main() {\n  print(r"Hello from Dart");\n}' >> hello_test.dart
%{buildroot}%{_libdir}/dart/bin/dart hello_test.dart
rm hello_test.dart

%post
%{__ln_s} -f %{_libdir}/dart/bin/dart %{_bindir}/dart

%postun
case "$1" in
    0)
        rm -f %{_bindir}/dart
    ;;
esac

%files
%{_libdir}/dart
%license LICENSE
%doc README

%changelog
* Sun Nov 20 2022 Sean Kimball - 2.18.5-1
- Update to Dart 2.18.5
* Sun Nov 20 2022 Sean Kimball - 2.18.4-1
- Initial package creation