blob: 30bc819f18daf73539d0750813325e2581443aa0 [file] [log] [blame]
/* **********************************************************
* Copyright (c) 2014 Google, Inc. All rights reserved.
* Copyright (c) 2003-2010 VMware, Inc. All rights reserved.
* **********************************************************/
/*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* * Neither the name of VMware, Inc. nor the names of its contributors may be
* used to endorse or promote products derived from this software without
* specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL VMWARE, INC. OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
* DAMAGE.
*/
/* Copyright (c) 2003-2007 Determina Corp. */
/* resources.rc
*
* adds Version information to a dll
* that can be used by the installer (and by forgetful engineers in Explorer
* file properties), assumes that FILE_NAME, FILE_DESCRIPTION and FILE_TYPE are defined
* externally to this file
*/
/* Support Extensions including this file */
#ifdef DEBUG
# undef DEBUG
#endif
#ifdef WINDOWS
# undef WINDOWS
#endif
#ifdef ASSEMBLE_WITH_MASM
# undef ASSEMBLE_WITH_MASM
#endif
#include "configure.h"
#include "winresrc.h" /* avoiding winres.h from MFC */
#ifdef INCLUDE_EVENTS
# include "events.rc"
#endif
/* get PRODUCT_NAME, etc, constants */
#include "globals_shared.h"
/* difficult to pass spaces in defines from cmake to nmake so we hardcode */
#ifdef RC_IS_CORE
# define FILE_NAME DYNAMORIO_LIBRARY_NAME
# define FILE_DESCRIPTION PRODUCT_NAME " core library"
# define FILE_TYPE VFT_DLL
#elif defined(RC_IS_PRELOAD)
# define FILE_NAME INJECT_DLL_NAME
# define FILE_DESCRIPTION PRODUCT_NAME " systemwide injector library"
# define FILE_TYPE VFT_DLL
#elif defined(RC_IS_DRINJECTLIB)
# define FILE_NAME "drinjectlib.dll"
# define FILE_DESCRIPTION PRODUCT_NAME " injection utility library"
# define FILE_TYPE VFT_DLL
#elif defined(RC_IS_EARLY1)
# define FILE_NAME INJECT_HELPER_DLL1_NAME
# define FILE_DESCRIPTION PRODUCT_NAME " additional win2k injector library"
# define FILE_TYPE VFT_DLL
#elif defined(RC_IS_EARLY2)
# define FILE_NAME INJECT_HELPER_DLL2_NAME
# define FILE_DESCRIPTION PRODUCT_NAME " additional win2k injector library"
# define FILE_TYPE VFT_DLL
/* libutil */
#elif defined(RC_IS_DRCONFIGLIB)
# define FILE_NAME "drconfiglib.dll"
# define FILE_DESCRIPTION PRODUCT_NAME " configuration library"
# define FILE_TYPE VFT_DLL
#elif defined(RC_IS_DUMPEVTS)
# define FILE_NAME "dumpevts.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " event dumping tool"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_MFAPI)
# define FILE_NAME "mfapi.dll"
# define FILE_DESCRIPTION PRODUCT_NAME " MF API interface library"
# define FILE_TYPE VFT_DLL
/* tools */
#elif defined(RC_IS_DRview)
# define FILE_NAME "DRview.Exe"
# define FILE_DESCRIPTION PRODUCT_NAME " cmd line status viewer"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_DRcontrol)
# define FILE_NAME "DRcontrol.Exe"
# define FILE_DESCRIPTION PRODUCT_NAME " cmd line configuration tool"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_DRkill)
# define FILE_NAME "DRkill.Exe"
# define FILE_DESCRIPTION PRODUCT_NAME " process terminating utility"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_closewnd)
# define FILE_NAME "closewnd.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " closes window app"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_winstats)
# define FILE_NAME "winstats.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " gathers memory stats"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_svccntrl)
# define FILE_NAME "svccntrl.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " cmd line services configuration utility"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_DRload)
# define FILE_NAME "DRload.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " loads a dll for analysis"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_balloon)
# define FILE_NAME "balloon.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " out of memory testing tool"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_dummy)
# define FILE_NAME "dummy.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " dummy process for ldmp creation"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_ldmp)
# define FILE_NAME "ldmp.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " .ldmp reading tool"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_drconfig)
# define FILE_NAME "drconfig.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " configuration command-line utility"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_drrun)
# define FILE_NAME "drrun.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " configure-and-run command-line utility"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_drinject)
# define FILE_NAME DRINJECT_NAME
# define FILE_DESCRIPTION PRODUCT_NAME " injection utility"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_runjob)
# define FILE_NAME "runjob.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " job limit testing tool"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_readproc)
# define FILE_NAME "readproc.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " dump process memory"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_drdel)
# define FILE_NAME "drdel.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " delete from file cache"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_create_process)
# define FILE_NAME "create_process.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " process creation utility"
# define FILE_TYPE VFT_APP
/* extensions */
#elif defined(RC_IS_drgui)
# define FILE_NAME "drgui.exe"
# define FILE_DESCRIPTION PRODUCT_NAME " GUI framework"
# define FILE_TYPE VFT_APP
#elif defined(RC_IS_drwrap) || defined(RC_IS_drwrap_static)
# define FILE_NAME "drwrap.dll"
# define FILE_DESCRIPTION PRODUCT_NAME " function wrapping extension"
# define FILE_TYPE VFT_DLL
#elif defined(RC_IS_drmgr) || defined(RC_IS_drmgr_static)
# define FILE_NAME "drmgr.dll"
# define FILE_DESCRIPTION PRODUCT_NAME " multi-component mediator"
# define FILE_TYPE VFT_DLL
#elif defined(RC_IS_drsyms) || defined(RC_IS_drsyms_static)
# define FILE_NAME "drsyms.dll"
# define FILE_DESCRIPTION PRODUCT_NAME " symbol extension"
# define FILE_TYPE VFT_DLL
#elif defined(RC_IS_drutil) || defined(RC_IS_drutil_static)
# define FILE_NAME "drutil.dll"
# define FILE_DESCRIPTION PRODUCT_NAME " LGPL utility extension"
# define FILE_TYPE VFT_DLL
#elif defined(RC_IS_drx) || defined(RC_IS_drx_static)
# define FILE_NAME "drx.dll"
# define FILE_DESCRIPTION PRODUCT_NAME " BSD utility extension"
# define FILE_TYPE VFT_DLL
/* tests */
#elif defined(RC_IS_TEST)
# define FILE_NAME ""
# define FILE_DESCRIPTION PRODUCT_NAME " regression test"
# define FILE_TYPE VFT_APP
#else
# error must define an RC_IS_xxx define
#endif
#ifndef FILE_NAME
# error FILE_NAME not defined
#endif
#ifndef FILE_DESCRIPTION
# error FILE_DESCRIPTION not defined
#endif
#if !defined(FILE_TYPE) || (FILE_TYPE != VFT_DLL && FILE_TYPE != VFT_APP)
# error FILE_TYPE not defined
#endif
#ifndef VERSION_COMMA_DELIMITED
# define VERSION_COMMA_DELIMITED 4,2,0
#endif
/* resources may also expect a comma separated string */
#define VERSION_DOT_STRING STRINGIFY(VERSION_COMMA_DELIMITED)
#ifndef BUILD_NUMBER
# define BUILD_NUMBER 0
#endif
#define BUILD_NUMBER_STR STRINGIFY(BUILD_NUMBER)
#ifdef INTERNAL
# include "configure_defines.h"
# define COMMENT_STR DYNAMORIO_DEFINES
#else
# define COMMENT_STR ""
#endif
#ifdef DEBUG
# define FILE_DEBUG_FLAG | VS_FF_DEBUG
#else
# define FILE_DEBUG_FLAG
#endif
#ifdef PRERELEASE_BUILD
# define FILE_PRERELEASE_FLAG | VS_FF_PRERELEASE
#else
# define FILE_PRERELEASE_FLAG
#endif
#ifdef PRIVATE_BUILD
# define FILE_PRIVATE_FLAG | VS_FF_PRIVATEBUILD
# ifndef PRIVATE_BUILD_DESC
# define PRIVATE_BUILD_DESC ""
# endif
#else
# define FILE_PRIVATE_FLAG
# ifdef PRIVATE_BUILD_DESC
# error /* private desc without flag */
# else
# define PRIVATE_BUILD_DESC ""
# endif
#endif
#ifdef SPECIAL_BUILD
# define FILE_SPECIAL_FLAG | VS_FF_SPECIALBUILD
# ifndef SPECIAL_BUILD_DESC
# define SPECIAL_BUILD_DESC ""
# endif
#else
# define FILE_SPECIAL_FLAG
# ifdef SPECIAL_BUILD_DESC
# error /* special desc without flag */
# else
# define SPECIAL_BUILD_DESC ""
# endif
#endif
/****************************************************************************
*
* Version
*/
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
VS_VERSION_INFO VERSIONINFO
FILEVERSION VERSION_COMMA_DELIMITED,BUILD_NUMBER
PRODUCTVERSION VERSION_COMMA_DELIMITED,BUILD_NUMBER
FILEFLAGSMASK 0x3fL
FILEFLAGS 0x0L FILE_DEBUG_FLAG FILE_PRERELEASE_FLAG FILE_PRIVATE_FLAG FILE_SPECIAL_FLAG
FILEOS 0x4L
FILETYPE FILE_TYPE
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
/* CHECK: make sure it is OK not to put the terminating null here */
#define ASCIIZ /* original contents was in the form "string \0" */
VALUE "Comments", COMMENT_STR ASCIIZ
VALUE "CompanyName", COMPANY_LONG_NAME ASCIIZ
VALUE "FileDescription", FILE_DESCRIPTION ASCIIZ
VALUE "InternalName", FILE_NAME ASCIIZ
VALUE "LegalCopyright", "Copyright (C) " COMPANY_LONG_NAME " 2003-2008" ASCIIZ
VALUE "LegalTrademarks", "" ASCIIZ
VALUE "OriginalFilename", FILE_NAME ASCIIZ
VALUE "PrivateBuild", PRIVATE_BUILD_DESC ASCIIZ
VALUE "ProductName", PRODUCT_NAME ASCIIZ
VALUE "FileVersion", VERSION_DOT_STRING "," BUILD_NUMBER_STR ASCIIZ
VALUE "ProductVersion", VERSION_DOT_STRING "," BUILD_NUMBER_STR ASCIIZ
VALUE "SpecialBuild", SPECIAL_BUILD_DESC ASCIIZ
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1200
END
END