Home | History | Annotate | Download | only in scripts
      1 #define PNG_VERSION_INFO_ONLY
      2 
      3 #include <windows.h>
      4 #include "../png.h"
      5 
      6 #define _QUOTE(x) # x
      7 #define QUOTE(x) _QUOTE(x)
      8 
      9 #define PNG_LIBPNG_DLLFNAME "LIBPNG"
     10 
     11 /* Support deprecated PRIVATEBUILD macro */
     12 #if defined(PRIVATEBUILD) && !defined(PNG_USER_PRIVATEBUILD)
     13 #  define PNG_USER_PRIVATEBUILD PRIVATEBUILD
     14 #endif
     15 
     16 #if defined(PNG_USER_DLLFNAME_POSTFIX) && !defined(PNG_USER_PRIVATEBUILD)
     17 #  error "PNG_USER_PRIVATEBUILD must be defined as a string describing the\
     18  custom changes made to the library."
     19 #endif
     20 
     21 /* Prioritize PNG_USER_x over PNG_LIBPNG_x */
     22 #ifdef PNG_USER_DLLFNAME_POSTFIX
     23 #  undef PNG_LIBPNG_DLLFNAME_POSTFIX
     24 #  define PNG_LIBPNG_DLLFNAME_POSTFIX PNG_USER_DLLFNAME_POSTFIX
     25 #endif
     26 
     27 #ifdef PNG_USER_VERSIONINFO_COMMENTS
     28 #  undef PNG_LIBPNG_VERSIONINFO_COMMENTS
     29 #  define PNG_LIBPNG_VERSIONINFO_COMMENTS PNG_USER_VERSIONINFO_COMMENTS
     30 #endif
     31 
     32 #if defined(PNG_DEBUG) && (PNG_DEBUG > 0)
     33 #  define VS_DEBUG VS_FF_DEBUG
     34 #  ifndef PNG_LIBPNG_DLLFNAME_POSTFIX
     35 #    define PNG_LIBPNG_DLLFNAME_POSTFIX "D"
     36 #  endif /* PNG_LIBPNG_DLLFNAME_POSTFIX */
     37 #  ifndef PNG_LIBPNG_VERSIONINFO_COMMENTS
     38 #    define PNG_LIBPNG_VERSIONINFO_COMMENTS "PNG_DEBUG=" QUOTE(PNG_DEBUG)
     39 #  endif /* PNG_LIBPNG_VERSIONINFO_COMMENTS */
     40 #else
     41 #  define VS_DEBUG 0
     42 #  ifndef PNG_LIBPNG_DLLFNAME_POSTFIX
     43 #     define PNG_LIBPNG_DLLFNAME_POSTFIX
     44 #  endif /* PNG_LIBPNG_DLLFNAME_POSTFIX */
     45 #endif /* defined(DEBUG)... */
     46 
     47 #ifdef PNG_USER_PRIVATEBUILD
     48 #  define VS_PRIVATEBUILD VS_FF_PRIVATEBUILD
     49 #else
     50 #  define VS_PRIVATEBUILD 0
     51 #endif /* PNG_USER_PRIVATEBUILD */
     52 
     53 #ifdef PNG_LIBPNG_SPECIALBUILD
     54 #  define VS_SPECIALBUILD VS_FF_SPECIALBUILD
     55 #else
     56 #  define VS_SPECIALBUILD 0
     57 #endif /* PNG_LIBPNG_BUILD_SPECIAL */
     58 
     59 #if ((PNG_LIBPNG_BUILD_BASE_TYPE & PNG_LIBPNG_RELEASE_STATUS_MASK) !=\
     60       PNG_LIBPNG_BUILD_STABLE)
     61 #  define VS_PRERELEASE VS_FF_PRERELEASE
     62 #  define VS_PATCHED 0
     63 #else
     64 #  define VS_PRERELEASE 0
     65 #  if (PNG_LIBPNG_BUILD_BASE_TYPE & PNG_LIBPNG_BUILD_PATCHED)
     66 #    define VS_PATCHED VS_FF_PATCHED
     67 #  else
     68 #    define VS_PATCHED 0
     69 #  endif
     70 #endif
     71 
     72 VS_VERSION_INFO VERSIONINFO
     73 FILEVERSION PNG_LIBPNG_VER_MAJOR, PNG_LIBPNG_VER_MINOR, PNG_LIBPNG_VER_RELEASE, PNG_LIBPNG_VER_BUILD
     74 PRODUCTVERSION PNG_LIBPNG_VER_MAJOR, PNG_LIBPNG_VER_MINOR, PNG_LIBPNG_VER_RELEASE, PNG_LIBPNG_VER_BUILD
     75 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
     76 FILEFLAGS VS_DEBUG | VS_PRIVATEBUILD | VS_SPECIALBUILD | VS_PRERELEASE | VS_PATCHED
     77 FILEOS VOS__WINDOWS32
     78 FILETYPE VFT_DLL
     79 FILESUBTYPE VFT2_UNKNOWN
     80 BEGIN
     81   BLOCK "StringFileInfo"
     82   BEGIN BLOCK "040904E4" /* Language type = U.S English(0x0409) and Character Set = Windows, Multilingual(0x04E4) */
     83     BEGIN
     84 #ifdef PNG_LIBPNG_VERSIONINFO_COMMENTS
     85       VALUE "Comments", PNG_LIBPNG_VERSIONINFO_COMMENTS "\000"
     86 #endif /* PNG_LIBPNG_VERSIONINFO_COMMENTS */
     87 #ifdef PNG_USER_VERSIONINFO_COMPANYNAME
     88       VALUE "CompanyName", PNG_USER_VERSIONINFO_COMPANYNAME "\000"
     89 #endif /* PNG_USER_VERSIONINFO_COMPANYNAME */
     90       VALUE "FileDescription", "PNG image compression library\000"
     91       VALUE "FileVersion", PNG_LIBPNG_VER_STRING "\000"
     92       VALUE "InternalName", PNG_LIBPNG_DLLFNAME QUOTE(PNG_LIBPNG_VER_DLLNUM) PNG_LIBPNG_DLLFNAME_POSTFIX " (Windows 32 bit)\000"
     93       VALUE "LegalCopyright", "\251 1998-2009 Glenn Randers-Pehrson et al.\000"
     94 #ifdef PNG_USER_VERSIONINFO_LEGALTRADEMARKS
     95       VALUE "LegalTrademarks", PNG_USER_VERSIONINFO_LEGALTRADEMARKS "\000"
     96 #endif /* PNG_USER_VERSIONINFO_LEGALTRADEMARKS */
     97       VALUE "OriginalFilename", PNG_LIBPNG_DLLFNAME QUOTE(PNG_LIBPNG_VER_DLLNUM) PNG_LIBPNG_DLLFNAME_POSTFIX ".DLL\000"
     98 #ifdef PNG_USER_PRIVATEBUILD
     99       VALUE "PrivateBuild", PNG_USER_PRIVATEBUILD "\000"
    100 #endif /* PNG_USER_PRIVATEBUILD */
    101       VALUE "ProductName", "LibPNG\000"
    102       VALUE "ProductVersion", "1\000"
    103 #ifdef PNG_LIBPNG_SPECIALBUILD
    104       VALUE "SpecialBuild", PNG_LIBPNG_SPECIALBUILD "\000"
    105 #endif /* PNG_LIBPNG_SPECIALBUILD */
    106     END
    107   END
    108   BLOCK "VarFileInfo"
    109   BEGIN
    110     VALUE "Translation", 0x0409, 0x04E4
    111   END
    112 END
    113