-
-
Notifications
You must be signed in to change notification settings - Fork 11.2k
first take at libgdiplus #45404
first take at libgdiplus #45404
Conversation
Library/Formula/libgdiplus.rb
Outdated
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.
We can't have this depend on X11, unfortunately; we can't assume users have it installed.
|
@MikeMcQuaid how about when compiling like now? |
|
Another question: libgdiplus would prefer a pre 4.2 version of giflib – can I specify that somewhere? |
|
Unfortunately not; it needs to use the newest version of |
|
Well, OK, I'd say this is more with regards to the libgdiplus project. @directhex – could you use line the QuantizeBuffer function from http://sourceforge.net/p/giflib/code/ci/ce02f85e6ed1e1455a4aea9ffa68a3e2b8f8a4b1/ (a bit down in the |
|
@directhex – actually it seems that an existing PR solves this issue: https://github.com/mono/libgdiplus/pull/32/files#diff-7c18b451e587fd18f4ded5380d98b15dR855 /cc @Mailaender |
Library/Formula/libgdiplus.rb
Outdated
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.
Need nothing after head "https://github.com/mono/libgdiplus.git" here. Everything else is the assumed default.
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.
Fixed.
|
Yeah, we have to patch this in @openSUSE for months now. I upstreamed it, adapted it according to the code review. No idea why mono/libgdiplus#32 hasn't been merged yet. Shouldn't be controversial. |
|
Ready to merge? The build is failing on some internal error in the audit command and the PR discussed above was successfully merged. |
Library/Formula/libgdiplus.rb
Outdated
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.
We'll need a stable release before we can add this to Homebrew.
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.
You mean you need a stable location to download the bytes from, because this code is both stable and released. How do you prefer it hosted and what precisely are your requirements to allow it to be included in homebrew? Is not github a stable place to download it from?
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.
We need a stable, tagged release.
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.
You should be clear about what you need so we can move forward from this back-and-forth:
So you need a git tag in the linked repo? Or you can take a tag in any cloned repo? Are you saying you need the official mono sponsor, Xamarin, to tag it? Or isn't the code base OpenSUSE uses (this particular commit) good enough? Or good enough if it's git-tagged? Does it matter this code-base hasn't been changed for basically three quarters of a year and that many a mono release has been built from it; many stable official releases. Or isn't it stable because I say so because I've verified that it is on my side? Please be specific.
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.
Our documentation is clear.
So you need a git tag in the linked repo?
Yes.
Are you saying you need the official mono sponsor, Xamarin, to tag it?
Yes.
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.
Thanks.
@directhex / Jo, Could you please tag the currently merged state in the git repository? Thank you. :)
No, it needs to not rely on X11. Additionally (repeated above from @xu-cheng) I think it would be better if you could make this a resource on the Mono formula after it no longer relies on X11 and has an official upstream tag. |
|
It relies on X11, that's how the software is built. And I've already followed @xu-cheng 's advice and removed the dependency on mono. Just to make it clear; this is a piece of software that does graphics and X11 is closely related to graphics on unix. The software doesn't drop dependencies because you declare it must, Mike. Could you explain your thinking? |
|
We just don't allow software with hard X11 dependencies in the core repository. We have a homebrew-x11 tap for that. |
|
So let us merge to the tap instead then. |
|
But when you say hard, what do you mean? 99%of the usage of this module is not dependent on x11, and works fine without it. |
|
@haf As @dunn has mentioned, you can open a PR over at https://github.com/Homebrew/homebrew-x11/pulls. |
|
It seems there are ifdefs removing the need to use X11:
|
|
You could use a patch to test it but I am not sure if this going to be accepted unless you can justify. Remove the lines for |
|
If I do it it should be accepted, otherwise I just should not do it. I am time constrained. I was asked to create a PR for this lib, but the discussion here is not encouraging. I don't give flying rats about X11 personally, I want to use Accord.Net on OS X, that's where I'm coming from. |
|
I am sorry for digressing on this thread. Please follow @dunn's comment above, and make a PR in homebrew-x11 tap. That should be resolved quicker. |
|
I'm just going to leave this here with you guys and check back next weekend. Feel free to do what you want with it, I have the code which covers my own use-case. |
The justification is: OS X does not ship with X11 and this library doesn't seem to need X11 at runtime. |
|
So that means you'll accept patch to the library that removes the check for x11.h? |
|
So I've created a patch from https://github.com/mono/libgdiplus/pull/35.diff that seems to make it all compile fine without x11. However, the diff file doesn't work, and I haven't been google my way to a working diff file. The archaic binary that is |
|
ping @MikeMcQuaid |
|
Inline patches are sometimes a bit fussy; try a |
|
A few audit failures here: http://bot.brew.sh/job/Homebrew%20Pull%20Requests/35834/version=el_capitan/testReport/junit/brew-test-bot/el_capitan/audit_libgdiplus___strict___online/ With the patch either try a |
|
Ping? |
|
I just don't know how to "manually patch the source"... I don't normally work with patches. |
|
Run |
|
Anything new here? |
|
It's slightly cyclic for us, what we work on. We're moving towards graphics again in a week or two and then we're going to finish this PR. Sorry about the time taken, but we have not forgotten it! =) |
|
How's this going? |
|
I had an intern try to do the patches like people here want but he didn't succeed either. |
|
Gentle ping 😉 |
|
Closing this due to inactivity/lack of response. If you'd still like to pursue this, feel free to respond to the previous comments/questions and re-open on the new |
|
Instead of closing, how about you fix the patch? You seem to know how to do it. |
See #45393
Works with http://accord-framework.net/ for a number of tests... However; http://sourceforge.net/p/giflib/code/ci/ce02f85e6ed1e1455a4aea9ffa68a3e2b8f8a4b1/ and rainycape/magick#21 seem to hit us. It's moved to line 117 here http://sourceforge.net/p/giflib/code/ci/ce02f85e6ed1e1455a4aea9ffa68a3e2b8f8a4b1/tree/util/rgb2gif.c
This might be a better solution for OpenRA/OpenRA#6413