Bug 209638

Summary: [WinCairo] CMake 3.17.0 reports an error in WebKitLibraries/win/share/curl/cmake/CURLTargets.cmake
Product: WebKit Reporter: Fujii Hironori <Hironori.Fujii>
Component: CMakeAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: don.olmstead, stephan.szabo
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
build.log none

Description Fujii Hironori 2020-03-26 18:42:02 PDT
[WinCairo] CMake 3.17.0 reports an error in WebKitLibraries/win/share/curl/cmake/CURLTargets.cmake

After upgrading CMake, I'm seeing the following error:

> CMake Error at WebKitLibraries/win/share/curl/cmake/CURLTargets.cmake:79 (message):
>   The imported target "CURL::libcurl" references the file
> 
>      "C:/webkit/gc/WebKitLibraries/win/lib/libcurl_imp.lib"
> 
>   but this file does not exist.  Possible reasons include:
> 
>   * The file was deleted, renamed, or moved to another location.
> 
>   * An install or uninstall procedure did not complete successfully.
> 
>   * The installation package was faulty and contained
> 
>      "C:/webkit/gc/WebKitLibraries/win/share/curl/cmake/CURLTargets.cmake"
> 
>   but not all the files it references.
> 
> Call Stack (most recent call first):
>   WebKitLibraries/win/share/curl/cmake/CURLConfig.cmake:35 (include)
>   Source/cmake/WebKitFindPackage.cmake:104 (_find_package)
>   C:/Program Files/CMake/share/cmake-3.17/Modules/FindCURL.cmake:58 (find_package)
>   Source/cmake/WebKitFindPackage.cmake:104 (_find_package)
>   Source/cmake/OptionsWinCairo.cmake:9 (find_package)
>   Source/cmake/WebKitCommon.cmake:57 (include)
>   CMakeLists.txt:169 (include)
Comment 1 Fujii Hironori 2020-03-26 18:42:45 PDT
Removing WebKitLibraries/win/share/curl/cmake seems to work around the error.
Comment 2 Fujii Hironori 2020-03-26 18:46:07 PDT
Created attachment 394690 [details]
build.log
Comment 4 Fujii Hironori 2020-03-26 22:04:11 PDT
There are three ways to fix the issue.

1. Remove CURLConfig.cmake of WebKitRequirementsWin64.zip.

2. Replace "lib" and "bin" to "lib64" and "bin64" in CURLTargets-release.cmake of WebKitRequirementsWin64.zip.

3. Add "set(CURL_NO_CURL_CMAKE ON)" before "find_package(CURL 7.60.0 REQUIRED)" in OptionsWinCairo.cmake.
Comment 5 Fujii Hironori 2020-04-04 13:43:31 PDT
Delete share directory from the distribution (#31) · WebKitForWindows/WebKitRequirements@8608590
https://github.com/WebKitForWindows/WebKitRequirements/commit/8608590f27bdc444c2e71a31c778e6a8ef1dff86
Comment 6 Don Olmstead 2020-04-04 13:53:36 PDT
(In reply to Fujii Hironori from comment #5)
> Delete share directory from the distribution (#31) ·
> WebKitForWindows/WebKitRequirements@8608590
> https://github.com/WebKitForWindows/WebKitRequirements/commit/
> 8608590f27bdc444c2e71a31c778e6a8ef1dff86

The zip files are updated to remove the share directory. Please delete your local requirements and then let it download again.
Comment 7 Fujii Hironori 2020-04-04 15:17:29 PDT
Thanks.