Skip to content

[baseline][libarchive] : regression fix#14579

Merged
strega-nil merged 8 commits intomicrosoft:masterfrom
Matioupi:libarchive
Nov 16, 2020
Merged

[baseline][libarchive] : regression fix#14579
strega-nil merged 8 commits intomicrosoft:masterfrom
Matioupi:libarchive

Conversation

@Matioupi
Copy link
Contributor

Describe the pull request

  • What does your PR fix? Fixes

Fix regression in libarchive build : #14567
introduced by commit 5dc5321

  • Which triplets are supported/not supported? Have you updated the CI baseline?

tested with x64-windows and w64-windows-static

To the best of my knowledge

@linquize
Copy link

Build success

@Matioupi
Copy link
Contributor Author

I just had a chance to test the build on a Catalina MacOS machine and it also pass (the CI for osx seems down or at least very very slow)

@StarGate-One
Copy link
Contributor

@Matioupi

  • I can confirm this patch works on triplets x86-windows x86-windows-static x64-windows x64-windows-static and x64-linux (OpenSUSE Leap 15.2 on WSL2 and Hyper-V).
  • Note: To complete this patch fix, you will need to modify the CONTROL file found in [vcpkg-root]/ports/libarchive - where the keyword "Port-Version:" and increment up by 1, to a 2 and include it with this PR.
  • Also, thank you very much for the fix in such a timely manner. Hurray!!!! Good Job my friend!!!!👍👍👍😁😊
    image
    image

@JackBoosY JackBoosY added category:port-bug The issue is with a library, which is something the port should already support info:internal labels Nov 16, 2020
@JackBoosY JackBoosY changed the title [libarchive] : regression fix [baseline][libarchive] : regression fix Nov 16, 2020
@Matioupi
Copy link
Contributor Author

I implemented the suggested changes and now zstd.dll can be find in archive.dll dependencies (and the proper zstdd.dll is used for debug build too) :

image

@JackBoosY
Copy link
Contributor

JackBoosY commented Nov 16, 2020

@strega-nil This issue is caused by #14535 was not rerun after merging #14395. The zstd target name has been changed from libzstd to zstd::libzstd_shared/zstd::libzstd_static.

@JackBoosY
Copy link
Contributor

JackBoosY commented Nov 16, 2020

