<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <!-- Package Description information to be picked up by www.eclipse.org/packages -->
  <!-- PackageName is the title of your package 
       maintainer is the project or persons that are maintaining the package
       iconurl is the fully qualified URL to the icon you wish to use on the site (48x48)
       bugzillaComponentID is used to gather bugzilla information about your package.  This should be given to you after provisioning of the package is finished
       testPlan is the fully qualified URL to the test plan for this package
   -->
  <packageMetaData
   packageName="Eclipse for Parallel Application Developers"
   maintainer="Eclipse Packaging Project"
   iconurl="http://www.eclipse.org/downloads/images/parallel.png"
   bugzillaComponentId="parallel-package"
   testPlan="http://www.eclipse.org/epp/testplan.php" >
    <!-- Description is wrapped in CDATA tags to allow you to insert HTML code if necessary -->
     <description><![CDATA[Tools for C, C++, Fortran, and UPC, including MPI, OpenMP, OpenACC, a parallel debugger, and remotely building, running and monitoring applications.]]></description>
    <!-- packageTesters is a list of the people that are testing the package -->
     <packageTesters>
      <tester>Greg Watson</tester>
    </packageTesters>
  </packageMetaData>
  <MoreInfo>
  <NewAndNoteworthy
    url="https://wiki.eclipse.org/PTP/new_and_noteworthy/9.1.0"
    project="Eclipse PTP" />
  <NewAndNoteworthy
    url="https://www.eclipse.org/eclipse/news/4.6/"
    project="Eclipse Platform" />
  <NewAndNoteworthy
    url="https://wiki.eclipse.org/CDT/User/NewIn90"
    project="Eclipse CDT" />
  <NewAndNoteworthy
    url="https://wiki.eclipse.org/Linux_Tools_Project/News/NewIn50"
    project="Eclipse Linux Tools" />
  <NewAndNoteworthy
    url="https://www.eclipse.org/mylyn/new/"
    project="Eclipse Mylyn" />
  </MoreInfo>
  

	<!-- version, the RCP version to build. This is used to determine the file 
    name of the root file archives -->
	<rcp version="4.6.3" />

	<!-- name, the name of the product, used in naming the created files. -->
	<product name="eclipse-parallel-neon-3" />

</configuration>
