File dart.spec of Package dart

Version: 0-0
%define dartsource() Source%{1}: https://storage.googleapis.com/dart-archive/channels/beta/release/%{version}/sdk/dartsdk-linux-%{2}-release.zip

Name: dart
Release:        1%{?dist}
Summary:        Dart SDK
License:        BSD
URL:            https://dart.dev/
%define _build_id_links none
#ix86
ExclusiveArch: %arm64 %arm %x86_64 x86_64 %riscv64  riscv64
%define alternatives (update-alternatives or alternatives)
%ifarch %{x86_64} x86_64
%define dartarch x64
%define dartnum 0
%elifarch %{ix86}
%define dartarch ia32
%define dartnum 1
%elifarch %{arm64} aarch64
%define dartarch arm64
%define dartnum 2
%elifarch %{arm}
%define dartarch arm
%define dartnum 3
%elifarch %{riscv64} riscv64 
%define dartarch riscv64
%define dartnum 4
%endif

%define dartpath %{_usr}/lib/dart-sdk-%{version}-%{dartarch}

%dartsource 0 x64
#dartsource 1 ia32
%dartsource 2 arm64
%dartsource 3 arm
%dartsource 4 riscv64

NoSource: 0
#NoSource: 1
NoSource: 2
NoSource: 3
NoSource: 4

BuildRequires: unzip
BuildRequires: coreutils

Requires(post):    %alternatives
Requires(postun):  %alternatives

%post
%{_sbindir}/update-alternatives --install '%{_usr}/lib/dart-sdk' dart-sdk '%{dartpath}' 25
%{_sbindir}/update-alternatives --install '%{_bindir}/dart' dart '%{dartpath}/bin/dart' 25
%{_sbindir}/update-alternatives --install '%{_bindir}/dartaotruntime' dartaotruntime '%{dartpath}/bin/dartaotruntime' 25 || :

%postun
%{_sbindir}/update-alternatives --remove dartaotruntime '%{dartpath}/bin/dartaotruntime' || : 
%{_sbindir}/update-alternatives --remove dart '%{dartpath}/bin/dart' || : 
%{_sbindir}/update-alternatives --remove dart-sdk '%{dartpath}' || : 


%description
The Dart SDK has the libraries and command-line tools that you need to develop Dart web, command-line, and server apps.

%prep
%autosetup -T -b %{dartnum} -n dart-sdk

%install
mkdir -p '%{buildroot}%{_usr}/lib'
cp -prT ../dart-sdk '%{buildroot}%{dartpath}'

%files
%{dartpath}
openSUSE Build Service is sponsored by