-
Notifications
You must be signed in to change notification settings - Fork 711
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Set VERSION and SOVERSION as additional target properties #2403
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Like where this is headed, but maybe more specifics on the numbers?
For my comment to make sense, line 2:
set(MAJORVER 0)
set(MINORVER 10)
set(PATCHVER 21)
project (s2n LANGUAGES C VERSION ${MAJORVER}.${MINORVER}.${PATCHVER})
@@ -173,6 +173,10 @@ file(GLOB S2N_SRC | |||
add_library(${PROJECT_NAME} ${S2N_HEADERS} ${S2N_SRC}) | |||
set_target_properties(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE C) | |||
|
|||
# As long as the ABI isn't stable, set the SO version to 0unstable | |||
set_target_properties(${CMAKE_PROJECT_NAME} PROPERTIES VERSION 1.0.0) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As s2n is not yet at 1.0, maybe:
set_target_properties(${CMAKE_PROJECT_NAME} PROPERTIES VERSION ${MAJORVER}.${MINORVER})
set_target_properties(${CMAKE_PROJECT_NAME} PROPERTIES SOVERSION ${MAJORVER})
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was basically doing what AWS is using in other projects like aws-c-common
or aws-checksums
. Both used version 1.0.0
and the SO version unstable0
.
But, of course, I can change it anyway you want.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What version would you suggest for a project that hasn't had a 1.0.0 release yet? unstable0 for both?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The library version number is that important, so you can choose any value you want. But the SO version should have something that indicates whether the API is stable or not.
Codecov Report
@@ Coverage Diff @@
## main #2403 +/- ##
==========================================
- Coverage 81.81% 81.80% -0.01%
==========================================
Files 268 268
Lines 18326 18326
==========================================
- Hits 14993 14992 -1
- Misses 3333 3334 +1 |
On Nov 24, 2020, at 7:22 PM, Lindsay Stewart ***@***.***> wrote:
What version would you suggest for a project that hasn't had a 1.0.0 release yet? unstable0 for both?
Use „unstable0“ for the SO version and any version for VERSION.
The SO version should become „1“ once you are stable.
Please see the various other projects for the AWS C/C++ SDK.
If you want to be very accurate, I suggest looking at what other shared libraries on a Linux system use.
On Ubuntu, that would be below:
```/usr/lib/$ARCH-linux/gnu```
|
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
The issue hasn’t been resolved yet and should therefore remain open.
… On Jun 26, 2021, at 5:06 AM, stale[bot] ***@***.***> wrote:
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Bump. |
Benchmark report |
So we're at version 1.3.7 now and the unstable can come off, this is worth a revisit. |
Benchmark report |
Any input required from my side? I would also be great if the AWS C++ packages could be changed to adhere to the common cmake paths, see for example: awslabs/aws-c-event-stream#15. The canonical paths for cmake files is |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I apologize, this fell through the cracks!
It looks good to me, except that s2n-tls has been promoted to 1.0 / stable since it was opened. Should we set a different SOVERSION?
superseded by #3407 |
Fixes #2402