-
-
Notifications
You must be signed in to change notification settings - Fork 327
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
Consider embedding libraries in source tree #735
Comments
I wouldn't say So in summary, I don't think it's useful to bundle these libraries with EDB source, at least not all of them. |
Fair enough points. I agree about Regarding Capstone, I'm kinda in the middle on it. Not because it isn't routinely packaged, but the version of it available from repos is a bit unreliable. For example, I ran into errors doing the ARM32 build testing because one system had capstone 4 and another had capstone 3. If we had it baked in, we could just say "we use capstone 4 always". But if I'm being honest, So yea, I agree with your "not all of them" assessment. |
Well, |
Totally agree. So I may move forward with the |
Yeah, it's the original place to find it. |
@10110111 I am intending to revisit this ideas. Starting with However, after more thinking, I am considering including things like The main reason I am considering it, is that if we ever want to seriously target platforms like windows, it will make things simpler, significantly so for anyone who may want to do 3rd party contributions. I have no idea if If I did ever bundle these, I'd of course have it favor system available libs first if they are present. Like I said, I'm just thinking about it, haven't made any decisions yet... but I do think it would improve the windows and macOS "build stories". As always, I appreciate your imput. |
Not sure of headers, but I can see it bundled with Qt5 sources. Twice, in fact: Conclusion: I don't think it's useful to bundle As for |
Usual pros:
Usual cons:
Considering the nature and functionality of edb-debugger, I'm not sure if the security of libs is of any meaningful practical concern. Any box which must run prod version of apps and remain as secure as possible probably should not have edb-dbg installed in the first place. And the risk of some developer running the debugger, being attacked from outside thanks to bug in the included library, while debugging some of their code, sounds very implausible. But still you may make by this step the package look a bit more fishy to distro maintainers who dig deep into sources (and resulting binary package will be slightly larger, but with simpler dependencies ... does it even matter today, in the age of the snaps/flatpacks? It sometimes feels like I'm the last person on earth considering megabytes of data actually big chunk, and adding those libs is nowhere near "megabytes") |
Given this
the problem of larger binaries, as well as non-up-to-date dependencies is non-existent: the system libraries supposedly will be shared, so we'll get updated whenever corresponding package is updated. |
gdtoa-desktop is done! moving on to capstone, which unfortunately has an annoyingly archaic cmake script. I think I have a solution though. Instead of importing it as a sub-module, we just literally add their sources at a given tag to the tree in a subdirectory of where we want it. For example:
|
I was thinking, we basically have 3 uncommon dependencies.
These are all relatively speaking, small. It may be reasonable to have a
libs
directory which contains copies of these projects which we would use if they are not installed system-wide, or perhaps always?This lets us have a simpler dependency process, potentially lock in versions we are sensitive to, and make these dependencies unconditional, which is just simpler.
@10110111 Thoughts?
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
The text was updated successfully, but these errors were encountered: