Blame SPECS/eclipse-ecf.spec

03b6d8
%{?scl:%scl_package eclipse-ecf}
03b6d8
%{!?scl:%global pkg_name %{name}}
03b6d8
%{?java_common_find_provides_and_requires}
03b6d8
b1fa7d
%global baserelease 1
b1fa7d
03b6d8
# The core sub-package must be archful because it is required to be in
03b6d8
# libdir by the platform, but we have no natives, so suppress debuginfo
03b6d8
%global debug_package %{nil}
03b6d8
03b6d8
# This exclude breaks the cyclic dependency on the platform to aide in
03b6d8
# bootstrapping
03b6d8
%global __requires_exclude .*org\.eclipse\.equinox.*
03b6d8
b1fa7d
%global git_tag R-Release_HEAD-sdk_feature-235_235
b1fa7d
b1fa7d
%if 0%{?fedora} >= 24
b1fa7d
%global droplets droplets
b1fa7d
%else
b1fa7d
%global droplets dropins
b1fa7d
%endif
03b6d8
03b6d8
Name:           %{?scl_prefix}eclipse-ecf
b1fa7d
Version:        3.12.2
b1fa7d
Release:        2.%{baserelease}%{?dist}
03b6d8
Summary:        Eclipse Communication Framework (ECF) Eclipse plug-in
03b6d8
03b6d8
License:        EPL
03b6d8
URL:            http://www.eclipse.org/ecf/
b1fa7d
Source0:        http://git.eclipse.org/c/ecf/org.eclipse.ecf.git/snapshot/org.eclipse.ecf-%{git_tag}.tar.xz
03b6d8
b1fa7d
# Change how feature deps are specified, to avoid embedding versions
b1fa7d
Patch0:         eclipse-ecf-feature-deps.patch
03b6d8
b1fa7d
BuildRequires:  %{?scl_prefix}tycho >= 0.23.0
b1fa7d
BuildRequires:  %{?scl_prefix}eclipse-filesystem
03b6d8
BuildRequires:  %{?scl_prefix_java_common}httpcomponents-client
03b6d8
BuildRequires:  %{?scl_prefix_java_common}httpcomponents-core
03b6d8
BuildRequires:  %{?scl_prefix_java_common}apache-commons-codec
03b6d8
BuildRequires:  %{?scl_prefix_java_common}apache-commons-logging
03b6d8
03b6d8
%description
03b6d8
ECF is a set of frameworks for building communications into applications and
03b6d8
services. It provides a lightweight, modular, transport-independent, fully
03b6d8
compliant implementation of the OSGi Remote Services standard.
03b6d8
03b6d8
%package   core
03b6d8
Summary:   Eclipse ECF Core
03b6d8
Requires:  %{?scl_prefix}eclipse-filesystem
b1fa7d
Requires:  %{?scl_prefix_java_common}httpcomponents-client
b1fa7d
Requires:  %{?scl_prefix_java_common}httpcomponents-core
03b6d8
03b6d8
%description core
03b6d8
ECF bundles required by eclipse-platform.
03b6d8
03b6d8
%prep
03b6d8
%{?scl:scl enable %{scl_maven} %{scl} - << "EOF"}
b1fa7d
set -e -x
03b6d8
%setup -q -n org.eclipse.ecf-%{git_tag}
03b6d8
03b6d8
find . -type f -name "*.jar" -exec rm {} \;
03b6d8
find . -type f -name "*.class" -exec rm {} \;
03b6d8
03b6d8
#get just the bits we need
03b6d8
mkdir -p ecf/plugins
03b6d8
mkdir -p ecf/features
03b6d8
03b6d8
cp -r releng/features/org.eclipse.ecf.core.{,ssl.}feature \
03b6d8
    ecf/features
03b6d8
cp -r releng/features/org.eclipse.ecf.filetransfer.httpclient4.{,ssl.}feature \
03b6d8
    ecf/features
