/* Resources for gettextpo.dll */

#include <winver.h>

VS_VERSION_INFO VERSIONINFO
 FILEVERSION PACKAGE_VERSION_MAJOR,PACKAGE_VERSION_MINOR,PACKAGE_VERSION_SUBMINOR,0
 PRODUCTVERSION PACKAGE_VERSION_MAJOR,PACKAGE_VERSION_MINOR,PACKAGE_VERSION_SUBMINOR,0
 FILEFLAGSMASK 0x3fL /* VS_FFI_FILEFLAGSMASK */
#ifdef _DEBUG
 FILEFLAGS 0x1L  /* VS_FF_DEBUG */
#else
 FILEFLAGS 0x0L
#endif
 FILEOS 0x10004L  /* VOS_DOS_WINDOWS32 */
 FILETYPE 0x2L  /* VFT_DLL */
 FILESUBTYPE 0x0L  /* VFT2_UNKNOWN */
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
        BLOCK "04090000"  /* Lang = US English, Charset = ASCII */
        BEGIN
            VALUE "Comments", "This library is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License. You should have received a copy of the GNU General Public License along with this library. If not, see <https://www.gnu.org/licenses/>.\0"
            VALUE "CompanyName", "Free Software Foundation\0"
            VALUE "FileDescription", "GPLed libgettextpo for Windows\0"
            VALUE "FileVersion", PACKAGE_VERSION_STRING "\0"
            VALUE "InternalName", "gettextpo.dll\0"
            VALUE "LegalCopyright", "Copyright (C) 1995-2019\0"
            VALUE "LegalTrademarks", "\0"
            VALUE "OriginalFilename", "gettextpo.dll\0"
            VALUE "ProductName", "GNU libgettextpo: public API for PO files\0"
            VALUE "ProductVersion", PACKAGE_VERSION_STRING "\0"
        END
    END
    BLOCK "VarFileInfo"
    BEGIN
        VALUE "Translation", 0x0409, 0  /* US English, ASCII */
    END
END
