%global debug_package %nil

# Disable build-ids checks.
# We still ship wasm-emscripten-finalize and it doesn't have a build-id.
%define _source_payload w0.gzdio
%define _binary_payload w0.gzdio

%define sdk_name 2.0.7-upstream

Name:          emsdk
Version:       1.0.0
Release:       1%{?dist}
Summary:       Emscripten SDK
License:       LGPLv2+
URL:           https://github.com/emscripten-core/emsdk
Source0:       emsdk-%{sdk_name}.tar.gz
Source1:       dot-emscripten
Source2:       emsdk_env.sh

BuildRequires: python3 python3-devel

Requires: llvm lld clang
Requires: python3
Requires: binaryen

%description
Emscripten SDK

%prep
%autosetup -p1 -n %{name}

%build
# Fix up python shebangs so rpm doesn't complain
find ./ -name "*.py" -exec pathfix.py -i %{__python3} -pn {} \;
pathfix.py -i %{__python3} -pn \
  upstream/emscripten/{emcc,emar,emranlib,emscons,emconfigure,emrun,em++,emcmake,emmake,em-config,embuilder,emsize} \
  upstream/emscripten/third_party/websockify/run \
  upstream/emscripten/system/bin/{sdl-config,sdl2-config}

# The wasm-* tools are from binaryen
# We don't do this for LLVM since we set LLVM_ROOT to /usr/bin
# in the .emscripten
# We need to do it for binaryen instead of setting BINARYEN_ROOT
# because doing that causes problems when later using the SDK.
#ln -s /usr/bin/wasm-ld upstream/bin/
#ln -s /usr/bin/wasm-as upstream/bin/
#ln -s /usr/bin/wasm-opt upstream/bin/
#ln -s /usr/bin/wasm-emscripten-finalize upstream/bin/


%install
mkdir -p %{buildroot}/opt/
mkdir -p %{buildroot}/opt/%{name}/
cp -R ./ %{buildroot}/opt/%{name}/
install -m644 %{SOURCE1} %{buildroot}/opt/%{name}/.emscripten
install -m644 %{SOURCE2} %{buildroot}/opt/%{name}/emsdk_env.sh

%files
/opt/%{name}

%changelog
* Mon Jun 28 2021 Dmitri Dolguikh <ddolguik@redhat.com> 1.0.0-1
- First release