minor updates and fixes for building 7-Zip

- add appveyor.cmd for building @ Appveyor
- add build-ia64.cmd for building ia64
- remove package.cmd
This commit is contained in:
Tino Reichardt
2017-06-18 14:13:50 +02:00
parent 2cea31c544
commit 8a6108d097
6 changed files with 162 additions and 54 deletions

64
CPP/appveyor.cmd Normal file
View File

@@ -0,0 +1,64 @@
REM Microsoft Windows SDK 7.1 (VC=sdk71)
REM Microsoft Visual Studio 2012 (VC=11.0)
REM Microsoft Visual Studio 2013 (VC=12.0)
REM Microsoft Visual Studio 2015 (VC=14.0)
REM to many vcvarsall.cmd calls will blow it up!
set OPATH=%PATH%
cd %APPVEYOR_BUILD_FOLDER%\CPP
REM I am using sdk71 and 14.0 for releases... /TR
:sdk71
set VC=sdk71
set NEXT=vc14
goto build_sdk
:vc11
set VC=11.0
set NEXT=vc12
goto build
:vc12
set VC=12.0
set CFLAGS=-Gw
set NEXT=vc14
goto build
:vc14
set VC=14.0
set NEXT=end
goto build
:build
FOR /R .\ %%d IN (AMD64 O) DO rd /S /Q %%d 2>NUL
set PATH=%OPATH%
call "C:\Program Files (x86)\Microsoft Visual Studio %VC%\VC\vcvarsall.bat" x86
set OUTDIR=%APPVEYOR_BUILD_FOLDER%\bin-%VC%-x32
call build-x32.cmd
call "C:\Program Files (x86)\Microsoft Visual Studio %VC%\VC\vcvarsall.bat" x86_amd64
set OUTDIR=%APPVEYOR_BUILD_FOLDER%\bin-%VC%-x64
call build-x64.cmd
goto %NEXT%
:build_sdk
set PATH=%OPATH%
call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86
call "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /Release /x86 /xp
set OUTDIR=%APPVEYOR_BUILD_FOLDER%\bin-%VC%-x32
call build-x32.cmd
call "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /Release /x64 /xp
set OUTDIR=%APPVEYOR_BUILD_FOLDER%\bin-%VC%-x64
call build-x64.cmd
call "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /Release /ia64 /xp
set OUTDIR=%APPVEYOR_BUILD_FOLDER%\bin-%VC%-ia64
call build-ia64.cmd
goto %NEXT%
:end
cd %APPVEYOR_BUILD_FOLDER%
set > env.txt
7z a %APPVEYOR_PROJECT_NAME%-%APPVEYOR_BUILD_VERSION%.7z bin-* env.txt

84
CPP/build-ia64.cmd Normal file
View File

@@ -0,0 +1,84 @@
@echo on
set ROOT=%cd%\7zip
if not defined OUTDIR set OUTDIR=%ROOT%\binIA64
mkdir %OUTDIR%
set OPTS=CPU=IA64 MY_STATIC_LINK=1
set LFLAGS=/SUBSYSTEM:WINDOWS,"5.02"
cd %ROOT%\Bundles\Format7zExtract
nmake %OPTS%
copy IA64\7zxa.dll %OUTDIR%\7zxa.dll
cd %ROOT%\Bundles\Format7z
nmake %OPTS%
copy IA64\7za.dll %OUTDIR%\7za.dll
cd %ROOT%\Bundles\Format7zF
nmake %OPTS%
copy IA64\7z.dll %OUTDIR%\7z.dll
cd %ROOT%\Bundles\Format7zUSB
nmake %OPTS%
copy IA64\7zu.dll %OUTDIR%\7zu-x64.dll
cd %ROOT%\UI\FileManager
nmake %OPTS%
copy IA64\7zFM.exe %OUTDIR%\7zFM.exe
cd %ROOT%\UI\GUI
nmake %OPTS%
copy IA64\7zG.exe %OUTDIR%\7zG.exe
cd %ROOT%\UI\Explorer
nmake %OPTS%
copy IA64\7-zip.dll %OUTDIR%\7-zip.dll
cd %ROOT%\Bundles\SFXWin
nmake %OPTS%
copy IA64\7z.sfx %OUTDIR%\7z.sfx
cd %ROOT%\Bundles\Codec_brotli
nmake %OPTS%
copy IA64\brotli.dll %OUTDIR%\brotli-x64.dll
cd %ROOT%\Bundles\Codec_lizard
nmake %OPTS%
copy IA64\lizard.dll %OUTDIR%\lizard-x64.dll
cd %ROOT%\Bundles\Codec_lz4
nmake %OPTS%
copy IA64\lz4.dll %OUTDIR%\lz4-x64.dll
cd %ROOT%\Bundles\Codec_lz5
nmake %OPTS%
copy IA64\lz5.dll %OUTDIR%\lz5-x64.dll
cd %ROOT%\Bundles\Codec_zstdF
nmake %OPTS%
copy IA64\zstd.dll %OUTDIR%\zstd-x64.dll
cd %ROOT%\..\..\C\Util\7zipInstall
nmake %OPTS%
copy IA64\7zipInstall.exe %OUTDIR%\Install-x64.exe
cd %ROOT%\..\..\C\Util\7zipUninstall
nmake %OPTS%
copy IA64\7zipUninstall.exe %OUTDIR%\Uninstall.exe
set LFLAGS=/SUBSYSTEM:CONSOLE,"5.02"
cd %ROOT%\UI\Console
nmake %OPTS%
copy IA64\7z.exe %OUTDIR%\7z.exe
cd %ROOT%\Bundles\SFXCon
nmake %OPTS%
copy IA64\7zCon.sfx %OUTDIR%\7zCon.sfx
cd %ROOT%\Bundles\Alone
nmake %OPTS%
copy IA64\7za.exe %OUTDIR%\7za.exe
:ende
cd %ROOT%\..

