Sophie

Sophie

distrib > Mageia > 6 > armv5tl > by-pkgid > 61bfe148a2e7ff1d9899942acfcb7af6 > files > 2

eclipse-ecf-3.13.3-1.mga6.src.rpm

# The core sub-package must be archful because it is required to be in
# libdir by the platform, but we have no natives, so suppress debuginfo
%global debug_package %{nil}

# This exclude breaks the cyclic dependency on the platform to aide in
# bootstrapping
%global __requires_exclude .*org\.eclipse\.equinox.*

%global git_tag R-Release_HEAD-sdk_feature-3.13.3-Hipp-Tycho-49

Name:           eclipse-ecf
Version:        3.13.3
Release:        %mkrel 1
Group:          Development/Java
Summary:        Eclipse Communication Framework (ECF) Eclipse plug-in

License:        EPL
URL:            http://www.eclipse.org/ecf/
Source0:        http://git.eclipse.org/c/ecf/org.eclipse.ecf.git/snapshot/org.eclipse.ecf-%{git_tag}.tar.xz

# Change how feature deps are specified, to avoid embedding versions
Patch0:         eclipse-ecf-feature-deps.patch

BuildRequires:  tycho
BuildRequires:  tycho-extras
BuildRequires:  maven-plugin-build-helper
BuildRequires:  eclipse-filesystem
BuildRequires:  eclipse-emf-runtime
BuildRequires:  eclipse-pde
BuildRequires:  osgi-annotation
BuildRequires:  xpp3-minimal
BuildRequires:  irclib
BuildRequires:  httpcomponents-client
BuildRequires:  httpcomponents-core
BuildRequires:  apache-commons-codec
BuildRequires:  apache-commons-logging
BuildRequires:  dnsjava

BuildRequires:  mvn(org.apache.maven.plugins:maven-source-plugin)

%description
ECF is a set of frameworks for building communications into applications and
services. It provides a lightweight, modular, transport-independent, fully
compliant implementation of the OSGi Remote Services standard.

%package   core
Summary:   Eclipse ECF Core
Requires:  eclipse-filesystem
Requires:  httpcomponents-client
Requires:  httpcomponents-core

%description core
ECF bundles required by eclipse-platform.

%package   runtime
Summary:   Eclipse Communication Framework (ECF) Eclipse plug-in

BuildArch: noarch

%description runtime
ECF is a set of frameworks for building communications into applications and
services. It provides a lightweight, modular, transport-independent, fully
compliant implementation of the OSGi Remote Services standard.

%package   sdk
Summary:   Eclipse ECF SDK

BuildArch: noarch

%description sdk
Documentation and developer resources for the Eclipse Communication Framework
(ECF) plug-in.

%prep
%setup -q -n org.eclipse.ecf-%{git_tag}

find . -type f -name "*.jar" -exec rm {} \;
find . -type f -name "*.class" -exec rm {} \;

%patch0

# Allow building on java > 1.4
sed -i -e 's#(Object) ((URIID) o)#((URIID) o)#g' framework/bundles/org.eclipse.ecf.identity/src/org/eclipse/ecf/core/identity/URIID.java

# Correction for content of runtime package
%pom_xpath_remove "feature/plugin[@id='org.eclipse.ecf.presence']" releng/features/org.eclipse.ecf.core/feature.xml

# Don't build examples or tests
sed -i -e '/<module>examples/d' -e '/<module>tests/d' pom.xml
%pom_disable_module releng/features/org.eclipse.ecf.tests.feature
%pom_disable_module releng/features/org.eclipse.ecf.eventadmin.examples.feature
%pom_disable_module releng/features/org.eclipse.ecf.remoteservice.examples.feature
%pom_disable_module releng/features/org.eclipse.ecf.remoteservice.sdk.examples.feature
%pom_xpath_remove "feature/requires/import[@feature='org.eclipse.ecf.remoteservice.sdk.examples.feature']" releng/features/org.eclipse.ecf.core/feature.xml
%pom_xpath_remove "feature/plugin[@id='org.eclipse.ecf.example.clients']" releng/features/org.eclipse.ecf.core/feature.xml
%pom_xpath_remove "feature/plugin[@id='org.eclipse.ecf.example.collab']" releng/features/org.eclipse.ecf.core/feature.xml
%pom_xpath_remove "feature/plugin[@id='org.eclipse.ecf.example.collab.editor']" releng/features/org.eclipse.ecf.core/feature.xml

