tree ae8902540ed640cf254218cce21ee62dd1531618
parent 1662f6f8df7c1a19738ced6c9d3bb391aede43dd
author cvs2svn <ptp-dev@eclipse.org> 1264717444 +0000
committer cvs2svn <ptp-dev@eclipse.org> 1264717444 +0000

This commit was manufactured by cvs2svn to create tag 'v201001292211'.

Sprout from master 2010-01-28 22:24:03 UTC Greg Watson <g.watson@computer.org> 'Handle failure when generating routing file.'
Delete:
    core/org.eclipse.ptp.remote.core.tests/.classpath
    core/org.eclipse.ptp.remote.core.tests/.project
    core/org.eclipse.ptp.remote.core.tests/.settings/org.eclipse.jdt.core.prefs
    core/org.eclipse.ptp.remote.core.tests/META-INF/MANIFEST.MF
    core/org.eclipse.ptp.remote.core.tests/build.properties
    core/org.eclipse.ptp.remote.core.tests/plugin.properties
    core/org.eclipse.ptp.remote.core.tests/src/org/eclipse/ptp/core/tests/FileStoreTests.java
    core/org.eclipse.ptp.remote.core.tests/src/org/eclipse/ptp/core/tests/RemoteConnectionTests.java
    core/org.eclipse.ptp.remote.core.tests/src/org/eclipse/ptp/core/tests/RemoteCopyTests.java
    core/org.eclipse.ptp.remote.core.tests/src/org/eclipse/ptp/core/tests/SFTPTests.java
    core/org.eclipse.ptp.remote.core.tests/src/org/eclipse/ptp/remote/core/tests/suite/FileManagerTestSuite.java
    rdt/org.eclipse.ptp.rdt.ui.tests/.classpath
    rdt/org.eclipse.ptp.rdt.ui.tests/.project
    rdt/org.eclipse.ptp.rdt.ui.tests/.settings/org.eclipse.jdt.core.prefs
    rdt/org.eclipse.ptp.rdt.ui.tests/META-INF/MANIFEST.MF
    rdt/org.eclipse.ptp.rdt.ui.tests/build.properties
    rdt/org.eclipse.ptp.rdt.ui.tests/fixtures/navigation_test_project/test.c
    rdt/org.eclipse.ptp.rdt.ui.tests/fixtures/navigation_test_project/test.h
    rdt/org.eclipse.ptp.rdt.ui.tests/suite/org/eclipse/ptp/rdt/ui/tests/RDTUITestPlugin.java
    rdt/org.eclipse.ptp.rdt.ui.tests/suite/org/eclipse/ptp/rdt/ui/tests/suite/UIBasicTestSuite.java
    rdt/org.eclipse.ptp.rdt.ui.tests/suite/org/eclipse/ptp/rdt/ui/tests/suite/UIConnectionTestSuite.java
    rdt/org.eclipse.ptp.rdt.ui.tests/test/org/eclipse/ptp/rdt/ui/tests/navigation/NavigationTests.java
    releng/.cvsignore
    releng/org.eclipse.ptp.releng/.cvsignore
    releng/org.eclipse.ptp.releng/.project
    releng/org.eclipse.ptp.releng/build.sh
    releng/org.eclipse.ptp.releng/build.xml
    releng/org.eclipse.ptp.releng/buildsite.xml
    releng/org.eclipse.ptp.releng/maps/photran.map
    releng/org.eclipse.ptp.releng/maps/ptp.map
    releng/org.eclipse.ptp.releng/master/build.properties
    releng/org.eclipse.ptp.releng/master/customTargets.xml
    releng/org.eclipse.ptp.releng/pack.properties
    releng/org.eclipse.ptp.releng/photran_buildsite.xml
    releng/org.eclipse.ptp.releng/ptpbuild
    releng/org.eclipse.ptp.releng/update_versions
    releng/org.eclipse.ptp.rm.ibm.bluegene-feature/.project
    releng/org.eclipse.ptp.rm.ibm.bluegene-feature/build.properties
    releng/org.eclipse.ptp.rm.ibm.bluegene-feature/epl-v10.html
    releng/org.eclipse.ptp.rm.ibm.bluegene-feature/feature.properties
    releng/org.eclipse.ptp.rm.ibm.bluegene-feature/feature.xml
    releng/org.eclipse.ptp.rm.ibm.bluegene-feature/license.html
    releng/org.eclipse.ptp.rm.lsf-feature/.project
    releng/org.eclipse.ptp.rm.lsf-feature/build.properties
    releng/org.eclipse.ptp.rm.lsf-feature/epl-v10.html
    releng/org.eclipse.ptp.rm.lsf-feature/feature.properties
    releng/org.eclipse.ptp.rm.lsf-feature/feature.xml
    releng/org.eclipse.ptp.rm.lsf-feature/license.html
    releng/org.eclipse.ptp.rm.orte-feature/.project
    releng/org.eclipse.ptp.rm.orte-feature/build.properties
    releng/org.eclipse.ptp.rm.orte-feature/epl-v10.html
    releng/org.eclipse.ptp.rm.orte-feature/feature.properties
    releng/org.eclipse.ptp.rm.orte-feature/feature.xml
    releng/org.eclipse.ptp.rm.orte-feature/license.html
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/.classpath
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/.project
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/.settings/org.eclipse.jdt.core.prefs
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/META-INF/MANIFEST.MF
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/build.properties
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/data/sample.c
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/data/sample.xml
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/icons/feedback_action.gif
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/icons/feedback_view.gif
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/icons/sample.gif
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/plugin.xml
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/src/org/eclipse/ptp/etfw/feedback/sample/Activator.java
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/src/org/eclipse/ptp/etfw/feedback/sample/SampleFeedbackItem.java
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/src/org/eclipse/ptp/etfw/feedback/sample/SampleFeedbackParser.java
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/src/org/eclipse/ptp/etfw/feedback/sample/SampleFeedbackView.java
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/src/org/eclipse/ptp/etfw/feedback/sample/SampleShowFeedbackHandler.java
    tools/etfw/org.eclipse.ptp.etfw.feedback.sample/src/org/eclipse/ptp/etfw/feedback/sample/actions/SampleFeedbackAction.java
    tools/pldt/org.eclipse.ptp.pldt.tests/.classpath
    tools/pldt/org.eclipse.ptp.pldt.tests/.project
    tools/pldt/org.eclipse.ptp.pldt.tests/.settings/org.eclipse.jdt.core.prefs
    tools/pldt/org.eclipse.ptp.pldt.tests/META-INF/MANIFEST.MF
    tools/pldt/org.eclipse.ptp.pldt.tests/build.properties
    tools/pldt/org.eclipse.ptp.pldt.tests/resources/includes/mpi.h
    tools/pldt/org.eclipse.ptp.pldt.tests/resources/testMPI.c
    tools/pldt/org.eclipse.ptp.pldt.tests/src/org/eclipse/ptp/pldt/tests/PldtBaseTestFramework.java
    tools/pldt/org.eclipse.ptp.pldt.tests/src/org/eclipse/ptp/pldt/tests/Test.java
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/.classpath
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/.project
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/META-INF/MANIFEST.MF
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/build.properties
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/icons/calls.gif
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/icons/callsC.gif
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/icons/callsCF.gif
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/icons/class_hi.gif
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/icons/graphC.gif
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/icons/graphW.gif
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/icons/sample.gif
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/plugin.xml
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/samples/Hello.c
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/samples/graph.c
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/samples/walkast.c
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/samples/walkast_edge.c
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/samples/walkast_edge_comments.c
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/src/org/eclipse/ptp/pldt/sampleCDTstaticAnalysis/Activator.java
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/src/org/eclipse/ptp/pldt/sampleCDTstaticAnalysis/actions/ASTWalkerAction.java
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/src/org/eclipse/ptp/pldt/sampleCDTstaticAnalysis/handlers/BuildCFGraphHandler.java
    tools/samples/org.eclipse.ptp.pldt.sampleCDTstaticAnalysis/src/org/eclipse/ptp/pldt/sampleCDTstaticAnalysis/handlers/BuildCallGraphHandler.java