Annotation of embedaddon/libnet/win32/msvcbuild.bat, revision 1.1

1.1     ! misho       1: @echo off
        !             2: 
        !             3: @rem Script to build libnet with MSVC.
        !             4: @rem Dependencies are:
        !             5: @rem winpcap, specifically, the winpcap developer pack
        !             6: @rem We assume WpdPack\ and libnet-master\ to have the same path,
        !             7: @rem and that this script is executed from either a VS2015 Developer Command Prompt
        !             8: @rem or an elevated Command Prompt.
        !             9: 
        !            10: :start
        !            11: @if "%1" == "" goto x86
        !            12: @setlocal
        !            13: @set userinput=%1
        !            14: @if not "%1"=="x86" @if not "%1"=="x64" @if not "%1"=="x86_x64" goto usage
        !            15: @if "%1"=="x86"  goto x86
        !            16: @if "%1"=="x64" goto x64
        !            17: @if "%1"=="x86_x64" goto x86_x64
        !            18: @endlocal
        !            19: 
        !            20: :x86
        !            21: if not exist "%VCINSTALLDIR%bin\vcvars32.bat" goto path
        !            22: call "%VCINSTALLDIR%bin\vcvars32.bat"
        !            23: goto msvcbuild32
        !            24: 
        !            25: :x64
        !            26: if not exist "%VCINSTALLDIR%bin\amd64\vcvars64.bat" goto path
        !            27: call "%VCINSTALLDIR%bin\amd64\vcvars64.bat"
        !            28: goto msvcbuild64
        !            29: 
        !            30: :x86_x64
        !            31: if not exist "%VCINSTALLDIR%vcvarsall.bat" goto path
        !            32: call "%VCINSTALLDIR%vcvarsall.bat" x86_amd64
        !            33: goto msvcbuild64
        !            34: 
        !            35: :msvcbuild32
        !            36: @echo on
        !            37: @setlocal
        !            38: @set MYCOMPILE=cl /nologo /MD /O2 /W4 /c /D_CRT_SECURE_NO_DEPRECATE /Fowin32\
        !            39: @set MYLINK=link /nologo
        !            40: @set MYMT=mt /nologo
        !            41: @set VERSION=1.2
        !            42: 
        !            43: @rem relative to C code in src/
        !            44: @set WINPCAP=..\..\..\WpdPack
        !            45: 
        !            46: if not exist "src\win32\" mkdir "src\win32\"
        !            47: 
        !            48: if not exist "lib\x86\" mkdir "lib\x86\"
        !            49: 
        !            50: copy win32\libnet.h include\
        !            51: copy win32\stdint.h include\libnet\
        !            52: copy win32\config.h include\
        !            53: copy win32\getopt.h include\
        !            54: 
        !            55: cd src
        !            56: %MYCOMPILE% /I..\include /I%WINPCAP%\Include libnet_a*.c libnet_build_*.c libnet_c*.c libnet_dll.c libnet_error.c libnet_i*.c libnet_link_win32.c libnet_p*.c libnet_raw.c libnet_resolve.c libnet_version.c libnet_write.c
        !            57: %MYLINK% /DLL /libpath:%WINPCAP%\Lib  /out:..\lib\x86\libnet%VERSION%.dll win32\*.obj Advapi32.lib
        !            58: if exist libnet.dll.manifest^
        !            59:   %MYMT% -manifest libnet.dll.manifest -outputresource:libnet.dll;2
        !            60: cd ..
        !            61: 
        !            62: exit /b %errorlevel%
        !            63: 
        !            64: :msvcbuild64
        !            65: @echo on
        !            66: @setlocal
        !            67: @set MYCOMPILE=cl /nologo /MD /O2 /W4 /c /D_CRT_SECURE_NO_DEPRECATE /Fowin64\
        !            68: @set MYLINK=link /nologo
        !            69: @set MYMT=mt /nologo
        !            70: @set VERSION=1.2
        !            71: 
        !            72: @rem relative to C code in src/
        !            73: @set WINPCAP=..\..\..\WpdPack
        !            74: 
        !            75: if not exist "src\win64\" mkdir "src\win64\"
        !            76: 
        !            77: if not exist "lib\x64\" mkdir "lib\x64\"
        !            78: 
        !            79: copy win32\libnet.h include\
        !            80: copy win32\stdint.h include\libnet\
        !            81: copy win32\config.h include\
        !            82: copy win32\getopt.h include\
        !            83: 
        !            84: cd src
        !            85: %MYCOMPILE% /I..\include /I%WINPCAP%\Include libnet_a*.c libnet_build_*.c libnet_c*.c libnet_dll.c libnet_error.c libnet_i*.c libnet_link_win32.c libnet_p*.c libnet_raw.c libnet_resolve.c libnet_version.c libnet_write.c
        !            86: %MYLINK% /DLL /libpath:%WINPCAP%\Lib\x64  /out:..\lib\x64\libnet%VERSION%.dll win64\*.obj Advapi32.lib
        !            87: if exist libnet.dll.manifest^
        !            88:   %MYMT% -manifest libnet.dll.manifest -outputresource:libnet.dll;2
        !            89: cd ..
        !            90: 
        !            91: exit /b %errorlevel%
        !            92: 
        !            93: :usage
        !            94: echo Invalid option "%*". The correct usage is:
        !            95: echo     %0 [option]
        !            96: echo :
        !            97: echo where [option] is: x86 ^| x64 ^| x86_x64
        !            98: echo :
        !            99: echo The script will verify and set the appropriate environment variables.
        !           100: echo If no options are provided, x86 is assumed.
        !           101: echo :
        !           102: echo Usage examples:
        !           103: echo     %0 x86
        !           104: echo     %0 x64
        !           105: echo     %0 x86_x64
        !           106: echo :
        !           107: echo If your build computer is 32-bit and you want to build for 64-bit 
        !           108: echo (aka Cross), choose "x86_x64"
        !           109: echo :
        !           110: echo Please make sure Visual Studio or the C++ Build SKU is installed,
        !           111: echo and that this script is executed from a Developer Command Prompt.
        !           112: echo :
        !           113: goto end
        !           114: 
        !           115: :path
        !           116: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\VsDevCmd.bat"
        !           117: if not exist "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\VsDevCmd.bat" goto fail
        !           118: goto start
        !           119: 
        !           120: :fail
        !           121: echo Visual Studio or the C++ Build SKU do not seem to be installed.
        !           122: echo Please Install either of them or try to executed this script
        !           123: echo from a Developer Command Prompt.
        !           124: goto end
        !           125: 
        !           126: :end

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>