From e909b5b3f1eb4718e5096cdb4824b15e5eb1ef85 Mon Sep 17 00:00:00 2001 From: Mat Booth Date: Sep 29 2015 22:24:29 +0000 Subject: Update to Mars.1 release - Build with maven/tycho - Add tests package --- diff --git a/.gitignore b/.gitignore index 606d2a3..de62a59 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ /*.rpm /noarch +/x86_64 /.build-*.log /org.eclipse.emf-*.tar.xz /org.eclipse.emf-*/ diff --git a/eclipse-emf-build-docs.patch b/eclipse-emf-build-docs.patch deleted file mode 100644 index 946669b..0000000 --- a/eclipse-emf-build-docs.patch +++ /dev/null @@ -1,7 +0,0 @@ ---- features/org.eclipse.emf.sdk-feature/build.properties.old 2011-09-15 10:35:00.000000000 -0400 -+++ features/org.eclipse.emf.sdk-feature/build.properties 2011-09-15 10:35:39.000000000 -0400 -@@ -2,3 +2,4 @@ - feature.properties,\ - eclipse_update_120.jpg - generate.feature@org.eclipse.emf.source=org.eclipse.emf.sdk, exclude@org.eclipse.emf.doc, exclude@org.eclipse.emf.example.installer, exclude@org.eclipse.emf.mapping.ecore, exclude@org.eclipse.emf.mapping.ecore.editor -+generate.feature@org.eclipse.emf.doc.source=org.eclipse.emf.doc diff --git a/eclipse-emf-fix-missing-index.patch b/eclipse-emf-fix-missing-index.patch deleted file mode 100644 index 9e71a02..0000000 --- a/eclipse-emf-fix-missing-index.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- doc/org.eclipse.emf.doc/build.properties.bak 2012-03-29 09:25:16.000000000 +0200 -+++ doc/org.eclipse.emf.doc/build.properties 2012-04-16 09:41:01.884130200 +0200 -@@ -25,4 +25,5 @@ - modeling32.png,\ - plugin.properties,\ - plugin.xml,\ -- toc.xml -+ toc.xml, \ -+ index/ ---- doc/org.eclipse.emf.doc/customBuildCallbacks.xml.bak 2012-03-29 09:25:16.000000000 +0200 -+++ doc/org.eclipse.emf.doc/customBuildCallbacks.xml 2012-04-16 14:33:51.571719004 +0200 -@@ -26,7 +26,7 @@ - - - -- -+ - - - diff --git a/eclipse-emf.spec b/eclipse-emf.spec index 84d25d5..1ff5de3 100644 --- a/eclipse-emf.spec +++ b/eclipse-emf.spec @@ -2,28 +2,37 @@ # libdir by the platform, but we have no natives, so suppress debuginfo %global debug_package %{nil} -%global eclipse_dropin %{_datadir}/eclipse/dropins +%global git_tag R2_11_1 -# 2.11.0 was released but not tagged in yet in git -%global git_tag 01f4d4dcaf49f62a70bc8272852638adb1dbc206 +%if 0%{?fedora} >= 24 +%global droplets droplets +%else +%global droplets dropins +%endif Name: eclipse-emf -Version: 2.11.0 -Release: 4%{?dist} +Version: 2.11.1 +Release: 1%{?dist} Summary: Eclipse Modeling Framework (EMF) Eclipse plug-in License: EPL URL: http://www.eclipse.org/modeling/emf/ Source0: http://git.eclipse.org/c/emf/org.eclipse.emf.git/snapshot/org.eclipse.emf-%{git_tag}.tar.xz +# This is a template used by tycho for generating parent pom +Source1: parent-pom.xml # look inside correct directory for platform docs Patch0: eclipse-emf-platform-docs-location.patch -# Build docs correctly -Patch1: eclipse-emf-build-docs.patch -Patch2: eclipse-emf-fix-missing-index.patch +# Include documentation search index, exclude non-existing files +Patch1: fix-build-properties.patch +# Fix test dependency on missing RAP bundles +Patch2: remove-rap-dependency.patch -BuildRequires: java-devel -BuildRequires: eclipse-pde >= 1:4.4.0 +BuildRequires: tycho >= 0.23.0 +BuildRequires: tycho-extras >= 0.23.0 +BuildRequires: eclipse-filesystem +BuildRequires: eclipse-pde +BuildRequires: eclipse-xsd %description The Eclipse Modeling Framework (EMF) allows developers to build tools and @@ -33,12 +42,9 @@ 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. -# TODO: ODA, GWT and RAP components are not packaged. - %package core Epoch: 1 Summary: Eclipse EMF Core -Requires: java-headless Requires: eclipse-filesystem %description core @@ -46,7 +52,6 @@ EMF bundles required by eclipse-platform. %package runtime Summary: Eclipse Modeling Framework (EMF) Eclipse plug-in -Requires: eclipse-platform >= 1:4.4.0 # Obsoletes/provides added in F22 Obsoletes: %{name} < %{version}-%{release} @@ -62,10 +67,16 @@ 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 tests +Summary: Eclipse EMF Tests + +BuildArch: noarch + +%description tests +Tests for the Eclipse Modeling Framework (EMF) plug-in. + %package sdk Summary: Eclipse EMF SDK -Requires: eclipse-pde >= 1:4.4.0 -Requires: %{name}-runtime = %{version}-%{release} BuildArch: noarch @@ -93,61 +104,83 @@ find . -type f -name "*.class" -exec rm {} \; %patch1 %patch2 -mv {features,plugins,doc,examples}/* . -rm -rf features plugins doc examples - # Fix spurious exec perms on license -chmod 0644 org.eclipse.emf.license-feature/rootfiles/epl-v10.html +chmod 0644 features/org.eclipse.emf.license-feature/rootfiles/epl-v10.html + +# TODO: ODA, GWT, Xtext and RAP components are not packaged. +find -maxdepth 2 -type d -name "*.xcore*" -exec rm -r {} \; +find -maxdepth 2 -type d -name "*.xtext*" -exec rm -r {} \; +find -maxdepth 2 -type d -name "*.oda*" -exec rm -r {} \; +find -maxdepth 2 -type d -name "*.rap*" -exec rm -r {} \; +find -maxdepth 2 -type d -name "*.gwt*" -exec rm -r {} \; + +# Insert pom templates +mkdir pom-templates +cp -p %{SOURCE1} pom-templates/. + +# Generate pom.xml +mv doc/org.eclipse.emf.examples.jet.article2 examples +xmvn -o org.eclipse.tycho:tycho-pomgenerator-plugin:generate-poms -DgroupId=org.eclipse.emf +find features -name pom.xml -exec sed -i -e 's/^ \(.*\)\1.features\(.*\)\1.tests\(.*\)\1.examples\(.*\)\1.doceclipse-runprocess-sources-consolelog -debug -application org.eclipse.ant.core.antRunner -quiet -buildfile buildDoc.xmllunap2http://download.eclipse.org/releases/lunaorg.eclipse.ant.coreeclipse-pluginorg.apache.anteclipse-pluginorg.eclipse.help.baseeclipse-plugin" + +# Remove broken refs to source bundles +%pom_xpath_remove "includes[@id='org.eclipse.emf.source']" features/org.eclipse.emf.sdk-feature/feature.xml +%pom_xpath_remove "includes[@id='org.eclipse.emf.doc.source']" features/org.eclipse.emf.sdk-feature/feature.xml +%pom_xpath_remove "includes[@id='org.eclipse.emf.examples.source']" examples/org.eclipse.emf.examples-feature/feature.xml + +# Disable modules unneeded for tycho build +%pom_disable_module 'features/org.eclipse.emf.all-feature' +%pom_disable_module 'releng/org.eclipse.emf.build-feature' +%pom_disable_module 'releng/org.eclipse.emf.base.build-feature' + +%mvn_package "::pom::" __noinstall +%mvn_package "::jar:{sources,sources-feature}:" sdk +%mvn_package ":org.eclipse.emf.{sdk,example.installer}" sdk +%mvn_package "org.eclipse.emf.doc:" sdk +%mvn_package "org.eclipse.emf.features:org.eclipse.emf.{base,common,ecore}" core +%mvn_package "org.eclipse.emf:org.eclipse.emf.{common,ecore,ecore.change,ecore.xmi}" core +%mvn_package "org.eclipse.emf.tests:" tests +%mvn_package "org.eclipse.emf.examples:" examples +%mvn_package ":" runtime %build -# Note: We use forceContextQualifier because the docs plugins use custom build -# scripts and don't work otherwise. -OPTIONS="-DjavacTarget=1.5 -DjavacSource=1.5 -DforceContextQualifier=$(date +v%Y%m%d-%H00)" +%mvn_build -f -j -- -DforceContextQualifier=$(date -u +v%Y%m%d-%H00) + +%install +%mvn_install -# Work around pdebuild entering/leaving symlink it is unaware of. -ln -s %{_builddir}/org.eclipse.emf-%{git_tag}/org.eclipse.emf.license-feature \ - %{_builddir}/org.eclipse.emf-%{git_tag}/org.eclipse.emf.license +# Move to libdir due to being part of core platform +install -d -m 755 %{buildroot}%{_libdir}/eclipse +mv %{buildroot}%{_datadir}/eclipse/%{droplets}/emf-core/eclipse/{plugins,features} %{buildroot}%{_libdir}/eclipse +rm -r %{buildroot}%{_datadir}/eclipse/%{droplets}/emf-core -# Build core & runtime features, docs & source features, example features -eclipse-pdebuild -f org.eclipse.emf -a "$OPTIONS" -eclipse-pdebuild -f org.eclipse.emf.sdk -a "$OPTIONS" -eclipse-pdebuild -f org.eclipse.emf.examples -a "$OPTIONS" +# Fixup metadata +sed -i -e 's|%{_datadir}/eclipse/%{droplets}/emf-core/eclipse|%{_libdir}/eclipse|' %{buildroot}%{_datadir}/maven-metadata/eclipse-emf-core.xml +sed -i -e 's|%{_datadir}/eclipse/%{droplets}/emf-core/eclipse/features/|%{_libdir}/eclipse/features/|' \ + -e 's|%{_datadir}/eclipse/%{droplets}/emf-core/eclipse/plugins/|%{_libdir}/eclipse/plugins/|' .mfiles-core +sed -i -e '/%{droplets}/d' .mfiles-core -%install -install -d -m 755 %{buildroot}%{eclipse_dropin} -unzip -q -n -d %{buildroot}%{eclipse_dropin}/emf-runtime build/rpmBuild/org.eclipse.emf.zip -unzip -q -n -d %{buildroot}%{eclipse_dropin}/emf-sdk build/rpmBuild/org.eclipse.emf.sdk.zip -unzip -q -n -d %{buildroot}%{eclipse_dropin}/emf-examples build/rpmBuild/org.eclipse.emf.examples.zip - -# The main features are a subset of the sdk feature, so delete duplicates from the sdk feature -(cd %{buildroot}%{eclipse_dropin}/emf-sdk/eclipse/features && ls %{buildroot}%{eclipse_dropin}/emf-runtime/eclipse/features | xargs rm -rf) -(cd %{buildroot}%{eclipse_dropin}/emf-sdk/eclipse/plugins && ls %{buildroot}%{eclipse_dropin}/emf-runtime/eclipse/plugins | xargs rm -rf) - -# Move core features to libdir -install -d -m 755 %{buildroot}%{_libdir}/eclipse/{features,plugins} -mv %{buildroot}%{eclipse_dropin}/emf-runtime/eclipse/features/org.eclipse.emf.common_* %{buildroot}%{_libdir}/eclipse/features -mv %{buildroot}%{eclipse_dropin}/emf-runtime/eclipse/plugins/org.eclipse.emf.common_* %{buildroot}%{_libdir}/eclipse/plugins -mv %{buildroot}%{eclipse_dropin}/emf-runtime/eclipse/features/org.eclipse.emf.ecore_* %{buildroot}%{_libdir}/eclipse/features -mv %{buildroot}%{eclipse_dropin}/emf-runtime/eclipse/plugins/org.eclipse.emf.ecore_* %{buildroot}%{_libdir}/eclipse/plugins -mv %{buildroot}%{eclipse_dropin}/emf-runtime/eclipse/plugins/org.eclipse.emf.ecore.change_* %{buildroot}%{_libdir}/eclipse/plugins -mv %{buildroot}%{eclipse_dropin}/emf-runtime/eclipse/plugins/org.eclipse.emf.ecore.xmi_* %{buildroot}%{_libdir}/eclipse/plugins - -%files core -%{_libdir}/eclipse/features/* -%{_libdir}/eclipse/plugins/* -%doc org.eclipse.emf.license-feature/rootfiles/* - -%files runtime -%{eclipse_dropin}/emf-runtime -%doc org.eclipse.emf.license-feature/rootfiles/* - -%files sdk -%{eclipse_dropin}/emf-sdk - -%files examples -%{eclipse_dropin}/emf-examples +%files core -f .mfiles-core + +%files runtime -f .mfiles-runtime + +%files tests -f .mfiles-tests + +%files sdk -f .mfiles-sdk + +%files examples -f .mfiles-examples %changelog +* Mon Sep 28 2015 Mat Booth - 2.11.1-1 +- Update to Mars.1 release +- Build with maven/tycho +- Add tests package + * Mon Jun 29 2015 Mat Booth - 2.11.0-4 - Remove incomplete SCL macros diff --git a/fix-build-properties.patch b/fix-build-properties.patch new file mode 100644 index 0000000..1e41a17 --- /dev/null +++ b/fix-build-properties.patch @@ -0,0 +1,67 @@ +--- doc/org.eclipse.emf.doc/build.properties.bak 2012-03-29 09:25:16.000000000 +0200 ++++ doc/org.eclipse.emf.doc/build.properties 2012-04-16 09:41:01.884130200 +0200 +@@ -25,4 +25,5 @@ + modeling32.png,\ + plugin.properties,\ + plugin.xml,\ +- toc.xml ++ toc.xml, \ ++ index/ +--- doc/org.eclipse.emf.cheatsheets/build.properties.orig 2015-09-29 11:32:16.116244064 +0100 ++++ doc/org.eclipse.emf.cheatsheets/build.properties 2015-09-29 11:32:25.431081492 +0100 +@@ -3,8 +3,7 @@ + plugin.properties,\ + plugin.xml,\ + META-INF/,\ +- cheatsheets/,\ +- archive*/ ++ cheatsheets/ + src.includes = about.html + output.. = bin/ + exclude.. = **/doc-files/** +--- features/org.eclipse.emf.license-feature/build.properties.orig 2015-09-29 12:14:58.987195588 +0100 ++++ features/org.eclipse.emf.license-feature/build.properties 2015-09-29 12:15:28.722697864 +0100 +@@ -1,5 +1,6 @@ + bin.includes = feature.xml,\ + feature.properties,\ ++ build.properties,\ + epl-v10.html,\ + license.html + src.includes = epl-v10.html,\ +--- doc/org.eclipse.emf.doc-feature/build.properties.orig 2015-09-29 12:11:00.782182794 +0100 ++++ doc/org.eclipse.emf.doc-feature/build.properties 2015-09-29 12:11:06.386088983 +0100 +@@ -1,3 +1,2 @@ + bin.includes = feature.xml,\ +- feature.properties,\ +- eclipse_update_120.jpg ++ feature.properties +--- features/org.eclipse.emf-feature/build.properties.orig 2015-09-29 13:27:38.798516331 +0100 ++++ features/org.eclipse.emf-feature/build.properties 2015-09-29 13:27:45.544400091 +0100 +@@ -1,3 +1,2 @@ + bin.includes = feature.xml,\ +- feature.properties,\ +- eclipse_update_120.jpg ++ feature.properties +--- examples/org.eclipse.emf.examples-feature/build.properties.orig 2015-09-29 13:27:08.820032981 +0100 ++++ examples/org.eclipse.emf.examples-feature/build.properties 2015-09-29 13:27:30.060666926 +0100 +@@ -1,4 +1,3 @@ + bin.includes = feature.xml,\ +- feature.properties,\ +- eclipse_update_120.jpg ++ feature.properties + generate.feature@org.eclipse.emf.examples.source=org.eclipse.emf.examples, exclude@org.eclipse.emf.activities +--- tests/org.eclipse.emf.tests-feature/build.properties.orig 2015-09-29 13:29:05.006030686 +0100 ++++ tests/org.eclipse.emf.tests-feature/build.properties 2015-09-29 13:29:11.606916931 +0100 +@@ -1,3 +1,2 @@ + bin.includes = feature.xml,\ +- feature.properties,\ +- eclipse_update_120.jpg ++ feature.properties +--- features/org.eclipse.emf.sdk-feature/build.properties.orig 2015-09-29 14:14:21.496216023 +0100 ++++ features/org.eclipse.emf.sdk-feature/build.properties 2015-09-29 14:14:29.006086601 +0100 +@@ -1,4 +1,3 @@ + bin.includes = feature.xml,\ +- feature.properties,\ +- eclipse_update_120.jpg ++ feature.properties + generate.feature@org.eclipse.emf.source=org.eclipse.emf.sdk, exclude@org.eclipse.emf.doc, exclude@org.eclipse.emf.example.installer, exclude@org.eclipse.emf.mapping.ecore, exclude@org.eclipse.emf.mapping.ecore.editor diff --git a/parent-pom.xml b/parent-pom.xml new file mode 100644 index 0000000..5f29c4a --- /dev/null +++ b/parent-pom.xml @@ -0,0 +1,67 @@ + + + 4.0.0 + pom + + + + org.eclipse.tycho.extras + tycho-source-feature-plugin + 0.23.0 + + + source-feature + + source-feature + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + org.eclipse.tycho + tycho-source-plugin + 0.23.0 + + + plugin-source + + plugin-source + + + + + + + diff --git a/remove-rap-dependency.patch b/remove-rap-dependency.patch new file mode 100644 index 0000000..ab06216 --- /dev/null +++ b/remove-rap-dependency.patch @@ -0,0 +1,12 @@ +--- tests/org.eclipse.emf.test.edit/META-INF/MANIFEST.MF.orig 2015-09-29 11:26:38.307139818 +0100 ++++ tests/org.eclipse.emf.test.edit/META-INF/MANIFEST.MF 2015-09-29 11:26:49.553943534 +0100 +@@ -16,8 +16,7 @@ + org.eclipse.emf.edit, + org.junit;bundle-version="[4.11.0,5.0.0)", + org.eclipse.emf.test.common, +- org.eclipse.ui;resolution:=optional, +- org.eclipse.rap.ui;resolution:=optional ++ org.eclipse.ui + Eclipse-LazyStart: true + Bundle-ActivationPolicy: lazy + Import-Package: org.eclipse.emf.common.ui, diff --git a/sources b/sources index 6f2576d..03534ca 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -9c5d9f649d93a2565b7bad95de825689 org.eclipse.emf-01f4d4dcaf49f62a70bc8272852638adb1dbc206.tar.xz +df4ba9269561d8e6225cc138ed64058d org.eclipse.emf-R2_11_1.tar.xz