tree e69e2c5d89a6c4bcc33201e2fa6888fcff1d7263
parent bc94c7605c5000454f81030a57a17eeae6f4aa25
author cvs2svn <platform-releng-dev@eclipse.org> 1042540431 +0000
committer cvs2svn <platform-releng-dev@eclipse.org> 1042540431 +0000

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

Sprout from master 2003-01-14 09:42:14 UTC Martin Aeschlimann <maeschli> 'detect output folder'
Cherrypick from master 2003-01-14 10:33:50 UTC Dani Megert <dmegert> 'Buildnotes for 20030114':
    org.eclipse.jdt.ui/buildnotes_jdt-ui.html
Delete:
    org.eclipse.jdt.ui.vcm/.classpath
    org.eclipse.jdt.ui.vcm/.cvsignore
    org.eclipse.jdt.ui.vcm/.project
    org.eclipse.jdt.ui.vcm/.vcm_meta
    org.eclipse.jdt.ui.vcm/about.html
    org.eclipse.jdt.ui.vcm/build.properties
    org.eclipse.jdt.ui.vcm/plugin.properties
    org.eclipse.jdt.ui.vcm/plugin.xml.off
    org.eclipse.jdt.ui.vcm/scripts/exportplugin.xml
    org.junit/.classpath
    org.junit/.project
    org.junit/about.html
    org.junit/build.properties
    org.junit/junit.jar
    org.junit/junitsrc.zip
    org.junit/plugin.properties
    org.junit/plugin.xml
    org.junit/scripts/exportplugin.xml