From 09282333522763f8552402755d50f3f439639e94 Mon Sep 17 00:00:00 2001 From: Roland Grunberg Date: Feb 09 2016 17:18:32 +0000 Subject: Update to use proper xmvn provided macros. - Fix CDT GDB Standalone Debugger --- diff --git a/eclipse-cdt-config-ini.patch b/eclipse-cdt-config-ini.patch index 3fcf174..23acd04 100644 --- a/eclipse-cdt-config-ini.patch +++ b/eclipse-cdt-config-ini.patch @@ -7,6 +7,6 @@ diff -up ./debug/org.eclipse.cdt.debug.application/scripts/config.ini.fix ./debu osgi.framework=file\:$eclipse.home$/plugins/$osgi.jar$ -osgi.bundles=org.eclipse.cdt.core.linux,org.eclipse.linuxtools.cdt.libhover.library.docs,org.eclipse.cdt.core.native,org.eclipse.core.net,org.eclipse.e4.core.di.extensions,org.eclipse.cdt.debug.ui.memory.floatingpoint,org.eclipse.ui.editors,org.eclipse.equinox.ds@1\:start,org.eclipse.search,org.eclipse.text,org.eclipse.jface.databinding,org.eclipse.cdt.debug.ui.memory.search,org.eclipse.debug.core,org.apache.batik.util,org.eclipse.cdt.debug.ui.memory.memorybrowser,org.eclipse.e4.ui.widgets,org.eclipse.cdt.debug.core,org.eclipse.ui,org.eclipse.cdt.make.core,javax.annotation,org.eclipse.equinox.registry,org.eclipse.cdt.dsf.ui,org.eclipse.cdt.debug.ui.memory.traditional,org.eclipse.cdt.ui,org.eclipse.ui.ide,org.w3c.dom.svg,org.eclipse.jface,org.eclipse.ltk.ui.refactoring,org.w3c.dom.smil,org.eclipse.e4.ui.model.workbench,org.eclipse.equinox.bidi,org.eclipse.e4.ui.workbench,org.eclipse.e4.ui.di,org.eclipse.debug.ui,org.eclipse.e4.ui.bindings,org.eclipse.core.contenttype,org.eclipse.e4.ui.workbench.swt,org.eclipse.ui.views,org.eclipse.emf.ecore.change,org.eclipse.equinox.app,org.eclipse.e4.ui.services,org.eclipse.ant.core,org.eclipse.equinox.p2.core,org.eclipse.cdt.core,org.eclipse.cdt.debug.application,org.eclipse.cdt.debug.application.doc,org.eclipse.core.resources,org.eclipse.team.ui,org.eclipse.equinox.common@2\:start,org.eclipse.equinox.p2.engine,org.eclipse.cdt.debug.ui,org.eclipse.ui.views.properties.tabbed,org.eclipse.help,org.eclipse.help.ui,org.eclipse.help.base,org.eclipse.help.webapp,org.eclipse.equinox.jsp.jasper,org.eclipse.equinox.jsp.jasper.registry,org.apache.jasper.glassfish,org.apache.lucene.core,org.apache.lucene.analysis,org.eclipse.equinox.http.jetty,org.eclipse.equinox.http.registry,org.eclipse.jetty.http,org.eclipse.equinox.http.servlet,org.eclipse.jetty.io,org.eclipse.jetty.server,org.eclipse.jetty.servlet,org.eclipse.jetty.util,org.eclipse.jetty.continuation,org.eclipse.jetty.security,javax.servlet.jsp,javax.el,org.eclipse.core.filesystem,org.eclipse.equinox.event,org.eclipse.cdt.dsf.gdb.ui,org.eclipse.ltk.core.refactoring,org.eclipse.cdt.debug.mi.ui,com.ibm.icu,org.eclipse.swt,org.eclipse.core.filebuffers,org.eclipse.e4.ui.workbench.addons.swt,javax.inject,$swt.plugin$,org.eclipse.core.databinding.observable,org.eclipse.core.jobs,org.eclipse.ui.forms,org.eclipse.e4.core.contexts,javax.xml,org.eclipse.core.variables,org.eclipse.ui.navigator,org.eclipse.e4.core.commands,org.eclipse.core.databinding,org.eclipse.core.commands,org.eclipse.ui.workbench,org.eclipse.equinox.util,org.eclipse.cdt.launch,org.w3c.css.sac,org.eclipse.e4.ui.workbench.renderers.swt,org.eclipse.cdt.managedbuilder.core,org.eclipse.jface.text,org.eclipse.cdt.managedbuilder.gnu.ui,org.eclipse.equinox.p2.metadata,org.eclipse.emf.ecore.xmi,org.eclipse.emf.common,org.eclipse.cdt.gdb,org.eclipse.compare.core,$linux.plugin$,org.eclipse.ui.console,org.eclipse.cdt.dsf.gdb,javax.servlet,org.eclipse.equinox.p2.repository,org.eclipse.linuxtools.cdt.libhover.glibc,org.eclipse.equinox.security,org.eclipse.compare,org.eclipse.core.runtime@start,org.eclipse.cdt.dsf,org.eclipse.osgi.services,org.eclipse.e4.ui.workbench3,org.eclipse.equinox.preferences,org.w3c.dom.events,org.eclipse.linuxtools.cdt.libhover,org.eclipse.cdt.debug.mi.core,org.eclipse.ui.navigator.resources,org.eclipse.e4.ui.css.core,org.eclipse.ui.workbench.texteditor,org.eclipse.core.expressions,org.eclipse.e4.ui.css.swt.theme,org.eclipse.core.databinding.property,org.eclipse.emf.ecore,org.eclipse.e4.core.services,org.eclipse.cdt.gdb.ui,org.eclipse.core.runtime.compatibility.registry,org.apache.batik.util.gui,org.eclipse.e4.core.di,$fs.plugin$,org.eclipse.team.core,org.eclipse.cdt.debug.ui.memory.transport,org.eclipse.equinox.p2.metadata.repository,org.eclipse.e4.ui.css.swt,org.apache.batik.css,org.eclipse.e4.emf.xpath,org.apache.commons.jxpath,org.tukaani.xz,org.eclipse.e4.core.di.annotations -osgi.configuration.cascaded=false -+osgi.bundles=org.eclipse.cdt.core.linux,org.eclipse.cdt.core.native,org.eclipse.core.net,org.eclipse.e4.core.di.extensions,org.eclipse.cdt.debug.ui.memory.floatingpoint,org.eclipse.ui.editors,org.eclipse.equinox.ds@1\:start,org.eclipse.search,org.eclipse.text,org.eclipse.jface.databinding,org.eclipse.cdt.debug.ui.memory.search,org.eclipse.debug.core,org.apache.batik.util,org.eclipse.cdt.debug.ui.memory.memorybrowser,org.eclipse.e4.ui.widgets,org.eclipse.cdt.debug.core,org.eclipse.ui,org.eclipse.cdt.make.core,javax.annotation-api,org.eclipse.equinox.registry,org.eclipse.cdt.dsf.ui,org.eclipse.cdt.debug.ui.memory.traditional,org.eclipse.cdt.ui,org.eclipse.ui.ide,org.w3c.dom.svg,org.eclipse.jface,org.eclipse.ltk.ui.refactoring,org.eclipse.e4.ui.model.workbench,org.eclipse.equinox.bidi,org.eclipse.e4.ui.workbench,org.eclipse.e4.ui.di,org.eclipse.debug.ui,org.eclipse.e4.ui.bindings,org.eclipse.core.contenttype,org.eclipse.e4.ui.workbench.swt,org.eclipse.ui.views,org.eclipse.emf.ecore.change,org.eclipse.equinox.app,org.eclipse.e4.ui.services,org.eclipse.ant.core,org.eclipse.equinox.p2.core,org.eclipse.cdt.core,org.eclipse.cdt.debug.application,org.eclipse.cdt.debug.application.doc,org.eclipse.core.resources,org.eclipse.team.ui,org.eclipse.equinox.common@2\:start,org.eclipse.equinox.p2.engine,org.eclipse.cdt.debug.ui,org.eclipse.ui.views.properties.tabbed,org.eclipse.help,org.eclipse.help.ui,org.eclipse.help.base,org.eclipse.help.webapp,org.eclipse.equinox.jsp.jasper,org.eclipse.equinox.jsp.jasper.registry,org.glassfish.web.javax.servlet.jsp,org.apache.lucene.core,org.apache.lucene.analyzers-common,org.eclipse.equinox.http.jetty,org.eclipse.equinox.http.registry,org.eclipse.jetty.http,org.eclipse.equinox.http.servlet,org.eclipse.jetty.io,org.eclipse.jetty.server,org.eclipse.jetty.servlet,org.eclipse.jetty.util,org.eclipse.jetty.continuation,org.eclipse.jetty.security,javax.servlet.jsp,com.sun.el.javax.el,org.eclipse.core.filesystem,org.eclipse.equinox.event,org.eclipse.cdt.dsf.gdb.ui,org.eclipse.ltk.core.refactoring,org.eclipse.cdt.debug.mi.ui,com.ibm.icu,org.eclipse.swt,org.eclipse.core.filebuffers,org.eclipse.e4.ui.workbench.addons.swt,javax.inject,$swt.plugin$,org.eclipse.core.databinding.observable,org.eclipse.core.jobs,org.eclipse.ui.forms,org.eclipse.e4.core.contexts,javax.xml,org.eclipse.core.variables,org.eclipse.ui.navigator,org.eclipse.e4.core.commands,org.eclipse.core.databinding,org.eclipse.core.commands,org.eclipse.ui.workbench,org.eclipse.equinox.util,org.eclipse.cdt.launch,org.w3c.css.sac,org.eclipse.e4.ui.workbench.renderers.swt,org.eclipse.cdt.managedbuilder.core,org.eclipse.jface.text,org.eclipse.cdt.managedbuilder.gnu.ui,org.eclipse.equinox.p2.metadata,org.eclipse.emf.ecore.xmi,org.eclipse.emf.common,org.eclipse.cdt.gdb,org.eclipse.compare.core,$linux.plugin$,org.eclipse.ui.console,org.eclipse.cdt.dsf.gdb,javax.servlet-api,org.eclipse.equinox.p2.repository,org.eclipse.equinox.security,org.eclipse.compare,org.eclipse.core.runtime@start,org.eclipse.cdt.dsf,org.eclipse.osgi.services,org.eclipse.e4.ui.workbench3,org.eclipse.equinox.preferences,org.eclipse.cdt.debug.mi.core,org.eclipse.ui.navigator.resources,org.eclipse.e4.ui.css.core,org.eclipse.ui.workbench.texteditor,org.eclipse.core.expressions,org.eclipse.e4.ui.css.swt.theme,org.eclipse.core.databinding.property,org.eclipse.emf.ecore,org.eclipse.e4.core.services,org.eclipse.cdt.gdb.ui,org.eclipse.core.runtime.compatibility.registry,org.apache.batik.util.gui,org.eclipse.e4.core.di,$fs.plugin$,org.eclipse.team.core,org.eclipse.cdt.debug.ui.memory.transport,org.eclipse.equinox.p2.metadata.repository,org.eclipse.e4.ui.css.swt,org.apache.batik.css,org.eclipse.jdt.core.compiler.batch,org.eclipse.e4.emf.xpath,org.apache.commons.jxpath,org.tukaani.xz,org.eclipse.e4.core.di.annotations ++osgi.bundles=org.eclipse.cdt.core.linux,org.eclipse.cdt.core.native,org.eclipse.core.net,org.eclipse.e4.core.di.extensions,org.eclipse.cdt.debug.ui.memory.floatingpoint,org.eclipse.ui.editors,org.eclipse.equinox.ds@1\:start,org.eclipse.search,org.eclipse.text,org.eclipse.jface.databinding,org.eclipse.cdt.debug.ui.memory.search,org.eclipse.debug.core,org.apache.batik.util,org.eclipse.cdt.debug.ui.memory.memorybrowser,org.eclipse.e4.ui.widgets,org.eclipse.cdt.debug.core,org.eclipse.ui,org.eclipse.cdt.make.core,javax.annotation-api,org.eclipse.equinox.registry,org.eclipse.cdt.dsf.ui,org.eclipse.cdt.debug.ui.memory.traditional,org.eclipse.cdt.ui,org.eclipse.ui.ide,org.w3c.dom.svg,org.eclipse.jface,org.eclipse.ltk.ui.refactoring,org.eclipse.e4.ui.model.workbench,org.eclipse.equinox.bidi,org.eclipse.e4.ui.workbench,org.eclipse.e4.ui.di,org.eclipse.debug.ui,org.eclipse.e4.ui.bindings,org.eclipse.core.contenttype,org.eclipse.e4.ui.workbench.swt,org.eclipse.ui.views,org.eclipse.emf.ecore.change,org.eclipse.equinox.app,org.eclipse.e4.ui.services,org.eclipse.ant.core,org.eclipse.equinox.p2.core,org.eclipse.cdt.core,org.eclipse.cdt.debug.application,org.eclipse.cdt.debug.application.doc,org.eclipse.core.resources,org.eclipse.team.ui,org.eclipse.equinox.common@2\:start,org.eclipse.equinox.p2.engine,org.eclipse.cdt.debug.ui,org.eclipse.ui.views.properties.tabbed,org.eclipse.help,org.eclipse.help.ui,org.eclipse.help.base,org.eclipse.help.webapp,org.eclipse.equinox.jsp.jasper,org.eclipse.equinox.jsp.jasper.registry,org.glassfish.web.javax.servlet.jsp,org.apache.lucene.core,org.apache.lucene.analyzers-common,org.apache.lucene.queryparser,org.apache.lucene.queries,org.apache.lucene.sandbox,org.apache.lucene.analyzers-smartcn,org.eclipse.equinox.http.jetty,org.eclipse.equinox.http.registry,org.eclipse.jetty.http,org.eclipse.equinox.http.servlet,org.eclipse.jetty.io,org.eclipse.jetty.server,org.eclipse.jetty.servlet,org.eclipse.jetty.util,org.eclipse.jetty.continuation,org.eclipse.jetty.security,javax.servlet.jsp,com.sun.el.javax.el,org.eclipse.core.filesystem,org.eclipse.equinox.event,org.eclipse.cdt.dsf.gdb.ui,org.eclipse.ltk.core.refactoring,org.eclipse.cdt.debug.mi.ui,com.ibm.icu,org.eclipse.swt,org.eclipse.core.filebuffers,org.eclipse.e4.ui.workbench.addons.swt,javax.inject,$swt.plugin$,org.eclipse.core.databinding.observable,org.eclipse.core.jobs,org.eclipse.ui.forms,org.eclipse.e4.core.contexts,javax.xml,org.eclipse.core.variables,org.eclipse.ui.navigator,org.eclipse.e4.core.commands,org.eclipse.core.databinding,org.eclipse.core.commands,org.eclipse.ui.workbench,org.eclipse.equinox.util,org.eclipse.cdt.launch,org.w3c.css.sac,org.eclipse.e4.ui.workbench.renderers.swt,org.eclipse.cdt.managedbuilder.core,org.eclipse.jface.text,org.eclipse.cdt.managedbuilder.gnu.ui,org.eclipse.equinox.p2.metadata,org.eclipse.emf.ecore.xmi,org.eclipse.emf.common,org.eclipse.cdt.gdb,org.eclipse.compare.core,$linux.plugin$,org.eclipse.ui.console,org.eclipse.cdt.dsf.gdb,javax.servlet-api,org.eclipse.equinox.p2.repository,org.eclipse.equinox.security,org.eclipse.compare,org.eclipse.core.runtime@start,org.eclipse.cdt.dsf,org.eclipse.osgi.services,org.eclipse.e4.ui.workbench3,org.eclipse.equinox.preferences,org.eclipse.cdt.debug.mi.core,org.eclipse.ui.navigator.resources,org.eclipse.e4.ui.css.core,org.eclipse.ui.workbench.texteditor,org.eclipse.core.expressions,org.eclipse.e4.ui.css.swt.theme,org.eclipse.core.databinding.property,org.eclipse.emf.ecore,org.eclipse.e4.core.services,org.eclipse.cdt.gdb.ui,org.eclipse.core.runtime.compatibility.registry,org.apache.batik.util.gui,org.eclipse.e4.core.di,$fs.plugin$,org.eclipse.team.core,org.eclipse.cdt.debug.ui.memory.transport,org.eclipse.equinox.p2.metadata.repository,org.eclipse.e4.ui.css.swt,org.apache.batik.css,org.eclipse.jdt.core.compiler.batch,org.eclipse.e4.emf.xpath,org.apache.commons.jxpath,org.tukaani.xz,org.eclipse.e4.core.di.annotations,org.eclipse.e4.core.di.annotations,org.apache.xalan,org.apache.xerces,org.apache.xml.resolver,org.apache.xml.serializer +osgi.configuration.cascaded=true osgi.bundles.defaultStartLevel=4 diff --git a/eclipse-cdt.spec b/eclipse-cdt.spec index 46aafe7..edee081 100644 --- a/eclipse-cdt.spec +++ b/eclipse-cdt.spec @@ -5,6 +5,12 @@ %global _enable_debug_packages 0 %global __jar_repack %{nil} +%if 0%{?fedora} >= 24 +%global droplets droplets +%else +%global droplets dropins +%endif + # Change following to 0 to default to no container/remote support when building for # first time in a release...this is needed to build eclipse-linuxtools-docker and # eclipse.remote which are circular dependencies of eclipse-cdt @@ -33,7 +39,7 @@ Epoch: 1 Summary: Eclipse C/C++ Development Tools (CDT) plugin Name: %{?scl_prefix}eclipse-cdt Version: %{majmin}.%{micro} -Release: 6%{?dist} +Release: 7%{?dist} License: EPL and CPL URL: http://www.eclipse.org/cdt @@ -70,7 +76,6 @@ Patch6: %{pkg_name}-exit-code.patch BuildRequires: tycho BuildRequires: tycho-extras -BuildRequires: %{?scl_prefix}eclipse-pde >= 1:4.3.0 BuildRequires: eclipse-license BuildRequires: desktop-file-utils BuildRequires: %{?scl_prefix}lpg-java-compat @@ -211,12 +216,8 @@ cp -r org.eclipse.cdt.core.linux.x86 org.eclipse.cdt.core.linux.%{eclipse_arch} rm -fr org.eclipse.cdt.core.linux.x86 pushd org.eclipse.cdt.core.linux.%{eclipse_arch} sed -i -e 's/x86/%{eclipse_arch}/g' pom.xml -pushd META-INF -sed -i -e 's/x86/%{eclipse_arch}/g' MANIFEST.MF -popd -pushd os/linux -mv x86 %{eclipse_arch} -popd +sed -i -e 's/x86/%{eclipse_arch}/g' META-INF/MANIFEST.MF +mv os/linux/x86 os/linux/%{eclipse_arch} popd popd pushd releng/org.eclipse.cdt.native-feature @@ -281,6 +282,18 @@ done sed -i -e "s|org.junit|org.hamcrest.core, org.junit|g" dsf-gdb/org.eclipse.cdt.tests.dsf.gdb/META-INF/MANIFEST.MF +%mvn_package ::jar:sources: sdk +%mvn_package :*.source sdk +%mvn_package ":*test{,s}*" tests +%mvn_package :*parser* parsers +%mvn_package ":org.eclipse.cdt.*{xlc,xlupc,bupc}*" parsers +%mvn_package :org.eclipse.cdt.arduino* arduino +%mvn_package :org.eclipse.cdt.docker* docker +%mvn_package :org.eclipse.cdt.managedbuilder.llvm* llvm +%mvn_package :org.eclipse.cdt.qt* qt +%mvn_package :org.eclipse.cdt* + + %build export JAVA_HOME=%{java_home} @@ -293,251 +306,129 @@ pushd core/org.eclipse.cdt.core.linux/library make JAVA_HOME="%{java_home}" ARCH=%{eclipse_arch} CC='gcc -D_GNU_SOURCE' popd -xmvn -o -Dtycho.local.keepTarget -Dskip-ppc64le -Dmaven.test.skip=true -Dmaven.repo.local=`pwd`/.m2 install +%mvn_build -j -f -- -Dtycho.local.keepTarget -Dskip-ppc64le %install +%mvn_install -installDir=${RPM_BUILD_ROOT}/%{eclipse_base}/dropins/cdt -testInstallDir=${RPM_BUILD_ROOT}/%{_javadir}/eclipse-cdt-tests/plugins -parsersInstallDir=${installDir}-parsers -%if %{_enable_container_and_remote_support} == 1 -dockerInstallDir=${installDir}-docker -arduinoInstallDir=${installDir}-arduino -%endif -llvmInstallDir=${installDir}-llvm -qtInstallDir=${installDir}-qt -sdkInstallDir=${installDir}-sdk +installDir=${RPM_BUILD_ROOT}/%{eclipse_base}/%{droplets}/cdt binInstallDir=${RPM_BUILD_ROOT}/%{_bindir} manInstallDir=${RPM_BUILD_ROOT}/%{_mandir}/man1 -install -d -m755 $installDir -install -d -m755 $parsersInstallDir -install -d -m755 $llvmInstallDir -install -d -m755 $qtInstallDir -install -d -m755 $sdkInstallDir -install -d -m755 $testInstallDir install -d -m755 $binInstallDir install -d -m755 $manInstallDir -%if %{_enable_container_and_remote_support} == 1 -install -d -m755 $dockerInstallDir -install -d -m755 $arduinoInstallDir -%endif - -# Unzip contents of the cdt repo, removing all but plugins and features -unzip -q -o releng/org.eclipse.cdt.repo/target/org.eclipse.cdt.repo.zip \ --d $installDir/eclipse - -#tests -# We need grep to return non-zero status to skip all non eclipse-test-plugins -set +e -for pom in `find . -name pom.xml`; do - grep -q 'eclipse-test-plugin' ${pom} - if [ $? -eq 0 ]; then - testjar=`ls ${pom/pom.xml/}'target/'*.jar | grep -v sources` - cp ${testjar} $testInstallDir - fi -done -set -e cat << EOF > eclipse-runCDTTestBundles #! /bin/bash -eclipse-runTestBundles %{_javadir}/eclipse-cdt-tests +eclipse-runTestBundles %{_javadir}/cdt-tests EOF install -D -m 755 eclipse-runCDTTestBundles %{buildroot}%{_bindir}/eclipse-runCDTTestBundles -# Unzip CDT Standalone Debug plugin which contains installation scripts for the end-user to use pushd ${installDir}/eclipse/plugins DEBUGAPPLICATIONVERSION=$(ls . | grep org.eclipse.cdt.debug.application_ | sed 's/org.eclipse.cdt.debug.application_//' |sed 's/.jar//') -unzip org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION.jar -d ./org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION -# Copy the jar file inside the folder to work around issue where standalone application cannot be found without a jar file -mv org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION.jar org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/org.eclipse.cdt.debug.application.jar -# Fix the cdtdebug.sh script to hard-code ECLIPSE_HOME and cdt dropins directory -sed -i -e "s,@ECLIPSE_HOME@,%{eclipse_base}," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/cdtdebug.sh -sed -i -e "s,@CDT_DROPINS@,%{eclipse_base}/dropins/cdt/eclipse/plugins," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/cdtdebug.sh -# Fix the dropin bundles to have full paths to their respective jar files as Eclipse start-up won't find them otherwise -PLUGIN=$(ls . | grep org.eclipse.cdt.core.linux_) -sed -i -e "s,org.eclipse.cdt.core.linux\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.core_) -sed -i -e "s,org.eclipse.cdt.core\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.debug.ui.memory.floatingpoint_) -sed -i -e "s,org.eclipse.cdt.debug.ui.memory.floatingpoint\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.make.core_) -sed -i -e "s,org.eclipse.cdt.make.core\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.dsf.ui_) -sed -i -e "s,org.eclipse.cdt.dsf.ui\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.debug.ui.memory.traditional_) -sed -i -e "s,org.eclipse.cdt.debug.ui.memory.traditional\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.ui_) -sed -i -e "s,org.eclipse.cdt.ui\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.core_) -sed -i -e "s,org.eclipse.cdt.core\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.debug.application_) -sed -i -e "s,org.eclipse.cdt.debug.application\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN/org.eclipse.cdt.debug.application.jar\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.debug.application.doc_) -sed -i -e "s,org.eclipse.cdt.debug.application.doc\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.dsf.gdb.ui_) -sed -i -e "s,org.eclipse.cdt.dsf.gdb.ui\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.debug.mi.ui_) -sed -i -e "s,org.eclipse.cdt.debug.mi.ui\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.launch_) -sed -i -e "s,org.eclipse.cdt.launch\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.managedbuilder.core_) -sed -i -e "s,org.eclipse.cdt.managedbuilder.core\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.managedbuilder.gnu.ui_) -sed -i -e "s,org.eclipse.cdt.managedbuilder.gnu.ui\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.gdb_) -sed -i -e "s,org.eclipse.cdt.gdb\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.dsf.gdb_) -sed -i -e "s,org.eclipse.cdt.dsf.gdb\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.dsf_) -sed -i -e "s,org.eclipse.cdt.dsf\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.debug.mi.core_) -sed -i -e "s,org.eclipse.cdt.debug.mi.core\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.gdb.ui_) -sed -i -e "s,org.eclipse.cdt.gdb.ui\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.debug.ui.memory.transport_) -sed -i -e "s,org.eclipse.cdt.debug.ui.memory.transport\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.debug.ui.memory.search_) -sed -i -e "s,org.eclipse.cdt.debug.ui.memory.search\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.debug.ui.memory.memorybrowser_) -sed -i -e "s,org.eclipse.cdt.debug.ui.memory.memorybrowser\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.debug.ui_) -sed -i -e "s,org.eclipse.cdt.debug.ui\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.debug.core_) -sed -i -e "s,org.eclipse.cdt.debug.core\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep org.eclipse.cdt.core.native_) -sed -i -e "s,org.eclipse.cdt.core.native\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -PLUGIN=$(ls . | grep 'org.eclipse.cdt.core.linux\..*.jar' | grep -v source) -sed -i -e "s,\$linux.plugin\$\,,file\\\\:%{eclipse_base}/dropins/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -sed -i -e "s,cp config.ini,cp %{eclipse_base}/dropins/cdt/eclipse/plugins/org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/cdtdebug.sh -sed -i -e "s,cp dev.properties,cp %{eclipse_base}/dropins/cdt/eclipse/plugins/org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/dev.properties," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/cdtdebug.sh -cp org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/cdtdebug.sh $binInstallDir/cdtdebug +pushd org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION +# Create the jar file inside the folder to work around issue where standalone application cannot be found without a jar file +jar -cfmv org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION.jar META-INF/MANIFEST.MF * popd -install -D desktop/eclipse-cdt.desktop $RPM_BUILD_ROOT/%{_datadir}/applications/%{?scl_prefix}eclipse-cdt.desktop -desktop-file-validate $RPM_BUILD_ROOT/%{_datadir}/applications/%{?scl_prefix}eclipse-cdt.desktop - -# man page -cp man/cdtdebug.man $manInstallDir/cdtdebug.1 - -# Unpack all existing feature jars -for x in $installDir/eclipse/features/*.jar; do - dirname=`echo $x | sed -e 's:\\(.*\\)\\.jar:\\1:g'` - mkdir -p $dirname - unzip -q $x -d $dirname - rm $x -done - -# Remove lpgjavaruntime jar file -rm -rf $installDir/eclipse/plugins/net.sourceforge.* - -# Move upc, xlc, and lrparser plugins/features to parsers install area. -mkdir -p $parsersInstallDir/eclipse/features $parsersInstallDir/eclipse/plugins -mv $installDir/eclipse/features/*xlc* $parsersInstallDir/eclipse/features -mv $installDir/eclipse/plugins/*xlc* $parsersInstallDir/eclipse/plugins -mv $installDir/eclipse/features/*lrparser* $parsersInstallDir/eclipse/features -mv $installDir/eclipse/plugins/*lrparser* $parsersInstallDir/eclipse/plugins -mv $installDir/eclipse/features/*upc* $parsersInstallDir/eclipse/features -mv $installDir/eclipse/plugins/*upc* $parsersInstallDir/eclipse/plugins -pushd $parsersInstallDir/eclipse/plugins -ln -s /usr/share/java/lpgjavaruntime.jar net.sourceforge.lpg.lpgjavaruntime_1.1.0.jar -popd +# Fix the cdtdebug.sh script to hard-code ECLIPSE_HOME and cdt droplets directory +sed -i -e "s,@ECLIPSE_HOME@,%{eclipse_base}," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/cdtdebug.sh +sed -i -e "s,@CDT_DROPINS@,%{eclipse_base}/%{droplets}/cdt/eclipse/plugins," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/cdtdebug.sh +# Fix the dropin bundles to have full paths to their respective jar files as Eclipse start-up won't find them otherwise -# Move llvm plugins/features to llvm install area. -mkdir -p $llvmInstallDir/eclipse/features $llvmInstallDir/eclipse/plugins -mv $installDir/eclipse/features/*llvm* $llvmInstallDir/eclipse/features -mv $installDir/eclipse/plugins/*llvm* $llvmInstallDir/eclipse/plugins +for PLUGIN in \ +$(ls . | grep org.eclipse.cdt.core.linux_) \ +$(ls . | grep org.eclipse.cdt.core_) \ +$(ls . | grep org.eclipse.cdt.debug.ui.memory.floatingpoint_) \ +$(ls . | grep org.eclipse.cdt.make.core_) \ +$(ls . | grep org.eclipse.cdt.dsf.ui_) \ +$(ls . | grep org.eclipse.cdt.debug.ui.memory.traditional_) \ +$(ls . | grep org.eclipse.cdt.ui_) \ +$(ls . | grep org.eclipse.cdt.core_) \ +$(ls . | grep org.eclipse.cdt.debug.application.doc_) \ +$(ls . | grep org.eclipse.cdt.dsf.gdb.ui_) \ +$(ls . | grep org.eclipse.cdt.debug.mi.ui_) \ +$(ls . | grep org.eclipse.cdt.launch_) \ +$(ls . | grep org.eclipse.cdt.managedbuilder.core_) \ +$(ls . | grep org.eclipse.cdt.managedbuilder.gnu.ui_) \ +$(ls . | grep org.eclipse.cdt.gdb_) \ +$(ls . | grep org.eclipse.cdt.dsf.gdb_) \ +$(ls . | grep org.eclipse.cdt.dsf_) \ +$(ls . | grep org.eclipse.cdt.debug.mi.core_) \ +$(ls . | grep org.eclipse.cdt.gdb.ui_) \ +$(ls . | grep org.eclipse.cdt.debug.ui.memory.transport_) \ +$(ls . | grep org.eclipse.cdt.debug.ui.memory.search_) \ +$(ls . | grep org.eclipse.cdt.debug.ui.memory.memorybrowser_) \ +$(ls . | grep org.eclipse.cdt.debug.ui_) \ +$(ls . | grep org.eclipse.cdt.debug.core_) \ +$(ls . | grep org.eclipse.cdt.core.native_) \ +$(ls . | grep 'org.eclipse.cdt.core.linux\..*' | grep -v source); +do + sed -i -e "s,${PLUGIN%_*}\,,file\\\\:%{eclipse_base}/%{droplets}/cdt/eclipse/plugins/$PLUGIN\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini +done -# Move qt plugins/features to qt install area. -mkdir -p $qtInstallDir/eclipse/features $qtInstallDir/eclipse/plugins -mv $installDir/eclipse/features/*qt* $qtInstallDir/eclipse/features -mv $installDir/eclipse/plugins/*qt.* $qtInstallDir/eclipse/plugins +sed -i -e "s,org.eclipse.cdt.debug.application\,,file\\\\:%{eclipse_base}/%{droplets}/cdt/eclipse/plugins/org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION.jar\,," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini -%if %{_enable_container_and_remote_support} == 1 -# Move arudino plugins/features to arduino install area. -mkdir -p $arduinoInstallDir/eclipse/features $arduinoInstallDir/eclipse/plugins -mv $installDir/eclipse/features/*arduino* $arduinoInstallDir/eclipse/features -mv $installDir/eclipse/plugins/*arduino* $arduinoInstallDir/eclipse/plugins -pushd $arduinoInstallDir/eclipse/plugins -ln -s %{_javadir}/google-gson/gson.jar com.google.gson_2.2.4.jar -ln -s %{_javadir}/apache-commons-compress.jar org.apache.commons.compress_1.6.0.jar +sed -i -e "s,cp config.ini,cp %{eclipse_base}/%{droplets}/cdt/eclipse/plugins/org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/config.ini," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/cdtdebug.sh +sed -i -e "s,cp dev.properties,cp %{eclipse_base}/%{droplets}/cdt/eclipse/plugins/org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/dev.properties," org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/cdtdebug.sh +install -D -m 755 org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/scripts/cdtdebug.sh $binInstallDir/cdtdebug popd -# Docker not available on F22 or earlier -%if 0%{?fedora} >= 23 -# Move docker launcher plugins/features to docker install area. -mkdir -p $dockerInstallDir/eclipse/features $dockerInstallDir/eclipse/plugins -mv $installDir/eclipse/features/*docker* $dockerInstallDir/eclipse/features -mv $installDir/eclipse/plugins/*docker* $dockerInstallDir/eclipse/plugins -%endif -%endif +echo %{eclipse_base}/%{droplets}/cdt/eclipse/plugins/org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION/org.eclipse.cdt.debug.application_$DEBUGAPPLICATIONVERSION.jar >> .mfiles -mkdir -p $sdkInstallDir/eclipse/features $sdkInstallDir/eclipse/plugins -mv $installDir/eclipse/features/*source* $sdkInstallDir/eclipse/features -mv $installDir/eclipse/plugins/*source* $sdkInstallDir/eclipse/plugins -mv $installDir/eclipse/plugins/org.eclipse.cdt.doc.isv_* $sdkInstallDir/eclipse/plugins -mv $installDir/eclipse/features/*sdk* $sdkInstallDir/eclipse/features -mv $installDir/eclipse/plugins/*sdk* $sdkInstallDir/eclipse/plugins +install -D desktop/eclipse-cdt.desktop $RPM_BUILD_ROOT/%{_datadir}/applications/%{?scl_prefix}eclipse-cdt.desktop +desktop-file-validate $RPM_BUILD_ROOT/%{_datadir}/applications/%{?scl_prefix}eclipse-cdt.desktop -rm -rf $installDir/eclipse/features/org.eclipse.cdt.master_* -rm -rf $installDir/eclipse/plugins/org.eclipse.ant.optional.junit_* -rm -rf $installDir/eclipse/plugins/org.eclipse.test_* +# man page +cp man/cdtdebug.man $manInstallDir/cdtdebug.1 -# remove repo stuff that shouldn't be in dropins folder -rm -rf $installDir/eclipse/artifacts.jar -rm -rf $installDir/eclipse/content.jar -rm -rf $installDir/eclipse/binary -%files -%{eclipse_base}/dropins/cdt +%files -f .mfiles %{_bindir}/cdtdebug %{_datadir}/applications/* %{_mandir}/man1/cdtdebug.1* %doc releng/org.eclipse.cdt.releng/epl-v10.html %doc releng/org.eclipse.cdt.releng/notice.html -%files sdk -%{eclipse_base}/dropins/cdt-sdk +%files sdk -f .mfiles-sdk %doc releng/org.eclipse.cdt.releng/epl-v10.html %doc releng/org.eclipse.cdt.releng/notice.html -%files parsers -%{eclipse_base}/dropins/cdt-parsers +%files parsers -f .mfiles-parsers %doc releng/org.eclipse.cdt.releng/epl-v10.html %doc releng/org.eclipse.cdt.releng/notice.html -%files tests -%{_javadir}/eclipse-cdt-tests +%files tests -f .mfiles-tests %{_bindir}/eclipse-runCDTTestBundles %doc releng/org.eclipse.cdt.releng/epl-v10.html %doc releng/org.eclipse.cdt.releng/notice.html -%files llvm -%{eclipse_base}/dropins/cdt-llvm +%files llvm -f .mfiles-llvm %doc releng/org.eclipse.cdt.releng/epl-v10.html %doc releng/org.eclipse.cdt.releng/notice.html -%files qt -%{eclipse_base}/dropins/cdt-qt +%files qt -f .mfiles-qt %doc releng/org.eclipse.cdt.releng/epl-v10.html %doc releng/org.eclipse.cdt.releng/notice.html %if %{_enable_container_and_remote_support} == 1 -%files arduino -%{eclipse_base}/dropins/cdt-arduino +%files arduino -f .mfiles-arduino %doc releng/org.eclipse.cdt.releng/epl-v10.html %doc releng/org.eclipse.cdt.releng/notice.html # Docker not available on F22 or earlier %if 0%{?fedora} >= 23 -%files docker -%{eclipse_base}/dropins/cdt-docker +%files docker -f .mfiles-docker %doc releng/org.eclipse.cdt.releng/epl-v10.html %doc releng/org.eclipse.cdt.releng/notice.html %endif %endif %changelog +* Tue Feb 09 2016 Roland Grunberg - 1:8.8.0-7 +- Update to use proper xmvn provided macros. +- Fix CDT GDB Standalone Debugger. + * Thu Feb 04 2016 Roland Grunberg - 1:8.8.0-6 - Add symbolic links for google-gson and apache-commons-compress in arduino. - Resolves: rhbz#1302131.