Bug 62729

Summary: CMake MSVC build fails with OpenSSL_1_1_1 on ab.c(178): include: 'openssl/applink.c': No such file
Product: Apache httpd-2 Reporter: Michal Karm Babacek <michal.babacek>
Component: supportAssignee: Apache HTTPD Bugs Mailing List <bugs>
Status: RESOLVED INVALID    
Severity: normal    
Priority: P2    
Version: 2.4-HEAD   
Target Milestone: ---   
Hardware: PC   
OS:    

Description Michal Karm Babacek 2018-09-17 15:48:17 UTC
Hello,

I maintain both trunk and 2.4.x MSVC CMake CI jobs [1] and they have been running just fine with "OpenSSL_1_1_0h" [2].

When I tried to switch to "OpenSSL_1_1_1 enable-tls1_3" [3], both branches have started to fail during ab compilation on the undermentioned error. Note the OpenSSL is likely built correctly as it passes its test suite (OpenSSL TS build log [4]).

Httpd build error:

> [ 99%] Building C object CMakeFiles/abs.dir/support/ab.c.obj
> ab.c
> C:\workspace\workspace\httpd-trunk-windows\label\w2k12r2\support\ab.c(178): 
>  fatal error C1083: Cannot open include file: 'openssl/applink.c': 
>    No such file or directory

Full build log for 2.4.x [5] and trunk [6].

I haven't investigated yet, perhaps it's just a missing line in CMakeLists.txt. I'll take a closer look tomorrow...

Cheers
K.

[1] trunk: https://ci.modcluster.io/job/httpd-trunk-windows
    2.4.x: https://ci.modcluster.io/job/httpd-windows/
[2] https://ci.modcluster.io/job/openssl-windows/39/label=w2k12r2/artifact/OpenSSL_1_1_0h-64.zip
[3] https://ci.modcluster.io/job/openssl-windows/41/label=w2k12r2/artifact/OpenSSL_1_1_1-64.zip
[4] https://ci.modcluster.io/job/openssl-windows/41/label=w2k12r2/consoleText
[5] https://ci.modcluster.io/job/httpd-windows/114/label=w2k12r2/consoleText
[6] https://ci.modcluster.io/job/httpd-trunk-windows/64/label=w2k12r2/consoleText
Comment 1 William A. Rowe Jr. 2018-09-18 13:33:15 UTC
Note advise at https://www.openssl.org/docs/faq.html#PROG3 has not changed.

This appears to be the resurrection of this defect;

https://github.com/openssl/openssl/pull/1314

It is not an httpd defect; copy applink.c from ms/ to the installed 
openssl/include/ that is used by httpd and all will be well.

You should raise this issue again as a new report to openssl, referencing
the old issue.