Name: sbinary
Version: 0.4.2
Release: 10
Summary: Library for describing binary formats for Scala types
License: MIT
URL: https://github.com/harrah/sbinary
Source0: https://github.com/harrah/sbinary/archive/v0.4.2.tar.gz
Source1: https://raw.github.com/willb/climbing-nemesis/master/climbing-nemesis.py
BuildArch: noarch
BuildRequires: mvn(org.scala-lang:scala-compiler) mvn(net.sourceforge.fmpp:fmpp)
BuildRequires: mvn(org.beanshell:bsh) mvn(xml-resolver:xml-resolver) java-devel
BuildRequires: mvn(org.freemarker:freemarker) maven-local javapackages-tools
Requires: javapackages-tools scala
%description
SBinary is a library for describing binary protocols, in the form of
mappings between Scala types and binary formats. It can be used as a
robust serialization mechanism for Scala objects or a way of dealing
with existing binary formats found in the wild.
It started out life as a loose port of Haskell's Data.Binary. It's
since evolved a bit from there to take advantage of the features Scala
implicits offer over Haskell type classes, but the core idea has
remained the same.
%package help
Summary: Help document for %{name}
Provides: sbinary-javadoc = %{version}-%{release}
Obsoletes: sbinary-javadoc < %{version}-%{release}
%description help
This package contains the API documentation for %{name}.
%prep
%autosetup -n sbinary-%{version} -p1
%build
mkdir -p core/target/scala-2.10/src_managed
mkdir -p core/target/scala-2.10/classes
mkdir -p core/target/scala-2.10/api
java -cp $(build-classpath fmpp freemarker bsh oro) fmpp.tools.CommandLine -S core/src -O core/target/scala-2.10/src_managed
scalac core/target/scala-2.10/src_managed/*.scala -d core/target/scala-2.10/classes
jar -cvf core/target/scala-2.10/%{name}_2.10-%{version}.jar -C core/target/scala-2.10/classes .
scaladoc core/target/scala-2.10/src_managed/*.scala -d core/target/scala-2.10/api
cat << EOF > core/target/scala-2.10/%{name}_2.10-%{version}.pom
4.0.0
org.scala-tools.sbinary
sbinary_2.10
jar
SBinary
%{version}
SBinary
org.scala-tools.sbinary
org.scala-lang
scala-library
2.10.3
EOF
%install
install -d %{buildroot}/%{_javadir}
install -d %{buildroot}/%{_mavenpomdir}
install -d %{buildroot}/%{_javadocdir}/%{name}
install -pm 644 core/target/scala-2.10/%{name}_2.10-%{version}.jar %{buildroot}/%{_javadir}/%{name}.jar
install -pm 644 core/target/scala-2.10/%{name}_2.10-%{version}.pom %{buildroot}/%{_mavenpomdir}/JPP-%{name}.pom
cp -rp core/target/scala-2.10/api/* %{buildroot}/%{_javadocdir}/%{name}
%add_maven_depmap JPP-%{name}.pom %{name}.jar
%files -f .mfiles
%doc LICENSE README
%files help
%{_javadocdir}/%{name}
%doc LICENSE
%changelog
* Mon Mar 9 2020 wangzhishun - 0.4.2-10
- Package init