03b6d8
cp -r releng/features/org.eclipse.ecf.filetransfer.{,ssl.}feature \
03b6d8
    ecf/features
03b6d8
03b6d8
cp -r framework/bundles/org.eclipse.ecf ecf/plugins
03b6d8
cp -r framework/bundles/org.eclipse.ecf.identity ecf/plugins
03b6d8
cp -r framework/bundles/org.eclipse.ecf.ssl ecf/plugins
03b6d8
cp -r framework/bundles/org.eclipse.ecf.filetransfer ecf/plugins
03b6d8
cp -r providers/bundles/org.eclipse.ecf.provider.filetransfer{,.ssl} ecf/plugins
03b6d8
cp -r providers/bundles/org.eclipse.ecf.provider.filetransfer.httpclient4{,.ssl} ecf/plugins
03b6d8
03b6d8
rm -rf `ls | grep -v "ecf"`
b1fa7d
mv ecf/* . && rm -r ecf
03b6d8
b1fa7d
%patch0
03b6d8
03b6d8
# Allow building on java > 1.4
b1fa7d
sed -i -e 's#(Object) ((URIID) o)#((URIID) o)#g' plugins/org.eclipse.ecf.identity/src/org/eclipse/ecf/core/identity/URIID.java
03b6d8
03b6d8
# Compatibility with httpcomponents >= 4.4.0
03b6d8
sed -i '/httpcomponents/s/,4.4)/,5)/' $(find -name *.MF)
b1fa7d
b1fa7d
# Generate pom.xml
b1fa7d
xmvn -o org.eclipse.tycho:tycho-pomgenerator-plugin:generate-poms -DgroupId=org.eclipse.ecf
b1fa7d
b1fa7d
%mvn_package "::pom::" __noinstall
03b6d8
%{?scl:EOF}
03b6d8
03b6d8
03b6d8
%build
03b6d8
%{?scl:scl enable %{scl_maven} %{scl} - << "EOF"}
b1fa7d
set -e -x
b1fa7d
%mvn_build -j -- -DforceContextQualifier=$(date -u +v%Y%m%d-%H00)
03b6d8
%{?scl:EOF}
03b6d8
03b6d8
03b6d8
%install
03b6d8
%{?scl:scl enable %{scl_maven} %{scl} - << "EOF"}
b1fa7d
set -e -x
b1fa7d
%mvn_install
03b6d8
b1fa7d
# Move to libdir due to being part of core platform
b1fa7d
install -d -m 755 %{buildroot}%{_libdir}/eclipse
b1fa7d
mv %{buildroot}%{_datadir}/eclipse/%{droplets}/ecf/eclipse/{plugins,features} %{buildroot}%{_libdir}/eclipse
b1fa7d
rm -r %{buildroot}%{_datadir}/eclipse
03b6d8
b1fa7d
# Fixup metadata
b1fa7d
sed -i -e 's|%{_datadir}/eclipse/%{droplets}/ecf/eclipse|%{_libdir}/eclipse|' %{buildroot}%{_datadir}/maven-metadata/eclipse-ecf.xml
b1fa7d
sed -i -e 's|%{_datadir}/eclipse/%{droplets}/ecf/eclipse/features/|%{_libdir}/eclipse/features/|' \
b1fa7d
       -e 's|%{_datadir}/eclipse/%{droplets}/ecf/eclipse/plugins/|%{_libdir}/eclipse/plugins/|' .mfiles
b1fa7d
sed -i -e '/%{droplets}/d' .mfiles
03b6d8
03b6d8
# Symlink jars into javadir
b1fa7d
install -d -m 755 %{buildroot}%{_javadir}/eclipse
b1fa7d
location=%{_libdir}/eclipse/plugins
b1fa7d
while [ "$location" != "/" ] ; do
b1fa7d
    location=$(dirname $location)
b1fa7d
    updir="$updir../"
b1fa7d
done
03b6d8
pushd %{buildroot}%{_javadir}/eclipse
03b6d8
for J in ecf{,.identity,.ssl,.filetransfer,.provider.filetransfer{,.ssl,.httpclient4{,.ssl}}}  ; do
b1fa7d
    DIR=$updir%{_libdir}/eclipse/plugins
b1fa7d
    [ -e "`ls $DIR/org.eclipse.${J}_*.jar`" ] && ln -s $DIR/org.eclipse.${J}_*.jar ${J}.jar
03b6d8
done
03b6d8
popd
03b6d8
%{?scl:EOF}
03b6d8
03b6d8
b1fa7d
%files core -f .mfiles
03b6d8
%{_javadir}/eclipse/*
03b6d8
03b6d8
%changelog
b1fa7d
* Sat Mar 19 2016 Mat Booth <mat.booth@redhat.com> - 3.12.2-2.1
b1fa7d
- Import latest from Fedora
b1fa7d
b1fa7d
* Tue Mar 15 2016 Mat Booth <mat.booth@redhat.com> - 3.12.2-2
b1fa7d
- Avoid embedding versions of external deps in features. This avoids the need to
b1fa7d
  rebuild when a dependency changes version.
b1fa7d
b1fa7d
* Mon Feb 29 2016 Mat Booth <mat.booth@redhat.com> - 3.12.2-1
b1fa7d
- Update to Mars.2 release
b1fa7d
b1fa7d
* Mon Feb 29 2016 Mat Booth <mat.booth@redhat.com> - 3.12.0-1.2
b1fa7d
- Rebuild 2016-02-29
b1fa7d
b1fa7d
* Mon Feb 29 2016 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.12.0-3
b1fa7d
- Rebuild for httpcomponents-client 4.5.2
03b6d8
b1fa7d
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.12.0-2
b1fa7d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
b1fa7d
b1fa7d
* Tue Jan 12 2016 Mat Booth <mat.booth@redhat.com> - 3.12.0-1.1
03b6d8
- Import latest from Fedora
03b6d8
b1fa7d
* Mon Dec 07 2015 Mat Booth <mat.booth@redhat.com> - 3.12.0-1
b1fa7d
- Update to latest release
b1fa7d
b1fa7d
* Mon Nov  2 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.11.0-2
b1fa7d
- Rebuild for httpcomponents-core-4.4.4 update
b1fa7d
b1fa7d
* Mon Sep 28 2015 Mat Booth <mat.booth@redhat.com> - 3.11.0-1
b1fa7d
- Update to latest upstream release
b1fa7d
b1fa7d
* Wed Sep 16 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.10.1-5
b1fa7d
- Rebuild for httpcomponents-client-4.5.1 update
b1fa7d
b1fa7d
* Wed Sep  9 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.10.1-4
b1fa7d
- Rebuild for httpcomponents-core-4.4.3 update
b1fa7d
b1fa7d
* Mon Sep 07 2015 Michael Simacek <msimacek@redhat.com> - 3.10.1-3
b1fa7d
- Rebuild for httpcomponents-core-4.4.2
b1fa7d
b1fa7d
* Mon Aug 31 2015 Roland Grunberg <rgrunber@redhat.com> - 3.10.1-2
b1fa7d
- Minor changes to build as a droplet.
b1fa7d
b1fa7d
* Tue Aug 25 2015 Mat Booth <mat.booth@redhat.com> - 3.10.1-1
b1fa7d
- Update to latest upstream version
b1fa7d
- Use XZ compressed tarball
b1fa7d
- Make symlink generation more dynamic
b1fa7d
b1fa7d
* Wed Aug 05 2015 Mat Booth <mat.booth@redhat.com> - 3.10.0-5
b1fa7d
- Rebuilt using xmvn/tycho
b1fa7d
03b6d8
* Mon Jun 29 2015 Mat Booth <mat.booth@redhat.com> - 3.10.0-4
03b6d8
- Drop incomplete and forbidden SCL macros
03b6d8
03b6d8
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.10.0-3
03b6d8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
03b6d8
03b6d8
* Thu Jun 04 2015 Michael Simacek <msimacek@redhat.com> - 3.10.0-2
03b6d8
- Rebuild against httpcomponents-client-4.5
03b6d8
03b6d8
* Wed May 13 2015 Mat Booth <mat.booth@redhat.com> - 3.10.0-1
03b6d8
- Update to 3.10.0 release
03b6d8
03b6d8
* Tue Mar 31 2015 Mat Booth <mat.booth@redhat.com> - 3.9.3-2
03b6d8
- Add requires on httpcompnents-* >= 4.4.1
03b6d8
03b6d8
* Tue Mar 31 2015 Mat Booth <mat.booth@redhat.com> - 3.9.3-1
03b6d8
- Update to latest upstream release
03b6d8
03b6d8
* Tue Mar 31 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.9.2-4
03b6d8
- Rebuild for httpcomponents-client-4.4.1 update
03b6d8
03b6d8
* Thu Mar 19 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.9.2-3
03b6d8
- Rebuild for httpcomponents-core-4.4.1 update
03b6d8
03b6d8
* Thu Feb 19 2015 Mat Booth <mat.booth@redhat.com> - 3.9.2-2
03b6d8
- Rebuild for latest httpcomponents
03b6d8
03b6d8
* Mon Jan 19 2015 Mat Booth <mat.booth@redhat.com> - 3.9.2-1
03b6d8
- Update to latest upstream release
03b6d8
03b6d8
* Mon Jan 19 2015 Mikolaj Izdebski <mizdebsk@redhat.com> - 3.9.1-3
03b6d8
- Rebuild for httpcomponents 4.4 update
03b6d8
03b6d8
* Tue Dec 09 2014 Roland Grunberg <rgrunber@redhat.com> - 3.9.1-2
03b6d8
- Symlink ECF bundles into javadir.
03b6d8
03b6d8
* Thu Nov 27 2014 Mat Booth <mat.booth@redhat.com> - 3.9.1-1
03b6d8
- Update to latest upstream release
03b6d8
03b6d8
* Thu Nov 27 2014 Mat Booth <mat.booth@redhat.com> - 3.9.0-3
03b6d8
- Make core package archful so it can be installed into libdir
03b6d8
  where eclipse-platform expects it to be
03b6d8
03b6d8
* Tue Nov 18 2014 Mat Booth <mat.booth@redhat.com> - 3.9.0-2
03b6d8
- Rebuild for new commons-codec
03b6d8
03b6d8
* Tue Aug 19 2014 Mat Booth <mat.booth@redhat.com> - 3.9.0-1
03b6d8
- Update to latest upstream release
03b6d8
- Drop unneeded patch
03b6d8
03b6d8
* Wed Aug 6 2014 Alexander Kurtakov <akurtako@redhat.com> 3.8.1-3
03b6d8
- Rebuild against latest httpcomponents.
03b6d8
03b6d8
* Mon Jul 21 2014 Alexander Kurtakov <akurtako@redhat.com> 3.8.1-2
03b6d8
- Rebuild for apache-commons-logging 1.2.
03b6d8
03b6d8
* Wed Jun 25 2014 Mat Booth <mat.booth@redhat.com> - 3.8.1-1
03b6d8
- Update to latest upstream release
03b6d8
03b6d8
* Wed Jun 11 2014 Roland Grunberg <rgrunber@redhat.com> - 3.8.0-4
03b6d8
- Remove problematic manifest alterations from specfile.
03b6d8
03b6d8
* Fri Jun 06 2014 Mat Booth <mat.booth@redhat.com> - 3.8.0-3
03b6d8
- Rebuild against latest httpcomponents.
03b6d8
03b6d8
* Mon May 12 2014 Alexander Kurtakov <akurtako@redhat.com> 3.8.0-2
03b6d8
- Rebuild against latest httpcomponents.
03b6d8
03b6d8
* Wed Mar 19 2014 Mat Booth <fedora@matbooth.co.uk> - 3.8.0-1
03b6d8
- Update to latest upstream.
03b6d8
- Now necessary to explicitly build more fine-grained features.
03b6d8
- Drop unneeded dep on jakarta-commons-httpclient.
03b6d8
- Fixed mixed use of tabs and spaces.
03b6d8
- Switch core package to R: java-headless, rhbz #1068037
03b6d8
03b6d8
* Tue Sep 3 2013 Krzysztof Daniel <kdaniel@redhat.com> 3.6.1-1
03b6d8
- Update to latest upstream.
03b6d8
03b6d8
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.6.0-3
03b6d8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
03b6d8
03b6d8
* Fri Jun 21 2013 Krzysztof Daniel <kdaniel@redhat.com> 3.6.0-2
03b6d8
- 974112: Remove versions and timestamps from ECF.
03b6d8
03b6d8
* Wed May 1 2013 Krzysztof Daniel <kdaniel@redhat.com> 3.6.0-1
03b6d8
- Update to latest upstream.
03b6d8
03b6d8
* Mon Apr 8 2013 Krzysztof Daniel <kdaniel@redhat.com> 3.5.7-0.6
03b6d8
- Rebuild with old commons logging.
03b6d8
03b6d8
* Mon Apr 8 2013 Krzysztof Daniel <kdaniel@redhat.com> 3.5.7-0.5
03b6d8
- Drop v3 httpclient.
03b6d8
- Make dependency to commons loggigng less strict.
03b6d8
03b6d8
* Wed Mar 20 2013 Krzysztof Daniel <kdaniel@redhat.com> 3.5.7-0.4
03b6d8
- Add direct dependency to jakarta-commons-httpclient.
03b6d8
03b6d8
* Wed Mar 20 2013 Krzysztof Daniel <kdaniel@redhat.com> 3.5.7-0.3
03b6d8
- Symlink deps against /usr/share/java/.
03b6d8
03b6d8
* Fri Mar 15 2013 Krzysztof Daniel <kdaniel@redhat.com> 3.5.7-0.2
03b6d8
- Explicitly build httpclient4 feature.
03b6d8
03b6d8
* Thu Mar 14 2013 Krzysztof Daniel <kdaniel@redhat.com> 3.5.7-0.1
03b6d8
- Update to latest upstream.
03b6d8
- Initial SCLization.
03b6d8
03b6d8
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.5.6-8
03b6d8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
03b6d8
03b6d8
* Mon Oct 8 2012 Krzysztof Daniel <kdaniel@redhat.com> 3.5.6-7
03b6d8
- Use __requires_exclude instead of __provides_exclude.
03b6d8
03b6d8
* Mon Oct 8 2012 Krzysztof Daniel <kdaniel@redhat.com> 3.5.6-6
03b6d8
- Try out __provides_exclude
03b6d8
03b6d8
* Mon Oct 8 2012 Krzysztof Daniel <kdaniel@redhat.com> 3.5.6-5
03b6d8
- Use new way of changing auto required dependencies.
03b6d8
03b6d8
* Fri Oct 5 2012 Krzysztof Daniel <kdaniel@redhat.com> 3.5.6-4
03b6d8
- Don't generate autorreuquire.
03b6d8
03b6d8
* Mon Aug 27 2012 Krzysztof Daniel <kdaniel@redhat.com> 3.5.6-3
03b6d8
- Don't duplicate org.apache* plugins
03b6d8
- Use context qualifier to avoid constant feature version changes.
03b6d8
03b6d8
* Wed Aug 8 2012 Krzysztof Daniel <kdaniel@redhat.com> 3.5.6-2
03b6d8
- Review issues fixed.
03b6d8
03b6d8
* Wed Aug 8 2012 Krzysztof Daniel <kdaniel@redhat.com> 3.5.6-1
03b6d8
- Initial packaging.