%global vertxhome %{_datadir}/vert.x %global sysmodsdir %{vertxhome}/sys-mods %global vertxversion 2.1 %global groupId io.vertx %global languagename lang-rhino %global modulename mod-lang-rhino %global vertxjsapiversion 1.1.0 Name: vertx-lang-rhino Version: 2.1.1 Release: 1%{?dist} Summary: Default JavaScript run time in Vert.x platform License: ASL 2.0 URL: https://github.com/vert-x/mod-lang-rhino # Downloaded from https://github.com/vert-x/mod-lang-rhino/archive/lang-rhino-2.1.1.tar.gz Source0: https://github.com/vert-x/mod-lang-rhino/archive/lang-rhino-%{version}.tar.gz BuildArch: noarch BuildRequires: maven-local BuildRequires: maven-release-plugin BuildRequires: maven-resources-plugin BuildRequires: maven-source-plugin BuildRequires: maven-enforcer-plugin BuildRequires: maven-dependency-plugin BuildRequires: maven-surefire-plugin BuildRequires: maven-surefire-report-plugin BuildRequires: maven-javadoc-plugin BuildRequires: mvn(org.mozilla:rhino) BuildRequires: mvn(org.apache.directory.server:apacheds-protocol-dns) BuildRequires: junit BuildRequires: mvn(io.vertx:vertx-core) BuildRequires: mvn(io.vertx:vertx-platform) BuildRequires: java-devel >= 0:1.7.0 Requires: vert.x >= 0:%{vertxversion} Requires: vertx-lang-js = 0:%{vertxjsapiversion} %description Rhino Vert.x API Module. Use Rhino as your language module in Vert.x. This language module uses the vert.x Javascript API in 'mod-lang-js' with the Rhino 1.7R4 run time. The API documentation is the same as for 'lang-js' and 'lang-dynjs' %package javadoc Summary: Javadocs for %{name} Group: Documentation %description javadoc This package contains the API documentation for %{name}. %prep %setup -q -n %{modulename}-%{languagename}-%{version} ## Remove unused dependencies # No io.vertx:testtools available %pom_remove_dep io.vertx:testtools pom.xml # No test-jar of io.vertx:lang-js available %pom_remove_dep io.vertx:lang-js pom.xml # Remove unused plugin %pom_remove_plugin org.apache.maven.plugins:maven-failsafe-plugin pom.xml %pom_remove_plugin org.apache.maven.plugins:maven-dependency-plugin pom.xml %build export MAVEN_OPTS="-Xms256m -Xmx768m -XX:PermSize=128m -XX:MaxPermSize=256m" # JUnit test failures # only version 2.8 of maven-dependency-plugin in f21 %mvn_build -f -- -Dmaven.dependency.plugin.version=2.8 -Dvertx.version=%{vertxversion} %install %mvn_install install -d -m 755 $RPM_BUILD_ROOT%{sysmodsdir} # Install system module directory: io.vertx~lang-rhino~2.1.1 install -d -m 755 $RPM_BUILD_ROOT%{sysmodsdir} cp -r target/mods/ $RPM_BUILD_ROOT%{sysmodsdir}/ # link to rhino.jar install -d -m 755 $RPM_BUILD_ROOT%{sysmodsdir}/%{groupId}~%{languagename}~%{version}/lib pushd $RPM_BUILD_ROOT%{sysmodsdir}/%{groupId}~%{languagename}~%{version}/lib ln -s $(build-classpath rhino/rhino) rhino.jar popd %files -f .mfiles %doc LICENSE.txt README.md %{_javadir}/* %dir %{sysmodsdir} %{sysmodsdir}/%{groupId}~%{languagename}~%{version}/* %files javadoc -f .mfiles-javadoc %doc LICENSE.txt README.md %changelog * Thu Jun 26 2014 Lin Gao 2.1.1-1 - Initial packaging