/*
******************************************************************************
*
*   Copyright (C) 2011, International Business Machines
*   Corporation and others.  All Rights Reserved.
*
******************************************************************************
*
* Note: Windows build with MSVC Solution/Project files creates platform.h from
*       platform.win buring common library build.  This file is an empty header
*       file to ensure the #include "unicode/platform.h" statement works.
*       If ICU4C is built with Cywin using MSVC, the normal autoconf generated
*       platform.h file will be used instead of this empty header file.  This
*       will help the user of ICU to know whether ICU was built with Cygwin using
*       MSVC or was built with just the MSVC Solution/Project files.
*/

#ifndef _PLATFORM_H
#define _PLATFORM_H
/*
 * This header file should be kept empty unless a Windows specific definition or
 * configuration is needed.
 */
#endif

