jimmy-park / openssl-cmake Goto Github PK
View Code? Open in Web Editor NEWBuild OpenSSL in parallel within CMake
License: MIT License
Build OpenSSL in parallel within CMake
License: MIT License
Hi,
This is not an issue as your CMake perfectly works.
I'm integrating a new signature algorithm into OpenSSL. I already did it for OpenSSL 1.1.1 using the openssl-cmake project of janbar. However, his project doesn't support OpenSSL 3 and I need to move to this version.
I thought I could use yours, but as it pulls the OpenSSL code from the original openssl git it produces a Visual Studio solution that doesn't allow editing the code!
I pulled the code of OpenSSL from the official git. Is there a way to integrate your CMake with the local code to create a Visual Studio solution where the code of OpenSSL can be edited?
Thanks for your help.
Thx
In order to compile object files adapted to older macos versions, the CMAKE_OSX_DEPLOYMENT_TARGET
option is generally add to the CMakeLists.txt as below,
if(APPLE)
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.0")
endif()
But this only works in CMake projects. As the openssl uses the ./configure
file, the -mmacosx-version-min
flag is not actually passed to the ./configure
command. I've tried to add the following part to openssl-cmake/CMakeLists.txt
, and it works,
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5343bb4..e7d60e1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -185,6 +185,10 @@ if(OPENSSL_USE_STATIC_LIBS)
list(APPEND OPENSSL_CONFIGURE_OPTIONS no-shared)
endif()
+if(APPLE AND CMAKE_OSX_DEPLOYMENT_TARGET)
+ list(APPEND OPENSSL_CONFIGURE_OPTIONS -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET})
+endif()
+
list(SORT OPENSSL_CONFIGURE_OPTIONS)
list(REMOVE_DUPLICATES OPENSSL_CONFIGURE_OPTIONS)
list(PREPEND OPENSSL_CONFIGURE_OPTIONS ${OPENSSL_TARGET_PLATFORM})
I wonder if there is any more suitable implements could help supporting the CMAKE_OSX_DEPLOYMENT_TARGET
option.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.