You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
215 lines
9.8 KiB
215 lines
9.8 KiB
/*
|
|
§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
|
|
|
|
(C) Copyright 1999
|
|
All rights reserved.
|
|
|
|
§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
|
|
|
|
Portions of this software are:
|
|
|
|
(C) Copyright 1997 TriplePoint, Inc. -- http://www.TriplePoint.com
|
|
License to use this software is granted under the same terms
|
|
outlined in the Microsoft Windows Device Driver Development Kit.
|
|
|
|
§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
|
|
|
|
@doc INTERNAL TpiBuild vProduct vProduct_h
|
|
|
|
@module vProduct.h |
|
|
|
|
This module defines the product version information. It is included by
|
|
all the target components of the project by including <f vTarget\.h>.
|
|
|
|
<f Note>:
|
|
This file should not be changed. The definitions used by this file
|
|
are defined in <f vVendor\.h>, <f vTarget\.h>, <f vProdNum\.h>, and
|
|
<f vTargNum\.h>
|
|
|
|
@head3 Contents |
|
|
@index class,mfunc,func,msg,mdata,struct,enum | vProduct_h
|
|
|
|
@end
|
|
§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
|
|
*/
|
|
|
|
/* @doc EXTERNAL INTERNAL
|
|
§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§
|
|
|
|
@topic Versioning Overview |
|
|
|
|
This section describes the interfaces defined in <f vProduct\.h>,
|
|
<f vVendor\.h>, <f vTarget\.h>, <f vProdNum\.h>, and <f vTargNum\.h>
|
|
|
|
A module is usually just one component of an entire product, so we've
|
|
defined the versioning information for the module so that it can be
|
|
easily included into a complete product package.
|
|
|
|
@flag <f vTarget\.rc> |
|
|
Included this into your module specific rc file. Do not change.
|
|
You must remove any existing versioning information from your rc file.
|
|
Place this file in a common include directory for the product.
|
|
|
|
@flag <f vTarget\.h> |
|
|
Defines the module specific version information such as file name, type, etc.
|
|
One of these files would exist for each component included in your product.
|
|
|
|
@flag <f vTargNum\.h> |
|
|
Is meant to be updated whenever you make a change to a specific module.
|
|
One of these files would exist for each component included in your product.
|
|
This is separated from the rest of the versioning files so it can be easily
|
|
updated with a tool or script.
|
|
|
|
@flag <f vVendor\.h> |
|
|
Defines the vendor specific version information such as company name,
|
|
copyright. etc. It is separate to allow easier OEM customization.
|
|
Place this file in a common include directory for the product.
|
|
|
|
@flag <f vProdNum\.h> |
|
|
Is meant to be updated whenever you release a new product version.
|
|
This is separated from the rest of the versioning files so it can be easily
|
|
updated with a tool or script.
|
|
Place this file in a common include directory for the product.
|
|
|
|
@flag <f vLang\.h> |
|
|
Defines the language to be used to record the version information.
|
|
If this file is modified for another language, you will generally have
|
|
to create localized versions of the vVendor.h and vTarget.h files as well.
|
|
Place this file in a common include directory for the product.
|
|
|
|
@flag <f vProduct\.rc> |
|
|
Is included by <f vTarget\.rc>. Do not change.
|
|
Place this file in a common include directory for the product.
|
|
|
|
@flag <f vProduct\.h> |
|
|
Is included by <f vTarget\.h>. You should not change this file unless you
|
|
want to change the way version numbers are represented for all modules in
|
|
your product.
|
|
Place this file in a common include directory for the product.
|
|
|
|
*/
|
|
|
|
#ifndef _VPRODUCT_H_
|
|
#define _VPRODUCT_H_
|
|
|
|
#if !defined(_VTARGET_H_)
|
|
# error You should not include vProduct.h directly, include vTarget.h instead.
|
|
#endif
|
|
|
|
// Only include winver.h if RC_INVOKED. Otherwise we don't need it.
|
|
#if defined(RC_INVOKED)
|
|
# if defined(WIN32)
|
|
# include <winver.h>
|
|
# else
|
|
# include <ver.h>
|
|
# endif
|
|
#endif
|
|
|
|
#include "vVendor.h" // Edit this file to change vendor specific information
|
|
#include "vLang.h" // Edit this file to change language specific information
|
|
|
|
// The following file should be included from the target's include directory
|
|
#include "vTargNum.h" // Target version information
|
|
|
|
#if !defined(VER_FILE_MAJOR_NUM) || !defined(VER_FILE_MINOR_NUM) || \
|
|
!defined(VER_FILE_SUB_MINOR_NUM)
|
|
# error Your vTargNum.h file is corrupt or missing required VER_xxx_NUM fields.
|
|
#endif
|
|
#if !defined(VER_FILE_MAJOR_STR) || !defined(VER_FILE_MINOR_STR) || \
|
|
!defined(VER_FILE_SUB_MINOR_STR)
|
|
# error Your vTargNum.h file is corrupt or missing required VER_xxx_STR fields.
|
|
#endif
|
|
|
|
// The following file should be included from the project's include directory
|
|
#include "vProdNum.h" // Product version and build information
|
|
|
|
#if !defined(VER_PRODUCT_MAJOR_NUM) || !defined(VER_PRODUCT_MINOR_NUM) || \
|
|
!defined(VER_PRODUCT_SUB_MINOR_NUM) || !defined(VER_PRODUCT_BUILD_NUM)
|
|
# error Your vProdNum.h file is corrupt or missing required VER_xxx_NUM fields.
|
|
#endif
|
|
#if !defined(VER_PRODUCT_MAJOR_STR) || !defined(VER_PRODUCT_MINOR_STR) || \
|
|
!defined(VER_PRODUCT_SUB_MINOR_STR) || !defined(VER_PRODUCT_BUILD_STR)
|
|
# error Your vProdNum.h file is corrupt or missing required VER_xxx_STR fields.
|
|
#endif
|
|
|
|
// Macro used to force C preprocessor to concatenate string defines
|
|
#define DEFINE_STRING(STR) STR
|
|
|
|
// Macro to make this stuff easier to read.
|
|
#define VER_STR_CAT(sep,maj,min,sub,bld) maj sep min sep sub sep bld
|
|
|
|
// PRODUCT version information is displayed in the About box of each
|
|
// component and is stored in the registry during installation.
|
|
// The About box code must get the value from the registry instead of
|
|
// using these macros in order to get the currently installed version.
|
|
// Therefore, these macros should only be used by the installer.
|
|
#define VER_PRODUCT_VERSION_NUM ((VER_PRODUCT_MAJOR_NUM << 24) | \
|
|
(VER_PRODUCT_MINOR_NUM << 16) | \
|
|
(VER_PRODUCT_SUB_MINOR_NUM << 8) | \
|
|
VER_PRODUCT_BUILD_NUM)
|
|
|
|
#define VER_PRODUCT_VERSION_NUM_RC VER_PRODUCT_MAJOR_NUM,\
|
|
VER_PRODUCT_MINOR_NUM,\
|
|
VER_PRODUCT_SUB_MINOR_NUM,\
|
|
VER_PRODUCT_BUILD_NUM
|
|
|
|
#define VER_PRODUCT_VERSION_STR VER_STR_CAT(".",\
|
|
VER_PRODUCT_MAJOR_STR,\
|
|
VER_PRODUCT_MINOR_STR,\
|
|
VER_PRODUCT_SUB_MINOR_STR,\
|
|
VER_PRODUCT_BUILD_STR)
|
|
|
|
#define VER_PRODUCT_VERSION_STR_RC VER_STR_CAT(".",\
|
|
VER_PRODUCT_MAJOR_STR,\
|
|
VER_PRODUCT_MINOR_STR,\
|
|
VER_PRODUCT_SUB_MINOR_STR,\
|
|
VER_PRODUCT_BUILD_STR)
|
|
|
|
// COMPONENT version information is displayed in the ProductVersion
|
|
// field of a file's Windows property sheet. It is the same as the
|
|
// FILE version info with the addition of the build number.
|
|
#define VER_COMPONENT_VERSION_NUM ((VER_FILE_MAJOR_NUM << 24) | \
|
|
(VER_FILE_MINOR_NUM << 16) | \
|
|
(VER_FILE_SUB_MINOR_NUM << 8) | \
|
|
VER_PRODUCT_BUILD_NUM)
|
|
|
|
#define VER_COMPONENT_VERSION_NUM_RC VER_FILE_MAJOR_NUM,\
|
|
VER_FILE_MINOR_NUM,\
|
|
VER_FILE_SUB_MINOR_NUM,\
|
|
VER_PRODUCT_BUILD_NUM
|
|
|
|
#define VER_COMPONENT_VERSION_STR VER_STR_CAT(".",\
|
|
VER_FILE_MAJOR_STR,\
|
|
VER_FILE_MINOR_STR,\
|
|
VER_FILE_SUB_MINOR_STR,\
|
|
VER_PRODUCT_BUILD_STR)
|
|
|
|
#define VER_COMPONENT_VERSION_STR_RC VER_STR_CAT(".",\
|
|
VER_FILE_MAJOR_STR,\
|
|
VER_FILE_MINOR_STR,\
|
|
VER_FILE_SUB_MINOR_STR,\
|
|
VER_PRODUCT_BUILD_STR)
|
|
|
|
// FILE version information is an abbreviated component version info
|
|
// and is displayed at the top of a file's Windows property sheet.
|
|
#define VER_FILE_VERSION_NUM ((VER_FILE_MAJOR_NUM << 24) | \
|
|
(VER_FILE_MINOR_NUM << 16) | \
|
|
(VER_FILE_SUB_MINOR_NUM << 8) | \
|
|
VER_PRODUCT_BUILD_NUM)
|
|
|
|
#define VER_FILE_VERSION_NUM_RC VER_FILE_MAJOR_NUM,\
|
|
VER_FILE_MINOR_NUM,\
|
|
VER_FILE_SUB_MINOR_NUM,\
|
|
VER_PRODUCT_BUILD_NUM
|
|
|
|
#define VER_FILE_VERSION_STR VER_STR_CAT(".",\
|
|
VER_FILE_MAJOR_STR,\
|
|
VER_FILE_MINOR_STR,\
|
|
VER_FILE_SUB_MINOR_STR,\
|
|
VER_PRODUCT_BUILD_STR)
|
|
|
|
#define VER_FILE_VERSION_STR_RC VER_FILE_MAJOR_STR "."\
|
|
VER_FILE_MINOR_STR "."\
|
|
VER_FILE_SUB_MINOR_STR
|
|
|
|
#endif /* _VPRODUCT_H_ */
|