directory or on-line at http://www.openafs.org/dl/license10.html
The document now provides a step by step procedure that takes the user
-from a basic Windows 2000/XP/2003 workstation to an OpenAFS development
-environment. Details are provided so that a 'beginning' windows
-developer can build an OpenAFS installable package for Windows 2000/XP/2003.
+from a basic Windows 2000/XP/2003/Vista/2008 workstation to an OpenAFS
+development environment. Details are provided so that a 'beginning'
+windows developer can build an OpenAFS installable package for Windows
+2000/XP/2003/Vista/2008.
NOTE 1:
As of the OpenAFS 1.3 release series, Windows platforms released
prior to Windows 2000 are no longer supported. As of the OpenAFS 1.5
series, the Windows 9x components are being removed from the source tree.
-*********** Windows 2000/XP/2003 Build Process ****************
+*********** Windows 2000/XP/2003/Vista/2008 Build Process *************
Building OpenAFS for Windows requires configuring a Windows
development system by installing compilation tools and header files.
* Windows 2003 64
* Windows 2003 R2 (32 or 64)
* Windows Vista (32 or 64)
+ * Windows 2008 (32 or 64)
The build process is controlled by a nmake file that generates the
necessary binaries and binds them into an install package.
The following Microsoft SDK is required:
- Microsoft Platform SDK for Windows XP SP2 or Server 2003 SP1 or Vista
+ Microsoft Platform SDK for Windows Server 2003 SP1 or Vista or 2008
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/downlevel.htm [IE required]
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/XPSP2FULLInstall.htm
Wix 2.0.5325.0
http://prdownloads.sourceforge.net/wix/sources-2.0.5325.0.zip
-The InstallShield scripts (although not supported) require version 5.5
-of InstallShiled. Version 6.0 or higher of InstallShield are not
-compatible.
-
The OpenAFS Source directory requires about 360 MB storage. The Source
directory size includes additional space for files that will be
generated during the build process.
downloaded from the OpenAFS web site:
http://www.OpenAFS.org/release/snapindex.html.
-For this example, download source for version 1.3.74 using the
+For this example, download source for version 1.5.51 using the
following URL:
-http://www.openafs.org/dl/openafs/1.3.74/openafs-1.3.74-src.tar
+http://www.openafs.org/dl/openafs/1.5.51/openafs-1.5.51-src.tar
HINT: DailySnapShots are pre-release source trees and much more
likely to have compilation errors. If this is your first attempt, do
-your build based on a release version of the source, e.g. 1.3.74. Once
+your build based on a release version of the source, e.g. 1.5.51. Once
you have completed a build process successfully, you can experiment with
other source trees.
For example "Pkzip for Windows" from Pkware will uncompress tar files.
(http://www.pkware.com/)
-Expand the downloaded tar file (openafs-1.3.74-src.tar) into target
+Expand the downloaded tar file (openafs-1.5.51-src.tar) into target
directory (c:\OpenAFS), the unzip routine will expand the source into a
subdirectory tree:
- c:\OpenAFS\OpenAFS-1.3.74\src
+ c:\OpenAFS\OpenAFS-1.5.51\src
Copy the files 'NTMakefile' and 'ntbuild.bat' from 'src' to the OpenAFS
base directory (aka %AFSROOT%):
From a DOS command prompt window, enter the following copy commands:
- cd c:\OpenAFS\OpenAFS-1.3.74
+ cd c:\OpenAFS\OpenAFS-1.5.51
copy src\NTMakefile .
copy src\ntbuild.bat .
The OpenAFS base directory should look something like the following:
- c:\OpenAFS\OpenAFS-1.3.74\
+ c:\OpenAFS\OpenAFS-1.5.51\
NTMakefile
ntbuild.bat
src
STEP B. Install compiler and development tools.
Install a copy of Microsoft Visual Studio .NET, Visual Studio .NET 2003,
-or Visual Studio .NET 2005. The "Typical" install setting is sufficient.
+or Visual Studio .NET 2005. Visual Studio 2008 has not been sufficiently
+tested to be considered "supported". The "Typical" install setting is
+sufficient.
(1) You can reduce the installation size by selecting "Custom" install
and remove all but the following Options:
STEP C. Install SDK header files.
-Files from Microsoft's Platform SDK for Windows XP SP2 or Server 2003 are
-required to complete a build on Windows 2000/XP/2003. You can install
-the "Core, Data Access and Installer SDKs" from
+Files from Microsoft's Platform SDK for Windows Server 2003 SP1 are
+required to complete a build on Windows 2000/XP/2003. At a minimum the
+following componets are known to be required:
+
+ * Core
+ * Data Access
+ * Installer
+ * Windows Management Instrumentation
+ * Web Workshop (IE)
+
+It is advised that you install the entire SDK. The SDK can be obtained
+from:
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
by using Internet Explorer 5.x or higher. (Active X controls are required)
-If you do not which to use IE a complete SDK package is available from
-
- http://www.microsoft.com/msdownload/platformsdk/sdkupdate/XPSP2FULLInstall.htm
The header files that are required from a Microsoft SDK/DDK are:
netcfgn.h, netcfgx.h:
Windows XP/2003 DDK - inc/wxp/
-
normalization.h:
Microsoft IDN Mitigation APIs 1.1 - include/
Set to 1300 if using MS Visual Studio .NET
Set to 1310 if using MS Visual Studio .NET 2003
Set to 1400 if using MS Visual Studio .NET 2005
+ Set to 1500 if using MS Visual Studio 2008
MSVCDIR: Set to the short name version of the directory into which
the visual C++ compiler was installed regardless of version
MSVCVer: Set to 8.0 if using Visual Studio 8
+ CODESIGN_DESC: Product Name
+
+ CODESIGN_TIMESTAMP: Time Stamp Service for Code Signing Certificate
+
+ CODESIGN_URL: Support URL Displayed to End Users
+
STEP E. Set version and installation options (optional)
CELLNAME_DEFAULT - The default home cell name.
CELLSERVDB_WEB - The default web address to obtain CellServDB
-For example: in the file %AFSROOT%\src\config\NTMakefile.i386_nt40 you would
+For example: in the file %AFSROOT%\src\config\NTMakefile.i386_w2k you would
see the following:
AFSPRODUCT_VER_MAJOR=1
- AFSPRODUCT_VER_MINOR=3
- AFSPRODUCT_VER_PATCH=7400
+ AFSPRODUCT_VER_MINOR=5
+ AFSPRODUCT_VER_PATCH=5100
AFSPRODUCT_VER_BUILD=0
CELLNAME_DEFAULT=openafs.org
CELLSERVDB_INSTALL=CellServDB.GrandCentral
REM Choose one of "i386_w2k", "amd64_w2k", or "i64_w2k"
SET SYS_NAME=i386_w2k
-REM Specify the targeted version of Windows and IE: 0x400 for Win9x/NT4
-REM and above; 0x500 for Windows 2000 and above
-SET _WIN32_IE=0x400
+REM Specify the targeted version of Windows and IE:
+REM 0x500 for Windows 2000 and above
+REM 0x502 for Windows XP 64 and above
+SET APPVER=0x500
+SET _WIN32_IE=0x500
REM ########################################################################
REM Location of base folder where source lies, build directory
REM "1200" for VC6
REM "1300" for VC7 (.NET)
REM "1310" for .NET 2003
-REM "1400" for VC8
-set AFSVER_CL=1310
-
-REM Location of Microsoft Visual C++ development folder (8.3 short name)
-set MSVCDIR=c:\progra~1\micros~2\vc98
-
-REM Location of Microsoft Platform SDK (8.3 short name)
-set MSSDKDIR=c:\progra~1\micros~4
-
-REM Location of npapi.h (from DDK or Platform SDK samples - 8.3 short name)
-set NTDDKDIR=c:\progra~1\micros~5
-
-REM Location of netmpr.h/netspi.h (from Windows 95/98 DDK - 8.3 short name)
-SET W9XDDKDIR=c:\progra~1\micros~6
-
-REM Location of Microsoft IDN Normalization SDK
-set MSIDNNLS=C:\progra~1\MI5913~1
+REM "1400" for VC8 (VS2005)
+set AFSVER_CL=1400
REM ########################################################################
REM NTMakefile optional definitions:
set BISON_HAIRY=c:\bin\bison.hairy
REM ########################################################################
+REM Code Signing Definitions for signtool.exe
+
+REM SET CODESIGN_DESC=OpenAFS for Windows
+REM SET CODESIGN_TIMESTAMP=<URL for Time Stamp Service>
+REM SET CODESIGN_URL=<Support URL displayed in Add/Remove Programs>
+
+REM ########################################################################
REM Accept build type as an argument; default to checked.
if "%1"=="" goto checked
:checked
set AFSBLD_TYPE=CHECKED
set AFSDEV_CRTDEBUG=1
-goto ifs_arg
+goto args_done
:free
set AFSBLD_TYPE=FREE
set AFSDEV_CRTDEBUG=0
-goto ifs_arg
-
-:ifs_arg
-
-set AFSIFS=
-if "%2"=="ifs" goto is_ifs
-if "%2"=="IFS" goto is_ifs
-
goto args_done
-:is_ifs
-
-set AFSIFS=TRUE
-
:args_done
REM #######################################################################
set AFSDEV_BUILDTYPE=%AFSBLD_TYPE%
+REM Location of Microsoft Visual C++ development folder (8.3 short name)
+set MSVCDIR=c:\progra~1\MID05A~1\vc
+
+REM Location of Microsoft Platform SDK (8.3 short name)
+set MSSDKDIR=c:\progra~1\MIC977~1
+
+REM Location of npapi.h (from DDK or Platform SDK samples - 8.3 short name)
+set NTDDKDIR=C:\WINDDK\6000
+
+REM Location of Microsoft IDN Normalization SDK
+set MSIDNNLS=C:\progra~1\MI5913~1
+
set AFSDEV_INCLUDE=%MSSDKDIR%\include;%MSVCDIR%\include;%MSIDNNLS%\include
IF "%AFSVER_CL%" == "1400" set AFSDEV_INCLUDE=%AFSDEV_INCLUDE%;%MSVCDIR%\atlmfc\include
IF "%AFSVER_CL%" == "1310" set AFSDEV_INCLUDE=%AFSDEV_INCLUDE%;%MSVCDIR%\atlmfc\include
IF "%AFSVER_CL%" == "1300" set AFSDEV_INCLUDE=%AFSDEV_INCLUDE%;%MSVCDIR%\atlmfc\include
IF "%AFSVER_CL%" == "1200" set AFSDEV_INCLUDE=%AFSDEV_INCLUDE%;%MSVCDIR%\atl\include;%MSVCDIR%\mfc\include
-set AFSDEV_INCLUDE=%AFSDEV_INCLUDE%;%NTDDKDIR%\include;%W9XDDKDIR%\include
+set AFSDEV_INCLUDE=%AFSDEV_INCLUDE%;%NTDDKDIR%\INC\DDK;%NTDDKDIR%\INC\API;
set AFSDEV_LIB=%MSSDKDIR%\lib;%MSVCDIR%\lib
IF "%AFSVER_CL%" == "1400" set AFSDEV_LIB=%AFSDEV_LIB%;%MSVCDIR%\atlmfc\lib
IF "%AFSVER_CL%" == "1200" set AFSDEV_LIB=%AFSDEV_LIB%;%MSVCDIR%\mfc\lib
set AFSDEV_BIN=%MSSDKDIR%\bin;%MSVCDIR%\bin
-
goto end
:usage