View File

@@ -1,12 +1,16 @@
@echo on
set ROOT=%cd%\7zip
set OUTDIR=%ROOT%\bin32
if not defined OUTDIR set OUTDIR=%ROOT%\bin32
mkdir %OUTDIR%
set OPTS=MY_STATIC_LINK=1
set LFLAGS=/SUBSYSTEM:WINDOWS,"5.01"
cd %ROOT%\Bundles\Format7zExtract
nmake %OPTS%
copy O\7zxa.dll %OUTDIR%\7zxa.dll
cd %ROOT%\Bundles\Format7z
nmake %OPTS%
copy O\7za.dll %OUTDIR%\7za.dll

View File

@@ -1,12 +1,16 @@
@echo on
set ROOT=%cd%\7zip
set OUTDIR=%ROOT%\bin64
if not defined OUTDIR set OUTDIR=%ROOT%\bin64
mkdir %OUTDIR%
set OPTS=CPU=AMD64 MY_STATIC_LINK=1
set LFLAGS=/SUBSYSTEM:WINDOWS,"5.02"
cd %ROOT%\Bundles\Format7zExtract
nmake %OPTS%
copy AMD64\7zxa.dll %OUTDIR%\7zxa.dll
cd %ROOT%\Bundles\Format7z
nmake %OPTS%
copy AMD64\7za.dll %OUTDIR%\7za.dll

View File

@@ -1,12 +1,10 @@
@echo off
FOR /R .\ %%d IN (AMD64 O) DO rd /S /Q %%d 2>NUL
FOR /R .\ %%d IN (AMD64 IA64 O) DO rd /S /Q %%d 2>NUL
del "CPP\7zip\*.7z" 2>NUL
del "CPP\7zip\7z*.exe" 2>NUL
rd /S /Q "CPP\7zip\bin32" 2>NUL
rd /S /Q "CPP\7zip\bin64" 2>NUL
del "CPP\7zip\*.exe" 2>NUL
rd /S /Q "CPP\7zip\bin*" 2>NUL
rd /S /Q "CPP\7zip\codecs" 2>NUL
rd /S /Q "CPP\7zip\x32" 2>NUL
rd /S /Q "CPP\7zip\x64" 2>NUL
rd /S /Q "CPP\7zip\totalcmd" 2>NUL

View File

@@ -1,46 +0,0 @@
@echo off
REM Build signed setups for 7-Zip ZS /TR
SET WD=%cd%
SET ROOT=%cd%\CPP\7zip
SET COPYCMD=/Y /B
SET TSERVER=http://timestamp.globalsign.com/?signature=sha2
cd %ROOT%
rd /S /Q "x32" >NUL
rd /S /Q "x64" >NUL
rd /S /Q "codecs" >NUL
7z x C:\tmp\x32.zip
7z x C:\tmp\x64.zip
7z x C:\tmp\codecs.zip
FOR %%f IN (7-zip.dll 7z.dll 7z.exe 7za.dll 7za.exe 7zG.exe 7zFM.exe 7z.sfx 7zCon.sfx Uninstall.exe) DO (
copy bin32\%%f x32\%%f
copy bin64\%%f x64\%%f
)
copy bin32\7-zip.dll x64\7-zip32.dll
FOR %%f IN (brotli lizard lz4 lz5 zstd) DO (
copy bin32\%%f-x32.dll codecs\%%f-x32.dll
copy bin64\%%f-x64.dll codecs\%%f-x64.dll
)
del 32.7z 64.7z codecs.7z 7z1700-zstd-x32.exe 7z1700-zstd-x64.exe >NUL
signtool.exe sign /v /fd SHA256 /tr %TSERVER% /td sha256 x32\*.exe x32\*.dll x64\*.exe x64\*.dll
cd x32
7z a ../32.7z -m0=lzma -mx9 -ms=on -mf=bcj2
cd ..\x64
7z a ../64.7z -m0=lzma -mx9 -ms=on -mf=bcj2
cd ..\codecs
7z a ..\Codecs.7z -m0=lzma -mx9 -ms=on -mf=bcj2
cd ..
copy bin32\Install-x32.exe + 32.7z 7z1700-zstd-x32.exe
copy bin64\Install-x64.exe + 64.7z 7z1700-zstd-x64.exe
signtool.exe sign /v /fd SHA256 /tr %TSERVER% /td sha256 7z1700-zstd-*.exe
cd %wd%