Blame scala-stm.spec

William Benton 84b7f5f
%global scala_short_version 2.10
William Benton 84b7f5f
William Benton 84b7f5f
%if 0%{?fedora} >= 21
William Benton 84b7f5f
%global java_pkg java-headless
William Benton 84b7f5f
%else
William Benton 84b7f5f
%global java_pkg java
William Benton 84b7f5f
%endif
William Benton 84b7f5f
William Benton 84b7f5f
Name:          scala-stm
William Benton 84b7f5f
Version:       0.7
2c66284
Release:       4%{?dist}
William Benton 84b7f5f
Summary:       Software Transactional Memory for Scala
William Benton 84b7f5f
License:       BSD
William Benton 84b7f5f
URL:           http://nbronson.github.io/scala-stm/
William Benton 84b7f5f
Source0:       https://github.com/nbronson/scala-stm/archive/release-%{version}.tar.gz
William Benton 84b7f5f
William Benton 84b7f5f
BuildRequires: java-devel
William Benton 84b7f5f
BuildRequires: javapackages-tools
William Benton 84b7f5f
BuildRequires: ant
William Benton 84b7f5f
BuildRequires: sbt
William Benton 84b7f5f
William Benton 84b7f5f
BuildRequires: mvn(org.scala-lang:scala-compiler)
William Benton 84b7f5f
BuildRequires: mvn(org.scala-lang:scala-library)
William Benton 84b7f5f
Requires:      mvn(org.scala-lang:scala-library)
William Benton 84b7f5f
Requires:      %{java_pkg}
William Benton 84b7f5f
Requires:      javapackages-tools
William Benton 84b7f5f
BuildArch:     noarch
William Benton 84b7f5f
William Benton 84b7f5f
%description
William Benton 84b7f5f
ScalaSTM is a lightweight software transactional memory
William Benton 84b7f5f
for Scala, inspired by the STMs in Haskell and Clojure.
William Benton 84b7f5f
William Benton 84b7f5f
ScalaSTM provides a mutable cell called a Ref. If you
William Benton 84b7f5f
build a shared data structure using immutable objects and
William Benton 84b7f5f
Ref-s, then you can access it from multiple threads or
William Benton 84b7f5f
actors. No synchronized, no deadlocks or race conditions,
William Benton 84b7f5f
and good scalability. Included are concurrent sets and
William Benton 84b7f5f
maps, and we also have an easier and safer replacement
William Benton 84b7f5f
for wait and notifyAll.
William Benton 84b7f5f
William Benton 84b7f5f
%package javadoc
William Benton 84b7f5f
Summary:       Javadoc for %{name}
William Benton 84b7f5f
William Benton 84b7f5f
%description javadoc
William Benton 84b7f5f
This package contains javadoc for %{name}.
William Benton 84b7f5f
William Benton 84b7f5f
%prep
William Benton 84b7f5f
%setup -q -n %{name}-release-%{version}
William Benton 84b7f5f
# Cleanup
William Benton 84b7f5f
find -name '*.class' -print -delete
William Benton 84b7f5f
find -name '*.jar' -print -delete
William Benton 84b7f5f
# sb7_java-v1.2.tgz http://lpd.epfl.ch/gramoli/doc/sw/sb7_java-v1.2.tgz
William Benton 84b7f5f
rm -r lib/*
William Benton 84b7f5f
William Benton 84b7f5f
# get rid of sbt plugins
William Benton 84b7f5f
rm project/plugins.sbt
William Benton 84b7f5f
William Benton 84b7f5f
# patch build.sbt
William Benton 84b7f5f
sed -i -e '/% "test"/d' build.sbt
William Benton 84b7f5f
sed -i -e '/credentials/d' build.sbt
William Benton 84b7f5f
sed -i -e 's/\(scalaVersion :=\).*$/scalaVersion := "2.10.3"/' build.sbt
William Benton 84b7f5f
William Benton 84b7f5f
# delete tests due to missing deps
William Benton 84b7f5f
rm -rf src/test
William Benton 84b7f5f
rm -rf dep-tests
William Benton 84b7f5f
William Benton 84b7f5f
cp -r /usr/share/sbt/ivy-local .
William Benton 84b7f5f
mkdir boot
William Benton 84b7f5f
William Benton 84b7f5f
%build
William Benton 84b7f5f
William Benton 84b7f5f
export SBT_BOOT_DIR=boot
William Benton 84b7f5f
export SBT_IVY_DIR=ivy-local
William Benton 84b7f5f
William Benton 84b7f5f
sbt package makePom deliverLocal doc
William Benton 84b7f5f
William Benton 84b7f5f
William Benton 84b7f5f
# No test deps available
William Benton 84b7f5f
William Benton 84b7f5f
William Benton 84b7f5f
%install
William Benton 84b7f5f
William Benton 84b7f5f
# target/scala-2.10/scala-stm_2.10-0.7.jar
William Benton 84b7f5f
mkdir -p %{buildroot}%{_javadir}
William Benton 84b7f5f
cp -p target/scala-%{scala_short_version}/%{name}_%{scala_short_version}-%{version}.jar %{buildroot}%{_javadir}/%{name}.jar
William Benton 84b7f5f
William Benton 84b7f5f
mkdir -p %{buildroot}%{_mavenpomdir}
William Benton 84b7f5f
install -pm 644 target/scala-%{scala_short_version}/%{name}_%{scala_short_version}-%{version}.pom %{buildroot}%{_mavenpomdir}/JPP-%{name}.pom
William Benton 84b7f5f
%add_maven_depmap
William Benton 84b7f5f
William Benton 84b7f5f
mkdir -p %{buildroot}%{_javadocdir}/%{name}
William Benton 84b7f5f
cp -rp target/scala-%{scala_short_version}/api/* %{buildroot}%{_javadocdir}/%{name}
William Benton 84b7f5f
William Benton 84b7f5f
%files
William Benton 84b7f5f
%{_javadir}/%{name}.jar
William Benton 84b7f5f
%{_mavenpomdir}/JPP-%{name}.pom
William Benton 84b7f5f
%{_mavendepmapfragdir}/%{name}
William Benton 84b7f5f
%doc LICENSE.txt README RELEASE-NOTES.txt
William Benton 84b7f5f
William Benton 84b7f5f
%files javadoc
William Benton 84b7f5f
%{_javadocdir}/%{name}
William Benton 84b7f5f
%doc LICENSE.txt
William Benton 84b7f5f
William Benton 84b7f5f
%changelog
2c66284
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7-4
2c66284
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
2c66284
87e3b69
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7-3
87e3b69
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
87e3b69
William Benton 84b7f5f
* Mon Feb 24 2014 William Benton <willb@redhat.com> - 0.7-2
William Benton 84b7f5f
- updated to use sbt for build
William Benton 84b7f5f
William Benton 84b7f5f
* Thu Feb 06 2014 gil cattaneo <puntogil@libero.it> 0.7-1
William Benton 84b7f5f
- initial rpm