<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2012, 2015 Eclipse Foundation and others.
  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
-->
<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">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <artifactId>eclipse.platform.resources</artifactId>
    <groupId>eclipse.platform.resources</groupId>
    <version>4.15.0-SNAPSHOT</version>
    <relativePath>../../</relativePath>
  </parent>
  <groupId>org.eclipse.core</groupId>
  <artifactId>org.eclipse.core.resources.win32.x86_64</artifactId>
  <version>3.5.400-SNAPSHOT</version>
  <packaging>eclipse-plugin</packaging>

  <properties>
    <skipAPIAnalysis>true</skipAPIAnalysis>
  </properties>

  <build>
    <plugins>
      <!-- tycho is not able to automatically determine os/ws/arch of this bundle -->
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>target-platform-configuration</artifactId>
        <version>${tycho.version}</version>
        <configuration>
          <resolver>p2</resolver>
          <environments>
            <environment>
              <os>win32</os>
              <ws>win32</ws>
              <arch>x86_64</arch>
            </environment>
          </environments>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
