<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>

<product name="Eclipse for Testers" uid="epp.package.testing" id="org.eclipse.epp.package.testing.product" application="org.eclipse.ui.ide.workbench" version="2.0.2.qualifier" useFeatures="true" includeLaunchers="true">

   <aboutInfo>
      <text>
         Specified in the plugin.xml of the branding plugin.
      </text>
   </aboutInfo>

   <configIni use="default">
   </configIni>

   <launcherArgs>
      <programArgs>-product org.eclipse.epp.package.testing.product
--launcher.defaultAction openFile</programArgs>
      <programArgsWin>--launcher.XXMaxPermSize
256M</programArgsWin>
      <vmArgs>-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx512m</vmArgs>
      <vmArgsLin>-XX:MaxPermSize=256m</vmArgsLin>
      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
-XX:MaxPermSize=256m</vmArgsMac>
   </launcherArgs>

   <windowImages i16="/org.eclipse.epp.package.testing/eclipse.png" i32="/org.eclipse.epp.package.testing/eclipse32.png" i48="/org.eclipse.epp.package.testing/eclipse48.png"/>

   <splash
      startupProgressRect="0,280,455,15"
      startupMessageRect="7,220,441,20"
      startupForegroundColor="C8D5EA" />
   <launcher name="eclipse">
      <solaris/>
      <win useIco="false">
         <bmp/>
      </win>
   </launcher>

   <intro introId="org.eclipse.ui.intro.universal"/>

   <vm>
      <linux include="true">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5</linux>
      <macos include="true">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5</macos>
      <solaris include="true">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5</solaris>
      <windows include="true">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5</windows>
   </vm>

   <plugins>
      <plugin id="org.eclipse.epp.package.testing"/>
   </plugins>

   <features>
      <feature id="org.eclipse.epp.package.testing.feature" version="2.0.2.qualifier"/>
   </features>


</product>
