package init

This commit is contained in:
lyn1001 2020-08-28 14:12:35 +08:00
parent 4eec6cce09
commit f2e40cc48a
8 changed files with 229 additions and 0 deletions

157
eclipse-emf.spec Normal file
View File

@ -0,0 +1,157 @@
%global _eclipsedir %{_prefix}/lib/eclipse
%global emf_tag 666f438f84c97358ce33fd4c1f615212cdd419f9
%global xsd_tag a5f53126aa28435e3f44bde6700372c8559127de
%bcond_with bootstrap
Name: eclipse-emf
Version: 2.16.0
Release: 1
Summary: EMF and XSD Eclipse plug-ins
License: EPL-2.0
URL: http://www.eclipse.org/modeling/emf/
Source0: http://git.eclipse.org/c/emf/org.eclipse.emf.git/snapshot/org.eclipse.emf-%{emf_tag}.tar.gz
Source1: http://git.eclipse.org/c/xsd/org.eclipse.xsd.git/snapshot/org.eclipse.xsd-%{xsd_tag}.tar.gz
Patch0: remove-nebula-dep.patch
Patch1: remove-network-tests.patch
Patch2: remove-timezone-test.patch
Patch3: remove-unnecessary-imports.patch
BuildRequires: tycho tycho-extras
%if %{without bootstrap}
BuildRequires: eclipse-pde
%endif
BuildArch: noarch
%description
The Eclipse Modeling Framework (EMF) and XML Schema Definition (XSD) plug-ins.
%package core
Epoch: 1
Summary: Eclipse EMF Core Bundles
%description core
Core EMF bundles required by the Eclipse platform.
%if %{without bootstrap}
%package runtime
Summary: Eclipse Modeling Framework (EMF) Eclipse plug-in
%description runtime
The Eclipse Modeling Framework (EMF) allows developers to build tools and
other applications based on a structured data model. From a model
specification described in XMI, EMF provides tools and run-time support to
produce a set of Java classes for the model, along with a set of adapter
classes that enable viewing and command-based editing of the model, and a
basic editor.
%package xsd
Summary: XML Schema Definition (XSD) Eclipse plug-in
Obsoletes: eclipse-xsd < %{version}-%{release}
Provides: eclipse-xsd = %{version}-%{release}
%description xsd
The XML Schema Definition (XSD) plug-in is a library that provides an API for
manipulating the components of an XML Schema as described by the W3C XML
Schema specifications, as well as an API for manipulating the DOM-accessible
representation of XML Schema as a series of XML documents.
%package sdk
Summary: Eclipse EMF and XSD SDK
Obsoletes: %{name}-tests < %{version}-%{release}
Obsoletes: %{name}-examples < %{version}-%{release}
Obsoletes: eclipse-xsd-examples < %{version}-%{release}
Obsoletes: eclipse-xsd-sdk < %{version}-%{release}
Provides: eclipse-xsd-sdk = %{version}-%{release}
%description sdk
Documentation and developer resources for the Eclipse Modeling Framework
(EMF) plug-in and XML Schema Definition (XSD) plug-in.
%endif
%prep
%setup -c -T -q -a 0 -a 1
mv org.eclipse.emf-%{emf_tag}/ org.eclipse.emf/
mv org.eclipse.xsd-%{xsd_tag}/ org.eclipse.xsd/
%patch0
%patch1
%patch2
%patch3
pushd org.eclipse.emf
sed -i -e '/org.eclipse.emf.gwt/d' releng/org.eclipse.emf.parent/{plugins,features}/pom.xml
sed -i -e '/org.eclipse.emf.oda/d' releng/org.eclipse.emf.parent/{plugins,features}/pom.xml
sed -i -e '/org.eclipse.emf.rap/d' releng/org.eclipse.emf.parent/{plugins,features}/pom.xml
sed -i -e '/codegen.ecore.xtext/d' releng/org.eclipse.emf.parent/{plugins,features}/pom.xml
sed -i -e '/ecore.xcore/d' releng/org.eclipse.emf.parent/{plugins,features}/pom.xml
sed -i -e '/test.edit.ui.rap/d' releng/org.eclipse.emf.parent/{plugins,features}/pom.xml
%pom_xpath_remove "plugin[@id='org.eclipse.emf.test.edit.ui.rap']" tests/org.eclipse.emf.tests-feature/feature.xml
%pom_disable_module "../../../examples/org.eclipse.emf.examples-feature" releng/org.eclipse.emf.parent/features
%pom_disable_module "../../../../org.eclipse.xsd/features/org.eclipse.xsd.example-feature" releng/org.eclipse.emf.parent/features
sed -i -e '/<module>.*examples/d' releng/org.eclipse.emf.parent/plugins/pom.xml
%pom_xpath_remove "plugin[@id='org.eclipse.emf.test.examples']" tests/org.eclipse.emf.tests-feature/feature.xml
%pom_disable_module "tp" releng/org.eclipse.emf.parent
%pom_disable_module "../org.eclipse.emf.site" releng/org.eclipse.emf.parent
%pom_disable_module '../../../features/org.eclipse.emf.all-feature' releng/org.eclipse.emf.parent/features
%pom_remove_plugin :target-platform-configuration releng/org.eclipse.emf.parent
%pom_remove_dep :tycho-sourceref-jgit releng/org.eclipse.emf.parent
%pom_remove_dep :tycho-buildtimestamp-jgit releng/org.eclipse.emf.parent
%pom_xpath_remove 'pom:configuration/pom:timestampProvider' releng/org.eclipse.emf.parent
%pom_xpath_remove 'pom:configuration/pom:jgit.ignore' releng/org.eclipse.emf.parent
%pom_xpath_remove 'pom:configuration/pom:jgit.dirtyWorkingTree' releng/org.eclipse.emf.parent
%pom_xpath_remove 'pom:configuration/pom:sourceReferences' releng/org.eclipse.emf.parent
%if %{with bootstrap}
%pom_xpath_replace "pom:modules" "<modules>
<module>../../../features/org.eclipse.emf.base-feature</module>
<module>../../../features/org.eclipse.emf.license-feature</module>
<module>../../../features/org.eclipse.emf.common-feature</module>
<module>../../../features/org.eclipse.emf.ecore-feature</module>
</modules>" releng/org.eclipse.emf.parent/features
%pom_xpath_replace "pom:modules" "<modules>
<module>../../../plugins/org.eclipse.emf.common</module>
<module>../../../plugins/org.eclipse.emf.ecore.change</module>
<module>../../../plugins/org.eclipse.emf.ecore.xmi</module>
<module>../../../plugins/org.eclipse.emf.ecore</module>
</modules>" releng/org.eclipse.emf.parent/plugins
%endif
popd
%mvn_package "::pom::" __noinstall
%mvn_package ":org.eclipse.{emf,xsd}.license" __noinstall
%mvn_package ":org.eclipse.emf.tests" __noinstall
%mvn_package ":org.eclipse.emf.test.*" __noinstall
%if %{with bootstrap}
%mvn_package ":::{sources,sources-feature}:" __noinstall
%else
%mvn_package ":::{sources,sources-feature}:" sdk
%endif
%mvn_package ":org.eclipse.emf.{sdk,doc,cheatsheets,example.installer}" sdk
%mvn_package ":org.eclipse.xsd.{sdk,doc,cheatsheets,example.installer}" sdk
%mvn_package "org.eclipse.emf.features:org.eclipse.emf.{base,common,ecore}"
%mvn_package "org.eclipse.emf:org.eclipse.emf.{common,ecore,ecore.change,ecore.xmi}"
%mvn_package ":org.eclipse.xsd*" xsd
%mvn_package ":org.eclipse.emf.mapping.xsd**" xsd
%mvn_package ":" runtime
%build
QUALIFIER=$(date -u -d"$(stat --format=%y %{SOURCE0})" +v%Y%m%d-%H%M)
%mvn_build -j -- -f org.eclipse.emf/pom.xml -DforceContextQualifier=$QUALIFIER -Dmaven.test.failure.ignore=true
%install
%mvn_install
install -d -m 755 %{buildroot}%{_eclipsedir}
mv %{buildroot}%{_datadir}/eclipse/droplets/emf/{plugins,features} %{buildroot}%{_eclipsedir}
rm -r %{buildroot}%{_datadir}/eclipse/droplets/emf
sed -i -e 's|%{_datadir}/eclipse/droplets/emf|%{_eclipsedir}|' %{buildroot}%{_datadir}/maven-metadata/eclipse-emf.xml
sed -i -e 's|%{_datadir}/eclipse/droplets/emf/features/|%{_eclipsedir}/features/|' \
-e 's|%{_datadir}/eclipse/droplets/emf/plugins/|%{_eclipsedir}/plugins/|' .mfiles
sed -i -e '/droplets/d' .mfiles
for del in $( (cd %{buildroot}%{_eclipsedir}/plugins && ls | grep -v -e '^org\.eclipse\.emf' ) ) ; do
rm %{buildroot}%{_eclipsedir}/plugins/$del
sed -i -e "/$del/d" .mfiles
done
%files core -f .mfiles
%license org.eclipse.emf/features/org.eclipse.emf.license-feature/*.html
%if %{without bootstrap}
%files runtime -f .mfiles-runtime
%files xsd -f .mfiles-xsd
%files sdk -f .mfiles-sdk
%endif
%changelog
* Thu Aug 27 2020 yanan li <liyanan032@huawei.com> - 2.16.0-1
- Package init

4
eclipse-emf.yaml Normal file
View File

@ -0,0 +1,4 @@
version_control: git
src_repo: http://git.eclipse.org/r/emf/org.eclipse.emf.git
tag_prefix: "R2_"
seperator: "_"

12
remove-nebula-dep.patch Normal file
View File

@ -0,0 +1,12 @@
--- org.eclipse.emf/plugins/org.eclipse.emf.edit.ui/META-INF/MANIFEST.MF.orig 2018-05-09 19:41:37.559144126 +0100
+++ org.eclipse.emf/plugins/org.eclipse.emf.edit.ui/META-INF/MANIFEST.MF 2018-05-09 19:41:44.098112719 +0100
@@ -22,8 +22,7 @@
org.eclipse.emf.common.ui;bundle-version="[2.15.0,3.0.0)";visibility:=reexport,
org.eclipse.core.resources;bundle-version="[3.6.0,4.0.0)";resolution:=optional,
org.eclipse.ui.ide;bundle-version="[3.6.0,4.0.0)";resolution:=optional,
- org.eclipse.jface.text;bundle-version="[3.6.0,4.0.0)";resolution:=optional,
- org.eclipse.nebula.widgets.cdatetime;bundle-version="[1.0.0,2.0.0)";resolution:=optional;x-installation:=greedy
+ org.eclipse.jface.text;bundle-version="[3.6.0,4.0.0)";resolution:=optional
Eclipse-LazyStart: true
Bundle-ActivationPolicy: lazy
Automatic-Module-Name: org.eclipse.emf.edit.ui

View File

@ -0,0 +1,14 @@
--- org.eclipse.emf/tests/org.eclipse.emf.test.core/src/org/eclipse/emf/test/core/ecore/URIConverterTest.java.orig 2018-05-10 14:41:06.000058437 +0100
+++ org.eclipse.emf/tests/org.eclipse.emf.test.core/src/org/eclipse/emf/test/core/ecore/URIConverterTest.java 2018-05-10 14:41:11.426036461 +0100
@@ -77,11 +77,6 @@
assertEquals(contentsFromUncompressedFile, contents);
new File(URI.createURI(uri.authority().replaceAll("!", "")).toFileString()).delete();
- // Reads the data.zip file from our git repository using http
- //
- uri = URI.createURI("archive:http://git.eclipse.org/c/emf/org.eclipse.emf.git/plain/tests/org.eclipse.emf.test.core/data/data.zip!/%66ile.txt");
- contents = readFile(uriConverter.createInputStream(uri));
- assertEquals(contentsFromUncompressedFile, contents);
}
protected String readFile(InputStream inputStream) throws IOException

View File

@ -0,0 +1,10 @@
--- org.eclipse.emf/tests/org.eclipse.emf.test.core/src/org/eclipse/emf/test/core/ecore/DateConversionDelegateTest.java.orig 2018-05-10 14:55:04.625799824 +0100
+++ org.eclipse.emf/tests/org.eclipse.emf.test.core/src/org/eclipse/emf/test/core/ecore/DateConversionDelegateTest.java 2018-05-10 14:55:50.271625747 +0100
@@ -222,6 +222,7 @@
}
@Test
+ @org.junit.Ignore
public void testDateConversion()
{
for (EClassifier eClassifier : DATE_CONVERSION_PACKAGE.getEClassifiers())

View File

@ -0,0 +1,32 @@
--- org.eclipse.emf/plugins/org.eclipse.emf.ecore/META-INF/MANIFEST.MF.orig 2018-05-10 16:02:28.482659996 +0100
+++ org.eclipse.emf/plugins/org.eclipse.emf.ecore/META-INF/MANIFEST.MF 2018-05-10 16:13:55.087669818 +0100
@@ -26,12 +26,7 @@
org.eclipse.core.resources;bundle-version="[3.6.0,4.0.0)";resolution:=optional
Import-Package: javax.crypto,
javax.crypto.spec,
- javax.xml.datatype,
- javax.xml.namespace,
- javax.xml.parsers,
- org.osgi.framework;version="[1.5.0,2.0.0)",
- org.xml.sax,
- org.xml.sax.helpers
+ org.osgi.framework;version="[1.5.0,2.0.0)"
Eclipse-BuddyPolicy: dependent
Eclipse-LazyStart: true
Bundle-ActivationPolicy: lazy
--- org.eclipse.emf/plugins/org.eclipse.emf.ecore.xmi/META-INF/MANIFEST.MF.orig 2018-05-10 16:03:20.826431277 +0100
+++ org.eclipse.emf/plugins/org.eclipse.emf.ecore.xmi/META-INF/MANIFEST.MF 2018-05-10 16:13:18.912825246 +0100
@@ -14,12 +14,6 @@
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.6.0,4.0.0)";resolution:=optional;x-installation:=greedy,
org.eclipse.emf.ecore;bundle-version="[2.15.0,3.0.0)";visibility:=reexport
Eclipse-LazyStart: true
-Import-Package: javax.xml.namespace,
- javax.xml.parsers,
- org.osgi.framework;version="[1.5.0,2.0.0)",
- org.w3c.dom,
- org.xml.sax,
- org.xml.sax.ext,
- org.xml.sax.helpers
+Import-Package: org.osgi.framework;version="[1.5.0,2.0.0)"
Bundle-ActivationPolicy: lazy
Automatic-Module-Name: org.eclipse.emf.ecore.xmi