# Don't use target platform or jgit packaging bits
%pom_xpath_remove "pom:target"
%pom_xpath_remove "pom:plugin[pom:artifactId='tycho-packaging-plugin']/pom:dependencies"
%pom_xpath_remove "pom:plugin[pom:artifactId='tycho-packaging-plugin']/pom:configuration/pom:sourceReferences"
%pom_xpath_remove "pom:plugin[pom:artifactId='tycho-packaging-plugin']/pom:configuration/pom:timestampProvider"
%pom_disable_module releng/org.eclipse.ecf.releng.repository

# Remove unnecesary dep on json
%pom_xpath_remove "feature/requires/import[@plugin='org.json']" releng/features/org.eclipse.ecf.remoteservice.rest.feature/feature.xml

# Using latest zookeeper requires non-trivial port
%pom_disable_module releng/features/org.eclipse.ecf.discovery.zookeeper.feature
%pom_disable_module providers/bundles/org.eclipse.ecf.provider.zookeeper
%pom_xpath_remove "feature/includes[@id='org.eclipse.ecf.discovery.zookeeper.feature']" releng/features/org.eclipse.ecf.remoteservice.sdk.feature/feature.xml

# Using latest rome requires non-trivial port
%pom_disable_module releng/features/org.eclipse.ecf.remoteservice.rest.synd.feature
%pom_disable_module framework/bundles/org.eclipse.ecf.remoteservice.rest.synd
%pom_xpath_remove "feature/includes[@id='org.eclipse.ecf.remoteservice.rest.synd.feature']" releng/features/org.eclipse.ecf.remoteservice.sdk.feature/feature.xml

# Use system libs
ln -s %{_javadir}/osgi-annotation/osgi.annotation.jar osgi/bundles/org.eclipse.osgi.services.remoteserviceadmin/osgi/
ln -s %{_javadir}/xpp3-minimal.jar protocols/bundles/org.jivesoftware.smack/jars/xpp.jar
ln -s %{_javadir}/irclib.jar providers/bundles/org.eclipse.ecf.provider.irc/lib

%mvn_package "::{pom,target}::" __noinstall
%mvn_package "::jar:{sources,sources-feature}:" sdk
%mvn_package ":org.eclipse.ecf.{core,sdk}" sdk
%mvn_package ":org.eclipse.ecf.docshare*" sdk
for p in $(grep '<plugin' releng/features/org.eclipse.ecf.core/feature.xml | sed -e 's/.*id="\(.*\)" d.*/\1/') ; do
%mvn_package ":$p" sdk
done
%mvn_package ":org.eclipse.ecf.remoteservice.sdk.*" sdk
%mvn_package ":org.eclipse.ecf.core.{,ssl.}feature" core
%mvn_package ":org.eclipse.ecf.filetransfer.{,httpclient4.}{,ssl.}feature" core
%mvn_package ":org.eclipse.ecf{,.identity,.ssl,.filetransfer}" core
%mvn_package ":org.eclipse.ecf.provider.filetransfer*" core
%mvn_package ":" runtime

%build
# Qualifier generated from last modification time of source tarball
QUALIFIER=$(date -u -d"$(stat --format=%y %{SOURCE0})" +v%Y%m%d-%H%M)
%mvn_build -j -- -DforceContextQualifier=$QUALIFIER

%install
%mvn_install

# Move to libdir due to being part of core platform
install -d -m 755 %{buildroot}%{_libdir}/eclipse
mv %{buildroot}%{_datadir}/eclipse/droplets/ecf-core/eclipse/{plugins,features} %{buildroot}%{_libdir}/eclipse
rm -r %{buildroot}%{_datadir}/eclipse/droplets/ecf-core

# Fixup metadata
sed -i -e 's|%{_datadir}/eclipse/droplets/ecf-core/eclipse|%{_libdir}/eclipse|' %{buildroot}%{_datadir}/maven-metadata/eclipse-ecf-core.xml
sed -i -e 's|%{_datadir}/eclipse/droplets/ecf-core/eclipse/features/|%{_libdir}/eclipse/features/|' \
       -e 's|%{_datadir}/eclipse/droplets/ecf-core/eclipse/plugins/|%{_libdir}/eclipse/plugins/|' .mfiles-core
sed -i -e '/droplets/d' .mfiles-core

# Symlink jars into javadir
install -d -m 755 %{buildroot}%{_javadir}/eclipse
location=%{_libdir}/eclipse/plugins
while [ "$location" != "/" ] ; do
    location=$(dirname $location)
    updir="$updir../"
done
pushd %{buildroot}%{_javadir}/eclipse
for J in ecf{,.identity,.ssl,.filetransfer,.provider.filetransfer{,.ssl,.httpclient4{,.ssl}}}  ; do
    DIR=$updir%{_libdir}/eclipse/plugins
    [ -e "`ls $DIR/org.eclipse.${J}_*.jar`" ] && ln -s $DIR/org.eclipse.${J}_*.jar ${J}.jar
