Bläddra i källkod

OpenSSL 3 support

add flag to select OpenSSL 3 at build time
Hansi P 1 år sedan
förälder
incheckning
3549bfbbf1
5 ändrade filer med 10 tillägg och 2 borttagningar
  1. 2 0
      .travis.yml
  2. 1 1
      CMakeLists.txt
  3. 3 0
      Makefile
  4. 3 0
      appveyor.yml
  5. 1 1
      docs/Building.md

+ 2 - 0
.travis.yml

@@ -82,6 +82,7 @@ before_script:
     -DCIVETWEB_ENABLE_SSL_DYNAMIC_LOADING=${ENABLE_SSL_DYNAMIC_LOADING}
     -DCIVETWEB_SSL_OPENSSL_API_1_0=${OPENSSL_1_0}
     -DCIVETWEB_SSL_OPENSSL_API_1_1=${OPENSSL_1_1}
+    -DCIVETWEB_SSL_OPENSSL_API_3_0=${OPENSSL_3_0}
     -DCIVETWEB_ENABLE_WEBSOCKETS=${ENABLE_WEBSOCKETS}
     -DCIVETWEB_ENABLE_CXX=${ENABLE_CXX}
     -DCIVETWEB_ENABLE_SERVER_STATS=${ENABLE_SERVER_STATS}
@@ -107,6 +108,7 @@ before_script:
     -DCIVETWEB_ENABLE_SSL_DYNAMIC_LOADING=${ENABLE_SSL_DYNAMIC_LOADING}
     -DCIVETWEB_SSL_OPENSSL_API_1_0=${OPENSSL_1_0}
     -DCIVETWEB_SSL_OPENSSL_API_1_1=${OPENSSL_1_1}
+    -DCIVETWEB_SSL_OPENSSL_API_3_0=${OPENSSL_3_0}
     -DCIVETWEB_ENABLE_WEBSOCKETS=${ENABLE_WEBSOCKETS}
     -DCIVETWEB_ENABLE_CXX=${ENABLE_CXX}
     -DCIVETWEB_ENABLE_SERVER_STATS=${ENABLE_SERVER_STATS}

+ 1 - 1
CMakeLists.txt

@@ -227,7 +227,7 @@ message(STATUS "Compile for OpenSSL 1.0 API - ${CIVETWEB_SSL_OPENSSL_API_1_0}")
 option(CIVETWEB_SSL_OPENSSL_API_1_1 "Use the OpenSSL 1.1 API" ON)
 message(STATUS "Compile for OpenSSL 1.1 API - ${CIVETWEB_SSL_OPENSSL_API_1_1}")
 
-# OpenSSL 1.1 API
+# OpenSSL 3.0 API
 option(CIVETWEB_SSL_OPENSSL_API_3_0 "Use the OpenSSL 3.0 API" OFF)
 message(STATUS "Compile for OpenSSL 3.0 API - ${CIVETWEB_SSL_OPENSSL_API_3_0}")
 

+ 3 - 0
Makefile

@@ -100,6 +100,8 @@ else ifdef WITH_OPENSSL_API_1_0
   CFLAGS += -DOPENSSL_API_1_0
 else ifdef WITH_OPENSSL_API_1_1
   CFLAGS += -DOPENSSL_API_1_1
+else ifdef WITH_OPENSSL_API_3_0
+  CFLAGS += -DOPENSSL_API_3_0
 else
   #Use OpenSSL 1.1 API version as default
   CFLAGS += -DOPENSSL_API_1_1
@@ -298,6 +300,7 @@ help:
 	@echo "   WITH_MBEDTLS=1        build with mbedTLS support."
 	@echo "   WITH_OPENSSL_API_1_0=1  build with OpenSSL 1.0.x support."
 	@echo "   WITH_OPENSSL_API_1_1=1  build with OpenSSL 1.1.x support."
+	@echo "   WITH_OPENSSL_API_3_0=1  build with OpenSSL 3.0.x support."
 	@echo "   NO_SSL=1              build without SSL support. Build will not need libcrypto/libssl."
 	@echo "   NO_CGI=1              build without CGI support."
 	@echo "   NO_CACHING=1          disable caching. Send no-cache/no-store headers."

+ 3 - 0
appveyor.yml

@@ -440,6 +440,7 @@ before_build:
     -DCIVETWEB_CXX_STANDARD=%cxx_standard%
     -DCIVETWEB_SSL_OPENSSL_API_1_0=NO
     -DCIVETWEB_SSL_OPENSSL_API_1_1=YES
+    -DCIVETWEB_SSL_OPENSSL_API_3_0=NO
     "%source_path%"
   - cmake
     -G "%generator%" %arch_arg%
@@ -461,6 +462,8 @@ before_build:
     -DCIVETWEB_CXX_STANDARD=%cxx_standard%
     -DCIVETWEB_SSL_OPENSSL_API_1_0=NO
     -DCIVETWEB_SSL_OPENSSL_API_1_1=YES
+    -DCIVETWEB_SSL_OPENSSL_API_3_0=NO
+
     "%source_path%"
   - powershell Push-AppveyorArtifact CMakeCache.txt
   - cd "%source_path%"

+ 1 - 1
docs/Building.md

@@ -179,7 +179,7 @@ make build COPT="-DNDEBUG -DNO_CGI"
 | `SSL_ALREADY_INITIALIZED`    | do not initialize libcrypto                                         |
 | `OPENSSL_API_1_0`            | Use OpenSSL V1.0.x interface                                        |
 | `OPENSSL_API_1_1`            | Use OpenSSL V1.1.x interface                                        |
-| `OPENSSL_API_3_0`            | Use OpenSSL V3.x interface                                          |
+| `OPENSSL_API_3_0`            | Use OpenSSL V3.0.x interface                                          |
 | `USE_MBEDTLS`                | Use MbedTLS (cannot be combined with OPENSSL_API_*)                 |
 |                              |                                                                     |
 | `BUILD_DATE`                 | define as a string to be used as build id instead of __DATE__       |