mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-11-27 02:10:55 +08:00
[svn-r13952] Purpose: Update Windows build scripts
Description: I'm in the process of re-writing the Windows build scripts for Visual Studio .NET (and eventually VS2005). These will be used with an autotest script, which is in the works. Tested: VS.NET on WinXP, although probably still needs some work.
This commit is contained in:
parent
625e2f5047
commit
9db2bf9835
@ -1,38 +1,148 @@
|
||||
@REM Copyright by The HDF Group.
|
||||
@REM Copyright by the Board of Trustees of the University of Illinois.
|
||||
@REM All rights reserved.
|
||||
@REM
|
||||
@REM This file is part of HDF5. The full HDF5 copyright notice, including
|
||||
@REM terms governing use, modification, and redistribution, is contained in
|
||||
@REM the files COPYING and Copyright.html. COPYING can be found at the root
|
||||
@REM of the source code distribution tree; Copyright.html can be found at the
|
||||
@REM root level of an installed copy of the electronic HDF5 document set and
|
||||
@REM is linked from the top-level documents page. It can also be found at
|
||||
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
|
||||
@REM access to either file, you may request a copy from help@hdfgroup.org.
|
||||
@rem Copyright by The HDF Group.
|
||||
@rem Copyright by the Board of Trustees of the University of Illinois.
|
||||
@rem All rights reserved.
|
||||
@rem
|
||||
@rem This file is part of HDF5. The full HDF5 copyright notice, including
|
||||
@rem terms governing use, modification, and redistribution, is contained in
|
||||
@rem the files COPYING and Copyright.html. COPYING can be found at the root
|
||||
@rem of the source code distribution tree; Copyright.html can be found at the
|
||||
@rem root level of an installed copy of the electronic HDF5 document set and
|
||||
@rem is linked from the top-level documents page. It can also be found at
|
||||
@rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
|
||||
@rem access to either file, you may request a copy from help@hdfgroup.org.
|
||||
|
||||
@echo OFF
|
||||
|
||||
:: File Name: hdf5bt.bat
|
||||
:: This batch file is used to build and test HDF5 Libraries and Tools.
|
||||
:: There are currently only 2 options for this batch file:
|
||||
:: hdf5bt /? -- Print a usage message and quit.
|
||||
:: hdf5bt -- Build and test HDF5 tools and C/C++ libraries
|
||||
:: By Xuan Bai
|
||||
:: Created: Aug. 16, 2004
|
||||
:: Last Updated: July 6, 2007
|
||||
|
||||
:: This batch file makes the following assumptions:
|
||||
:: - Visual Studio .NET is installed, and VS71COMNTOOLS variable is set
|
||||
:: - The directory structure is setup from a fresh source copy
|
||||
:: - copy_hdf.bat has already been run from the ./windows directory
|
||||
:: - Visual Studio already contains the required paths for external libraries
|
||||
:: - szip and zlib DLLs are already placed in an accessible directory
|
||||
:: - If HDF5_EXT_SZIP or HDF5_EXT_ZLIB are not set, then %SZIP_NAME% and %ZLIB_NAME%
|
||||
:: will be used, respectively (defined in hdfbuild.BAT)
|
||||
|
||||
:: By default, only C and C++ libraries are built and tested.
|
||||
|
||||
if defined hdf5_debug echo ON
|
||||
|
||||
if "x%1"=="x" goto main
|
||||
goto help
|
||||
|
||||
:: Print a help message
|
||||
:help
|
||||
echo.Builds and tests HDF5 Libraries and Tools.
|
||||
echo.
|
||||
echo %0 [OPTION]
|
||||
echo.
|
||||
echo.Please use one of the following options!
|
||||
echo.
|
||||
echo. %0 Build and tests HDF5 C/C++ Library and Tools
|
||||
echo. %0 /? Help information
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
||||
|
||||
@REM File Name: hdf5bt.bat
|
||||
@REM This batch file is used to build and test HDF5 Libraries and Tools.
|
||||
@REM There are 4 options for this batch file:
|
||||
@REM 1. hdf5bt -- Build and test HDF5 tools and c library
|
||||
@REM 2. hdf5bt enablecpp -- Build and test HDF5 tools and c/c++ library
|
||||
@REM 3. hdf5bt enablefortran -- Build and test HDF5 tools and c/fortran library
|
||||
@REM 4. hdf5bt enableall -- Build and test HDF5 tools and c/c++/fortran library
|
||||
@REM By Xuan Bai
|
||||
@REM Created: Aug. 16, 2004
|
||||
@REM Last Updated: Aug. 19, 2004
|
||||
:: This is where the magic happens
|
||||
:main
|
||||
|
||||
@ECHO OFF
|
||||
call :setup
|
||||
|
||||
type nul > hdf5_results.txt
|
||||
echo ***************************************************************************** >> hdf5_results.txt
|
||||
echo Build and Test HDF5 Library and Tools >> hdf5_results.txt
|
||||
echo ***************************************************************************** >> hdf5_results.txt
|
||||
echo.Build and testing all HDF5 libraries and tools
|
||||
echo.
|
||||
|
||||
call hdf5build %1
|
||||
more build_results.txt >> hdf5_results.txt
|
||||
del build_results.txt
|
||||
call hdf5check %1
|
||||
more check_results.txt >> hdf5_results.txt
|
||||
del check_results.txt
|
||||
echo.***************************************************************************** >> %bt_results%
|
||||
echo. Build and Test HDF5 Library and Tools >> %bt_results%
|
||||
echo.***************************************************************************** >> %bt_results%
|
||||
echo. >> %bt_results%
|
||||
|
||||
call :build
|
||||
if errorlevel 1 (
|
||||
echo.Error building HDF5 libraries!
|
||||
goto error
|
||||
)
|
||||
|
||||
call :test
|
||||
if errorlevel 1 (
|
||||
echo.Error testing HDF5 libraries!
|
||||
goto error
|
||||
)
|
||||
|
||||
echo. All HDF5 libraries and tools build and tested successfully!
|
||||
echo. All HDF5 libraries and tools build and tested successfully! >> %build_results%
|
||||
|
||||
call :cleanup
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
||||
|
||||
:: Setup our environment
|
||||
:setup
|
||||
|
||||
:: Put us in the directory of the batch file.
|
||||
pushd %~dp0
|
||||
|
||||
:: Constants
|
||||
if "x%bt_results%"=="x" set bt_results="%CD%\bt_results.txt"
|
||||
if "x%build_results%"=="x" set build_results="%CD%\build_results.txt"
|
||||
|
||||
:: Create our results file
|
||||
type nul > %bt_results%
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
||||
|
||||
:: Build HDF5 libraries and tools
|
||||
:build
|
||||
|
||||
call hdf5build.BAT
|
||||
type %build_results% >> %bt_results%
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
||||
|
||||
:: Test our libraries and tools
|
||||
:test
|
||||
|
||||
call hdf5check enablecpp
|
||||
type check_results.txt >> %bt_results%
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
||||
|
||||
:: Handle errors
|
||||
:error
|
||||
|
||||
:: For now, our error handling just consists of calling cleanup, and exiting
|
||||
echo.hdf5bt failed.
|
||||
echo.hdf5bt failed. >> %bt_results%
|
||||
call :cleanup
|
||||
set errorlevel=1
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
||||
|
||||
:: Cleanup our environment
|
||||
:cleanup
|
||||
|
||||
set bt_results=
|
||||
set build_results=
|
||||
popd
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
@ -1,221 +1,182 @@
|
||||
@REM Copyright by The HDF Group.
|
||||
@REM Copyright by the Board of Trustees of the University of Illinois.
|
||||
@REM All rights reserved.
|
||||
@REM
|
||||
@REM This file is part of HDF5. The full HDF5 copyright notice, including
|
||||
@REM terms governing use, modification, and redistribution, is contained in
|
||||
@REM the files COPYING and Copyright.html. COPYING can be found at the root
|
||||
@REM of the source code distribution tree; Copyright.html can be found at the
|
||||
@REM root level of an installed copy of the electronic HDF5 document set and
|
||||
@REM is linked from the top-level documents page. It can also be found at
|
||||
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
|
||||
@REM access to either file, you may request a copy from help@hdfgroup.org.
|
||||
@rem Copyright by The HDF Group.
|
||||
@rem Copyright by the Board of Trustees of the University of Illinois.
|
||||
@rem All rights reserved.
|
||||
@rem
|
||||
@rem This file is part of HDF5. The full HDF5 copyright notice, including
|
||||
@rem terms governing use, modification, and redistribution, is contained in
|
||||
@rem the files COPYING and Copyright.html. COPYING can be found at the root
|
||||
@rem of the source code distribution tree; Copyright.html can be found at the
|
||||
@rem root level of an installed copy of the electronic HDF5 document set and
|
||||
@rem is linked from the top-level documents page. It can also be found at
|
||||
@rem http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
|
||||
@rem access to either file, you may request a copy from help@hdfgroup.org.
|
||||
|
||||
@REM File Name: hdf5build.bat
|
||||
@REM This batch file is used to build HDF5 Libraries and Tools.
|
||||
@REM There are 4 options for this batch file:
|
||||
@REM 1. hdf5build -- Build HDF5 tools and c library
|
||||
@REM 2. hdf5build enablecpp -- Build HDF5 tools and c/c++ library
|
||||
@REM 3. hdf5build enablefortran -- Build HDF5 tools and c/fortran library
|
||||
@REM 4. hdf5build enableall -- Build HDF5 tools and c/c++/fortran library
|
||||
@REM By Xuan Bai
|
||||
@REM Created: Aug. 16, 2004
|
||||
@REM Last Updated: Oct. 6, 2004
|
||||
@echo OFF
|
||||
|
||||
@ECHO OFF
|
||||
if %1.==. GOTO BUILDC
|
||||
if "%1"=="/?" GOTO HELP
|
||||
if %1==enablecpp GOTO BUILDCPP
|
||||
if %1==enablefortran GOTO BUILDF90
|
||||
if %1==enableall GOTO BUILDALL
|
||||
GOTO WRONG
|
||||
:: File Name: hdf5build.bat
|
||||
:: This batch file is used to build HDF5 Libraries and Tools.
|
||||
:: There are currently only 2 options for this batch file:
|
||||
:: 1. hdf5build -- Print a usage message and quit
|
||||
:: 1. hdf5build -- Build HDF5 tools and c library
|
||||
:: By Xuan Bai
|
||||
:: Created: Aug. 16, 2004
|
||||
:: Last Updated: July 7, 2007
|
||||
|
||||
:BUILDC
|
||||
type nul > build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
echo Build H5Tinit.exe >> build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
:: This batch file makes the following assumptions:
|
||||
:: - Visual Studio .NET is installed, and VS71COMNTOOLS variable is set
|
||||
:: - The directory structure is setup from a fresh source copy
|
||||
:: - copy_hdf.bat has already been run from the ./windows directory
|
||||
:: - Visual Studio already contains the required paths for external libraries
|
||||
:: - szip and zlib DLLs are already placed in an accessible directory
|
||||
:: - If hdf5_ext_szip or hdf5_ext_zlib are not set, then %szip_name% and %zlib_name%
|
||||
:: will be used, respectively.
|
||||
|
||||
cd windows\misc\typegen\h5tinit
|
||||
msdev h5tinit.dsp /make "h5tinit - Win32 Debug" /Rebuild /out ..\..\..\..\h5tinit.log
|
||||
cd ..\..\..\..\
|
||||
more h5tinit.log >> build_results.txt
|
||||
del h5tinit.log
|
||||
:: By default, only C and C++ libraries are built.
|
||||
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
echo Build HDF5 C Library and Tools >> build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
if defined hdf5_debug echo ON
|
||||
|
||||
cd src
|
||||
h5tinit.exe > h5tinit.c
|
||||
if "x%1"=="x" goto main
|
||||
goto help
|
||||
|
||||
cd ..\windows\proj\all
|
||||
msdev all.dsw /make "all - ALL" /Rebuild /out ..\..\..\all.log
|
||||
cd ..\..\..\
|
||||
more all.log >> build_results.txt
|
||||
del all.log
|
||||
GOTO END
|
||||
:: Print a help message
|
||||
:help
|
||||
echo.Builds HDF5 Libraries and Tools.
|
||||
echo.
|
||||
echo %0 [OPTION]
|
||||
echo.
|
||||
echo.Please use one of the following options!
|
||||
echo.
|
||||
echo. %0 Build HDF5 C Library and Tools
|
||||
echo. %0 /? Help information
|
||||
goto :eof
|
||||
|
||||
:BUILDCPP
|
||||
type nul > build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
echo Build H5Tinit.exe >> build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
|
||||
cd windows\misc\typegen\h5tinit
|
||||
msdev h5tinit.dsp /make "h5tinit - Win32 Debug" /Rebuild /out ..\..\..\..\h5tinit.log
|
||||
cd ..\..\..\..\
|
||||
more h5tinit.log >> build_results.txt
|
||||
del h5tinit.log
|
||||
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
echo Build HDF5 C/C++ Libraries and Tools >> build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
:: This is where the magic happens
|
||||
:main
|
||||
|
||||
cd src
|
||||
h5tinit.exe > h5tinit.c
|
||||
call :setup
|
||||
|
||||
cd ..\windows\proj\all
|
||||
msdev all.dsw /make "hl_test_table_cpp - ALL" "hl_test_table_cppdll - ALL" "testhdf5_cppdll - ALL" "testhdf5_cpp - ALL" "dsets_cppdll - ALL" "dsets_cpp - ALL" "all - ALL" /Rebuild /out ..\..\..\all.log
|
||||
cd ..\..\..\
|
||||
more all.log >> build_results.txt
|
||||
del all.log
|
||||
GOTO END
|
||||
|
||||
:BUILDF90
|
||||
type nul > build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
echo Build H5Tinit.exe >> build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
|
||||
cd windows\misc\typegen\h5tinit
|
||||
msdev h5tinit.dsp /make "h5tinit - Win32 Debug" /Rebuild /out ..\..\..\..\h5tinit.log
|
||||
cd ..\..\..\..\
|
||||
more h5tinit.log >> build_results.txt
|
||||
del h5tinit.log
|
||||
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
echo Generate H5f90i_gen.h and H5fortran_types.f90
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
|
||||
REM Generate H5fortran_detect.f90
|
||||
cd windows\misc\H5fortran_detect_gen
|
||||
dfdev H5fortran_detect_gen.dsp /make "H5fortran_detect_gen - Win32 Debug" /Rebuild /out ..\..\..\H5fortran_detect_gen.log
|
||||
cd ..\..\..\fortran\src
|
||||
H5fortran_detect_gen.exe > H5fortran_detect.f90
|
||||
del H5fortran_detect_gen.exe
|
||||
cd ..\..\
|
||||
more H5fortran_detect_gen.log >> build_results.txt
|
||||
del H5fortran_detect_gen.log
|
||||
|
||||
REM Generate H5fort_type_defines.h
|
||||
cd windows\misc\fortrantypegen
|
||||
dfdev H5fortran_detect.dsp /make "H5fortran_detect - Win32 Debug" /Rebuild /out ..\..\..\H5fortran_detect.log
|
||||
cd ..\..\..\fortran\src
|
||||
H5fortran_detect.exe > H5fort_type_defines.h
|
||||
del H5fortran_detect.exe
|
||||
cd ..\..\
|
||||
more H5fortran_detect.log >> build_results.txt
|
||||
del H5fortran_detect.log
|
||||
|
||||
REM Generate H5f90i_gen.h and H5fortran_types.f90
|
||||
cd windows\misc\matchtypegen
|
||||
dfdev H5match_types.dsp /make "H5match_types - Win32 Debug" /Rebuild /out ..\..\..\H5match_types.log
|
||||
cd ..\..\..\fortran\src
|
||||
H5match_types.exe
|
||||
del H5match_types.exe
|
||||
cd ..\..\
|
||||
more H5match_types.log >> build_results.txt
|
||||
del H5match_types.log
|
||||
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
echo Build HDF5 C/Fortran Libraries and Tools >> build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
|
||||
cd src
|
||||
h5tinit.exe > h5tinit.c
|
||||
|
||||
cd ..\windows\proj\all
|
||||
msdev all.dsw /make "hl_test_image_fortrandll - ALL" "hl_test_lite_fortrandll - ALL" "hl_test_table_fortrandll - ALL" "hl_test_image_fortran - ALL" "hl_test_lite_fortran - ALL" "hl_test_table_fortran - ALL" "testhdf5_fortrandll - ALL" "testhdf5_fortran - ALL" "flush2_fortrandll - ALL" "flush2_fortran - ALL" "flush1_fortrandll - ALL" "flush1_fortran - ALL" "all - ALL" /Rebuild /out ..\..\..\all.log
|
||||
cd ..\..\..\
|
||||
more all.log >> build_results.txt
|
||||
del all.log
|
||||
GOTO END
|
||||
|
||||
:BUILDALL
|
||||
type nul > build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
echo Build H5Tinit.exe >> build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
|
||||
cd windows\misc\typegen\h5tinit
|
||||
msdev h5tinit.dsp /make "h5tinit - Win32 Debug" /Rebuild /out ..\..\..\..\h5tinit.log
|
||||
cd ..\..\..\..\
|
||||
more h5tinit.log >> build_results.txt
|
||||
del h5tinit.log
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
echo Generate H5f90i_gen.h and H5fortran_types.f90
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
|
||||
REM Generate H5fortran_detect.f90
|
||||
cd windows\misc\H5fortran_detect_gen
|
||||
dfdev H5fortran_detect_gen.dsp /make "H5fortran_detect_gen - Win32 Debug" /Rebuild /out ..\..\..\H5fortran_detect_gen.log
|
||||
cd ..\..\..\fortran\src
|
||||
H5fortran_detect_gen.exe > H5fortran_detect.f90
|
||||
del H5fortran_detect_gen.exe
|
||||
cd ..\..\
|
||||
more H5fortran_detect_gen.log >> build_results.txt
|
||||
del H5fortran_detect_gen.log
|
||||
|
||||
REM Generate H5fort_type_defines.h
|
||||
cd windows\misc\fortrantypegen
|
||||
dfdev H5fortran_detect.dsp /make "H5fortran_detect - Win32 Debug" /Rebuild /out ..\..\..\H5fortran_detect.log
|
||||
cd ..\..\..\fortran\src
|
||||
H5fortran_detect.exe > H5fort_type_defines.h
|
||||
del H5fortran_detect.exe
|
||||
cd ..\..\
|
||||
more H5fortran_detect.log >> build_results.txt
|
||||
del H5fortran_detect.log
|
||||
|
||||
REM Generate H5f90i_gen.h and H5fortran_types.f90
|
||||
cd windows\misc\matchtypegen
|
||||
dfdev H5match_types.dsp /make "H5match_types - Win32 Debug" /Rebuild /out ..\..\..\H5match_types.log
|
||||
cd ..\..\..\fortran\src
|
||||
H5match_types.exe
|
||||
del H5match_types.exe
|
||||
cd ..\..\
|
||||
more H5match_types.log >> build_results.txt
|
||||
del H5match_types.log
|
||||
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
echo Build HDF5 C/C++/Fortran Libraries and Tools >> build_results.txt
|
||||
echo ***************************************************************************** >> build_results.txt
|
||||
|
||||
cd src
|
||||
h5tinit.exe > h5tinit.c
|
||||
|
||||
cd ..\windows\proj\all
|
||||
msdev all.dsw /make "hl_test_image_fortrandll - ALL" "hl_test_lite_fortrandll - ALL" "hl_test_table_fortrandll - ALL" "hl_test_image_fortran - ALL" "hl_test_lite_fortran - ALL" "hl_test_table_fortran - ALL" "testhdf5_fortrandll - ALL" "testhdf5_fortran - ALL" "flush2_fortrandll - ALL" "flush2_fortran - ALL" "flush1_fortrandll - ALL" "flush1_fortran - ALL" "testhdf5_cppdll - ALL" "testhdf5_cpp - ALL" "dsets_cppdll - ALL" "dsets_cpp - ALL" "hl_test_table_cpp - ALL" "hl_test_table_cppdll - ALL" "all - ALL" /Rebuild /out ..\..\..\all.log
|
||||
cd ..\..\..\
|
||||
more all.log >> build_results.txt
|
||||
del all.log
|
||||
GOTO END
|
||||
|
||||
:WRONG
|
||||
echo The syntax of the command is incorrect.
|
||||
echo.Building HDF5 Libraries and Tools
|
||||
echo.
|
||||
|
||||
:HELP
|
||||
echo Builds HDF5 Libraries and Tools.
|
||||
echo.
|
||||
echo hdf5build [OPTION]
|
||||
echo.
|
||||
echo Please use one of the following options!
|
||||
echo.
|
||||
echo hdf5build Build HDF5 C Library and Tools
|
||||
echo hdf5build enablecpp Build HDF5 C/C++ Libraries and Tools
|
||||
echo hdf5build enablefortran Build HDF5 C/Fortran Libraries and Tools
|
||||
echo hdf5build enableall Build HDF5 C/C++/Fortran Libraries and Tools
|
||||
echo hdf5build /? Help information
|
||||
echo.***************************************************************************** >> %build_results%
|
||||
echo. Build HDF5 Libraries and Tools >> %build_results%
|
||||
echo.***************************************************************************** >> %build_results%
|
||||
echo. >> %build_results%
|
||||
|
||||
:END
|
||||
|
||||
call :h5tinit
|
||||
if errorlevel 1 (
|
||||
echo. Error building h5tinit!
|
||||
echo. Error building h5tinit! >> %build_results%
|
||||
goto error
|
||||
)
|
||||
|
||||
call :all
|
||||
if errorlevel 1 (
|
||||
echo. Error building HDF5 libraries!
|
||||
echo. Error building HDF5 libraries! >> %build_results%
|
||||
|
||||
goto error
|
||||
)
|
||||
|
||||
echo. All HDF5 libraries and tools build successfully!
|
||||
echo. All HDF5 libraries and tools build successfully! >> %build_results%
|
||||
|
||||
call :cleanup
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
||||
:: Setup our environment
|
||||
:setup
|
||||
|
||||
echo. Setting up environment >> %build_results%
|
||||
|
||||
:: Put us in the directory of the batch file.
|
||||
pushd %~dp0
|
||||
|
||||
:: Constants
|
||||
if "x%zlib_name%"=="x" set zlib_name=zdll.lib
|
||||
if "x%szip_name%"=="x" set szip_name=szlibdll.lib
|
||||
if "x%build_results%"=="x" set build_results="%CD%\build_results.txt"
|
||||
|
||||
:: Create our results file
|
||||
type nul > %build_results%
|
||||
|
||||
:: Set external libraries if they aren't already set
|
||||
if x%hdf5_ext_zlib%==x set hdf5_ext_zlib=%zlib_name%
|
||||
if x%hdf5_ext_szip%==x set hdf5_ext_szip=%szip_name%
|
||||
|
||||
:: By default, use the Visual Studio .NET environment
|
||||
call "%vs71comntools%\vsvars32.bat" >> %build_results%
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
||||
|
||||
:: Build H5tinit.exe and generate h4tinit.c
|
||||
:h5tinit
|
||||
|
||||
echo. Generating H5tint.c
|
||||
|
||||
echo.***************************************************************************** >> %build_results%
|
||||
echo. Build H5Tinit.exe >> %build_results%
|
||||
echo.***************************************************************************** >> %build_results%
|
||||
echo. >> %build_results%
|
||||
devenv .\windows\misc\typegen\typegen.sln /rebuild Debug >> %build_results% 2>&1
|
||||
if errorlevel 1 goto :eof
|
||||
|
||||
:: Use output to generate h5tinit.c
|
||||
.\src\h5tinit.exe > .\src\h5tinit.c
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
||||
|
||||
:: Build the HDF5 libraries. By default, C and C++ libraries are built.
|
||||
:all
|
||||
|
||||
echo. Building HDF5
|
||||
|
||||
echo.***************************************************************************** >> %build_results%
|
||||
echo. Build HDF5 C Library and Tools >> %build_results%
|
||||
echo.***************************************************************************** >> %build_results%
|
||||
echo. >> %build_results%
|
||||
|
||||
:: Build both debug and release versions
|
||||
for %%a in (debug release) DO (
|
||||
echo. Building %%a libraries...
|
||||
echo. Building %%a libraries... >> %build_results%
|
||||
devenv .\windows\proj\all\all.sln /rebuild %%a >> %build_results% 2>%1
|
||||
if errorlevel 1 goto :eof
|
||||
)
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
||||
|
||||
:: Handle errors
|
||||
:error
|
||||
|
||||
:: For now, our error handling just consists of calling cleanup, and setting errorlevel
|
||||
echo.HDF5 build failed.
|
||||
echo.HDF5 build failed. >> %build_results%
|
||||
call :cleanup
|
||||
set errorlevel=1
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
||||
|
||||
:: Cleanup our environment
|
||||
:cleanup
|
||||
|
||||
set zlib_name=
|
||||
set szip_name=
|
||||
set build_results=
|
||||
popd
|
||||
|
||||
if defined hdf5_debug pause
|
||||
goto :eof
|
||||
|
Loading…
Reference in New Issue
Block a user