diff options
author | eutarass | 2009-08-28 19:59:49 +0000 |
---|---|---|
committer | eutarass | 2009-08-28 19:59:49 +0000 |
commit | 7fdeaa34f2c825cad27477882c068527baed123f (patch) | |
tree | 8c587ffc89bef2fd8805f6289274f10d9c985ad5 | |
parent | 6d65ffaca552d9cc11b1a9b0d851759824d9ee9f (diff) | |
download | org.eclipse.tcf-7fdeaa34f2c825cad27477882c068527baed123f.tar.gz org.eclipse.tcf-7fdeaa34f2c825cad27477882c068527baed123f.tar.xz org.eclipse.tcf-7fdeaa34f2c825cad27477882c068527baed123f.zip |
Bug 287732: Unable to build org.eclipse.tm.tcf using headless build:
1. Created headless build project: features/org.eclipse.tm.tcf.headless.build
2. Changed org.eclipse.tm.tcf.core to be a plugin instead of fragment and added bundle activator class
21 files changed, 556 insertions, 18 deletions
diff --git a/examples/org.eclipse.tm.tcf.examples.daytime/META-INF/MANIFEST.MF b/examples/org.eclipse.tm.tcf.examples.daytime/META-INF/MANIFEST.MF index 76f06d62c..e50d7a1d2 100644 --- a/examples/org.eclipse.tm.tcf.examples.daytime/META-INF/MANIFEST.MF +++ b/examples/org.eclipse.tm.tcf.examples.daytime/META-INF/MANIFEST.MF @@ -5,9 +5,10 @@ Bundle-SymbolicName: org.eclipse.tm.tcf.examples.daytime;singleton:=true Bundle-Version: 0.2.0.qualifier Bundle-Activator: org.eclipse.tm.internal.tcf.examples.daytime.Activator Bundle-Vendor: %providerName -Require-Bundle: org.eclipse.core.runtime, - org.eclipse.tm.tcf +Require-Bundle: org.eclipse.core.runtime Bundle-ActivationPolicy: lazy Eclipse-LazyStart: true +Import-Package: org.eclipse.tm.tcf.core;version="0.2.0", + org.eclipse.tm.tcf.protocol;version="0.2.0" Export-Package: org.eclipse.tm.internal.tcf.examples.daytime Bundle-RequiredExecutionEnvironment: J2SE-1.5 diff --git a/features/org.eclipse.tm.tcf.feature/feature.xml b/features/org.eclipse.tm.tcf.feature/feature.xml index 3ebc94bb8..552c63237 100644 --- a/features/org.eclipse.tm.tcf.feature/feature.xml +++ b/features/org.eclipse.tm.tcf.feature/feature.xml @@ -51,7 +51,6 @@ download-size="0"
install-size="0"
version="0.0.0"
- fragment="true"
unpack="false"/>
<plugin
diff --git a/features/org.eclipse.tm.tcf.headless.build/.project b/features/org.eclipse.tm.tcf.headless.build/.project new file mode 100644 index 000000000..179510032 --- /dev/null +++ b/features/org.eclipse.tm.tcf.headless.build/.project @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.tm.tcf.headless.build</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
diff --git a/features/org.eclipse.tm.tcf.headless.build/.settings/org.eclipse.pde.core.prefs b/features/org.eclipse.tm.tcf.headless.build/.settings/org.eclipse.pde.core.prefs new file mode 100644 index 000000000..c767eccce --- /dev/null +++ b/features/org.eclipse.tm.tcf.headless.build/.settings/org.eclipse.pde.core.prefs @@ -0,0 +1,3 @@ +#Thu Aug 27 13:24:54 PDT 2009
+eclipse.preferences.version=1
+resolve.requirebundle=false
diff --git a/features/org.eclipse.tm.tcf.headless.build/TCF Headless Build.launch b/features/org.eclipse.tm.tcf.headless.build/TCF Headless Build.launch new file mode 100644 index 000000000..b0ef1bafc --- /dev/null +++ b/features/org.eclipse.tm.tcf.headless.build/TCF Headless Build.launch @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.RuntimeWorkbench">
+<booleanAttribute key="append.args" value="true"/>
+<stringAttribute key="application" value="org.eclipse.ant.core.antRunner"/>
+<booleanAttribute key="askclear" value="false"/>
+<booleanAttribute key="automaticAdd" value="true"/>
+<booleanAttribute key="automaticValidate" value="false"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="false"/>
+<booleanAttribute key="clearws" value="true"/>
+<booleanAttribute key="clearwslog" value="false"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/TCF Headless Build"/>
+<booleanAttribute key="default" value="true"/>
+<booleanAttribute key="includeOptional" value="true"/>
+<stringAttribute key="location" value="${project_loc:org.eclipse.tm.tcf.headless.build}/../build-workspace"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -buildfile ${eclipse_home}plugins/org.eclipse.pde.build_3.4.1.R34x_v20081217/scripts/build.xml -Dbase=${eclipse_home}.. -DbaseLocation=${eclipse_home} -Dbaseos=${target.os} -Dbasews=${target.ws} -Dbasearch=${target.arch} -Dbuilder=${project_loc:org.eclipse.tm.tcf.headless.build}/builder -DbuildDirectory=${project_loc:org.eclipse.tm.tcf.headless.build}/../build-directory"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<stringAttribute key="product" value="org.eclipse.sdk.ide"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<stringAttribute key="templateConfig" value="${target_home}\configuration\config.ini"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useDefaultConfig" value="true"/>
+<booleanAttribute key="useDefaultConfigArea" value="true"/>
+<booleanAttribute key="useProduct" value="false"/>
+<booleanAttribute key="usefeatures" value="false"/>
+</launchConfiguration>
diff --git a/features/org.eclipse.tm.tcf.headless.build/builder/build.properties b/features/org.eclipse.tm.tcf.headless.build/builder/build.properties new file mode 100644 index 000000000..de65765fc --- /dev/null +++ b/features/org.eclipse.tm.tcf.headless.build/builder/build.properties @@ -0,0 +1,231 @@ +############################################################################### +# Copyright (c) 2003, 2006 IBM Corporation and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +# +# Contributors: +# IBM Corporation - initial API and implementation +############################################################################### +##################### +# Parameters describing how and where to execute the build. +# Typical users need only update the following properties: +# baseLocation - where things you are building against are installed +# bootclasspath - The base jars to compile against (typicaly rt.jar) +# configs - the list of {os, ws, arch} configurations to build. +# +# Of course any of the settings here can be overridden by spec'ing +# them on the command line (e.g., -DbaseLocation=d:/eclipse + +#The type of the top level element we are building, generally "feature" +topLevelElementType = feature +#The id of the top level element we are building +topLevelElementId = org.eclipse.tm.tcf.feature + +############# PRODUCT/PACKAGING CONTROL ############# +#product=/plugin or feature id/path/to/.product +#runPackager=true + +#Set the name of the archive that will result from the product build. +#archiveNamePrefix= + +# The prefix that will be used in the generated archive. +archivePrefix=eclipse + +# The location underwhich all of the build output will be collected. +collectingFolder=${archivePrefix} + +# The list of {os, ws, arch} configurations to build. This +# value is a '&' separated list of ',' separate triples. For example, +# configs=win32,win32,x86 & linux,motif,x86 +# By default the value is *,*,* +configs = *, *, * +#configs=win32, win32, x86 & \ +# linux, gtk, ppc &\ +# linux, gtk, x86 & \ +# linux, gtk, x86_64 & \ +# linux, motif, x86 & \ +# solaris, motif, sparc & \ +# solaris, gtk, sparc & \ +# aix, motif, ppc & \ +# hpux, motif, PA_RISC & \ +# macosx, carbon, ppc + +# By default PDE creates one archive (result) per entry listed in the configs property. +# Setting this value to true will cause PDE to only create one output containing all +# artifacts for all the platforms listed in the configs property. +# To control the output format for the group, add a "group, group, group - <format>" entry to the +# archivesFormat. +#groupConfigurations=true + +#The format of the archive. By default a zip is created using antZip. +#The list can only contain the configuration for which the desired format is different than zip. +#archivesFormat=win32, win32, x86 - antZip& \ +# linux, gtk, ppc - antZip &\ +# linux, gtk, x86 - antZip& \ +# linux, gtk, x86_64 - antZip& \ +# linux, motif, x86 - antZip& \ +# solaris, motif, sparc - antZip& \ +# solaris, gtk, sparc - antZip& \ +# aix, motif, ppc - antZip& \ +# hpux, motif, PA_RISC - antZip& \ +# macosx, carbon, ppc - antZip + +#Set to true if you want the output to be ready for an update jar (no site.xml generated) +#outputUpdateJars = false + +#Set to true for Jnlp generation +#codebase should be a URL that will be used as the root of all relative URLs in the output. +#generateJnlp=false +#jnlp.codebase=<codebase url> +#jnlp.j2se=<j2se version> +#jnlp.locale=<a locale> +#jnlp.generateOfflineAllowed=true or false generate <offlineAllowed/> attribute in the generated features +#jnlp.configs=${configs} #uncomment to filter the content of the generated jnlp files based on the configuration being built + +#Set to true if you want to sign jars +#signJars=false +#sign.alias=<alias> +#sign.keystore=<keystore location> +#sign.storepass=<keystore password> + +#Arguments to send to the zip executable +zipargs= + +#Arguments to send to the tar executable +tarargs= + +#Control the creation of a file containing the version included in each configuration - on by default +#generateVersionsLists=false + +############## BUILD NAMING CONTROL ################ +# The directory into which the build elements are fetched and where +# the build takes place. +#buildDirectory= + +# Type of build. Used in naming the build output. Typically this value is +# one of I, N, M, S, ... +buildType=I + +# ID of the build. Used in naming the build output. +buildId=TestBuild + +# Label for the build. Used in naming the build output +buildLabel=${buildType}.${buildId} + +# Timestamp for the build. Used in naming the build output +timestamp=007 + +#The value to be used for the qualifier of a plugin or feature when you want to override the value computed by pde. +#The value will only be applied to plugin or features indicating build.properties, qualifier = context +#forceContextQualifier=<the value for the qualifier> + +#Enable / disable the generation of a suffix for the features that use .qualifier. +#The generated suffix is computed according to the content of the feature +#generateFeatureVersionSuffix=true + +############# BASE CONTROL ############# +# Settings for the base Eclipse components and Java class libraries +# against which you are building. +# Base location for anything the build needs to compile against. For example, +# in most RCP app or a plug-in, the baseLocation should be the location of a previously +# installed Eclipse against which the application or plug-in code will be compiled and the RCP delta pack. + +#base=C:/Eclipse/3.4.2 +#baseLocation=${base}/eclipse +#Os/Ws/Arch/nl of the eclipse specified by baseLocation +#baseos=win32 +#basews=win32 +#basearch=x86 + +#this property indicates whether you want the set of plug-ins and features to be considered during the build to be limited to the ones reachable from the features / plugins being built +filteredDependencyCheck=false + +#this property indicates whether the resolution should be done in development mode (i.e. ignore multiple bundles with singletons) +resolution.devMode=true + +#pluginPath is a list of locations in which to find plugins and features. This list is separated by the platform file separator (; or :) +#a location is one of: +#- the location of the jar or folder that is the plugin or feature : /path/to/foo.jar or /path/to/foo +#- a directory that contains a /plugins or /features subdirectory +#- the location of a feature.xml, or for 2.1 style plugins, the plugin.xml or fragment.xml +#pluginPath= + +skipBase=true +eclipseURL=<url for eclipse download site> +eclipseBuildId=<Id of Eclipse build to get> +eclipseBaseURL=${eclipseURL}/eclipse-platform-${eclipseBuildId}-win32.zip + + +############# MAP FILE CONTROL ################ +# This section defines CVS tags to use when fetching the map files from the repository. +# If you want to fetch the map file from repository / location, change the getMapFiles target in the customTargets.xml + +skipMaps=true +mapsRepo=:pserver:anonymous@example.com/path/to/repo +mapsRoot=path/to/maps +mapsCheckoutTag=HEAD + +#tagMaps=true +mapsTagTag=v${buildId} + + +############ REPOSITORY CONTROL ############### +# This section defines properties parameterizing the repositories where plugins, fragments +# bundles and features are being obtained from. + +# The tags to use when fetching elements to build. +# By default thebuilder will use whatever is in the maps. +# This value takes the form of a comma separated list of repository identifier (like used in the map files) and the +# overriding value +# For example fetchTag=CVS=HEAD, SVN=v20050101 +# fetchTag=HEAD +skipFetch=true + + +############# JAVA COMPILER OPTIONS ############## +# The location of the Java jars to compile against. Typically the rt.jar for your JDK/JRE +#bootclasspath=${java.home}/lib/rt.jar + +# specific JRE locations to compile against. These values are used to compile bundles specifying a +# Bundle-RequiredExecutionEnvironment. Uncomment and set values for environments that you support +#CDC-1.0/Foundation-1.0= /path/to/rt.jar +#CDC-1.1/Foundation-1.1= +#OSGi/Minimum-1.0= +#OSGi/Minimum-1.1= +#JRE-1.1= +#J2SE-1.2= +#J2SE-1.3= +#J2SE-1.4= +#J2SE-1.5= +#JavaSE-1.6= +#PersonalJava-1.1= +#PersonalJava-1.2= +#CDC-1.0/PersonalBasis-1.0= +#CDC-1.0/PersonalJava-1.0= +#CDC-1.1/PersonalBasis-1.1= +#CDC-1.1/PersonalJava-1.1= + +# Specify the output format of the compiler log when eclipse jdt is used +logExtension=.log + +# Whether or not to include debug info in the output jars +javacDebugInfo=false + +# Whether or not to fail the build if there are compiler errors +javacFailOnError=true + +# Enable or disable verbose mode of the compiler +javacVerbose=true + +# Extra arguments for the compiler. These are specific to the java compiler being used. +#compilerArg= + +# Default value for the version of the source code. This value is used when compiling plug-ins that do not set the Bundle-RequiredExecutionEnvironment or set javacSource in build.properties +javacSource=1.5 + +# Default value for the version of the byte code targeted. This value is used when compiling plug-ins that do not set the Bundle-RequiredExecutionEnvironment or set javacTarget in build.properties. +javacTarget=1.5 + + diff --git a/features/org.eclipse.tm.tcf.headless.build/builder/customTargets.xml b/features/org.eclipse.tm.tcf.headless.build/builder/customTargets.xml new file mode 100644 index 000000000..554cb7346 --- /dev/null +++ b/features/org.eclipse.tm.tcf.headless.build/builder/customTargets.xml @@ -0,0 +1,195 @@ +<project name="Build specific targets and properties" default="noDefault"> + + <!-- ===================================================================== --> + <!-- Run a given ${target} on all elements being built --> + <!-- Add on <ant> task for each top level element being built. --> + <!-- ===================================================================== --> + <available property="allElementsFile" file="${builder}/allElements.xml" value="${builder}/allElements.xml"/> + <property name="allElementsFile" location="${eclipse.pdebuild.templates}/headless-build/allElements.xml"/> + + <import file="${allElementsFile}" /> + <target name="allElements"> + <antcall target="allElementsDelegator" /> + </target> + + <!-- ===================================================================== --> + <!-- ===================================================================== --> + <target name="getBaseComponents" depends="checkLocalBase" unless="skipBase"> + <get src="${eclipseBaseURL}" dest="${buildDirectory}/../temp-base.zip" /> + <unzip dest="${base}" overwrite="true" src="${buildDirectory}/../temp-base.zip" /> + </target> + + <target name="checkLocalBase"> + <available file="${base}" property="skipBase" /> + </target> + + <!-- ===================================================================== --> + <!-- Check out map files from correct repository --> + <!-- Replace values for mapsCheckoutTag as desired. --> + <!-- ===================================================================== --> + <target name="getMapFiles" depends="checkLocalMaps" unless="skipMaps"> + <property name="mapsCheckoutTag" value="HEAD" /> + <cvs cvsRoot="${mapsRepo}" package="${mapsRoot}" dest="${buildDirectory}/maps" tag="${mapsCheckoutTag}" /> + </target> + + <target name="checkLocalMaps"> + <available property="skipMaps" file="${buildDirectory}/maps" /> + </target> + + <target name="tagMapFiles" if="tagMaps"> + <cvs dest="${buildDirectory}/maps/${mapsRoot}" command="tag ${mapsTagTag}" /> + </target> + + <!-- ===================================================================== --> + + <target name="clean" unless="noclean"> + <antcall target="allElements"> + <param name="target" value="cleanElement" /> + </antcall> + </target> + + <target name="gatherLogs"> + <mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" /> + <antcall target="allElements"> + <param name="target" value="gatherLogs" /> + </antcall> + <unzip dest="${buildDirectory}/${buildLabel}/compilelogs" overwrite="true"> + <fileset dir="${buildDirectory}/features"> + <include name="**/*.log.zip" /> + </fileset> + </unzip> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do before setup --> + <!-- ===================================================================== --> + <target name="preSetup"> + <delete dir="${buildDirectory}/plugins"/> + <exec dir="${buildDirectory}" executable="svn"> + <arg value="co"/> + <arg value="http://dev.eclipse.org/svnroot/dsdp/org.eclipse.tm.tcf/trunk/plugins/org.eclipse.tm.tcf"/> + <arg value="plugins/org.eclipse.tm.tcf"/> + </exec> + <exec dir="${buildDirectory}" executable="svn"> + <arg value="co"/> + <arg value="http://dev.eclipse.org/svnroot/dsdp/org.eclipse.tm.tcf/trunk/plugins/org.eclipse.tm.tcf.core"/> + <arg value="plugins/org.eclipse.tm.tcf.core"/> + </exec> + <exec dir="${buildDirectory}" executable="svn"> + <arg value="co"/> + <arg value="http://dev.eclipse.org/svnroot/dsdp/org.eclipse.tm.tcf/trunk/plugins/org.eclipse.tm.tcf.debug"/> + <arg value="plugins/org.eclipse.tm.tcf.debug"/> + </exec> + <exec dir="${buildDirectory}" executable="svn"> + <arg value="co"/> + <arg value="http://dev.eclipse.org/svnroot/dsdp/org.eclipse.tm.tcf/trunk/plugins/org.eclipse.tm.tcf.debug.ui"/> + <arg value="plugins/org.eclipse.tm.tcf.debug.ui"/> + </exec> + <exec dir="${buildDirectory}" executable="svn"> + <arg value="co"/> + <arg value="http://dev.eclipse.org/svnroot/dsdp/org.eclipse.tm.tcf/trunk/plugins/org.eclipse.tm.tcf.rse"/> + <arg value="plugins/org.eclipse.tm.tcf.rse"/> + </exec> + <delete dir="${buildDirectory}/features"/> + <exec dir="${buildDirectory}" executable="svn"> + <arg value="co"/> + <arg value="http://dev.eclipse.org/svnroot/dsdp/org.eclipse.tm.tcf/trunk/features/org.eclipse.tm.tcf.feature"/> + <arg value="features/org.eclipse.tm.tcf.feature"/> + </exec> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do after setup but before starting the build proper --> + <!-- ===================================================================== --> + <target name="postSetup"> + <antcall target="getBaseComponents" /> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do before fetching the build elements --> + <!-- ===================================================================== --> + <target name="preFetch"> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do after fetching the build elements --> + <!-- ===================================================================== --> + <target name="postFetch"> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do before generating the build scripts. --> + <!-- ===================================================================== --> + <target name="preGenerate"> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do after generating the build scripts. --> + <!-- ===================================================================== --> + <target name="postGenerate"> + <antcall target="clean" /> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do before running the build.xmls for the elements being built. --> + <!-- ===================================================================== --> + <target name="preProcess"> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do after running the build.xmls for the elements being built. --> + <!-- ===================================================================== --> + <target name="postProcess"> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do before running assemble. --> + <!-- ===================================================================== --> + <target name="preAssemble"> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do after running assemble. --> + <!-- ===================================================================== --> + <target name="postAssemble"> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do before running package. --> + <!-- ===================================================================== --> + <target name="prePackage"> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do after running package. --> + <!-- ===================================================================== --> + <target name="postPackage"> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do after the build is done. --> + <!-- ===================================================================== --> + <target name="postBuild"> + <antcall target="gatherLogs" /> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do to test the build results --> + <!-- ===================================================================== --> + <target name="test"> + </target> + + <!-- ===================================================================== --> + <!-- Steps to do to publish the build results --> + <!-- ===================================================================== --> + <target name="publish"> + </target> + + <!-- ===================================================================== --> + <!-- Default target --> + <!-- ===================================================================== --> + <target name="noDefault"> + <echo message="You must specify a target when invoking this file" /> + </target> + +</project> diff --git a/features/org.eclipse.tm.tcf.site/site.xml b/features/org.eclipse.tm.tcf.site/site.xml index 92bd9bcec..5079a1b2f 100644 --- a/features/org.eclipse.tm.tcf.site/site.xml +++ b/features/org.eclipse.tm.tcf.site/site.xml @@ -3,7 +3,7 @@ <description url="http://dev.eclipse.org/svnroot/dsdp/org.eclipse.tm.tcf/releases/0.2.0">
TCF update site
</description>
- <feature url="features/org.eclipse.tm.tcf.feature_0.2.0.200908262240.jar" id="org.eclipse.tm.tcf.feature" version="0.2.0.200908262240">
+ <feature url="features/org.eclipse.tm.tcf.feature_0.2.0.200908281249.jar" id="org.eclipse.tm.tcf.feature" version="0.2.0.200908281249">
<category name="org.eclipse.tm"/>
</feature>
<category-def name="org.eclipse.tm" label="Remote Access and Device Development"/>
diff --git a/plugins/org.eclipse.tm.tcf.core/.classpath b/plugins/org.eclipse.tm.tcf.core/.classpath index 872791733..0ad228c8c 100644 --- a/plugins/org.eclipse.tm.tcf.core/.classpath +++ b/plugins/org.eclipse.tm.tcf.core/.classpath @@ -1,6 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <classpath> <classpathentry kind="src" path="src"/> + <classpathentry kind="src" path="activator"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> <classpathentry kind="output" path="bin"/> </classpath> diff --git a/plugins/org.eclipse.tm.tcf.core/META-INF/MANIFEST.MF b/plugins/org.eclipse.tm.tcf.core/META-INF/MANIFEST.MF index 7e638c182..8ce8d0e75 100644 --- a/plugins/org.eclipse.tm.tcf.core/META-INF/MANIFEST.MF +++ b/plugins/org.eclipse.tm.tcf.core/META-INF/MANIFEST.MF @@ -4,8 +4,13 @@ Bundle-Name: %pluginName Bundle-Vendor: %providerName Bundle-SymbolicName: org.eclipse.tm.tcf.core;singleton:=true Bundle-Version: 0.3.0.qualifier -Fragment-Host: org.eclipse.tm.tcf;bundle-version="0.2.0" Bundle-RequiredExecutionEnvironment: J2SE-1.5 +Bundle-ActivationPolicy: lazy +Eclipse-LazyStart: true +Bundle-Activator: org.eclipse.tm.internal.tcf.Activator +Import-Package: org.osgi.framework, + org.osgi.service.packageadmin, + org.osgi.util.tracker Export-Package: org.eclipse.tm.tcf.core;version="0.2.0", org.eclipse.tm.tcf.protocol;version="0.2.0", org.eclipse.tm.tcf.services;version="0.2.0", diff --git a/plugins/org.eclipse.tm.tcf.core/about.html b/plugins/org.eclipse.tm.tcf.core/about.html new file mode 100644 index 000000000..6c5b3615b --- /dev/null +++ b/plugins/org.eclipse.tm.tcf.core/about.html @@ -0,0 +1,28 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<p>January 10, 2008</p> +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available +at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> +</html>
\ No newline at end of file diff --git a/plugins/org.eclipse.tm.tcf.core/activator/org/eclipse/tm/internal/tcf/Activator.java b/plugins/org.eclipse.tm.tcf.core/activator/org/eclipse/tm/internal/tcf/Activator.java new file mode 100644 index 000000000..d726ff6e0 --- /dev/null +++ b/plugins/org.eclipse.tm.tcf.core/activator/org/eclipse/tm/internal/tcf/Activator.java @@ -0,0 +1,36 @@ +package org.eclipse.tm.internal.tcf; + +import org.osgi.framework.Bundle; +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; +import org.osgi.service.packageadmin.PackageAdmin; +import org.osgi.util.tracker.ServiceTracker; + +public class Activator implements BundleActivator { + + private static final String TCF_INTEGRATION_BUNDLE_ID = "org.eclipse.tm.tcf"; + + public void start(BundleContext context) throws Exception { + /* + * Activate TCF Eclipse integration bundle "org.eclipse.tm.tcf". + * It must be activated explicitly, because default activation through + * class loading may never happen - most client don't need classes from that bundle. + */ + ServiceTracker tracker = new ServiceTracker(context, PackageAdmin.class.getName(), null); + tracker.open(); + Bundle[] bundles = ((PackageAdmin)tracker.getService()).getBundles(TCF_INTEGRATION_BUNDLE_ID, null); + int cnt = 0; + if (bundles != null) { + for (Bundle bundle : bundles) { + if ((bundle.getState() & (Bundle.INSTALLED | Bundle.UNINSTALLED)) == 0) { + bundle.start(Bundle.START_TRANSIENT); + cnt++; + } + } + } + if (cnt != 1) throw new Exception("Invalid or missing bundle: " + TCF_INTEGRATION_BUNDLE_ID); + } + + public void stop(BundleContext context) throws Exception { + } +} diff --git a/plugins/org.eclipse.tm.tcf.core/build.properties b/plugins/org.eclipse.tm.tcf.core/build.properties index 34d2e4d2d..28843de8d 100644 --- a/plugins/org.eclipse.tm.tcf.core/build.properties +++ b/plugins/org.eclipse.tm.tcf.core/build.properties @@ -1,4 +1,8 @@ -source.. = src/ +source.. = src/,\ + activator/ output.. = bin/ bin.includes = META-INF/,\ - . + .,\ + plugin.properties,\ + about.html +src.includes = about.html diff --git a/plugins/org.eclipse.tm.tcf.debug.ui/.cvsignore b/plugins/org.eclipse.tm.tcf.debug.ui/.cvsignore deleted file mode 100644 index 092357e47..000000000 --- a/plugins/org.eclipse.tm.tcf.debug.ui/.cvsignore +++ /dev/null @@ -1 +0,0 @@ -bin
diff --git a/plugins/org.eclipse.tm.tcf.debug/.cvsignore b/plugins/org.eclipse.tm.tcf.debug/.cvsignore deleted file mode 100644 index c5e82d745..000000000 --- a/plugins/org.eclipse.tm.tcf.debug/.cvsignore +++ /dev/null @@ -1 +0,0 @@ -bin
\ No newline at end of file diff --git a/plugins/org.eclipse.tm.tcf.rse/src/org/eclipse/tm/internal/tcf/rse/files/TCFFileService.java b/plugins/org.eclipse.tm.tcf.rse/src/org/eclipse/tm/internal/tcf/rse/files/TCFFileService.java index bdcdfe4d6..d59107414 100644 --- a/plugins/org.eclipse.tm.tcf.rse/src/org/eclipse/tm/internal/tcf/rse/files/TCFFileService.java +++ b/plugins/org.eclipse.tm.tcf.rse/src/org/eclipse/tm/internal/tcf/rse/files/TCFFileService.java @@ -64,10 +64,8 @@ public class TCFFileService extends AbstractFileService { private UserInfo user_info; private static final class UserInfo { - @SuppressWarnings("unused") final int r_uid; final int e_uid; - @SuppressWarnings("unused") final int r_gid; final int e_gid; final String home; diff --git a/plugins/org.eclipse.tm.tcf.rse/src/org/eclipse/tm/internal/tcf/rse/processes/TCFSystemViewRemoteProcessAdapter.java b/plugins/org.eclipse.tm.tcf.rse/src/org/eclipse/tm/internal/tcf/rse/processes/TCFSystemViewRemoteProcessAdapter.java index 58bb2f215..dbd93e8e0 100644 --- a/plugins/org.eclipse.tm.tcf.rse/src/org/eclipse/tm/internal/tcf/rse/processes/TCFSystemViewRemoteProcessAdapter.java +++ b/plugins/org.eclipse.tm.tcf.rse/src/org/eclipse/tm/internal/tcf/rse/processes/TCFSystemViewRemoteProcessAdapter.java @@ -51,6 +51,7 @@ import org.eclipse.tm.tcf.services.ISysMonitor; import org.eclipse.ui.views.properties.IPropertyDescriptor; +@SuppressWarnings("restriction") public class TCFSystemViewRemoteProcessAdapter extends AbstractSystemViewAdapter implements ISystemViewElementAdapter, ISystemRemoteElementAdapter{ diff --git a/plugins/org.eclipse.tm.tcf/.classpath b/plugins/org.eclipse.tm.tcf/.classpath index 0182778c5..304e86186 100644 --- a/plugins/org.eclipse.tm.tcf/.classpath +++ b/plugins/org.eclipse.tm.tcf/.classpath @@ -3,6 +3,5 @@ <classpathentry kind="src" path="src"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/> <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> - <classpathentry combineaccessrules="false" exported="true" kind="src" path="/org.eclipse.tm.tcf.core"/> <classpathentry kind="output" path="bin"/> </classpath> diff --git a/plugins/org.eclipse.tm.tcf/.cvsignore b/plugins/org.eclipse.tm.tcf/.cvsignore deleted file mode 100644 index c5e82d745..000000000 --- a/plugins/org.eclipse.tm.tcf/.cvsignore +++ /dev/null @@ -1 +0,0 @@ -bin
\ No newline at end of file diff --git a/plugins/org.eclipse.tm.tcf/META-INF/MANIFEST.MF b/plugins/org.eclipse.tm.tcf/META-INF/MANIFEST.MF index 673a02070..827f07e41 100644 --- a/plugins/org.eclipse.tm.tcf/META-INF/MANIFEST.MF +++ b/plugins/org.eclipse.tm.tcf/META-INF/MANIFEST.MF @@ -1,14 +1,15 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName +Bundle-Vendor: %providerName Bundle-SymbolicName: org.eclipse.tm.tcf;singleton:=true Bundle-Version: 0.3.0.qualifier -Bundle-Activator: org.eclipse.tm.tcf.Activator -Bundle-Vendor: %providerName -Require-Bundle: org.eclipse.core.runtime Bundle-RequiredExecutionEnvironment: J2SE-1.5 Bundle-ActivationPolicy: lazy Eclipse-LazyStart: true -Eclipse-ExtensibleAPI: true +Require-Bundle: org.eclipse.core.runtime +Bundle-Activator: org.eclipse.tm.tcf.Activator +Import-Package: org.eclipse.tm.tcf.core;version="0.2.0", + org.eclipse.tm.tcf.protocol;version="0.2.0" Export-Package: org.eclipse.tm.tcf.extensions, org.eclipse.tm.tcf.ssl;version="0.2.0" diff --git a/plugins/org.eclipse.tm.tcf/build.properties b/plugins/org.eclipse.tm.tcf/build.properties index 01f47230f..4a5fbbd0f 100644 --- a/plugins/org.eclipse.tm.tcf/build.properties +++ b/plugins/org.eclipse.tm.tcf/build.properties @@ -1,6 +1,5 @@ source.. = src/ output.. = bin/ -extra.. = ../org.eclipse.tm.tcf.core/bin bin.includes = META-INF/,\ .,\ about.html,\ |