diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d652c86 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/jline-2.13.tar.xz diff --git a/.rh-thermostat16-jline.metadata b/.rh-thermostat16-jline.metadata new file mode 100644 index 0000000..0061df7 --- /dev/null +++ b/.rh-thermostat16-jline.metadata @@ -0,0 +1 @@ +4ece4c2c9c5a77cdf1dfad4fad92632351f5cf0c SOURCES/jline-2.13.tar.xz diff --git a/README.md b/README.md deleted file mode 100644 index 98f42b4..0000000 --- a/README.md +++ /dev/null @@ -1,4 +0,0 @@ -The master branch has no content - -Look at the c7 branch if you are working with CentOS-7, or the c4/c5/c6 branch for CentOS-4, 5 or 6 -If you find this file in a distro specific branch, it means that no content has been checked in yet diff --git a/SPECS/jline.spec b/SPECS/jline.spec new file mode 100644 index 0000000..93652af --- /dev/null +++ b/SPECS/jline.spec @@ -0,0 +1,124 @@ +%{?scl:%scl_package jline} +%{!?scl:%global pkg_name %{name}} + +# Use java common's requires/provides generator +%{?java_common_find_provides_and_requires} + +%if 0%{?rhel} + +%if 0%{?rhel} <= 6 + # EL 6 + %global custom_release 60 +%else + # EL 7 + %global custom_release 70 +%endif + +%else + +%global custom_release 1 + +%endif + +Name: %{?scl_prefix}jline +Version: 2.13 +# Release should be higher than el6 builds. Use convention +# 60.X where X is an increasing int. 60 for rhel-6. We use +# 70.X for rhel-7. For some reason we cannot rely on the +# dist tag. +Release: %{custom_release}.3%{?dist} +Summary: JLine is a Java library for handling console input +Group: Development/Libraries +License: BSD and ASL 2.0 +URL: https://github.com/jline/jline2 + +# git clone git://github.com/jline/jline2.git +# cd jline2/ && git archive --format=tar --prefix=jline-2.13/ jline-2.13 | xz > jline-2.13.tar.xz +Source0: jline-%{version}.tar.xz + +BuildArch: noarch + +BuildRequires: %{?scl_prefix_maven}maven-local +BuildRequires: %{?scl_prefix_maven}maven-compiler-plugin +BuildRequires: %{?scl_prefix_maven}maven-jar-plugin +BuildRequires: %{?scl_prefix_maven}maven-surefire-plugin +BuildRequires: %{?scl_prefix_maven}maven-install-plugin +BuildRequires: %{?scl_prefix_java_common}junit +%if 0%{?fedora} >= 23 +BuildRequires: %{?scl_prefix_java_common}powermock-junit4 +BuildRequires: %{?scl_prefix_java_common}easymock +BuildRequires: %{?scl_prefix_java_common}powermock-api-easymock +%endif +BuildRequires: %{?scl_prefix_java_common}jansi +BuildRequires: %{?scl_prefix_maven}fusesource-pom +BuildRequires: %{?scl_prefix_maven}maven-surefire-provider-junit + +%description +JLine is a Java library for handling console input. It is similar +in functionality to BSD editline and GNU readline. People familiar +with the readline/editline capabilities for modern shells (such as +bash and tcsh) will find most of the command editing features of +JLine to be familiar. + +%package javadoc +Summary: Javadocs for %{name} +Group: Documentation + +%description javadoc +This package contains the API documentation for %{name}. + +%prep +%{?scl:scl enable %{scl_maven} %{scl} - << "EOF"} +%setup -q -n jline-%{version} + +# Remove maven-shade-plugin usage +%pom_remove_plugin "org.apache.maven.plugins:maven-shade-plugin" +# Remove animal sniffer plugin in order to reduce deps +%pom_remove_plugin "org.codehaus.mojo:animal-sniffer-maven-plugin" + +# Remove unavailable and unneeded deps +%pom_xpath_remove "pom:build/pom:extensions" +%pom_xpath_remove "pom:build/pom:pluginManagement/pom:plugins/pom:plugin[pom:artifactId = 'maven-site-plugin']" +%pom_xpath_remove "pom:build/pom:plugins/pom:plugin[pom:artifactId = 'maven-site-plugin']" +%pom_xpath_remove "pom:distributionManagement" +%pom_xpath_remove "pom:profiles/pom:profile[pom:id = 'site-stage']" + +# Do not import non-existing internal package +%pom_xpath_remove "pom:build/pom:plugins/pom:plugin[pom:artifactId = 'maven-bundle-plugin']/pom:executions/pom:execution/pom:configuration/pom:instructions/pom:Import-Package" +%pom_xpath_inject "pom:build/pom:plugins/pom:plugin[pom:artifactId = 'maven-bundle-plugin']/pom:executions/pom:execution/pom:configuration/pom:instructions" "javax.swing;resolution:=optional,org.fusesource.jansi,!org.fusesource.jansi.internal" + +# Let maven bundle plugin figure out the exports. +%pom_xpath_remove "pom:build/pom:plugins/pom:plugin[pom:artifactId = 'maven-bundle-plugin']/pom:executions/pom:execution/pom:configuration/pom:instructions/pom:Export-Package" +%{?scl:EOF} + +%build +%{?scl:scl enable %{scl_maven} %{scl} - << "EOF"} +%if 0%{?fedora} >= 23 +%mvn_build +%else +%mvn_build -f +%endif +%{?scl:EOF} + +%install +%{?scl:scl enable %{scl_maven} %{scl} - << "EOF"} +%mvn_install +%{?scl:EOF} + +%files -f .mfiles +%doc CHANGELOG.md README.md LICENSE.txt +%dir %{_javadir}/%{pkg_name} +%dir %{_mavenpomdir}/%{pkg_name} + +%files javadoc -f .mfiles-javadoc +%doc LICENSE.txt + +%changelog +* Wed Aug 31 2016 Jie Kang 2.13-3 +- Own in-collection directory + +* Tue Jun 28 2016 Severin Gehwolf 2.13-2 +- Properly import org.fusesource.jansi package. + +* Thu Jun 23 2016 Severin Gehwolf 2.13-1 +- Initial package.