-
Notifications
You must be signed in to change notification settings - Fork 348
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
Added rules for DLLs from MSYS2. #2315
base: master
Are you sure you want to change the base?
Conversation
I saw, you're using some |
The latest commit contains this:
I'm now locally testing. I assume we should add a check if standalone is used with another backend than mcode and if not used in MSYS2. |
I have created #2320 to add new makefile targets. Should we rewrite Test.yml to build standalone windows packages without reusing the pacman package ? |
The current solution for packaging standalone mcode variants is a "dirty hack" I made with @umarcor. We used MSYS2 packages, because they contain all needed files, so we didn't need to figure out what to repackage for standalone. So we used that package, installed it, added die DLLs and then packaged it again as ZIP. If we could install GHDL mcode directly including DLLs and use this directory for creating a ZIP file, it would simplify a lot and reduce CI job dependencies. |
I am not sure to understand how you want to create the standalone package.
There are multiple solutions:
1. the current one: unpack the msys pacman package, add dlls, zip
2. mixed: after building the pacman package, add the dlls and zip. So during the same jobs two artifacts are produced.
3. full jobs: build mcode, add dlls and create the zip.
I don't really like 3), as it will be difficult to test. I am ok with 1 and 2.
But the real question is how to produce the python wheel for #2313.
|
a254295
to
7a09477
Compare
7a09477
to
36a846e
Compare
36a846e
to
844e75e
Compare
17b97f0
to
b5ec97d
Compare
b5ec97d
to
5697a4c
Compare
(cherry picked from commit 8853d4b3ddd84ed06e33c4902b24e6784915709e)
(cherry picked from commit bd3191d87cb3ae599c41f6e4363d5a3930a34355)
(cherry picked from commit 8fd2965191f3484bdf960e0ef08df6da04c41647)
(cherry picked from commit fdfe104531660a91c6d3b107a14d572b2333d5bc)
(cherry picked from commit b783c9f8834116da368cbcb69667b3b88bca7d1f)
(cherry picked from commit f779b5c59499f8d3b3ba5cad48cb1001bc02e656)
(cherry picked from commit 7616d44a65bc20e504278390f986ada25e6ff2a1)
(cherry picked from commit e7e4844d52d72ba17761858ef2a32be4024724ba)
5697a4c
to
49cbf4b
Compare
(cherry picked from commit 5b955b635907e97aecae9a4be489d4946de933bf)
49cbf4b
to
f128078
Compare
This PR tries to solve #2314.
@tgingold
Open questions:
⇒ Use a separate make target calledstandalone
⇒ add
--enable-standalone
/--disable-standalone
to./configure
as well as someinstall.mcode.libs.true
/install.mcode.libs.false
anduninstall.mcode.libs.true
/uninstall.mcode.libs.false
targets.This version number is used in the DLL filename.
⇒ use a glob pattern like
libgnat-*.dll
. In MSYS2, only one version is installed. No parallel versions exist.This version number is used in the DLL filename.
⇒ use a glob pattern like
libLLVM-*.dll
. In MSYS2, only one version is installed. No parallel versions exist.One environment uses
dw2
the otherseh
exception handling.⇒
./configure
is used to deriveLIBGCC_KIND
frombuild
variable.mcode
backends.→ Maybe check against
build
variable?