Slashdot Mirror


Winelib Hobbled by Exception-Handling Patent

davidwr writes "UKBuilder.com reports that Borland's structured exception handling (SEH) patent affects Winelib. Winelib allows you to compile Windows-targeted code to run natively on Linux. Because of the patent, gcc does not include support for SEH, which is widely used in the MS-Windows world. There are workarounds, but you won't like them."

24 of 409 comments (clear)

  1. Stupid software patents by Cyphertube · · Score: 4, Insightful

    Again, I hate software patents. There's no point.

    Most of what you'd want to protect is covered by copyright. If it can't be covered by copyright, well, then it's something so basic (like "the dog is big") that it's almost impossible to express something without doing it that way.

    Again, this is where the idea of a software patent is stupid. Don't allow people to do things in ways that you really couldn't cover with copyright?

    Ok, now I find myself back to the argument that source code is speech, and hence not patentable.

    --
    Linux - because it doesn't leave that Steve Ballmer aftertaste.
  2. Or better... by cduffy · · Score: 4, Insightful

    More likely is that Intel would arrange (ie. throw some money, tech, patent licenses, whatever) at Borland in return for such a thing. Borland doesn't have any motivation to make stack-based SEH available to free x86-targeting compilers [the patent's irrelevant on RISC], but Intel arguably does.

  3. This is good news for open source. by jimbro2k · · Score: 4, Insightful
    From TFA: ""Having your FOSS project depend on a non-free tool can be a big problem in terms of adoption."

    Even worse, this makes it clear that using patent-encumbered software has a genuinely unpleasant viral effect on all your software.

    The pro-patent folks will eventually realize that the best solution is to avoid ALL patent-encumbered software COMPLETELY -- and look even more skeptically at all proprietary software, too. This will have the opposite effect of what they had intended.

    --
    There is not nearly enough love in the world, but there is far too much trust.
    1. Re:This is good news for open source. by metlin · · Score: 2, Insightful

      Dream on.

      They'd rather spend and hope that they can litigate someone and make money off it, rather than come to some sort of oh-angelic-realization.

      They're in it for the money and for the greed, if they had any remnance of altruism or understanding, they'd have realized it a long time ago, with or without situations.

      If anything, it would go worse, not better.

  4. Re:Is that ironic by Anonymous Coward · · Score: 1, Insightful

    Hardly stingy. The Kylix people probably had no idea about the SEH patent. And it's not like Borland has said they won't license the patent on royalty-free terms.

    Has anyone asked Borland?

  5. Ask Nicely by Doc+Ruby · · Score: 4, Insightful

    Next, a wave of Slashdotters will hassle Borland to release the patent, or exempt Wine. The objective is worthy, the self-organized social wave of independent activists is meaningful. But the style will most likely be counterproductive.

    I recently advised a graphic designer/artist friend whose Flash app (advertising a minor celebrity pool player) drew the ire of an OSS "advocate". They demanded that the Flash movie be replaced with something that didn't require any "closed source" software to use it. My friend and I replied politely with their cost:benefit analysis (>95% of desktops can use Flash), the fact that Flash is an open standard (SWF), and the reality of making choices that can't please everyone, so the best alternative is chosen. The "advocate" devolved into namecalling and refusal to accept any of the designer/artist's reasons as valid. Which not only lost that private argument on facts, but alienated any possiblity of the designer/artist exploring OSS possibilities, as long as reliable old Flash still works.

    If you're going to request that Borland release its constraints on Winelib, remember that you catch more flies with sugar than with vinegar. And that invitations to a company to join the OSS "community" makes you an ambassador from your community. Which demands high performance in charm and persuasion, rather than represent the community as a barbarian horde.

    --

    --
    make install -not war

    1. Re:Ask Nicely by RealAlaskan · · Score: 4, Insightful
      First, I agree with your ``ask nicely'' message. As another post pointed out, Intel and especially AMD would benefit by having better free compilers (they are complementary goods to their CPUs), so maybe we should be asking them to buy and contribute this patent. Nicely, of course.

      Second:

      I recently advised a graphic designer/artist friend whose Flash app (advertising a minor celebrity pool player) ...

      Don't ever let him get rid of that Flash. I've found that when I see a webpage that invites me to download Flash, I can just close that tab: there's nothing there for me to see. That's saved me a great deal of time and bandwidth which I might have wasted if those sites had used animated gifs instead.

    2. Re:Ask Nicely by RealAlaskan · · Score: 2, Insightful
      I wonder if you misunderstood me. My comment wasn't intended as criticism of your friend or his choices for his web site, and I certainly don't want him to change his ways. I doubt that he and I have any interests in common, and if google misdirects me there some day, his Flash will tell me: ``Move along, there's nothing here for you.''

      Every invention has at least two effects: the intended one and the other(s). For Flash, the intended effect is letting visually-oriented people do their thing. The unintended effect is shielding the rest of us from their thing, either by not installing Flash (my choice) or blocking it.

      It's for you to say whether your life is incomplete without the minor celebrity pool player ad.

      I've found that my life is substantially more complete without things which are best presented via Flash. Your friend is doing a great job by putting his ads in Flash, not least because I'll never see them. Tell him he needn't change on my account.

      I'm a Linux/Libre software zealot who's 100% in favor of Flash. By not having it installed, I miss out on all the things on which I want to miss out.

  6. C++ Standard? by wallykeyster · · Score: 3, Insightful

    Since this is a patented technology used in other compilers, I assume Borland licenses it but it can't be part of the C++ standard. This just seems to me like another great example of problems introduced when programmers rely on things that are not part of the standard. Whether it is Microsoft's custom portions of Java (which meant Java apps suddenly were no longer compatible with Sun's JVM) or vendor extensions to error handling, if you use a tool that does not meet defined standards, then you develop software that is much less useful (it may implement something cool but it has a more limited audience and an almost guaranteed shortened lifespan).

  7. Re:no, it's legally interesting by rogueuk · · Score: 4, Insightful

    But I thought the SEH isn't a part of winelib because of this. It's not a question of the code already existing, it hasn't been written yet and can't be written due to this patent.

  8. Re:Who Next? by wallykeyster · · Score: 5, Insightful
    Its great that there are lawyers willing to spend time on OSS projects, but they just dumped a whole pile of hurt on Wine if Borland pursues this.

    How do you figure? TFA simply says that gcc can't implement the features because Borland has a patent. This means that people wanting to use Winelib must remove the SEH portions of their code in order for it to compile. This is a story about a shortcoming of gcc and Winelib because so many Windows C++ developers use SEH instead of sticking to standard C++. I see no threat of lawsuit from Borland or any potential for it.

  9. Re:Who Next? by Red+Alastor · · Score: 4, Insightful

    Borland use winelibs in their Linux Delphi/C++ Builder version called Kylix so they don't have to rewrite all the Windows native code.

    By suing the Wine folks, they'd shoot themselves in the foot.

    --
    Slashdot anagrams to "Sad Sloth"
  10. Seems like much ado, about nothing, to me. by unicorn · · Score: 2, Insightful

    So all that's broken here, is the ability to complile code, that was written for Windows, into *nix binaries. That's all.

    Is there really that much Windows code, getting ported to *nix? Seems like virtually all FOSS development flows the other way.

    Large commercial companies that develop for Windows first, will have the resources to fix the code to compile the other direction.

    And is WINE/WINELIB really a good solution? By taking something written for a particular platform, and just recompiling it straight over to a new platform aren't you going to end up with horribly unoptimized code no matter what? Rewriting the code to use non Windows specific calls will buy you a LOT of speed, and whatnot, I would think.

    --
    "Politicians are interested in people. Not that this is always a virtue. Fleas are interested in dogs." P.J. O'Rourke
    1. Re:Seems like much ado, about nothing, to me. by Anonymous Coward · · Score: 1, Insightful

      Why would it really be sub optimal? Figure the if the app is *worth porting rather then a ground up rewrite, then chances are one of two things is ture:

      1. Most of the application is not interface, the bulk of the code is doing things the user does not "see", in which case a little extra cruft on the interface portion of the program won't impact performance much.

      2. The program is fantastic because of its interface. Redoing it in athena/gtk/qt/wx whatever would either be very hard or a sad substitute.

      Other then gui stuff which really has to replicate windows to work right at the application level for users, wine is mostly wrappers createing windows api's and calls with POSIX and X stuffs. Not to belittle the effort of the developers at all, I have never worked on wine or even looked at the code, I would guess that some of the wrappers required quite a bit of really clever codeing to put very diverse parts of a Unix system together to play windows. The shere volume of windows apis also makes it an incredible effort, and very impressive work. The thing is that these wrappers are just that in the end, and should execute very fast mostly.

  11. Re:There's an uber-workaround by RealAlaskan · · Score: 4, Insightful
    The uber-workaround for software patents is to have the code copyrighted and "owned" in Europe. Europe (as of now) has no software patents.

    ``As of now.'' Something about your proposal is worrying me, but as of now I can't put my finger on it.

    Yes, it's a good, sensible plan for today, but there's this terrible little flaw which keeps it from being a long term solution.

  12. Re:no, it's legally interesting by rogueuk · · Score: 2, Insightful

    either way it was never included so the grandparent post about borland and kylix is moot

  13. Re:Let's Quit Whining and Fix this by kclittle · · Score: 2, Insightful
    I think... show me the MONEY. There is money -- *lots* of it -- in patents, be they atom-centric or bit-centric. That's their intent; reward the inventor for inventing.

    So, if you plan on 'combating' sw patents, you're going to need ... MONEY. Righteous indignation ain't gonna cut it.

    --
    Generally, bash is superior to python in those environments where python is not installed.
  14. Re:Stupid software patents-quoth the lawyer. by dgatwood · · Score: 2, Insightful
    Maybe the "I hate patents" and the "I hate copyright" people can get together and hammer out an agreement, because as it stands, you both are talking against each other.

    Both groups make the same points for the same reason: the terms on patents and copyrights are ridiculously long---far too long to avoid interfering with the continued evolution of technology. Patents in the field of computing should be at MOST three years, not twenty.

    Twenty years makes sense for some physical inventions because it may take several years to go from a working design to mass manufacturing. For software, five years later, a product is not only old news, more than 90% of the time, it has been completely superceded by other products on the market and is no longer even being manufactured. Having the same patent term for computer software as for physical inventions is patently ridiculous (no pun intended).

    --

    Check out my sci-fi/humor trilogy at PatriotsBooks.

  15. Re:Who Next? by absinthminded64 · · Score: 3, Insightful

    It seems to me after I RTFA that the wine group actively identified this as being a problem and pursued corrective measures. The article also mentions that PostgreSQL replaced some of their functionality recently to avoid conflicting with an existing IBM patent even though IBM declares that it will not use it's patent war chest against any OSS projects. I think this sends a clear signal that the community is aggressively looking for this type of thing. I've no idea how Borland has been doing financially over the past few years but it definitely seems worthwhile to ensure that smaller companies dont have something like this to use against us. A small company claiming to own rights to significant portions of the linux kernel, or even patents covering something widely used within could really cause a black eye. I also think it's safe to say that SCO has inadvertently shown the other players how voiced, and loyal the OSS crowd is. This is sucky news but it is encouraging to know we're looking for this type of thing. With Microsoft patenting breathing and other bodily functions (Windows seems to be proficient at one or more bodily functions) independent developers have to be very discouraged.

  16. Re:There's an uber-workaround by Anonymous Coward · · Score: 1, Insightful

    "Remember, patents don't mean you can't code it. You can code it. You can use it for personal non-commercial use. You can distribute the code. But you can't use it commercially, distribute binaries,
    or sell it."

    Your comment carries quite a few inaccuracies and outright flawed conceptions.

    The only reason you can do the things you listed, is because you don't get caught, not because you're allowed to. My ethics do permit a "don't get caught" approach, but that's not the letter of the law.

  17. Re:Isn't that the point? by zerblat · · Score: 2, Insightful
    Perhaps that's the point of patents in today's perverted world. However, the original idea was that patents would encourage and stimulate invention and sharing of ideas. Instead of everyone trying to hide their methods from their competitors, the patent system gives inventors exclusive rights to their inventions in exchange for sharing information about the invention.

    However, the patent system doesn't guarentee financial gain for anyone (except for patent lawyers, that is). In some areas (e.g. medical research) the patent system works great and is necessary for a lot of the research to be commercially feasible. In other areas (CS) it rarely does any good, but instead causes lots of problems and actually inhibits innovation.

    --
    Please alter my pants as fashion dictates.
  18. Re:Non sequitur by Pseudonym · · Score: 3, Insightful

    Don't knock the idea of registries just because Microsoft can't implement them properly.

    --
    sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
  19. Good point, Borland is Wine friendly, so... by Weaselmancer · · Score: 4, Insightful

    ...here's an idea that maybe nobody has tried yet.

    Ask them.

    Rather than do the collective F/OSS thing and lose our minds about a software patent that's in the way...how about asking Borland if we may write something their patent covers?

    Has it at least been tried yet?

    Yes, software patents are evil. And yes, exception handling has tons of prior art. And still yes, this is freaking obvious. But still. It's only a problem if they complain, and they're less likely to do so if we just simply do the good manners thing and ask first.

    --
    Weaselmancer
    rediculous.
  20. Re:what does the pattent cover? by Anonymous Coward · · Score: 1, Insightful

    It's a scheme for registering exception handler routines on the stack. Any language that supports any kind of notion of requesting a non-local transfer of control could use it. Microsoft's .NET runtime catches all structured exceptions (and maps certain common ones to CLR exception class instances), for instance.