<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2012 Eclipse Foundation.
  All rights reserved. This program and the accompanying materials
  are made available under the terms of the Eclipse Distribution License v1.0
  which accompanies this distribution, and is available at
  http://www.eclipse.org/org/documents/edl-v10.php
 
  Contributors:
     Igor Fedorenko - initial implementation
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<parent>
		<artifactId>org.eclipse.equinox.p2-parent</artifactId>
		<groupId>org.eclipse</groupId>
		<version>4.7.1-SNAPSHOT</version>
		<relativePath>../org.eclipse.equinox.p2-parent</relativePath>
	</parent>
	<modelVersion>4.0.0</modelVersion>
	<groupId>org.eclipse</groupId>
	<artifactId>org.eclipse.equinox.p2-aggregator</artifactId>
	<version>4.7.1-SNAPSHOT</version>
	<packaging>pom</packaging>

	<modules>
		<module>../../bundles/ie.wombat.jbdiff</module>
		<module>../../bundles/ie.wombat.jbdiff.test</module>
		<module>../../bundles/org.eclipse.equinox.frameworkadmin</module>
		<module>../../bundles/org.eclipse.equinox.frameworkadmin.equinox</module>
		<module>../../bundles/org.eclipse.equinox.frameworkadmin.test</module>
		<module>../../bundles/org.eclipse.equinox.p2.artifact.optimizers</module>
		<module>../../bundles/org.eclipse.equinox.p2.artifact.processors</module>
		<module>../../bundles/org.eclipse.equinox.p2.artifact.repository</module>
		<module>../../bundles/org.eclipse.equinox.p2.console</module>
		<module>../../bundles/org.eclipse.equinox.p2.core</module>
		<module>../../features/org.eclipse.equinox.p2.core.feature</module>
		<module>../../bundles/org.eclipse.equinox.p2.director</module>
		<module>../../bundles/org.eclipse.equinox.p2.director.app</module>
		<module>../../bundles/org.eclipse.equinox.p2.directorywatcher</module>
		<module>../../bundles/org.eclipse.equinox.p2.discovery</module>
		<module>../../bundles/org.eclipse.equinox.p2.discovery.compatibility</module>
		<module>../../bundles/org.eclipse.equinox.p2.engine</module>
		<module>../../bundles/org.eclipse.equinox.p2.extensionlocation</module>
		<module>../../features/org.eclipse.equinox.p2.extras.feature</module>
		<module>../../bundles/org.eclipse.equinox.p2.garbagecollector</module>
		<module>../../bundles/org.eclipse.equinox.p2.installer</module>
		<module>../../bundles/org.eclipse.equinox.p2.jarprocessor</module>
		<module>../../bundles/org.eclipse.equinox.p2.metadata</module>
		<module>../../bundles/org.eclipse.equinox.p2.metadata.repository</module>
		<module>../../bundles/org.eclipse.equinox.p2.operations</module>
		<module>../../bundles/org.eclipse.equinox.p2.publisher</module>
		<module>../../bundles/org.eclipse.equinox.p2.reconciler.dropins</module>
		<module>../../bundles/org.eclipse.equinox.p2.repository</module>
		<module>../../bundles/org.eclipse.equinox.p2.repository.tools</module>
		<module>../../bundles/org.eclipse.equinox.p2.sar</module>
		<module>../../bundles/org.eclipse.equinox.p2.tests</module>
<!--		<module>../../bundles/org.eclipse.equinox.p2.tests.discovery</module>-->
<!--		<module>../../bundles/org.eclipse.equinox.p2.tests.ui</module>-->
<!--		<module>../../bundles/org.eclipse.equinox.p2.tests.verifier</module> -->
<!--		<module>../../bundles/org.eclipse.equinox.p2.testserver</module>-->
		<module>../../bundles/org.eclipse.equinox.p2.touchpoint.eclipse</module>
		<module>../../bundles/org.eclipse.equinox.p2.touchpoint.natives</module>
		<module>../../bundles/org.eclipse.equinox.p2.transport.ecf</module>
		<module>../../bundles/org.eclipse.equinox.p2.ui</module>
		<module>../../bundles/org.eclipse.equinox.p2.ui.importexport</module>
		<module>../../bundles/org.eclipse.equinox.p2.ui.admin</module>
		<module>../../bundles/org.eclipse.equinox.p2.ui.admin.rcp</module>
		<module>../../bundles/org.eclipse.equinox.p2.ui.discovery</module>
		<module>../../bundles/org.eclipse.equinox.p2.ui.sdk</module>
		<module>../../bundles/org.eclipse.equinox.p2.ui.sdk.scheduler</module>
		<module>../../bundles/org.eclipse.equinox.p2.updatechecker</module>
		<module>../../bundles/org.eclipse.equinox.p2.updatesite</module>
		<module>../../bundles/org.eclipse.equinox.simpleconfigurator</module>
		<module>../../bundles/org.eclipse.equinox.simpleconfigurator.manipulator</module>
		<module>../../bundles/org.eclipse.equinox.p2.publisher.eclipse</module>

        <module>../../features/org.eclipse.equinox.p2.user.ui</module>
        <module>../../features/org.eclipse.equinox.p2.rcp.feature</module>
        <module>../../features/org.eclipse.equinox.p2.sdk</module>
        <module>../../features/org.eclipse.equinox.p2.discovery.feature</module>
	</modules>
</project>
