Name: parboiled
Version: 1.1.6
Release: 17
Summary: A mixed Java/Scala library
License: ASL 2.0
URL: http://parboiled.org/
Source0: https://github.com/sirthias/parboiled/archive/%{version}.tar.gz
Source1: https://repo1.maven.org/maven2/org/parboiled/parboiled-core/%{version}/parboiled-core-%{version}.pom
Source2: https://repo1.maven.org/maven2/org/parboiled/parboiled-java/%{version}/parboiled-java-%{version}.pom
Source3: pom.xml
Source4: http://repo1.maven.org/maven2/org/parboiled/parboiled-scala_2.10/%{version}/parboiled-scala_2.10-%{version}.pom
Patch0000: parboiled-port-to-objectweb-asm-5.0.1.patch
Patch9000: parboiled-scala-add_antrun_plugin.patch
BuildArch: noarch
BuildRequires: maven-local, mvn(org.apache.felix:maven-bundle-plugin), mvn(org.apache.maven.plugins:maven-antrun-plugin)
BuildRequires: mvn(org.ow2.asm:asm), mvn(org.ow2.asm:asm-analysis), mvn(org.ow2.asm:asm-tree), mvn(org.ow2.asm:asm-util)
BuildRequires: mvn(org.scala-lang:scala-compiler), mvn(org.scala-lang:scala-library)
Provides: parboiled-scala%{?_isa} parboiled-scala parboiled-javadoc%{?_isa} parboiled-javadoc
Obsoletes: parboiled-scala parboiled-javadoc
%description
parboiled is a mixed Java/Scala library providing for lightweight and easy-to-use,
yet powerful and elegant parsing of arbitrary input text based on Parsing expression
grammars (PEGs). PEGs are an alternative to context free grammars (CFGs) for formally
specifying syntax, they make a good replacement for regular expressions and generally
have quite a few advantages over the "traditional" way of building parsers via CFGs.
parboiled is released under the Apache License 2.0.
%package help
Summary: Documentation for parboiled
%description help
Documentation for parboiled api.
%prep
%setup -q
find . \( -name "*.jar" -o -name "*.class" \) -delete
cp -p %{SOURCE1} parboiled-core/pom.xml
cp -p %{SOURCE2} parboiled-java/pom.xml
cp -p %{SOURCE4} parboiled-scala/pom.xml
for m in core java; do
%pom_xpath_inject "pom:project" \
"
" \
parboiled-${m}
%pom_add_plugin org.apache.maven.plugins:maven-jar-plugin parboiled-${m} \
"
\${project.build.outputDirectory}/META-INF/MANIFEST.MF
"
done
%pom_add_plugin org.apache.felix:maven-bundle-plugin parboiled-core \
"
true
org.parboiled.core
org.parboiled.core
\${project.version}
org.parboiled.core.*
bundle-manifest
process-classes
manifest
"
%pom_add_plugin org.apache.felix:maven-bundle-plugin parboiled-java \
"
true
org.parboiled.java
org.parboiled.java
\${project.version}
org.parboiled.core
org.parboiled.java.*
bundle-manifest
process-classes
manifest
"
%patch0 -p1
%patch9000 -p1
cp -p %{SOURCE3} pom.xml
sed -i "s|@VERSION@|%{version}|" pom.xml
%mvn_file :parboiled-java parboiled/java
%mvn_file :parboiled-core parboiled/core
%mvn_package :parboiled-project __noinstall
%pom_xpath_inject "pom:modules" "parboiled-scala"
%mvn_file :parboiled-scala_2.10 parboiled/scala
%mvn_package :parboiled-scala_2.10 scala
%build
%mvn_build -f -- -Dproject.build.sourceEncoding=UTF-8
%install
%mvn_install
%files -f .mfiles
%doc README.markdown LICENSE
%{_javadir}/parboiled/*.jar
/usr/share/maven*
%files help
%{_javadocdir}/parboiled/*
%changelog
* Fri Feb 14 2020 Ling Yang - 1.1.6-17
- Package init