done
popd

%files core -f .mfiles-core
%{_javadir}/eclipse/*

%files runtime -f .mfiles-runtime

%files sdk -f .mfiles-sdk




%changelog
* Mon May 15 2017 neoclust <neoclust> 3.13.3-1.mga6
+ Revision: 1101831
- New version

* Fri Sep 16 2016 daviddavid <daviddavid> 3.13.2-1.mga6
+ Revision: 1053366
- Update to latest release 3.13.2
- Set qualifiers to source-modification-time instead of build-time, to
  eliminate descrepancies between architectures
- Add SDK package for sources

* Sun Jul 17 2016 neoclust <neoclust> 3.13.1-2.mga6
+ Revision: 1042379
- Do a clean rebuild for armv5

* Fri Apr 29 2016 daviddavid <daviddavid> 3.13.1-1.mga6
+ Revision: 1007762
- Update to latest release
- Add a new subpackage to ship additional ECF bundles
- Avoid embedding versions of external deps in features. This avoids the need to
  rebuild when a dependency changes version.

* Wed Mar 02 2016 neoclust <neoclust> 3.12.0-6.mga6
+ Revision: 982450
- Second rebuild of the java stack

* Sun Feb 28 2016 neoclust <neoclust> 3.12.0-5.mga6
+ Revision: 980528
- Rebuild on core
- First rebuild of the java stack
- sync package eclipse-ecf with fedora

  + umeabot <umeabot>
    - Mageia 6 Mass Rebuild

* Fri Dec 26 2014 pterjan <pterjan> 3.9.1-2.mga5
+ Revision: 806307
- Clean rebuild
- Sync with Fedora 21 (update to 3.9.1)
- Restore

  + sander85 <sander85>
    - Depends on broken java stack

* Wed Oct 15 2014 umeabot <umeabot> 3.6.1-4.mga5
+ Revision: 750316
- Second Mageia 5 Mass Rebuild

* Tue Sep 16 2014 umeabot <umeabot> 3.6.1-3.mga5
+ Revision: 678935
- Mageia 5 Mass Rebuild

* Tue Oct 22 2013 umeabot <umeabot> 3.6.1-2.mga4
+ Revision: 542157
- Mageia 4 Mass Rebuild

* Mon Oct 14 2013 dmorgan <dmorgan> 3.6.1-1.mga4
+ Revision: 497007
- New version

* Wed Sep 25 2013 dmorgan <dmorgan> 3.6.0-2.mga4
+ Revision: 485936
- rhbz#974112: Remove versions and timestamps from ECF

* Wed Sep 25 2013 dmorgan <dmorgan> 3.6.0-1.mga4
+ Revision: 485788
- New upstream release

* Tue Sep 24 2013 dmorgan <dmorgan> 3.5.7-0.8.mga4
+ Revision: 485688
- Drop v3 httpclient.
- Make dependency to commons loggigng less strict

* Tue Sep 24 2013 dmorgan <dmorgan> 3.5.7-0.7.mga4
+ Revision: 485323
- Do not drop v3 httpclient yet

* Tue Sep 24 2013 dmorgan <dmorgan> 3.5.7-0.5.mga4
+ Revision: 485288
- New version

* Tue Sep 24 2013 dmorgan <dmorgan> 3.5.6-8.mga4
+ Revision: 484872
- Rebuild against latest eclipse

* Sat Jan 19 2013 dmorgan <dmorgan> 3.5.6-7.mga3
+ Revision: 389606
- Rebuild against fixed eclipse

* Fri Jan 11 2013 umeabot <umeabot> 3.5.6-6.mga3
+ Revision: 349371
- Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild

* Thu Dec 06 2012 dmorgan <dmorgan> 3.5.6-5.mga3
+ Revision: 327134
- Filter out requires on osgi

* Sat Sep 15 2012 dmorgan <dmorgan> 3.5.6-4.mga3
+ Revision: 294051
- Rebuild against new eclipse
- imported package eclipse-ecf


* Mon Aug 27 2012 Krzysztof Daniel <kdaniel@redhat.com> 3.5.6-3
- Don't duplicate org.apache* plugins
- Use context qualifier to avoid constant feature version changes.

* Wed Aug 8 2012 Krzysztof Daniel <kdaniel@redhat.com> 3.5.6-2
- Review issues fixed.

* Wed Aug 8 2012 Krzysztof Daniel <kdaniel@redhat.com> 3.5.6-1
- Initial packaging.