win-pvdrivers

changeset 661:3163b141fda5

Added XenUSB to the installer.
Don't sign WdfCoInstaller - not required
Add RC files to better identify the binaries
author James Harper <james.harper@bendigoit.com.au>
date Tue Sep 15 20:16:08 2009 +1000 (2009-09-15)
parents d820f1faf85e
children 21e041d3e07d
files common.inc installer.wxs makedist.bat sign.bat xennet/sources xennet/xennet.rc xenpci/sources xenpci/xenpci.rc xenscsi/sources xenscsi/xenscsi.rc xenusb/sources xenusb/xenusb.rc xenvbd/sources xenvbd/xenvbd.rc
line diff
     1.1 --- a/common.inc	Tue Sep 15 12:54:06 2009 +1000
     1.2 +++ b/common.inc	Tue Sep 15 20:16:08 2009 +1000
     1.3 @@ -1,7 +1,6 @@
     1.4 -!IFNDEF VERSION
     1.5 -GPLPV_VERSION=0.0.0.0
     1.6 +!IFDEF BUILD_NUMBER
     1.7 +C_DEFINES=$(C_DEFINES) -DBUILD_NUMBER=$(BUILD_NUMBER)
     1.8  !ENDIF
     1.9 -#TARGETPATH=..\Target\$(DDK_TARGET_OS)
    1.10  MSC_WARNING_LEVEL=/W4
    1.11  INCLUDES = ..\common\include;..\common\include\public
    1.12  TARGETLIBS=$(TARGETLIBS) $(DDK_LIB_PATH)\ntstrsafe.lib
     2.1 --- a/installer.wxs	Tue Sep 15 12:54:06 2009 +1000
     2.2 +++ b/installer.wxs	Tue Sep 15 20:16:08 2009 +1000
     2.3 @@ -73,6 +73,16 @@
     2.4                  <difx:Driver Sequence='3' Legacy='yes' PlugAndPlayPrompt='no' ForceInstall='yes' />
     2.5                </Component>
     2.6              </Directory>
     2.7 +            <Directory Id='XenUsbDir' Name='xenusb'>
     2.8 +              <Component Id='XenUsb' Guid='83746E68-DBCC-4feb-B521-09D5328D3BB0'>
     2.9 +                <File Id='xenusb.cat' Name='xenusb.cat' DiskId='1' Source='xenusb\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenusb.cat' />
    2.10 +                <File Id='xenusb.inf' Name='xenusb.inf' DiskId='1' Source='xenusb\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenusb.inf' />
    2.11 +                <File Id='xenusb.sys' Name='xenusb.sys' DiskId='1' Source='xenusb\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\xenusb.sys' />
    2.12 +                <!-- we deliberately use the file from xenpci so that wix can deduplicate it -->
    2.13 +                <File Id='WdfCoInstaller01007.dll_usb' Name='WdfCoInstaller01007.dll' DiskId='1' Source='xenpci\obj$(env.BUILD_ALT_DIR)\$(var.ARCHDIR)\WdfCoInstaller01007.dll' />
    2.14 +                <difx:Driver Sequence='3' Legacy='yes' PlugAndPlayPrompt='no' ForceInstall='yes' />
    2.15 +              </Component>
    2.16 +            </Directory>
    2.17            </Directory>
    2.18          </Directory>
    2.19          <Component Id='Cert' Guid='11112EC8-8635-45fb-9AE8-C22310F1E82D'>
    2.20 @@ -100,6 +110,9 @@
    2.21        <Feature Id='XenNet' Title='XenNet Driver' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='allow'>
    2.22          <ComponentRef Id='XenNet' />
    2.23        </Feature>
    2.24 +      <Feature Id='XenUsb' Title='XenUsb Driver' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='allow'>
    2.25 +        <ComponentRef Id='XenUsb' />
    2.26 +      </Feature>
    2.27      </Feature>
    2.28      <Feature Id='ShutdownMon' Title='Shutdown Monitor' Level='1' AllowAdvertise='no' InstallDefault='local' Absent='allow'>
    2.29        <ComponentRef Id='ShutdownMon' />
     3.1 --- a/makedist.bat	Tue Sep 15 12:54:06 2009 +1000
     3.2 +++ b/makedist.bat	Tue Sep 15 20:16:08 2009 +1000
     3.3 @@ -7,8 +7,8 @@ IF EXIST build_number.bat CALL build_num
     3.4  
     3.5  SET GPLPV_VERSION=%VERSION%.%BUILD_NUMBER%
     3.6  
     3.7 -SET /A BUILD_NUMBER=%BUILD_NUMBER%+1
     3.8 -ECHO >build_number.bat SET BUILD_NUMBER=%BUILD_NUMBER%
     3.9 +SET /A NEW_BUILD_NUMBER=%BUILD_NUMBER%+1
    3.10 +ECHO >build_number.bat SET BUILD_NUMBER=%NEW_BUILD_NUMBER%
    3.11  
    3.12  ECHO BUILDING %GPLPV_VERSION%
    3.13  
     4.1 --- a/sign.bat	Tue Sep 15 12:54:06 2009 +1000
     4.2 +++ b/sign.bat	Tue Sep 15 20:16:08 2009 +1000
     4.3 @@ -14,13 +14,15 @@ ECHO SIGN_OS=%SIGN_OS%
     4.4  xcopy /D coinst\%BUILDDIR%\coinst.dll xenvbd\%BUILDDIR%
     4.5  move xenvbd\%BUILDDIR%\coinst.dll xenvbd\%BUILDDIR%\xencoinst.dll
     4.6  xcopy /D %BASEDIR%\redist\wdf\%_BUILDARCH%\WdfCoInstaller01007.dll xenpci\%BUILDDIR%
     4.7 +xcopy /D %BASEDIR%\redist\wdf\%_BUILDARCH%\WdfCoInstaller01007.dll xenusb\%BUILDDIR%
     4.8  
     4.9  REM IF NOT EXIST SIGN_CONFIG.BAT GOTO DONT_SIGN
    4.10  REM CALL SIGN_CONFIG.BAT
    4.11  
    4.12  SET CERT_NAME=GPLPV_Test_Cert
    4.13  
    4.14 -%DDK_PATH%\bin\selfsign\signtool sign /v /s PrivateCertStore /n %CERT_NAME% /t http://timestamp.verisign.com/scripts/timestamp.dll xenpci\%BUILDDIR%\xenpci.sys xenpci\%BUILDDIR%\WdfCoInstaller01007.dll
    4.15 +REM %DDK_PATH%\bin\selfsign\signtool sign /v /s PrivateCertStore /n %CERT_NAME% /t http://timestamp.verisign.com/scripts/timestamp.dll xenpci\%BUILDDIR%\xenpci.sys xenpci\%BUILDDIR%\WdfCoInstaller01007.dll
    4.16 +%DDK_PATH%\bin\selfsign\signtool sign /v /s PrivateCertStore /n %CERT_NAME% /t http://timestamp.verisign.com/scripts/timestamp.dll xenpci\%BUILDDIR%\xenpci.sys
    4.17  %DDK_PATH%\bin\selfsign\inf2cat /driver:xenpci\%BUILDDIR% /os:%SIGN_OS%
    4.18  %DDK_PATH%\bin\selfsign\signtool sign /v /s PrivateCertStore /n %CERT_NAME% /t http://timestamp.verisign.com/scripts/timestamp.dll xenpci\%BUILDDIR%\xenpci.cat
    4.19  
    4.20 @@ -36,4 +38,9 @@ SET CERT_NAME=GPLPV_Test_Cert
    4.21  %DDK_PATH%\bin\selfsign\inf2cat /driver:xenscsi\%BUILDDIR% /os:%SIGN_OS%
    4.22  %DDK_PATH%\bin\selfsign\signtool sign /v /s PrivateCertStore /n %CERT_NAME% /t http://timestamp.verisign.com/scripts/timestamp.dll xenscsi\%BUILDDIR%\xenscsi.cat
    4.23  
    4.24 +REM %DDK_PATH%\bin\selfsign\signtool sign /v /s PrivateCertStore /n %CERT_NAME% /t http://timestamp.verisign.com/scripts/timestamp.dll xenusb\%BUILDDIR%\xenusb.sys xenusb\%BUILDDIR%\WdfCoInstaller01007.dll
    4.25 +%DDK_PATH%\bin\selfsign\signtool sign /v /s PrivateCertStore /n %CERT_NAME% /t http://timestamp.verisign.com/scripts/timestamp.dll xenusb\%BUILDDIR%\xenusb.sys
    4.26 +%DDK_PATH%\bin\selfsign\inf2cat /driver:xenusb\%BUILDDIR% /os:%SIGN_OS%
    4.27 +%DDK_PATH%\bin\selfsign\signtool sign /v /s PrivateCertStore /n %CERT_NAME% /t http://timestamp.verisign.com/scripts/timestamp.dll xenusb\%BUILDDIR%\xenusb.cat
    4.28 +
    4.29  :DONT_SIGN
     5.1 --- a/xennet/sources	Tue Sep 15 12:54:06 2009 +1000
     5.2 +++ b/xennet/sources	Tue Sep 15 20:16:08 2009 +1000
     5.3 @@ -4,4 +4,4 @@ TARGETTYPE=DRIVER
     5.4  INF_NAME=$(TARGETNAME)
     5.5  TARGETLIBS=$(TARGETLIBS) $(DDK_LIB_PATH)\ndis.lib
     5.6  NTTARGETFILES=$(NTTARGETFILES) $(OBJ_PATH)\$(O)\$(INF_NAME).inf
     5.7 -SOURCES=xennet.c xennet_tx.c xennet_rx.c xennet_oid.c xennet_common.c
     5.8 +SOURCES=xennet.rc xennet.c xennet_tx.c xennet_rx.c xennet_oid.c xennet_common.c
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/xennet/xennet.rc	Tue Sep 15 20:16:08 2009 +1000
     6.3 @@ -0,0 +1,39 @@
     6.4 +#include <windows.h>
     6.5 +
     6.6 +#include <ntverp.h>
     6.7 +
     6.8 +#define VER_FILETYPE                VFT_DRV
     6.9 +#define VER_FILESUBTYPE             VFT2_DRV_SYSTEM
    6.10 +#ifdef DEBUG
    6.11 +  #define VER_FILEDESCRIPTION_STR     "GPLPV XenNet Driver"
    6.12 +#else
    6.13 +  #define VER_FILEDESCRIPTION_STR     "GPLPV XenNet Driver (Checked Build)"
    6.14 +#endif
    6.15 +#define VER_INTERNALNAME_STR        "xennet.sys"
    6.16 +#define VER_ORIGINALFILENAME_STR    "xennet.sys"
    6.17 +
    6.18 +#define EXPAND(x) STRINGIFY(x)
    6.19 +#define STRINGIFY(x) #x
    6.20 +
    6.21 +#ifdef BUILD_NUMBER
    6.22 +  #define VER_FILEVERSION             0,10,0,BUILD_NUMBER
    6.23 +  #define VER_FILEVERSION_STR         "GPLPV 0.10.0." EXPAND(BUILD_NUMBER)
    6.24 +#else
    6.25 +  #define VER_FILEVERSION             0,0,0,0
    6.26 +  #define VER_FILEVERSION_STR         "GPLPV Unversioned"
    6.27 +#endif
    6.28 +
    6.29 +#undef VER_PRODUCTVERSION
    6.30 +#define VER_PRODUCTVERSION          VER_FILEVERSION
    6.31 +#undef VER_PRODUCTVERSION_STR
    6.32 +#define VER_PRODUCTVERSION_STR      VER_FILEVERSION_STR
    6.33 +#define VER_LEGALCOPYRIGHT_STR      "Copyright (C) 2009 James Harper" 
    6.34 +
    6.35 +#ifdef VER_COMPANYNAME_STR
    6.36 +#undef VER_COMPANYNAME_STR
    6.37 +#define VER_COMPANYNAME_STR         "James Harper"
    6.38 +#endif
    6.39 +#undef VER_PRODUCTNAME_STR
    6.40 +#define VER_PRODUCTNAME_STR         "PV Drivers for Windows"
    6.41 +
    6.42 +#include "common.ver"
     7.1 --- a/xenpci/sources	Tue Sep 15 12:54:06 2009 +1000
     7.2 +++ b/xenpci/sources	Tue Sep 15 20:16:08 2009 +1000
     7.3 @@ -6,4 +6,5 @@ NTTARGETFILES=$(NTTARGETFILES) $(OBJ_PAT
     7.4  TARGETLIBS=$(TARGETLIBS) $(DDK_LIB_PATH)\wdmsec.lib $(DDK_LIB_PATH)\Rtlver.lib $(DDK_LIB_PATH)\..\..\wlh\*\aux_klib.lib
     7.5  AMD64_SOURCES=hypercall.asm
     7.6  I386_SOURCES=tpr_emulate.asm
     7.7 -SOURCES=xenpci.c xenpci_fdo.c xenpci_pdo.c evtchn.c gnttbl.c xenbus.c memory.c xenbus_device_interface.c xenpci_highsync.c xenpci_patch_kernel.c
     7.8 +
     7.9 +SOURCES=xenpci.rc xenpci.c xenpci_fdo.c xenpci_pdo.c evtchn.c gnttbl.c xenbus.c memory.c xenbus_device_interface.c xenpci_highsync.c xenpci_patch_kernel.c
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/xenpci/xenpci.rc	Tue Sep 15 20:16:08 2009 +1000
     8.3 @@ -0,0 +1,39 @@
     8.4 +#include <windows.h>
     8.5 +
     8.6 +#include <ntverp.h>
     8.7 +
     8.8 +#define VER_FILETYPE                VFT_DRV
     8.9 +#define VER_FILESUBTYPE             VFT2_DRV_SYSTEM
    8.10 +#ifdef DEBUG
    8.11 +  #define VER_FILEDESCRIPTION_STR     "GPLPV XenPCI Driver"
    8.12 +#else
    8.13 +  #define VER_FILEDESCRIPTION_STR     "GPLPV XenPCI Driver (Checked Build)"
    8.14 +#endif
    8.15 +#define VER_INTERNALNAME_STR        "xenpci.sys"
    8.16 +#define VER_ORIGINALFILENAME_STR    "xenpci.sys"
    8.17 +
    8.18 +#define EXPAND(x) STRINGIFY(x)
    8.19 +#define STRINGIFY(x) #x
    8.20 +
    8.21 +#ifdef BUILD_NUMBER
    8.22 +  #define VER_FILEVERSION             0,10,0,BUILD_NUMBER
    8.23 +  #define VER_FILEVERSION_STR         "GPLPV 0.10.0." EXPAND(BUILD_NUMBER)
    8.24 +#else
    8.25 +  #define VER_FILEVERSION             0,0,0,0
    8.26 +  #define VER_FILEVERSION_STR         "GPLPV Unversioned"
    8.27 +#endif
    8.28 +
    8.29 +#undef VER_PRODUCTVERSION
    8.30 +#define VER_PRODUCTVERSION          VER_FILEVERSION
    8.31 +#undef VER_PRODUCTVERSION_STR
    8.32 +#define VER_PRODUCTVERSION_STR      VER_FILEVERSION_STR
    8.33 +#define VER_LEGALCOPYRIGHT_STR      "Copyright (C) 2009 James Harper" 
    8.34 +
    8.35 +#ifdef VER_COMPANYNAME_STR
    8.36 +#undef VER_COMPANYNAME_STR
    8.37 +#define VER_COMPANYNAME_STR         "James Harper"
    8.38 +#endif
    8.39 +#undef VER_PRODUCTNAME_STR
    8.40 +#define VER_PRODUCTNAME_STR         "PV Drivers for Windows"
    8.41 +
    8.42 +#include "common.ver"
     9.1 --- a/xenscsi/sources	Tue Sep 15 12:54:06 2009 +1000
     9.2 +++ b/xenscsi/sources	Tue Sep 15 20:16:08 2009 +1000
     9.3 @@ -5,4 +5,4 @@ TARGETNAME=xenscsi
     9.4  TARGETTYPE=DRIVER
     9.5  TARGETLIBS=$(TARGETLIBS) $(DDK_LIB_PATH)\scsiport.lib
     9.6  NTTARGETFILES=$(NTTARGETFILES) $(OBJ_PATH)\$(O)\$(TARGETNAME).inf
     9.7 -SOURCES=xenscsi.c
     9.8 +SOURCES=xenscsi.rc xenscsi.c
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/xenscsi/xenscsi.rc	Tue Sep 15 20:16:08 2009 +1000
    10.3 @@ -0,0 +1,39 @@
    10.4 +#include <windows.h>
    10.5 +
    10.6 +#include <ntverp.h>
    10.7 +
    10.8 +#define VER_FILETYPE                VFT_DRV
    10.9 +#define VER_FILESUBTYPE             VFT2_DRV_SYSTEM
   10.10 +#ifdef DEBUG
   10.11 +  #define VER_FILEDESCRIPTION_STR     "GPLPV XenSCSI Driver"
   10.12 +#else
   10.13 +  #define VER_FILEDESCRIPTION_STR     "GPLPV XenSCSI Driver (Checked Build)"
   10.14 +#endif
   10.15 +#define VER_INTERNALNAME_STR        "xenscsi.sys"
   10.16 +#define VER_ORIGINALFILENAME_STR    "xenscsi.sys"
   10.17 +
   10.18 +#define EXPAND(x) STRINGIFY(x)
   10.19 +#define STRINGIFY(x) #x
   10.20 +
   10.21 +#ifdef BUILD_NUMBER
   10.22 +  #define VER_FILEVERSION             0,10,0,BUILD_NUMBER
   10.23 +  #define VER_FILEVERSION_STR         "GPLPV 0.10.0." EXPAND(BUILD_NUMBER)
   10.24 +#else
   10.25 +  #define VER_FILEVERSION             0,0,0,0
   10.26 +  #define VER_FILEVERSION_STR         "GPLPV Unversioned"
   10.27 +#endif
   10.28 +
   10.29 +#undef VER_PRODUCTVERSION
   10.30 +#define VER_PRODUCTVERSION          VER_FILEVERSION
   10.31 +#undef VER_PRODUCTVERSION_STR
   10.32 +#define VER_PRODUCTVERSION_STR      VER_FILEVERSION_STR
   10.33 +#define VER_LEGALCOPYRIGHT_STR      "Copyright (C) 2009 James Harper" 
   10.34 +
   10.35 +#ifdef VER_COMPANYNAME_STR
   10.36 +#undef VER_COMPANYNAME_STR
   10.37 +#define VER_COMPANYNAME_STR         "James Harper"
   10.38 +#endif
   10.39 +#undef VER_PRODUCTNAME_STR
   10.40 +#define VER_PRODUCTNAME_STR         "PV Drivers for Windows"
   10.41 +
   10.42 +#include "common.ver"
    11.1 --- a/xenusb/sources	Tue Sep 15 12:54:06 2009 +1000
    11.2 +++ b/xenusb/sources	Tue Sep 15 20:16:08 2009 +1000
    11.3 @@ -3,6 +3,5 @@ TARGETNAME=xenusb
    11.4  TARGETTYPE=DRIVER
    11.5  KMDF_VERSION_MAJOR=1
    11.6  NTTARGETFILES=$(NTTARGETFILES) $(OBJ_PATH)\$(O)\$(TARGETNAME).inf
    11.7 -#TARGETLIBS=$(TARGETLIBS) $(DDK_LIB_PATH)\wdmsec.lib $(DDK_LIB_PATH)\Rtlver.lib $(DDK_LIB_PATH)\..\..\wlh\*\aux_klib.lib
    11.8  TARGETLIBS=$(TARGETLIBS) $(DDK_LIB_PATH)\wdmsec.lib $(DDK_LIB_PATH)\Rtlver.lib $(DDK_LIB_PATH)\..\..\wlh\*\aux_klib.lib
    11.9 -SOURCES=xenusb.c xenusb_fdo.c xenusb_hub.c xenusb_huburb.c xenusb_devurb.c
   11.10 +SOURCES=xenusb.rc xenusb.c xenusb_fdo.c xenusb_hub.c xenusb_huburb.c xenusb_devurb.c
    12.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.2 +++ b/xenusb/xenusb.rc	Tue Sep 15 20:16:08 2009 +1000
    12.3 @@ -0,0 +1,39 @@
    12.4 +#include <windows.h>
    12.5 +
    12.6 +#include <ntverp.h>
    12.7 +
    12.8 +#define VER_FILETYPE                VFT_DRV
    12.9 +#define VER_FILESUBTYPE             VFT2_DRV_SYSTEM
   12.10 +#ifdef DEBUG
   12.11 +  #define VER_FILEDESCRIPTION_STR     "GPLPV XenPCI Driver"
   12.12 +#else
   12.13 +  #define VER_FILEDESCRIPTION_STR     "GPLPV XenPCI Driver (Checked Build)"
   12.14 +#endif
   12.15 +#define VER_INTERNALNAME_STR        "xenpci.sys"
   12.16 +#define VER_ORIGINALFILENAME_STR    "xenpci.sys"
   12.17 +
   12.18 +#define EXPAND(x) STRINGIFY(x)
   12.19 +#define STRINGIFY(x) #x
   12.20 +
   12.21 +#ifdef BUILD_NUMBER
   12.22 +  #define VER_FILEVERSION             0,10,0,BUILD_NUMBER
   12.23 +  #define VER_FILEVERSION_STR         "GPLPV 0.10.0." EXPAND(BUILD_NUMBER)
   12.24 +#else
   12.25 +  #define VER_FILEVERSION             0,0,0,0
   12.26 +  #define VER_FILEVERSION_STR         "GPLPV Unversioned"
   12.27 +#endif
   12.28 +
   12.29 +#undef VER_PRODUCTVERSION
   12.30 +#define VER_PRODUCTVERSION          VER_FILEVERSION
   12.31 +#undef VER_PRODUCTVERSION_STR
   12.32 +#define VER_PRODUCTVERSION_STR      VER_FILEVERSION_STR
   12.33 +#define VER_LEGALCOPYRIGHT_STR      "Copyright (C) 2009 James Harper" 
   12.34 +
   12.35 +#ifdef VER_COMPANYNAME_STR
   12.36 +#undef VER_COMPANYNAME_STR
   12.37 +#define VER_COMPANYNAME_STR         "James Harper"
   12.38 +#endif
   12.39 +#undef VER_PRODUCTNAME_STR
   12.40 +#define VER_PRODUCTNAME_STR         "PV Drivers for Windows"
   12.41 +
   12.42 +#include "common.ver"
    13.1 --- a/xenvbd/sources	Tue Sep 15 12:54:06 2009 +1000
    13.2 +++ b/xenvbd/sources	Tue Sep 15 20:16:08 2009 +1000
    13.3 @@ -5,4 +5,4 @@ TARGETNAME=xenvbd
    13.4  TARGETTYPE=DRIVER
    13.5  TARGETLIBS=$(TARGETLIBS) $(DDK_LIB_PATH)\scsiport.lib
    13.6  NTTARGETFILES=$(NTTARGETFILES) $(OBJ_PATH)\$(O)\$(TARGETNAME).inf
    13.7 -SOURCES=xenvbd.c
    13.8 +SOURCES=xenvbd.rc xenvbd.c
    14.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.2 +++ b/xenvbd/xenvbd.rc	Tue Sep 15 20:16:08 2009 +1000
    14.3 @@ -0,0 +1,39 @@
    14.4 +#include <windows.h>
    14.5 +
    14.6 +#include <ntverp.h>
    14.7 +
    14.8 +#define VER_FILETYPE                VFT_DRV
    14.9 +#define VER_FILESUBTYPE             VFT2_DRV_SYSTEM
   14.10 +#ifdef DEBUG
   14.11 +  #define VER_FILEDESCRIPTION_STR     "GPLPV XenVbd Driver"
   14.12 +#else
   14.13 +  #define VER_FILEDESCRIPTION_STR     "GPLPV XenVbd Driver (Checked Build)"
   14.14 +#endif
   14.15 +#define VER_INTERNALNAME_STR        "xenvbd.sys"
   14.16 +#define VER_ORIGINALFILENAME_STR    "xenvbd.sys"
   14.17 +
   14.18 +#define EXPAND(x) STRINGIFY(x)
   14.19 +#define STRINGIFY(x) #x
   14.20 +
   14.21 +#ifdef BUILD_NUMBER
   14.22 +  #define VER_FILEVERSION             0,10,0,BUILD_NUMBER
   14.23 +  #define VER_FILEVERSION_STR         "GPLPV 0.10.0." EXPAND(BUILD_NUMBER)
   14.24 +#else
   14.25 +  #define VER_FILEVERSION             0,0,0,0
   14.26 +  #define VER_FILEVERSION_STR         "GPLPV Unversioned"
   14.27 +#endif
   14.28 +
   14.29 +#undef VER_PRODUCTVERSION
   14.30 +#define VER_PRODUCTVERSION          VER_FILEVERSION
   14.31 +#undef VER_PRODUCTVERSION_STR
   14.32 +#define VER_PRODUCTVERSION_STR      VER_FILEVERSION_STR
   14.33 +#define VER_LEGALCOPYRIGHT_STR      "Copyright (C) 2009 James Harper" 
   14.34 +
   14.35 +#ifdef VER_COMPANYNAME_STR
   14.36 +#undef VER_COMPANYNAME_STR
   14.37 +#define VER_COMPANYNAME_STR         "James Harper"
   14.38 +#endif
   14.39 +#undef VER_PRODUCTNAME_STR
   14.40 +#define VER_PRODUCTNAME_STR         "PV Drivers for Windows"
   14.41 +
   14.42 +#include "common.ver"