HaikuPorts
  • Login
  • Preferences
  • Help/Guide
  • Wiki
  • Timeline
  • Roadmap
  • View Tickets
  • Search
  • Port Log
  • Blog

Context Navigation

  • ← Previous Ticket
  • Back to Query
  • Next Ticket →

Ticket #120 (closed task: fixed)

Opened 6 years ago

Last modified 5 months ago

bring cairo BeOS code up to date

Reported by: scottmc Owned by:
Priority: normal Milestone: Unscheduled
Component: x11-libs/cairo Version:
Severity: normal Keywords:
Cc: umccullough@…, planche2k@…

Description

The BeOS port of cairo needs to be brought up to date, as changes in cairo since the BeOS backend was first written have probably been broken.

--- The BeOS/Zeta surface backend feature is still under active development
--- and is included in this release only as a preview. It does NOT fully work
--- yet and incompatible changes may yet be made to BeOS/Zeta surface backend
--- specific API.

Change History

comment:1 Changed 6 years ago by scottmc

  • Component changed from BePorter to x11-libs/cairo

comment:2 Changed 6 years ago by umccullough

  • Cc umccullough@… added

comment:3 follow-up: ↓ 4 Changed 6 years ago by andreasf

Hi Scott,

Have you tried my patch at x11-libs/cairo/git-master/1? It fixed more issues than just configure.ac.

comment:4 in reply to: ↑ 3 Changed 6 years ago by scottmc

Replying to andreasf:

Hi Scott,

Have you tried my patch at x11-libs/cairo/git-master/1? It fixed more issues than just configure.ac.

I don't recall if I used your patch when building the current binary or not. umccullough has a larger patch that he's working on I think. Perhaps he'll post what he has so far so that it doesn't get lost.

comment:5 Changed 6 years ago by umccullough

Andreas: Interestingly, I made many of the same patches that you did before I found your patch :)

I think I have made a few cleaner changes in my patch, however, and will try to post them soon.

FWIW, I can get most of the tests to *run* (but not pass) with some hacky changes to the boilerplate code and disabling the assert in the cairo error handler.

comment:6 Changed 6 years ago by andreasf

  • Cc planche2k@… added

Urias, a Git branch would be best. If you don't have hosting preferences, I'd set up an automatic mirror on repo.or.cz and prepare a "haiku" fork for us.

P.S. What do I post the patch for if nobody reads it?! ;)

comment:7 follow-up: ↓ 8 Changed 6 years ago by umccullough

I do have a machine I can put it on, but it's volatile - so I'd appreciate a mirror of the branch if I set it up :)

(plus I have no clue how to setup an official git branch)

Don't fret! your patch did help me clean up some of the mess in my own patch as well :D - I just didn't notice it until I had already hammered out most of the changes on my own...

Ok, I promise, tonight, I will post my patches somewhere!...assuming the machine I was using for them doesn't crash when I boot up Haiku again (that's what happened last time)

comment:8 in reply to: ↑ 7 Changed 6 years ago by scottmc

Ok, I promise, tonight, I will post my patches somewhere!...assuming the machine I was using for them doesn't crash when I boot up Haiku again (that's what happened last time)

Exactly the reason we should put patched into svn, even if they aren't yet complete, even partial patches can save us from having to redo work we've already done. ;)
(That, or email it to yourself on gmail.)

comment:9 Changed 6 years ago by umccullough

Well, let me clarify - when it crashed, I left it in the debugger so I could get more info for the trac ticket, so I didn't get the latest patch diff'd - I have a couple various diffs of my patches "forever" on pastebin.com that I can still locate ;)

In any case, here's a link to the last time I got all the tests to run:

 http://umccullough.pastebin.com/f35fca747

comment:10 Changed 6 years ago by andreasf

Archiving one large patch in SVN is better than losing it, but having the full original patch queue is even better. :)

I've set up a new Git fork here:  http://repo.or.cz/w/cairo/haiku.git

To push there, you need to register your SSH public key at  http://repo.or.cz/m/reguser.cgi and tell me the username you chose. (Be sure to backup your private and public key before you overwrite your Haiku image!)

comment:11 Changed 5 years ago by stippi

I am wondering if most of the code in the BeOS backend should be dumped except for actually creating Cairo surfaces in the form of BBitmaps. Then one should attach the Cairo software renderer to perform any rendering. The Haiku BView rendering API is simply no-where powerful enough to implement the rendering with that. And frankly I have serious doubts that there would be any performance benefit. Probably the contrary.

comment:12 Changed 5 years ago by umccullough

Sounds good to me, some of the people I chatted with in #cairo seemed to think that would be best as well.

comment:13 Changed 5 years ago by michaelvoliveira

Depend of

http://ports.haiku-files.org/ticket/398

comment:14 Changed 5 months ago by scottmc

  • Resolution set to fixed
  • Status changed from new to closed

There is a recipe for it on new site. Probably not fully working yet. If still broken, report issue there.

Note: See TracTickets for help on using tickets.

Download in other formats:

  • Comma-delimited Text
  • Tab-delimited Text
  • RSS Feed

Trac Powered

Powered by Trac 0.13dev-r10686
By Edgewall Software.

Visit the Trac open source project at
http://trac.edgewall.org/