-
Notifications
You must be signed in to change notification settings - Fork 266
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
[sonic-sairedis] Upgrade to c++17 #1069
Conversation
could you please check errors ? |
@@ -157,6 +157,7 @@ CXXFLAGS_COMMON+=" -Wwrite-strings" | |||
CXXFLAGS_COMMON+=" -Wno-switch-default" | |||
CXXFLAGS_COMMON+=" -Wconversion" | |||
CXXFLAGS_COMMON+=" -Wno-psabi" | |||
CXXFLAGS_COMMON+=" -Wno-register" |
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.
Do we really need this? I search codebase and did not find register storage class specifier.
ref: https://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Dialect-Options.html#index-Wno-register
@@ -37,7 +37,7 @@ resources: | |||
parameters: | |||
- name: debian_version | |||
type: string | |||
default: buster | |||
default: bullseye |
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.
on .azure-pipelines/build-swss-template.yml tou set explicit target to buster, but here to bullseye, will that be a conflict?
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 have to do this because there is no other pipeline that are using bullseye. So, if I do not set explicit target to buster in .azure-pipelines/build-swss-template.yml, it cannot download dependencies like "libnl*".
Hi @kcudnik @qiluo-msft , the current checker failed because of:
The root cause is that, docker-sonic-vs is based on buster, it has no libgcc-s1, it has gcc 8.3.0. I also found that all other sonic submodule pipelines are using buster now, so, if I only upgrade pipeline to bullseye for sonic-sairedis, there are a lot of dependency issues need to be resolved. I feel like the work effort is much larger than I thought. There are two options on my mind:
So, I would prefer option 1 for now. Any comment? |
i think if you continue on cpp14 it will be much safer than changing all pipelines and potentially causing more trouble, and it's too much effort just to use constexpr if from cpp17 |
What I did?
Upgrade sonic-sairedis cpp compiler option to c++17.
What I test?
Build test