|
William Benton |
9a435ca |
%global json4s_version 3.2.7
|
|
William Benton |
9a435ca |
%global scala_version 2.10
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%global remap_version_to_installed() sed -i -e 's/"%{1}" %% "%{2}" %% "[^"]*"/"%{1}" %% "%{2}" %% "'$(rpm -q --qf "%%%%{version}" $(rpm -q --whatprovides "mvn(%{1}:%{2})" ))'"/g' %{3}
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
# we don't want scalaz support atm
|
|
William Benton |
9a435ca |
%global want_scalaz 0
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
Name: json4s
|
|
William Benton |
9a435ca |
Version: %{json4s_version}
|
|
|
099fa5c |
Release: 2%{?dist}
|
|
William Benton |
9a435ca |
Summary: Common AST for Scala JSON parsers
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
License: ASL 2.0
|
|
William Benton |
9a435ca |
URL: https://github.com/json4s/json4s
|
|
William Benton |
9a435ca |
Source0: https://github.com/json4s/json4s/archive/v%{json4s_version}_%{scala_version}.tar.gz
|
|
William Benton |
9a435ca |
Source1: https://raw.github.com/willb/climbing-nemesis/master/climbing-nemesis.py
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
BuildArch: noarch
|
|
William Benton |
9a435ca |
BuildRequires: sbt
|
|
William Benton |
9a435ca |
BuildRequires: scala
|
|
William Benton |
9a435ca |
BuildRequires: python
|
|
William Benton |
9a435ca |
BuildRequires: maven-local
|
|
William Benton |
9a435ca |
BuildRequires: javapackages-tools
|
|
William Benton |
9a435ca |
Requires: javapackages-tools
|
|
William Benton |
9a435ca |
Requires: scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
Requires: mvn(com.thoughtworks.paranamer:paranamer)
|
|
William Benton |
9a435ca |
Requires: mvn(org.scala-lang:scalap)
|
|
William Benton |
9a435ca |
Requires: mvn(com.fasterxml.jackson.core:jackson-databind)
|
|
William Benton |
9a435ca |
Requires: mvn(com.fasterxml.jackson.core:jackson-core)
|
|
William Benton |
9a435ca |
Requires: mvn(com.fasterxml.jackson.core:jackson-annotations)
|
|
William Benton |
9a435ca |
Requires: mvn(joda-time:joda-time)
|
|
William Benton |
9a435ca |
Requires: mvn(org.joda:joda-convert)
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
BuildRequires: mvn(com.thoughtworks.paranamer:paranamer)
|
|
William Benton |
9a435ca |
BuildRequires: mvn(org.scala-lang:scalap)
|
|
William Benton |
9a435ca |
BuildRequires: mvn(com.fasterxml.jackson.core:jackson-databind)
|
|
William Benton |
9a435ca |
BuildRequires: mvn(com.fasterxml.jackson.core:jackson-core)
|
|
William Benton |
9a435ca |
BuildRequires: mvn(com.fasterxml.jackson.core:jackson-annotations)
|
|
William Benton |
9a435ca |
BuildRequires: mvn(joda-time:joda-time)
|
|
William Benton |
9a435ca |
BuildRequires: mvn(org.joda:joda-convert)
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%description
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
json4s is a common AST for Scala JSON parsers.
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%package javadoc
|
|
William Benton |
9a435ca |
Summary: Javadoc for %{name}
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%description javadoc
|
|
William Benton |
9a435ca |
Javadoc for %{name}.
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%prep
|
|
William Benton |
9a435ca |
%setup -q -n %{name}-%{version}_%{scala_version}
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
# eliminate lift code?OB
|
|
William Benton |
9a435ca |
rm -rf native-lift
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
# work around buildinfo absence
|
|
William Benton |
9a435ca |
sed -i -e 's/BuildInfo.organization/"org.json4s"/' jackson/src/main/scala/org/json4s/jackson/Json4sScalaModule.scala
|
|
William Benton |
9a435ca |
sed -i -e 's/BuildInfo.name/"json4s"/' jackson/src/main/scala/org/json4s/jackson/Json4sScalaModule.scala
|
|
William Benton |
9a435ca |
sed -i -e 's/BuildInfo.version/"%{version}"/' jackson/src/main/scala/org/json4s/jackson/Json4sScalaModule.scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
sed -i -e 's/2[.]10[.][012]/2.10.3/g' project/*
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
sed -i -e 's/0[.]13[.]0/0.13.1/g' project/build.properties || echo sbt.version=0.13.1 > project/build.properties
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
sed -i -e '/lift build/d' project/Dependencies.scala
|
|
William Benton |
9a435ca |
sed -i -e '/def crossMapped/,+1d' project/Dependencies.scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%remap_version_to_installed com.fasterxml.jackson.core jackson-databind project/Dependencies.scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
# not used in Fedora
|
|
William Benton |
9a435ca |
sed -i -e '/net.liftweb/d' project/Dependencies.scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
# only needed by liftweb
|
|
William Benton |
9a435ca |
sed -i -e '/commons-codec/d' project/Dependencies.scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
# only needed by examples and benchmarks
|
|
William Benton |
9a435ca |
sed -i -e '/jackson-module-scala/d' project/Dependencies.scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
sed -i -e 's/cross crossMapped.*//' project/Dependencies.scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
sed -i -i '/com.typesafe/d' project/build.scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
sed -i -e '/lazy val examples = Project/,/lazy val.*= Project/{/.*/d}' project/build.scala
|
|
William Benton |
9a435ca |
sed -i -e '/^[/][/].*/d' project/build.scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%if %{want_scalaz} == 0
|
|
William Benton |
9a435ca |
sed -i -e '/scalaz/d' project/Dependencies.scala
|
|
William Benton |
9a435ca |
sed -i -e 's/scalazExt,//' project/build.scala
|
|
William Benton |
9a435ca |
sed -i -e '/lazy val scalazExt/,/dependsOn/d' project/build.scala
|
|
William Benton |
9a435ca |
%endif
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
for target in json4sTests benchmark mongo ; do
|
|
William Benton |
9a435ca |
sed -i -e '/lazy val '$target'/,/dependsOn/d' project/build.scala
|
|
William Benton |
9a435ca |
sed -i -e 's/'$target',//' project/build.scala
|
|
William Benton |
9a435ca |
done
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
sed -i -e 's/[+][+] buildInfoSettings//' project/build.scala
|
|
William Benton |
9a435ca |
sed -i -e '/buildInfo/d' project/build.scala
|
|
William Benton |
9a435ca |
sed -i -e '/sbtbuildinfo/d' project/build.scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
# munge publishSettings
|
|
William Benton |
9a435ca |
sed -i 's/^\(.*val publishSetting =.*\)$/PUBLISH_SETTING_HERE\n\1/' project/build.scala
|
|
William Benton |
9a435ca |
sed -i '/val publishSetting =/,/^[[:space:]]*[}][[:space:]]*$/d' project/build.scala
|
|
William Benton |
9a435ca |
sed -i 's|PUBLISH_SETTING_HERE|val publishSetting = publishTo <<= (version) { version: String =>\nval cwd = java.lang.System.getProperty("user.dir")\nSome(Resolver.file("published", file("published"))(Resolver.ivyStylePatterns) ivys s"$cwd/published/[organization]/[module]/[revision]/ivy.xml" artifacts s"$cwd/published/[organization]/[module]/[revision]/[artifact]-[revision].[ext]")\n}|' project/build.scala
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
rm -f project/plugins.sbt
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
cp -r /usr/share/sbt/ivy-local .
|
|
William Benton |
9a435ca |
mkdir boot
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
cp %{SOURCE1} .
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
chmod 755 climbing-nemesis.py
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
./climbing-nemesis.py com.thoughtworks.paranamer paranamer ivy-local --version 2.6
|
|
William Benton |
9a435ca |
./climbing-nemesis.py org.scala-lang scalap ivy-local --version 2.10.3
|
|
William Benton |
9a435ca |
./climbing-nemesis.py com.fasterxml.jackson.core jackson-databind ivy-local --ignore maven-scm-provider-gitexe
|
|
William Benton |
9a435ca |
./climbing-nemesis.py com.fasterxml.jackson.core jackson-core ivy-local --ignore maven-scm-provider-gitexe
|
|
William Benton |
9a435ca |
./climbing-nemesis.py com.fasterxml.jackson.core jackson-annotations ivy-local --ignore maven-scm-provider-gitexe
|
|
William Benton |
9a435ca |
./climbing-nemesis.py joda-time joda-time ivy-local --version 2.3
|
|
William Benton |
9a435ca |
./climbing-nemesis.py org.joda joda-convert ivy-local --version 1.6
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%build
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
export SBT_BOOT_DIR=boot
|
|
William Benton |
9a435ca |
export SBT_IVY_DIR=ivy-local
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
sbt package "set publishTo in Global := Some(Resolver.file(\"published\", file(\"published\"))(Resolver.ivyStylePatterns) ivys \"$(pwd)/published/[organization]/[module]/[revision]/ivy.xml\" artifacts \"$(pwd)/published/[organization]/[module]/[revision]/[artifact]-[revision].[ext]\")" publish makePom
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
# XXX: this is a hack; we seem to get correct metadata but bogus JARs
|
|
William Benton |
9a435ca |
# from "sbt publish" for some reason
|
|
William Benton |
9a435ca |
for f in $(find published -name \*.jar ) ; do
|
|
William Benton |
9a435ca |
find . -ipath \*target\* -and -name $(basename $f) -exec cp '{}' $f \;
|
|
William Benton |
9a435ca |
done
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%install
|
|
William Benton |
9a435ca |
mkdir -p %{buildroot}/%{_javadir}/%{name}
|
|
William Benton |
9a435ca |
mkdir -p %{buildroot}/%{_mavenpomdir}
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
mkdir -p %{buildroot}/%{_javadocdir}/%{name}
|
|
William Benton |
9a435ca |
for apidir in $(find . -name api -type d) ; do
|
|
William Benton |
9a435ca |
pushd $apidir
|
|
William Benton |
9a435ca |
cp -rp . %{buildroot}/%{_javadocdir}/%{name}
|
|
William Benton |
9a435ca |
popd
|
|
William Benton |
9a435ca |
done
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
for jar in $(find published -name \*.jar | grep -v %{name}_%{scala_version}-%{version}.jar) ; do
|
|
William Benton |
9a435ca |
install -m 644 $jar %{buildroot}/%{_javadir}/%{name}/$(echo $jar | cut -f5 -d/ | cut -f1 -d_).jar
|
|
William Benton |
9a435ca |
done
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
declare -a shortnames
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
for pom in $(find published -name \*.pom | grep -v %{name}_%{scala_version}-%{version}.pom ) ; do
|
|
William Benton |
9a435ca |
shortname=$(echo $pom | cut -f5 -d/ | cut -f1 -d_)
|
|
William Benton |
9a435ca |
echo installing POM $pom to %{_mavenpomdir}/JPP.%{name}-${shortname}.pom
|
|
William Benton |
9a435ca |
install -pm 644 $pom %{buildroot}/%{_mavenpomdir}/JPP.%{name}-${shortname}.pom
|
|
William Benton |
9a435ca |
echo %{_mavenpomdir}/JPP.%{name}-${shortname}.pom >> .rpm_pomfiles
|
|
William Benton |
9a435ca |
shortnames=( "${shortnames[@]}" $shortname )
|
|
William Benton |
9a435ca |
done
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
for sub in ${shortnames[@]} ; do
|
|
William Benton |
9a435ca |
echo running add_maven_depmap JPP.%{name}-${sub}.pom %{name}/${sub}.jar
|
|
William Benton |
9a435ca |
%add_maven_depmap JPP.%{name}-${sub}.pom %{name}/${sub}.jar
|
|
William Benton |
9a435ca |
done
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%files -f .mfiles
|
|
William Benton |
9a435ca |
%dir %{_javadir}/%{name}
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%doc LICENSE README.md
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%files javadoc
|
|
William Benton |
9a435ca |
%{_javadocdir}/%{name}
|
|
William Benton |
9a435ca |
%doc LICENSE
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
%changelog
|
|
|
099fa5c |
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.2.7-2
|
|
|
099fa5c |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
|
|
099fa5c |
|
|
William Benton |
9a435ca |
|
|
William Benton |
9a435ca |
* Wed Feb 19 2014 William Benton <willb@redhat.com> - 3.2.7-1
|
|
William Benton |
9a435ca |
- initial package
|