<?xml version="1.0" encoding="UTF-8"?>
<!--
   Copyright (C) 2011, 2018 Red Hat, Inc.

   This program and the accompanying materials are made
   available under the terms of the Eclipse Public License 2.0
   which is available at https://www.eclipse.org/legal/epl-2.0/
  
   SPDX-License-Identifier: EPL-2.0
-->

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.eclipse.linuxtools</groupId>
    <artifactId>linuxtools-parent</artifactId>
    <version>8.1.0</version>
  </parent>

  <groupId>org.eclipse.linuxtools.cdt.libhover</groupId>
  <artifactId>linuxtools-libhover-parent</artifactId>
  <packaging>pom</packaging>

  <name>Linux Tools Libhover Parent</name>

  <modules>
    <module>org.eclipse.linuxtools.cdt.libhover</module>
    <module>org.eclipse.linuxtools.cdt.libhover-feature</module>
    <module>org.eclipse.linuxtools.cdt.libhover.glibc</module>
    <module>org.eclipse.linuxtools.cdt.libhover.library.docs</module>
    <module>org.eclipse.linuxtools.cdt.libhover.libstdcxx</module>
    <module>org.eclipse.linuxtools.cdt.libhover.newlib</module>
    <module>org.eclipse.linuxtools.cdt.libhover.newlib-feature</module>
    <module>org.eclipse.linuxtools.cdt.libhover.devhelp</module>
    <module>org.eclipse.linuxtools.cdt.libhover.devhelp.tests</module>
    <module>org.eclipse.linuxtools.cdt.libhover.devhelp-feature</module>
    <module>org.eclipse.linuxtools.cdt.libhover.tests</module>
  </modules>

</project>
