#! /bin/sh

# We need to make our own copy of the eclipse platform in order to
# build against it.  We do this since the build root might already
# contain a copy of the plugin we are building -- and the eclipse
# releng scripts fail in this situation.  We put this script in the
# eclipse core so that it is easy to use from other spec files.

# Arguments are:
# * directory where results should end up (script will make it)
# * base location of eclipse platform install
# * an optional string that is used to select non-platform
#   plugins and features.  At present if a plugin or feature has
#   this as a substring, it will be included.  You need only run
#   this script once, it will link both the platform and the other
#   optionally-selected parts in a single invocation.

# Test to see if the minimum arguments
# are specified

if [ $# -lt 2 ]; then
  echo "Usage: copy-platform where eclipse_base optional_directories"
  echo "For example: copy-plaform ~/SDK /usr/share/eclipse cdt pydev jdt"
  exit 1
fi

where=$1; shift
eclipse=$1; shift

mkdir $where
cd $where
mkdir plugins features

# Are there any optional arguments left?
if [ $# -gt 0 ]; then
   for optional in "$@"; do
      (cd $eclipse; ls -d plugins/*"$optional"* features/*"$optional"*) |
      while read f; do
         ln -s $eclipse/$f $f
      done
   done
fi

# Code after this point is automatically created by eclipse.spec.
ln -s $eclipse/about.html about.html
ln -s $eclipse/about_files about_files
ln -s $eclipse/configuration configuration
ln -s $eclipse/eclipse eclipse
ln -s $eclipse/eclipse.ini eclipse.ini
ln -s $eclipse/epl-v10.html epl-v10.html
ln -s $eclipse/notice.html notice.html
ln -s $eclipse/readme readme
ln -s $eclipse/startup.jar startup.jar
ln -s $eclipse/features/org.eclipse.jdt.source_3.2.0.v20060609m-F7snq1fxia-Z4XP features/org.eclipse.jdt.source_3.2.0.v20060609m-F7snq1fxia-Z4XP
ln -s $eclipse/features/org.eclipse.jdt_3.2.0.v20060609m-F7snq1fxia-Z4XP features/org.eclipse.jdt_3.2.0.v20060609m-F7snq1fxia-Z4XP
ln -s $eclipse/features/org.eclipse.pde.source_3.2.0.v20060609m------6zXJJzJzJq features/org.eclipse.pde.source_3.2.0.v20060609m------6zXJJzJzJq
ln -s $eclipse/features/org.eclipse.pde_3.2.0.v20060609m------6zXJJzJzJq features/org.eclipse.pde_3.2.0.v20060609m------6zXJJzJzJq
ln -s $eclipse/features/org.eclipse.platform.source_3.2.0.v20060609m-BBt47n6hlEUsvBO features/org.eclipse.platform.source_3.2.0.v20060609m-BBt47n6hlEUsvBO
ln -s $eclipse/features/org.eclipse.platform_3.2.0.v20060609m-BBt47n6hlEUsvBO features/org.eclipse.platform_3.2.0.v20060609m-BBt47n6hlEUsvBO
ln -s $eclipse/features/org.eclipse.rcp.source_3.2.0.v20060609m-Swbi2VrNoh-MeGG features/org.eclipse.rcp.source_3.2.0.v20060609m-Swbi2VrNoh-MeGG
ln -s $eclipse/features/org.eclipse.rcp_3.2.0.v20060609m-Swbi2VrNoh-MeGG features/org.eclipse.rcp_3.2.0.v20060609m-Swbi2VrNoh-MeGG
ln -s $eclipse/features/org.eclipse.sdk_3.2.0.v20060609m-GpOJnQq-7es-zhF features/org.eclipse.sdk_3.2.0.v20060609m-GpOJnQq-7es-zhF
ln -s $eclipse/plugins/com.ibm.icu.source_3.4.4.1 plugins/com.ibm.icu.source_3.4.4.1
ln -s $eclipse/plugins/com.ibm.icu_3.4.4.1.jar plugins/com.ibm.icu_3.4.4.1.jar
ln -s $eclipse/plugins/com.jcraft.jsch_0.1.28.jar plugins/com.jcraft.jsch_0.1.28.jar
ln -s $eclipse/plugins/org.apache.ant_1.6.5 plugins/org.apache.ant_1.6.5
ln -s $eclipse/plugins/org.apache.lucene_1.4.103.v20060601 plugins/org.apache.lucene_1.4.103.v20060601
ln -s $eclipse/plugins/org.eclipse.ant.core_3.1.100.v20060531.jar plugins/org.eclipse.ant.core_3.1.100.v20060531.jar
ln -s $eclipse/plugins/org.eclipse.ant.ui_3.2.0.v20060531.jar plugins/org.eclipse.ant.ui_3.2.0.v20060531.jar
ln -s $eclipse/plugins/org.eclipse.compare_3.2.0.v20060605.jar plugins/org.eclipse.compare_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.core.boot_3.1.100.v20060603.jar plugins/org.eclipse.core.boot_3.1.100.v20060603.jar
ln -s $eclipse/plugins/org.eclipse.core.commands_3.2.0.I20060605-1400.jar plugins/org.eclipse.core.commands_3.2.0.I20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.core.contenttype_3.2.0.v20060603.jar plugins/org.eclipse.core.contenttype_3.2.0.v20060603.jar
ln -s $eclipse/plugins/org.eclipse.core.expressions_3.2.0.v20060605-1400.jar plugins/org.eclipse.core.expressions_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.core.filebuffers_3.2.0.v20060605-1400.jar plugins/org.eclipse.core.filebuffers_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.core.filesystem.linux.x86_64_1.0.0.v20060603.jar plugins/org.eclipse.core.filesystem.linux.x86_64_1.0.0.v20060603.jar
ln -s $eclipse/plugins/org.eclipse.core.filesystem_1.0.0.v20060603.jar plugins/org.eclipse.core.filesystem_1.0.0.v20060603.jar
ln -s $eclipse/plugins/org.eclipse.core.jobs_3.2.0.v20060603.jar plugins/org.eclipse.core.jobs_3.2.0.v20060603.jar
ln -s $eclipse/plugins/org.eclipse.core.resources.compatibility_3.2.0.v20060603.jar plugins/org.eclipse.core.resources.compatibility_3.2.0.v20060603.jar
ln -s $eclipse/plugins/org.eclipse.core.resources_3.2.0.v20060603.jar plugins/org.eclipse.core.resources_3.2.0.v20060603.jar
ln -s $eclipse/plugins/org.eclipse.core.runtime.compatibility.auth_3.2.0.v20060601.jar plugins/org.eclipse.core.runtime.compatibility.auth_3.2.0.v20060601.jar
ln -s $eclipse/plugins/org.eclipse.core.runtime.compatibility.registry_3.2.0.v20060603 plugins/org.eclipse.core.runtime.compatibility.registry_3.2.0.v20060603
ln -s $eclipse/plugins/org.eclipse.core.runtime.compatibility_3.1.100.v20060603.jar plugins/org.eclipse.core.runtime.compatibility_3.1.100.v20060603.jar
ln -s $eclipse/plugins/org.eclipse.core.runtime_3.2.0.v20060603.jar plugins/org.eclipse.core.runtime_3.2.0.v20060603.jar
ln -s $eclipse/plugins/org.eclipse.core.variables_3.1.100.v20060605.jar plugins/org.eclipse.core.variables_3.1.100.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.debug.core_3.2.0.v20060605.jar plugins/org.eclipse.debug.core_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.debug.ui_3.2.0.v20060605.jar plugins/org.eclipse.debug.ui_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.equinox.common_3.2.0.v20060603.jar plugins/org.eclipse.equinox.common_3.2.0.v20060603.jar
ln -s $eclipse/plugins/org.eclipse.equinox.preferences_3.2.0.v20060601.jar plugins/org.eclipse.equinox.preferences_3.2.0.v20060601.jar
ln -s $eclipse/plugins/org.eclipse.equinox.registry_3.2.0.v20060601.jar plugins/org.eclipse.equinox.registry_3.2.0.v20060601.jar
ln -s $eclipse/plugins/org.eclipse.help.appserver_3.1.100.v20060602.jar plugins/org.eclipse.help.appserver_3.1.100.v20060602.jar
ln -s $eclipse/plugins/org.eclipse.help.base_3.2.0.v20060601.jar plugins/org.eclipse.help.base_3.2.0.v20060601.jar
ln -s $eclipse/plugins/org.eclipse.help.ui_3.2.0.v20060602.jar plugins/org.eclipse.help.ui_3.2.0.v20060602.jar
ln -s $eclipse/plugins/org.eclipse.help.webapp_3.2.0.v20060602 plugins/org.eclipse.help.webapp_3.2.0.v20060602
ln -s $eclipse/plugins/org.eclipse.help_3.2.0.v20060602.jar plugins/org.eclipse.help_3.2.0.v20060602.jar
ln -s $eclipse/plugins/org.eclipse.jdt.core.manipulation_1.0.0.v20060605-1400.jar plugins/org.eclipse.jdt.core.manipulation_1.0.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.jdt.core_3.2.0.v_671.jar plugins/org.eclipse.jdt.core_3.2.0.v_671.jar
ln -s $eclipse/plugins/org.eclipse.jdt.debug.ui_3.2.0.v20060605.jar plugins/org.eclipse.jdt.debug.ui_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.jdt.debug_3.2.0.v20060605 plugins/org.eclipse.jdt.debug_3.2.0.v20060605
ln -s $eclipse/plugins/org.eclipse.jdt.doc.isv_3.2.0.v20060605-1400.jar plugins/org.eclipse.jdt.doc.isv_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.jdt.doc.user_3.2.0.v20060605-1400.jar plugins/org.eclipse.jdt.doc.user_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.jdt.junit.runtime_3.2.0.v20060605-1400 plugins/org.eclipse.jdt.junit.runtime_3.2.0.v20060605-1400
ln -s $eclipse/plugins/org.eclipse.jdt.junit_3.2.0.v20060605-1400 plugins/org.eclipse.jdt.junit_3.2.0.v20060605-1400
ln -s $eclipse/plugins/org.eclipse.jdt.launching_3.2.0.v20060605.jar plugins/org.eclipse.jdt.launching_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.jdt.source_3.2.0.v20060609m-F7snq1fxia-Z4XP plugins/org.eclipse.jdt.source_3.2.0.v20060609m-F7snq1fxia-Z4XP
ln -s $eclipse/plugins/org.eclipse.jdt.ui_3.2.0.v20060605-1400.jar plugins/org.eclipse.jdt.ui_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.jdt_3.2.0.v20060605-1400.jar plugins/org.eclipse.jdt_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.jface.databinding_1.0.0.I20060605-1400.jar plugins/org.eclipse.jface.databinding_1.0.0.I20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.jface.text_3.2.0.v20060605-1400.jar plugins/org.eclipse.jface.text_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.jface_3.2.0.I20060605-1400.jar plugins/org.eclipse.jface_3.2.0.I20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.ltk.core.refactoring_3.2.0.v20060605-1400.jar plugins/org.eclipse.ltk.core.refactoring_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.ltk.ui.refactoring_3.2.0.v20060605-1400.jar plugins/org.eclipse.ltk.ui.refactoring_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.osgi.services_3.1.100.v20060601.jar plugins/org.eclipse.osgi.services_3.1.100.v20060601.jar
ln -s $eclipse/plugins/org.eclipse.osgi.util_3.1.100.v20060601.jar plugins/org.eclipse.osgi.util_3.1.100.v20060601.jar
ln -s $eclipse/plugins/org.eclipse.osgi_3.2.0.v20060601.jar plugins/org.eclipse.osgi_3.2.0.v20060601.jar
ln -s $eclipse/plugins/org.eclipse.pde.build plugins/org.eclipse.pde.build
ln -s $eclipse/plugins/org.eclipse.pde.build_3.2.0.v20060603 plugins/org.eclipse.pde.build_3.2.0.v20060603
ln -s $eclipse/plugins/org.eclipse.pde.core_3.2.0.v20060605.jar plugins/org.eclipse.pde.core_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.pde.doc.user_3.2.0.v20060605.jar plugins/org.eclipse.pde.doc.user_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.pde.junit.runtime_3.2.0.v20060605.jar plugins/org.eclipse.pde.junit.runtime_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.pde.runtime_3.2.0.v20060605.jar plugins/org.eclipse.pde.runtime_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.pde.source_3.2.0.v20060609m------6zXJJzJzJq plugins/org.eclipse.pde.source_3.2.0.v20060609m------6zXJJzJzJq
ln -s $eclipse/plugins/org.eclipse.pde.ui_3.2.0.v20060605.jar plugins/org.eclipse.pde.ui_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.pde_3.2.0.v20060605.jar plugins/org.eclipse.pde_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.platform.doc.isv_3.2.0.v20060612-0900.jar plugins/org.eclipse.platform.doc.isv_3.2.0.v20060612-0900.jar
ln -s $eclipse/plugins/org.eclipse.platform.doc.user_3.2.0.v20060605.jar plugins/org.eclipse.platform.doc.user_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.platform.source.linux.gtk.x86_64_3.2.0.v20060609m-BBt47n6hlEUsvBO plugins/org.eclipse.platform.source.linux.gtk.x86_64_3.2.0.v20060609m-BBt47n6hlEUsvBO
ln -s $eclipse/plugins/org.eclipse.platform.source_3.2.0.v20060609m-BBt47n6hlEUsvBO plugins/org.eclipse.platform.source_3.2.0.v20060609m-BBt47n6hlEUsvBO
ln -s $eclipse/plugins/org.eclipse.platform_3.2.0.v20060601 plugins/org.eclipse.platform_3.2.0.v20060601
ln -s $eclipse/plugins/org.eclipse.rcp.source.linux.gtk.x86_64_3.2.0.v20060609m-Swbi2VrNoh-MeGG plugins/org.eclipse.rcp.source.linux.gtk.x86_64_3.2.0.v20060609m-Swbi2VrNoh-MeGG
ln -s $eclipse/plugins/org.eclipse.rcp.source_3.2.0.v20060609m-Swbi2VrNoh-MeGG plugins/org.eclipse.rcp.source_3.2.0.v20060609m-Swbi2VrNoh-MeGG
ln -s $eclipse/plugins/org.eclipse.rcp_3.2.0.v20060605.jar plugins/org.eclipse.rcp_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.sdk_3.2.0.v20060605 plugins/org.eclipse.sdk_3.2.0.v20060605
ln -s $eclipse/plugins/org.eclipse.search_3.2.0.v20060605-1400.jar plugins/org.eclipse.search_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.swt.gtk.linux.x86_64_3.2.0.v3232m.jar plugins/org.eclipse.swt.gtk.linux.x86_64_3.2.0.v3232m.jar
ln -s $eclipse/plugins/org.eclipse.swt_3.2.0.v3232o.jar plugins/org.eclipse.swt_3.2.0.v3232o.jar
ln -s $eclipse/plugins/org.eclipse.team.core_3.2.0.I200606051140.jar plugins/org.eclipse.team.core_3.2.0.I200606051140.jar
ln -s $eclipse/plugins/org.eclipse.team.cvs.core_3.2.0.M20060628.jar plugins/org.eclipse.team.cvs.core_3.2.0.M20060628.jar
ln -s $eclipse/plugins/org.eclipse.team.cvs.ssh2_3.2.0.I200606051140.jar plugins/org.eclipse.team.cvs.ssh2_3.2.0.I200606051140.jar
ln -s $eclipse/plugins/org.eclipse.team.cvs.ssh_3.2.0.I200606011710.jar plugins/org.eclipse.team.cvs.ssh_3.2.0.I200606011710.jar
ln -s $eclipse/plugins/org.eclipse.team.cvs.ui_3.2.0.I200606051140.jar plugins/org.eclipse.team.cvs.ui_3.2.0.I200606051140.jar
ln -s $eclipse/plugins/org.eclipse.team.ui_3.2.0.I200606051140.jar plugins/org.eclipse.team.ui_3.2.0.I200606051140.jar
ln -s $eclipse/plugins/org.eclipse.text_3.2.0.v20060605-1400.jar plugins/org.eclipse.text_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.tomcat_5.5.17.v20060601 plugins/org.eclipse.tomcat_5.5.17.v20060601
ln -s $eclipse/plugins/org.eclipse.ui.browser_3.2.0.v20060602.jar plugins/org.eclipse.ui.browser_3.2.0.v20060602.jar
ln -s $eclipse/plugins/org.eclipse.ui.cheatsheets_3.2.0.v20060602.jar plugins/org.eclipse.ui.cheatsheets_3.2.0.v20060602.jar
ln -s $eclipse/plugins/org.eclipse.ui.console_3.1.100.v20060605.jar plugins/org.eclipse.ui.console_3.1.100.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.ui.editors_3.2.0.v20060605-1400.jar plugins/org.eclipse.ui.editors_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.ui.externaltools_3.1.100.v20060605.jar plugins/org.eclipse.ui.externaltools_3.1.100.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.ui.forms_3.2.0.v20060602.jar plugins/org.eclipse.ui.forms_3.2.0.v20060602.jar
ln -s $eclipse/plugins/org.eclipse.ui.ide_3.2.0.I20060605-1400.jar plugins/org.eclipse.ui.ide_3.2.0.I20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.ui.intro.universal_3.2.0.v20060602 plugins/org.eclipse.ui.intro.universal_3.2.0.v20060602
ln -s $eclipse/plugins/org.eclipse.ui.intro_3.2.0.v20060601.jar plugins/org.eclipse.ui.intro_3.2.0.v20060601.jar
ln -s $eclipse/plugins/org.eclipse.ui.navigator.resources_3.2.0.I20060605-1400.jar plugins/org.eclipse.ui.navigator.resources_3.2.0.I20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.ui.navigator_3.2.0.I20060605-1400.jar plugins/org.eclipse.ui.navigator_3.2.0.I20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.ui.presentations.r21_3.2.0.I20060605-1400.jar plugins/org.eclipse.ui.presentations.r21_3.2.0.I20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.ui.views.properties.tabbed_3.2.0.I20060605-1400.jar plugins/org.eclipse.ui.views.properties.tabbed_3.2.0.I20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.ui.views_3.2.0.I20060605-1400.jar plugins/org.eclipse.ui.views_3.2.0.I20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.ui.workbench.compatibility_3.2.0.I20060605-1400 plugins/org.eclipse.ui.workbench.compatibility_3.2.0.I20060605-1400
ln -s $eclipse/plugins/org.eclipse.ui.workbench.texteditor_3.2.0.v20060605-1400.jar plugins/org.eclipse.ui.workbench.texteditor_3.2.0.v20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.ui.workbench_3.2.0.I20060605-1400.jar plugins/org.eclipse.ui.workbench_3.2.0.I20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.ui_3.2.0.I20060605-1400.jar plugins/org.eclipse.ui_3.2.0.I20060605-1400.jar
ln -s $eclipse/plugins/org.eclipse.update.configurator_3.2.0.v20060605.jar plugins/org.eclipse.update.configurator_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.update.core.linux_3.2.0.v20060605.jar plugins/org.eclipse.update.core.linux_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.update.core_3.2.0.v20060605.jar plugins/org.eclipse.update.core_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.update.scheduler_3.2.0.v20060605.jar plugins/org.eclipse.update.scheduler_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.eclipse.update.ui_3.2.0.v20060605.jar plugins/org.eclipse.update.ui_3.2.0.v20060605.jar
ln -s $eclipse/plugins/org.junit_3.8.1 plugins/org.junit_3.8.1
