168 lines
4.4 KiB
RPMSpec
168 lines
4.4 KiB
RPMSpec
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" \
|
|
"<build>
|
|
<plugins>
|
|
|
|
</plugins>
|
|
</build>" \
|
|
parboiled-${m}
|
|
|
|
%pom_add_plugin org.apache.maven.plugins:maven-jar-plugin parboiled-${m} \
|
|
"<configuration>
|
|
<archive>
|
|
<manifestFile>
|
|
\${project.build.outputDirectory}/META-INF/MANIFEST.MF
|
|
</manifestFile>
|
|
</archive>
|
|
</configuration>"
|
|
done
|
|
|
|
%pom_add_plugin org.apache.felix:maven-bundle-plugin parboiled-core \
|
|
"<extensions>
|
|
true
|
|
</extensions>
|
|
<configuration>
|
|
<instructions>
|
|
<Bundle-SymbolicName>
|
|
org.parboiled.core
|
|
</Bundle-SymbolicName>
|
|
<Bundle-Name>
|
|
org.parboiled.core
|
|
</Bundle-Name>
|
|
<Bundle-Version>
|
|
\${project.version}
|
|
</Bundle-Version>
|
|
<Private-Package>
|
|
org.parboiled.core.*
|
|
</Private-Package>
|
|
</instructions>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>
|
|
bundle-manifest
|
|
</id>
|
|
<phase>
|
|
process-classes
|
|
</phase>
|
|
<goals>
|
|
<goal>
|
|
manifest
|
|
</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>"
|
|
|
|
%pom_add_plugin org.apache.felix:maven-bundle-plugin parboiled-java \
|
|
"<extensions>
|
|
true
|
|
</extensions>
|
|
<configuration>
|
|
<instructions>
|
|
<Bundle-SymbolicName>
|
|
org.parboiled.java
|
|
</Bundle-SymbolicName>
|
|
<Bundle-Name>
|
|
org.parboiled.java
|
|
</Bundle-Name>
|
|
<Bundle-Version>
|
|
\${project.version}
|
|
</Bundle-Version>
|
|
<Fragment-Host>
|
|
org.parboiled.core
|
|
</Fragment-Host>
|
|
<Private-Package>
|
|
org.parboiled.java.*
|
|
</Private-Package>
|
|
</instructions>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>
|
|
bundle-manifest
|
|
</id>
|
|
<phase>
|
|
process-classes
|
|
</phase>
|
|
<goals>
|
|
<goal>
|
|
manifest
|
|
</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>"
|
|
|
|
%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" "<module>parboiled-scala</module>"
|
|
%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 <lingyang2@huawei.com> - 1.1.6-17
|
|
- Package init
|