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

Fix other "lib binary paths" #197

Merged
merged 2 commits into from Jan 3, 2022
Merged

Fix other "lib binary paths" #197

merged 2 commits into from Jan 3, 2022

Conversation

konsolebox
Copy link
Contributor

The fix in cd9daf3 seems not enough since the .so file is still copied to an extra folder in the stage directory. This file tasks created are also not right.

@kou
Copy link
Member

kou commented Dec 27, 2021

Could you show how to reproduce the problem?

@konsolebox
Copy link
Contributor Author

konsolebox commented Dec 27, 2021

Using this output in Appveyor as an example you can see in line 1635 that the file is being copied to tmp/i386-mingw32/stage/lib/digest/digest/kangarootwelve.so. At some point I found the so file existing both lib/digest and lib/digest/digest. I'm not sure how I was able to do it, but I've been playing with lib/digest/kangarootwelve.so being used as a file task dependency.

And of course I've also debugged the variables using puts.

@konsolebox
Copy link
Contributor Author

konsolebox commented Dec 28, 2021

Ok so here's a way to demonstrate the issues:

git clone https://github.com/konsolebox/digest-xxhash-ruby.git
cd digest-xxhash-ruby
rake lib/digest/digest/xxhash.so
rake clobber

The command shows three things:

  1. tmp/x86_64-linux/digest/xxhash/3.0.2/digest/xxhash.so is copied as tmp/x86_64-linux/stage/lib/digest/digest/xxhash.so instead of tmp/x86_64-linux/stage/lib/digest/xxhash.so.

  2. rake lib/digest/digest/xxhash.so is invalid and shouldn't work but it did.

  3. After running rake clobber, lib/digest/xxhash.so still exists because rake-compiler listed lib/digest/digest/xxhash.so as a clobber target instead.

Please ignore my earlier comment about lib/digest/digest/<so_file> existing. It probably was caused by me mistakenly installing an older commit of rake-compiler while I was debugging the issue.

lib/rake/extensiontask.rb Outdated Show resolved Hide resolved
@kou
Copy link
Member

kou commented Jan 3, 2022

Thanks.
I understand.

@kou kou merged commit 7ccc152 into rake-compiler:master Jan 3, 2022
@konsolebox konsolebox deleted the fix_other_lib_binary_paths branch January 8, 2022 14:44
@konsolebox
Copy link
Contributor Author

Thank you too. 👍

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.

None yet

2 participants