FAILED: bin/cmcldeps.exe 
cmd.exe /C "cd . && D:\downloads\tools\cmake-3.18.4-windows\cmake-3.18.4-win32-x86\bin\cmake.exe -E vs_link_exe --intdir=Source\CMakeFiles\cmcldeps.dir --rc="C:\PROGRA~2\Windows Kits\10\bin\10.0.19041.0\x64\rc.exe" --mt="C:\PROGRA~2\Windows Kits\10\bin\10.0.19041.0\x64\mt.exe" --manifests D:\buildtrees\cmake\src\d3711dea1d-10a386b6a0.clean\Source\cmake.version.manifest -- "C:\PROGRA~2\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.27.29110\bin\Hostx64\x64\link.exe"  Source\CMakeFiles\CMakeVersion.dir\CMakeVersion.rc.res Source\CMakeFiles\cmcldeps.dir\cmcldeps.cxx.obj  /out:bin\cmcldeps.exe /implib:bin\cmcldeps.lib /pdb:bin\cmcldeps.pdb /version:0.0 /machine:x64 -stack:10000000 /nologo    /debug /INCREMENTAL /subsystem:console  Source\CMakeLib.lib  Source\kwsys\cmsys.lib  dbghelp.lib  Utilities\std\cmstd.lib  Utilities\cmexpat\cmexpat.lib  D:\installed\x64-windows-static\debug\lib\zlibd.lib  D:\installed\x64-windows-static\debug\lib\archive.lib  D:\installed\x64-windows-static\debug\lib\zlibd.lib  D:\installed\x64-windows-static\debug\lib\bz2d.lib  D:\installed\x64-windows-static\debug\lib\libxml2.lib  D:\installed\x64-windows-static\debug\lib\libiconv.lib  D:\installed\x64-windows-static\debug\lib\libcharset.lib  D:\installed\x64-windows-static\debug\lib\lz4d.lib  D:\installed\x64-windows-static\debug\lib\lzmad.lib  D:\installed\x64-windows-static\debug\lib\lzo2.lib  D:\installed\x64-windows-static\debug\lib\libcurl-d.lib  wldap32.lib  winmm.lib  advapi32.lib  D:\installed\x64-windows-static\debug\lib\libssl.lib  D:\installed\x64-windows-static\debug\lib\libcrypto.lib  Crypt32.lib  ws2_32.lib  Crypt32.lib  ws2_32.lib  D:\installed\x64-windows-static\debug\lib\jsoncpp.lib  D:\installed\x64-windows-static\debug\lib\libuv.lib  iphlpapi.lib  psapi.lib  shell32.lib  userenv.lib  ws2_32.lib  Utilities\cmlibrhash\cmlibrhash.lib  crypt32.lib  rpcrt4.lib  crypt32.lib  rpcrt4.lib  kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib && cd ."
LINK Pass 1: command "C:\PROGRA~2\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.27.29110\bin\Hostx64\x64\link.exe Source\CMakeFiles\CMakeVersion.dir\CMakeVersion.rc.res Source\CMakeFiles\cmcldeps.dir\cmcldeps.cxx.obj /out:bin\cmcldeps.exe /implib:bin\cmcldeps.lib /pdb:bin\cmcldeps.pdb /version:0.0 /machine:x64 -stack:10000000 /nologo /debug /INCREMENTAL /subsystem:console Source\CMakeLib.lib Source\kwsys\cmsys.lib dbghelp.lib Utilities\std\cmstd.lib Utilities\cmexpat\cmexpat.lib D:\installed\x64-windows-static\debug\lib\zlibd.lib D:\installed\x64-windows-static\debug\lib\archive.lib D:\installed\x64-windows-static\debug\lib\zlibd.lib D:\installed\x64-windows-static\debug\lib\bz2d.lib D:\installed\x64-windows-static\debug\lib\libxml2.lib D:\installed\x64-windows-static\debug\lib\libiconv.lib D:\installed\x64-windows-static\debug\lib\libcharset.lib D:\installed\x64-windows-static\debug\lib\lz4d.lib D:\installed\x64-windows-static\debug\lib\lzmad.lib D:\installed\x64-windows-static\debug\lib\lzo2.lib D:\installed\x64-windows-static\debug\lib\libcurl-d.lib wldap32.lib winmm.lib advapi32.lib D:\installed\x64-windows-static\debug\lib\libssl.lib D:\installed\x64-windows-static\debug\lib\libcrypto.lib Crypt32.lib ws2_32.lib Crypt32.lib ws2_32.lib D:\installed\x64-windows-static\debug\lib\jsoncpp.lib D:\installed\x64-windows-static\debug\lib\libuv.lib iphlpapi.lib psapi.lib shell32.lib userenv.lib ws2_32.lib Utilities\cmlibrhash\cmlibrhash.lib crypt32.lib rpcrt4.lib crypt32.lib rpcrt4.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:Source\CMakeFiles\cmcldeps.dir/intermediate.manifest Source\CMakeFiles\cmcldeps.dir/manifest.res" failed (exit code 1120) with the following output:
archive.lib(archive_write_add_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_versionNumber referenced in function archive_compressor_zstd_options
archive.lib(archive_write_add_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_isError referenced in function archive_compressor_zstd_open
archive.lib(archive_read_support_filter_zstd.c.obj) : error LNK2001: unresolved external symbol ZSTD_isError
archive.lib(archive_write_add_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_getErrorName referenced in function drive_compressor
archive.lib(archive_read_support_filter_zstd.c.obj) : error LNK2001: unresolved external symbol ZSTD_getErrorName
archive.lib(archive_write_add_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_minCLevel referenced in function archive_compressor_zstd_options
archive.lib(archive_write_add_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_maxCLevel referenced in function archive_compressor_zstd_options
archive.lib(archive_write_add_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_createCStream referenced in function archive_write_add_filter_zstd
archive.lib(archive_write_add_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_freeCStream referenced in function archive_compressor_zstd_free
archive.lib(archive_write_add_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_CStreamOutSize referenced in function archive_compressor_zstd_open
archive.lib(archive_write_add_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_initCStream referenced in function archive_compressor_zstd_open
archive.lib(archive_write_add_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_compressStream referenced in function drive_compressor
archive.lib(archive_write_add_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_endStream referenced in function drive_compressor
archive.lib(archive_read_support_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_createDStream referenced in function zstd_bidder_init
archive.lib(archive_read_support_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_freeDStream referenced in function zstd_filter_close
archive.lib(archive_read_support_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_initDStream referenced in function zstd_filter_read
archive.lib(archive_read_support_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_decompressStream referenced in function zstd_filter_read
archive.lib(archive_read_support_filter_zstd.c.obj) : error LNK2019: unresolved external symbol ZSTD_DStreamOutSize referenced in function zstd_bidder_init

We need also patch https://github.com/microsoft/vcpkg/blob/master/scripts/test_ports/cmake/portfile.cmake.

@Matioupi
Copy link
Contributor Author

@JackBoosY : is your message #14579 (comment)
related to the CI x64-windows-static failing ?
On my setup, local build works properly for the triplet x64-windows-static.

@JackBoosY
Copy link
Contributor

JackBoosY commented Nov 16, 2020

@Matioupi The test port cmake also need to be tested. You can manually copy folder VCPKG_ROOT/scripts/test_ports/cmake to VCPKG_ROOT/ports/cmake and run command ./vcpkg install cmake to test it.

@JackBoosY
Copy link
Contributor

Can I help you to solve the cmake regression?

@Matioupi
Copy link
Contributor Author

Can I help you to solve the cmake regression?

yes of course !

@Matioupi
Copy link
Contributor Author

@JackBoosY : thanks for the commit. I manually merged it (I wasn't able to cherry pick this out of branch commit...)

@strega-nil strega-nil merged commit 838574a into microsoft:master Nov 16, 2020
@strega-nil
Copy link
Contributor

thanks for fixing our mistake @Matioupi, and sorry for not catching this when I merged the last PR ❤️

@StarGate-One
Copy link
Contributor

thanks for fixing our mistake @Matioupi, and sorry for not catching this when I merged the last PR ❤️

No mistakes in my opinion, the CI pipeline processed libarchive with all features fine for all triplets.
👍👍👍✔✔✔ Good job and thank you everyone!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

category:port-bug The issue is with a library, which is something the port should already support

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[libarchive[bzip2,core,libxml2,lz4,lzma,lzo,openssl,zstd]:x64-windows and x64-linux] build failure after PR #14535

6 participants