Skip to content
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

mingw-w64-crt: create dummy ssp libs #13405

Merged
merged 2 commits into from
Oct 7, 2022
Merged

Conversation

MehdiChinoune
Copy link
Collaborator

No description provided.

mingw-w64-crt-git/PKGBUILD Outdated Show resolved Hide resolved
@MehdiChinoune
Copy link
Collaborator Author

package-grokker shows that these packages should be rebuilt:

mingw-w64-spice
mingw-w64-cjson
mingw-w64-virt-viewer
mingw-w64-mkvtoolnix
mingw-w64-libotr
mingw-w64-opus
mingw-w64-libvirt
mingw-w64-libdsm
mingw-w64-v8
mingw-w64-mxml
mingw-w64-gtk-vnc
mingw-w64-sed
mingw-w64-starpu
mingw-w64-libressl
mingw-w64-flac
mingw-w64-libgusb
mingw-w64-tor
mingw-w64-xapian-core
mingw-w64-gcab
mingw-w64-embree
mingw-w64-vlc
mingw-w64-inkscape

@lazka
Copy link
Member

lazka commented Oct 7, 2022

Couldn't we just remove the libssp.a/libssp.dll.a from gcc/libssp, so there is no conflict, and then rebuild things afterwards when we want? Or do you think making the full transition in one go is easier?

@MehdiChinoune
Copy link
Collaborator Author

MehdiChinoune commented Oct 7, 2022

Couldn't we just remove the libssp.a/libssp.dll.a from gcc/libssp, so there is no conflict, and then rebuild things afterwards when we want?

That's what I was going to do.

@lazka
Copy link
Member

lazka commented Oct 7, 2022

That's what I was going to do.

but then you don't need/want conflicts/replaces/provides here, since there is no conflict and replacing would remove the .dll breaking all dependencies.

mingw-w64-libssp/PKGBUILD Outdated Show resolved Hide resolved
@MehdiChinoune
Copy link
Collaborator Author

OK to merge?

@lazka
Copy link
Member

lazka commented Oct 7, 2022

one sec. this isn't compatible with #13410, it removes the DLL while this one here keeps it.

Since my idea to smooth the transition is maybe a bit too involved I guess we can just do the rebuilds. I'll revert my suggestions made here and start rebuilds with libssp completely removed..

@MehdiChinoune
Copy link
Collaborator Author

MehdiChinoune commented Oct 7, 2022

My plan is:
1- Merge this PR to provide libssp and libssp_noshared on CLANG*
2- Open independent PRs to remove explicit dependency on libssp (do not merge) and remove those workarounds of adding CFLAGS+=" -fstack-protector" and LDFLAGS+=" -lssp".
3- merge #13140
4- Wait until gcc is available from staging and rebase PRs => merge.

Edit: It won't work, crt will conflict with gcc

@MehdiChinoune
Copy link
Collaborator Author

#13410 should be merged before this one to avoid conflict between crt and gcc.

@lazka
Copy link
Member

lazka commented Oct 7, 2022

I will try to test building some libssp packages with this and #13410, to see if it actually works as advertised.

@MehdiChinoune
Copy link
Collaborator Author

If we are going to remove libssp and rebuild all packages then we don't need to mark crt as a provider of libssp, because we are going to remove libssp from the list of dependencies anyway.

@lazka
Copy link
Member

lazka commented Oct 7, 2022

yeah, some users might still reference it though.. but not sure how realistic that is

@MehdiChinoune
Copy link
Collaborator Author

yeah, some users might still reference it though.. but not sure how realistic that is

I forgot about that!

@lazka
Copy link
Member

lazka commented Oct 7, 2022

ok, there was one confusion in chat @mati865 thought that with the crt providing the libssp stuff building with "-lssp" or "-fstack-protector-strong" would end up not actually linking against the DLL, but that isn't true for some reason (both gcc and clang envs).. documenting here for future reference.

lazka added a commit to lazka/MINGW-packages that referenced this pull request Oct 7, 2022
but still provide the .DLL.

In combination with msys2#13405 this will make all rebuilds link the libssp
stuff against the crt while keeping existing packages already linking
against the .DLL working until we rebuild them.

This is an alternative to msys2#13410
@lazka lazka merged commit f79c325 into msys2:master Oct 7, 2022
@MehdiChinoune MehdiChinoune deleted the crt-libssp branch October 7, 2022 19:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants