diff --git a/windows/copy_hdf.bat b/windows/copy_hdf.bat index b02e2eba22..7648a302b2 100755 --- a/windows/copy_hdf.bat +++ b/windows/copy_hdf.bat @@ -17,15 +17,15 @@ rem Purpose : Copy all Files in the following formats from Windows to rem approapriate directory: .bat .c .f90 .h .txt .js rem : rem Written By : Muqun Yang -rem Last Update : November 17, 2007 by Scott Wegner +rem Last Update : 2/18/08 by Scott Wegner pushd %~dp0 -copy src\H5Tinit.c ..\src -copy src\H5pubconf.h ..\src -copy fortran\src\H5f90i_gen.h ..\fortran\src -copy fortran\src\H5fortran_types.f90 ..\fortran\src -xcopy /e/i/Y *.bat ..\ -copy examples\testExamples_exp_output.txt ..\examples +copy /y src\H5Tinit.c ..\src > nul +copy /y src\H5pubconf.h ..\src > nul +copy /y fortran\src\H5f90i_gen.h ..\fortran\src > nul +copy /y fortran\src\H5fortran_types.f90 ..\fortran\src > nul +xcopy /s /i /y *.bat ..\ > nul +copy /y examples\testExamples_exp_output.txt ..\examples > nul popd diff --git a/windows/hdf5bt.BAT b/windows/hdf5bt.BAT index 26b1e146e9..08f48c4e5d 100755 --- a/windows/hdf5bt.BAT +++ b/windows/hdf5bt.BAT @@ -19,10 +19,13 @@ rem This batch file takes the following options: rem . /fort Build and test HDF5 with Fortran libraries rem . /useenv Build HDF5 using compiler settings defined rem . in the environment, rather than the IDE. +rem . /log Log the build and test results in files defined by +rem . environment variables HDF5BUILD_LOG and +rem . HDF5CHECK_LOG rem . /? Help information rem By Xuan Bai rem Created: Aug. 16, 2004 -rem Last Updated: Scott Wegner, 10/1/07 +rem Last Updated: Scott Wegner, 2/18/08 rem This batch file makes the following assumptions: rem - The appropriate version of Visual Studio is installed and setup @@ -33,6 +36,8 @@ rem - szip and zlib DLLs are already placed in an accessible directory rem - hdf5_ext_szip or hdf5_ext_zlib have been set accordingly rem - if building with the /useenv option, szip and zlib paths have been added rem to %include% and %libpath% as necessary. +rem - if using the /log option, hdf5build_log and hdf5_check log should be defined +rem - in the environment. rem By default, only C and C++ libraries are built and tested. @@ -69,6 +74,10 @@ rem Parse through the parameters sent to file, and set appropriate variables rem Pass /useenv flag to devenv set hdf5_useenv=true + ) else if "%%a"=="/log" ( + rem Log our results to files defined in environment + set hdf5_logresults=true + ) else if "%%a"=="/?" ( rem Set errorlevel 1 and send to help call :help @@ -102,21 +111,49 @@ rem Setup our environment set hdf5build_params=%hdf5build_params% /useenv ) + rem Clear out our log files if they will be used + if defined hdf5_logresults ( + if not defined hdf5build_log ( + echo.Error: HDF5BUILD_LOG not defined in environment! + exit /b 1 + ) else ( + type nul > !hdf5build_log! + ) + + if not defined hdf5check_log ( + echo.Error: HDF5CHECK_LOG not defined in environment! + exit /b 1 + ) else ( + type nul > !hdf5check_log! + ) + ) + exit /b 0 rem Build HDF5 libraries and tools :build - call hdf5build.bat %hdf5build_params% + if defined hdf5_logresults ( + echo.Calling hdf5bbuild.bat %hdf5build_params% + echo.Results logged in %hdf5build_log% + call hdf5build.bat %hdf5build_params% > !hdf5build_log! 2>&1 + ) else ( + call hdf5build.bat %hdf5build_params% + ) exit /b rem Test our libraries and tools :test - - call hdf5check %hdf5check_params% + if defined hdf5_logresults ( + echo.Calling hdf5check.bat %hdf5check_params% + echo.Results logged in %hdf5check_log% + call hdf5check %hdf5check_params% > !hdf5check_log! 2>&1 + ) else ( + call hdf5check %hdf5check_params% + ) exit /b @@ -151,6 +188,10 @@ rem This is where the magic happens ) call :setup + if %errorlevel% neq 0 ( + echo.Error setting up hdf5bt environment! + goto error + ) echo.***************************************************************************** echo. Build and Test HDF5 Library and Tools diff --git a/windows/installhdf5lib.bat b/windows/installhdf5lib.bat index d53258c18b..792cdb34ce 100755 --- a/windows/installhdf5lib.bat +++ b/windows/installhdf5lib.bat @@ -1,178 +1,328 @@ -@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 +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 This batch file is used to install HDF5 libraries and tools -@REM Last Updated: 11/03/2004 +rem This batch file is used to install HDF5 libraries and tools +rem Last Updated: 2/18/2007 -mkdir hdf5lib -cd hdf5lib -mkdir debug -cd debug -mkdir bin -mkdir bindll -mkdir dll -mkdir lib -mkdir include -mkdir modsdll -cd .. -mkdir release -cd release -mkdir bin -mkdir bindll -mkdir dll -mkdir lib -mkdir include -mkdir modsdll -cd .. -cd .. +setlocal enabledelayedexpansion +pushd %~dp0 -@REM Install C libraries and tools -copy src\*.h hdf5lib\debug\include -del hdf5lib\debug\include\*private.h -copy proj\hdf5\debug\hdf5d.lib hdf5lib\debug\lib -copy proj\hdf5dll\debug\hdf5ddll.lib hdf5lib\debug\dll -copy proj\hdf5dll\debug\hdf5ddll.dll hdf5lib\debug\dll +set install_dir=%systemroot%\system -copy hl\tools\gifconv\gif2h5\debug\gif2h5.exe hdf5lib\debug\bin -copy hl\tools\gifconv\h52gif\debug\h52gif.exe hdf5lib\debug\bin -copy tools\h5debug\debug\h5debug.exe hdf5lib\debug\bin -copy tools\h5diff\debug\h5diff.exe hdf5lib\debug\bin -copy tools\h5dump\debug\h5dump.exe hdf5lib\debug\bin -copy tools\h5import\debug\h5import.exe hdf5lib\debug\bin -copy tools\h5jam\debug\h5jam.exe hdf5lib\debug\bin -copy tools\h5ls\debug\h5ls.exe hdf5lib\debug\bin -copy tools\h5repack\debug\h5repack.exe hdf5lib\debug\bin -copy tools\h5repart\debug\h5repart.exe hdf5lib\debug\bin -copy tools\h5unjam\debug\h5unjam.exe hdf5lib\debug\bin +goto main -copy hl\tools\gifconvdll\h52gifdll\debug\h52gifdll.exe hdf5lib\debug\bindll -copy hl\tools\gifconvdll\gif2h5dll\debug\gif2h5dll.exe hdf5lib\debug\bindll -copy tools\h5debugdll\debug\h5debugdll.exe hdf5lib\debug\bindll -copy tools\h5diffdll\debug\h5diffdll.exe hdf5lib\debug\bindll -copy tools\h5dumpdll\debug\h5dumpdll.exe hdf5lib\debug\bindll -copy tools\h5importdll\debug\h5importdll.exe hdf5lib\debug\bindll -copy tools\h5lsdll\debug\h5lsdll.exe hdf5lib\debug\bindll -copy tools\h5repackdll\debug\h5repackdll.exe hdf5lib\debug\bindll -copy tools\h5repartdll\debug\h5repartdll.exe hdf5lib\debug\bindll +rem Create the directory structure that we'll need to install +:create_directories -copy src\*.h hdf5lib\release\include -del hdf5lib\release\include\*private.h -copy proj\hdf5\release\hdf5.lib hdf5lib\release\lib -copy proj\hdf5dll\release\hdf5dll.lib hdf5lib\release\dll -copy proj\hdf5dll\release\hdf5dll.dll hdf5lib\release\dll + for %%a in (debug release) do ( + for %%b in (bin bindll dll lib include modsdll) do ( + if not exist hdf5lib\%%a\%%b ( + mkdir hdf5lib\%%a\%%b + ) + ) + ) + + exit /b + +rem This function actally copies the file over, first making sure it exists. If not, we increment nerrors +rem Expected parameters: +rem %1 - name of file to copy +rem %2 - destination to copy to +:safe_copy + + if exist %1 ( + copy /y %1 %2 > nul + ) else ( + set /a nerrors=%nerrors%+1 + ) + + exit /b + + +rem Only delete a file if it actually exists. Return the status of delete if it was called +rem Expected paramters: +rem %1 - name of file to delete +:safe_delete + if exist %1 ( + del /f %1 > nul + ) + + exit /b -copy hl\tools\gifconv\gif2h5\release\gif2h5.exe hdf5lib\release\bin -copy hl\tools\gifconv\h52gif\release\h52gif.exe hdf5lib\release\bin -copy tools\h5debug\release\h5debug.exe hdf5lib\release\bin -copy tools\h5diff\release\h5diff.exe hdf5lib\release\bin -copy tools\h5dump\release\h5dump.exe hdf5lib\release\bin -copy tools\h5import\release\h5import.exe hdf5lib\release\bin -copy tools\h5jam\release\h5jam.exe hdf5lib\release\bin -copy tools\h5ls\release\h5ls.exe hdf5lib\release\bin -copy tools\h5repack\release\h5repack.exe hdf5lib\release\bin -copy tools\h5repart\release\h5repart.exe hdf5lib\release\bin -copy tools\h5unjam\release\h5unjam.exe hdf5lib\release\bin +rem Install C Libraries and Tools +:install_c + set nerrors=0 + + rem ===DEBUG=== + rem include + call :safe_copy src\*.h hdf5lib\debug\include + call :safe_delete hdf5lib\debug\include\*private.h + rem lib + call :safe_copy proj\hdf5\debug\hdf5d.lib hdf5lib\debug\lib + rem dll + call :safe_copy proj\hdf5dll\debug\hdf5ddll.lib hdf5lib\debug\dll + call :safe_copy proj\hdf5dll\debug\hdf5ddll.dll hdf5lib\debug\dll + rem bin + call :safe_copy hl\tools\gifconv\gif2h5\debug\gif2h5.exe hdf5lib\debug\bin + call :safe_copy hl\tools\gifconv\h52gif\debug\h52gif.exe hdf5lib\debug\bin + call :safe_copy tools\h5debug\debug\h5debug.exe hdf5lib\debug\bin + call :safe_copy tools\h5diff\debug\h5diff.exe hdf5lib\debug\bin + call :safe_copy tools\h5dump\debug\h5dump.exe hdf5lib\debug\bin + call :safe_copy tools\h5import\debug\h5import.exe hdf5lib\debug\bin + call :safe_copy tools\h5jam\debug\h5jam.exe hdf5lib\debug\bin + call :safe_copy tools\h5ls\debug\h5ls.exe hdf5lib\debug\bin + call :safe_copy tools\h5repack\debug\h5repack.exe hdf5lib\debug\bin + call :safe_copy tools\h5repart\debug\h5repart.exe hdf5lib\debug\bin + call :safe_copy tools\h5unjam\debug\h5unjam.exe hdf5lib\debug\bin + rem bindll + call :safe_copy hl\tools\gifconvdll\h52gifdll\debug\h52gifdll.exe hdf5lib\debug\bindll + call :safe_copy hl\tools\gifconvdll\gif2h5dll\debug\gif2h5dll.exe hdf5lib\debug\bindll + call :safe_copy tools\h5debugdll\debug\h5debugdll.exe hdf5lib\debug\bindll + call :safe_copy tools\h5diffdll\debug\h5diffdll.exe hdf5lib\debug\bindll + call :safe_copy tools\h5dumpdll\debug\h5dumpdll.exe hdf5lib\debug\bindll + call :safe_copy tools\h5importdll\debug\h5importdll.exe hdf5lib\debug\bindll + call :safe_copy tools\h5lsdll\debug\h5lsdll.exe hdf5lib\debug\bindll + call :safe_copy tools\h5repackdll\debug\h5repackdll.exe hdf5lib\debug\bindll + call :safe_copy tools\h5repartdll\debug\h5repartdll.exe hdf5lib\debug\bindll + + rem ===RELEASE=== + rem include + call :safe_copy src\*.h hdf5lib\release\include + call :safe_delete hdf5lib\release\include\*private.h + rem lib + call :safe_copy proj\hdf5\release\hdf5.lib hdf5lib\release\lib + rem dll + call :safe_copy proj\hdf5dll\release\hdf5dll.lib hdf5lib\release\dll + call :safe_copy proj\hdf5dll\release\hdf5dll.dll hdf5lib\release\dll + rem bin + call :safe_copy hl\tools\gifconv\gif2h5\release\gif2h5.exe hdf5lib\release\bin + call :safe_copy hl\tools\gifconv\h52gif\release\h52gif.exe hdf5lib\release\bin + call :safe_copy tools\h5debug\release\h5debug.exe hdf5lib\release\bin + call :safe_copy tools\h5diff\release\h5diff.exe hdf5lib\release\bin + call :safe_copy tools\h5dump\release\h5dump.exe hdf5lib\release\bin + call :safe_copy tools\h5import\release\h5import.exe hdf5lib\release\bin + call :safe_copy tools\h5jam\release\h5jam.exe hdf5lib\release\bin + call :safe_copy tools\h5ls\release\h5ls.exe hdf5lib\release\bin + call :safe_copy tools\h5repack\release\h5repack.exe hdf5lib\release\bin + call :safe_copy tools\h5repart\release\h5repart.exe hdf5lib\release\bin + call :safe_copy tools\h5unjam\release\h5unjam.exe hdf5lib\release\bin + rem bindll + call :safe_copy hl\tools\gifconvdll\h52gifdll\release\h52gifdll.exe hdf5lib\release\bindll + call :safe_copy hl\tools\gifconvdll\gif2h5dll\release\gif2h5dll.exe hdf5lib\release\bindll + call :safe_copy tools\h5debugdll\release\h5debugdll.exe hdf5lib\release\bindll + call :safe_copy tools\h5diffdll\release\h5diffdll.exe hdf5lib\release\bindll + call :safe_copy tools\h5dumpdll\release\h5dumpdll.exe hdf5lib\release\bindll + call :safe_copy tools\h5importdll\release\h5importdll.exe hdf5lib\release\bindll + call :safe_copy tools\h5lsdll\release\h5lsdll.exe hdf5lib\release\bindll + call :safe_copy tools\h5repackdll\release\h5repackdll.exe hdf5lib\release\bindll + call :safe_copy tools\h5repartdll\release\h5repartdll.exe hdf5lib\release\bindll + + exit /b %nerrors% + -copy hl\tools\gifconvdll\h52gifdll\release\h52gifdll.exe hdf5lib\release\bindll -copy hl\tools\gifconvdll\gif2h5dll\release\gif2h5dll.exe hdf5lib\release\bindll -copy tools\h5debugdll\release\h5debugdll.exe hdf5lib\release\bindll -copy tools\h5diffdll\release\h5diffdll.exe hdf5lib\release\bindll -copy tools\h5dumpdll\release\h5dumpdll.exe hdf5lib\release\bindll -copy tools\h5importdll\release\h5importdll.exe hdf5lib\release\bindll -copy tools\h5lsdll\release\h5lsdll.exe hdf5lib\release\bindll -copy tools\h5repackdll\release\h5repackdll.exe hdf5lib\release\bindll -copy tools\h5repartdll\release\h5repartdll.exe hdf5lib\release\bindll +rem Install HL Libraries and Tools +:install_hl + set nerrors=0 + + rem ===DEBUG=== + rem include + call :safe_copy hl\src\*.h hdf5lib\debug\include + rem lib + call :safe_copy proj\hdf5_hl\debug\hdf5_hld.lib hdf5lib\debug\lib + rem dll + call :safe_copy proj\hdf5_hldll\debug\hdf5_hlddll.lib hdf5lib\debug\dll + call :safe_copy proj\hdf5_hldll\debug\hdf5_hlddll.dll hdf5lib\debug\dll -@REM Install HDF5 High Level Libraries -copy hl\src\*.h hdf5lib\debug\include -copy "hl\c++\src\*.h" hdf5lib\debug\include -copy proj\hdf5_hl_fortran\debug\*.mod hdf5lib\debug\include -copy proj\hdf5_hl_fortrandll\debug\*.mod hdf5lib\debug\modsdll + rem ===RELEASE=== + rem include + call :safe_copy hl\src\*.h hdf5lib\release\include + rem lib + call :safe_copy proj\hdf5_hl\release\hdf5_hl.lib hdf5lib\release\lib + rem dll + call :safe_copy proj\hdf5_hldll\release\hdf5_hldll.lib hdf5lib\release\dll + call :safe_copy proj\hdf5_hldll\release\hdf5_hldll.dll hdf5lib\release\dll + + exit /b %nerrors% -copy proj\hdf5_hl\debug\hdf5_hld.lib hdf5lib\debug\lib -copy proj\hdf5_hl_cpp\debug\hdf5_hl_cppd.lib hdf5lib\debug\lib -copy proj\hdf5_hl_fortran\debug\hdf5_hl_fortrand.lib hdf5lib\debug\lib -copy proj\hdf5_hl_f90cstub\debug\hdf5_hl_f90cstubd.lib hdf5lib\debug\lib +rem Install C++ Libraries and Tools +:install_cpp + set nerrors=0 + REM ===DEBUG=== + rem include + call :safe_copy "c++\src\*.h" hdf5lib\debug\include + rem lib + call :safe_copy proj\hdf5_cpp\debug\hdf5_cppd.lib hdf5lib\debug\lib + rem dll + call :safe_copy proj\hdf5_cppdll\debug\hdf5_cppddll.lib hdf5lib\debug\dll + call :safe_copy proj\hdf5_cppdll\debug\hdf5_cppddll.dll hdf5lib\debug\dll -copy proj\hdf5_hldll\debug\hdf5_hlddll.lib hdf5lib\debug\dll -copy proj\hdf5_hldll\debug\hdf5_hlddll.dll hdf5lib\debug\dll + rem ===RELEASE=== + rem include + call :safe_copy cpp\src\*.h hdf5lib\release\include + rem lib + call :safe_copy proj\hdf5_cpp\release\hdf5_cpp.lib hdf5lib\release\lib + rem dll + call :safe_copy proj\hdf5_cppdll\release\hdf5_cppdll.lib hdf5lib\release\dll + call :safe_copy proj\hdf5_cppdll\release\hdf5_cppdll.dll hdf5lib\release\dll -copy proj\hdf5_hl_cppdll\debug\hdf5_hl_cppddll.lib hdf5lib\debug\dll -copy proj\hdf5_hl_cppdll\debug\hdf5_hl_cppddll.dll hdf5lib\debug\dll + exit /b %nerrors% + + +rem Install HL C++ Libraries and Tools +:install_hlcpp + set nerrors=0 + + rem ===DEBUG=== + rem include + call :safe_copy "hl\c++\src\*.h" hdf5lib\debug\include + rem lib + call :safe_copy proj\hdf5_hl_cpp\debug\hdf5_hl_cppd.lib hdf5lib\debug\lib + rem dll + call :safe_copy proj\hdf5_hl_cppdll\debug\hdf5_hl_cppddll.lib hdf5lib\debug\dll + call :safe_copy proj\hdf5_hl_cppdll\debug\hdf5_hl_cppddll.dll hdf5lib\debug\dll -copy proj\hdf5_hl_fortrandll\debug\hdf5_hl_fortranddll.lib hdf5lib\debug\dll -copy proj\hdf5_hl_fortrandll\debug\hdf5_hl_fortranddll.dll hdf5lib\debug\dll + rem ===RELEASE=== + rem include + call :safe_copy "hl\c++\src\*.h" hdf5lib\release\include + rem lib + call :safe_copy proj\hdf5_hl_cpp\release\hdf5_hl_cpp.lib hdf5lib\release\lib + rem dll + call :safe_copy proj\hdf5_hl_cppdll\release\hdf5_hl_cppdll.lib hdf5lib\release\dll + call :safe_copy proj\hdf5_hl_cppdll\release\hdf5_hl_cppdll.dll hdf5lib\release\dll + + exit /b %nerrors% + + +rem Install Fortran Libraries and Tools +:install_fortran + set nerrors=0 + + rem ===DEBUG=== + rem include + call :safe_copy proj\hdf5_fortran\debug\*.mod hdf5lib\debug\include + rem lib + call :safe_copy proj\hdf5_fortran\debug\hdf5_fortrand.lib hdf5lib\debug\lib + call :safe_copy proj\hdf5_f90cstub\debug\hdf5_f90cstubd.lib hdf5lib\debug\lib + rem modsdll + call :safe_copy proj\hdf5_fortrandll\debug\*.mod hdf5lib\debug\modsdll + rem dll + call :safe_copy proj\hdf5_fortrandll\debug\hdf5_fortranddll.lib hdf5lib\debug\dll + call :safe_copy proj\hdf5_fortrandll\debug\hdf5_fortranddll.dll hdf5lib\debug\dll + call :safe_copy proj\hdf5_f90cstubdll\debug\hdf5_f90cstubddll.lib hdf5lib\debug\dll + call :safe_copy proj\hdf5_f90cstubdll\debug\hdf5_f90cstubddll.dll hdf5lib\debug\dll -copy proj\hdf5_hl_f90cstubdll\debug\hdf5_hl_f90cstubddll.lib hdf5lib\debug\dll -copy proj\hdf5_hl_f90cstubdll\debug\hdf5_hl_f90cstubddll.dll hdf5lib\debug\dll + rem ===RELEASE=== + rem include + call :safe_copy proj\hdf5_fortran\release\*.mod hdf5lib\release\include + rem lib + call :safe_copy proj\hdf5_fortran\release\hdf5_fortran.lib hdf5lib\release\lib + call :safe_copy proj\hdf5_f90cstub\release\hdf5_f90cstub.lib hdf5lib\release\lib + rem modsdll + call :safe_copy proj\hdf5_fortrandll\release\*.mod hdf5lib\release\modsdll + rem dll + call :safe_copy proj\hdf5_fortrandll\release\hdf5_fortrandll.lib hdf5lib\release\dll + call :safe_copy proj\hdf5_fortrandll\release\hdf5_fortrandll.dll hdf5lib\release\dll + call :safe_copy proj\hdf5_f90cstubdll\release\hdf5_f90cstubdll.lib hdf5lib\release\dll + call :safe_copy proj\hdf5_f90cstubdll\release\hdf5_f90cstubdll.dll hdf5lib\release\dll + + exit /b %nerrors% + + +rem Install HL Fortran Libraries and Tools +:install_hlfortran + set nerrors=0 + + rem ===DEBUG=== + rem include + call :safe_copy proj\hdf5_hl_fortran\debug\*.mod hdf5lib\debug\include + rem lib + call :safe_copy proj\hdf5_hl_fortran\debug\hdf5_hl_fortrand.lib hdf5lib\debug\lib + call :safe_copy proj\hdf5_hl_f90cstub\debug\hdf5_hl_f90cstubd.lib hdf5lib\debug\lib + rem modsdll + call :safe_copy proj\hdf5_hl_fortrandll\debug\*.mod hdf5lib\debug\modsdll + rem dll + call :safe_copy proj\hdf5_hl_fortrandll\debug\hdf5_hl_fortranddll.lib hdf5lib\debug\dll + call :safe_copy proj\hdf5_hl_fortrandll\debug\hdf5_hl_fortranddll.dll hdf5lib\debug\dll + call :safe_copy proj\hdf5_hl_f90cstubdll\debug\hdf5_hl_f90cstubddll.lib hdf5lib\debug\dll + call :safe_copy proj\hdf5_hl_f90cstubdll\debug\hdf5_hl_f90cstubddll.dll hdf5lib\debug\dll -copy hl\src\*.h hdf5lib\release\include -copy "hl\c++\src\*.h" hdf5lib\release\include -copy proj\hdf5_hl_fortran\release\*.mod hdf5lib\release\include -copy proj\hdf5_hl_fortrandll\release\*.mod hdf5lib\release\modsdll + rem ===RELEASE=== + rem include + call :safe_copy proj\hdf5_hl_fortran\release\*.mod hdf5lib\release\include + rem lib + call :safe_copy proj\hdf5_hl_fortran\release\hdf5_hl_fortran.lib hdf5lib\release\lib + call :safe_copy proj\hdf5_hl_f90cstub\release\hdf5_hl_f90cstub.lib hdf5lib\release\lib + rem modsdll + call :safe_copy proj\hdf5_hl_fortrandll\release\*.mod hdf5lib\release\modsdll + rem dll + call :safe_copy proj\hdf5_hl_fortrandll\release\hdf5_hl_fortrandll.lib hdf5lib\release\dll + call :safe_copy proj\hdf5_hl_fortrandll\release\hdf5_hl_fortrandll.dll hdf5lib\release\dll + call :safe_copy proj\hdf5_hl_f90cstubdll\release\hdf5_hl_f90cstubdll.lib hdf5lib\release\dll + call :safe_copy proj\hdf5_hl_f90cstubdll\release\hdf5_hl_f90cstubdll.dll hdf5lib\release\dll + + exit /b %nerrors% + + +:main -copy proj\hdf5_hl\release\hdf5_hl.lib hdf5lib\release\lib -copy proj\hdf5_hl_cpp\release\hdf5_hl_cpp.lib hdf5lib\release\lib -copy proj\hdf5_hl_fortran\release\hdf5_hl_fortran.lib hdf5lib\release\lib -copy proj\hdf5_hl_f90cstub\release\hdf5_hl_f90cstub.lib hdf5lib\release\lib + call :create_directories + + call :install_c + if %errorlevel% equ 0 ( + echo.C libraries and tools installed + ) else ( + echo.C libraries and tools NOT installed + ) + + call :install_hl + if %errorlevel% equ 0 ( + echo.High Level C libraries and tools installed + ) else ( + echo.High Level C libraries and tools NOT installed + ) + + call :install_cpp + if %errorlevel% equ 0 ( + echo.C++ libraries and tools installed + ) else ( + echo.C++ libraries and tools NOT installed + ) + + call :install_hlcpp + if %errorlevel% equ 0 ( + echo.High Level C++ libraries and tools installed + ) else ( + echo.High Level C++ libraries and tools NOT installed + ) -copy proj\hdf5_hldll\release\hdf5_hldll.lib hdf5lib\release\dll -copy proj\hdf5_hldll\release\hdf5_hldll.dll hdf5lib\release\dll - -copy proj\hdf5_hl_cppdll\release\hdf5_hl_cppdll.lib hdf5lib\release\dll -copy proj\hdf5_hl_cppdll\release\hdf5_hl_cppdll.dll hdf5lib\release\dll - -copy proj\hdf5_hl_fortrandll\release\hdf5_hl_fortrandll.lib hdf5lib\release\dll -copy proj\hdf5_hl_fortrandll\release\hdf5_hl_fortrandll.dll hdf5lib\release\dll - -copy proj\hdf5_hl_f90cstubdll\release\hdf5_hl_f90cstubdll.lib hdf5lib\release\dll -copy proj\hdf5_hl_f90cstubdll\release\hdf5_hl_f90cstubdll.dll hdf5lib\release\dll - -@REM Install C++ libraries and tools -rename c++ cpp - -copy cpp\src\*.h hdf5lib\debug\include -copy proj\hdf5_cpp\debug\hdf5_cppd.lib hdf5lib\debug\lib -copy proj\hdf5_cppdll\debug\hdf5_cppddll.lib hdf5lib\debug\dll -copy proj\hdf5_cppdll\debug\hdf5_cppddll.dll hdf5lib\debug\dll - - -copy cpp\src\*.h hdf5lib\release\include -copy proj\hdf5_cpp\release\hdf5_cpp.lib hdf5lib\release\lib -copy proj\hdf5_cppdll\release\hdf5_cppdll.lib hdf5lib\release\dll -copy proj\hdf5_cppdll\release\hdf5_cppdll.dll hdf5lib\release\dll - -rename cpp c++ - -@REM Install Fortran libraries and tools -copy proj\hdf5_fortran\debug\*.mod hdf5lib\debug\include -copy proj\hdf5_fortran\debug\hdf5_fortrand.lib hdf5lib\debug\lib -copy proj\hdf5_f90cstub\debug\hdf5_f90cstubd.lib hdf5lib\debug\lib -copy proj\hdf5_fortrandll\debug\*.mod hdf5lib\debug\modsdll -copy proj\hdf5_fortrandll\debug\hdf5_fortranddll.lib hdf5lib\debug\dll -copy proj\hdf5_fortrandll\debug\hdf5_fortranddll.dll hdf5lib\debug\dll -copy proj\hdf5_f90cstubdll\debug\hdf5_f90cstubddll.lib hdf5lib\debug\dll -copy proj\hdf5_f90cstubdll\debug\hdf5_f90cstubddll.dll hdf5lib\debug\dll - -copy proj\hdf5_fortran\release\*.mod hdf5lib\release\include -copy proj\hdf5_fortran\release\hdf5_fortran.lib hdf5lib\release\lib -copy proj\hdf5_f90cstub\release\hdf5_f90cstub.lib hdf5lib\release\lib -copy proj\hdf5_fortrandll\release\*.mod hdf5lib\release\modsdll -copy proj\hdf5_fortrandll\release\hdf5_fortrandll.lib hdf5lib\release\dll -copy proj\hdf5_fortrandll\release\hdf5_fortrandll.dll hdf5lib\release\dll -copy proj\hdf5_f90cstubdll\release\hdf5_f90cstubdll.lib hdf5lib\release\dll -copy proj\hdf5_f90cstubdll\release\hdf5_f90cstubdll.dll hdf5lib\release\dll + call :install_fortran + if %errorlevel% equ 0 ( + echo.Fortran libraries and tools installed + ) else ( + echo.Fortran libraries and tools NOT installed + ) + + call :install_hlfortran + if %errorlevel% equ 0 ( + echo.High Level Fortran libraries and tools installed + ) else ( + echo.High Level Fortran libraries and tools NOT installed + ) + + popd + endlocal & exit /b 0