You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Stefano Mazzocchi <st...@apache.org> on 2006/11/30 14:26:17 UTC

Re: [jira] Created: (HARMONY-2374) [classlib][awt] Missing java2d code for OpenGL pipeline.

Oleg Khaschansky (JIRA) wrote:
> [classlib][awt] Missing java2d code for OpenGL pipeline.
> --------------------------------------------------------
> 
>                  Key: HARMONY-2374
>                  URL: http://issues.apache.org/jira/browse/HARMONY-2374
>              Project: Harmony
>           Issue Type: New Feature
>           Components: Classlib
>             Reporter: Oleg Khaschansky
> 
> 
> The suggested code enables opengl java2d pipeline on linux and win32. It provides the implementation of the Graphics2D based on OpenGL API. Font rendering is not supported yet. There's also a known unresolved issue on win32 (swapping color components).
> 
> To enable opengl pipeline system property java2d.opengl should be set to true, i.e. -Djava2d.opengl=true

Niiiiiiiiiice!!!!!

Can't wait to try Agora/Welkin on it!

Now, if only I knew how to port all this stuff over to Macosx :,-(

-- 
Stefano.


Re: Harmony on Macosx [was Re: [jira] Created: (HARMONY-2374) [classlib][awt] Missing java2d code for OpenGL pipeline.]

Posted by Mark Hindess <ma...@googlemail.com>.
On 1 December 2006 at 9:48, Stefano Mazzocchi <st...@apache.org> wrote:
> Alexey Petrenko wrote:
> > 2006/11/30, Stefano Mazzocchi <st...@apache.org>:
> >> Oleg Khaschansky wrote:
> >> >> Now, if only I knew how to port all this stuff over to Macosx :,-(
> >> >
> >> > Porting opengl 2d rendering shouldn't be complicated at all. Ideally,
> >> > only system-dependent part of the code (which manages opengl context)
> >> > should be re-implemented using AGL library. There's pbuffer support in
> >> > AGL, so no problems with blitters (they do use pbuffers already).
> >> >
> >> > But it is not a simple task to port the rest of awt. 2d rendering is
> >> > just a part of it.
> >> No, I'm talking about porting the entire Harmony codebase not just
> >> this ;-)
> > Didn't you try to run Harmony on OS X with X server?
> 
> So, yesterday I got my first Intel-powered mac (which I'm using to type
> now.... faaaaaaaaaaaaast), which means I believe (but then again, I
> might be wrong, it has been years since I wrote any x86 assembly code
> and I have no clue what the core 2 duo instruction set it) might reduce
> the barrier to porting harmony.
> 
> So, no, I have not tried it because running harmony on macosx/powerpc
> seemed like too big of a stretch for me to even consider.
> 
> > It could help to use Linux codebase I think...
> 
> well, certainly I wouldn't have started with the windows one ;-)

;-) I have plans to change the os name split (windows/linux) to an os
family spilt (windows/unix) to make it easier to integrate code for
non-linux unix platforms.

> > In fact I'm not a Mac OS X guru :(
> 
> Right and years ago I would have thought that Intel and Macosx had
> enough impedance mismatch to basically have me to look somewhere else
> for help... but things have changed and I wonder if you guys can find us
> some macosx expert that might be able to help us with the transition.
> 
> btw, macosx shouldn't be that different from freebsd and I know there
> are a lot of freebsd people around the ASF... (and, well, one of the
> original darwin developers is an apache member.. and most apache
> members use macosx as their OS... question is: how do we get the
> migration started? and how do we convince people it's not that hard?

I had a similar thought yesterday afternoon and just last night I
started setting up a qemu[0] image for FreeBSD with a view to trying to
port to that.  (Not because I thought anyone especially wanted it, but
because quite a few people asked about macosx - which I can't help with
since I don't have macos - and thought this might be a helpful first
step.)  I'm not sure how far I'll get - at the moment I have a basic
install and I'm still getting the development environment set up.

At the moment, I'm primarily interested in classlib.  There are a number
of one-time changes that need to be made to get the first non-Linux unix
platform started - such as the one mentioned in my first comment above
- after this I think the task of porting to the next non-linux unix
platform should be a little easier.

There are yet more issues when it comes to porting to new architectures
and I am looking at some of these too.  For instance, I'm currently
doing a little refactoring of some the most architecture-specific parts
of classlib to enable code for more architectures to be added relatively
easily.

> do we have any documentation about "porting to other system"? I think
> would be immensely helpful.
>
> Thoughts? ideas? suggestions?

> I'll try to build harmony on macosx/core2duo today and see how far
> along I can go before my C/C++/UNIX-linking ignorance creeps in.

Report your findings here and I'll try to help.  I'll report my progress
here too.  I'm sure we'll come across many of the same problems.

> BTW, what instruction set is the core2duo anyway?

x86_64.

-Mark.

[0] Qemu, the awesome processor emulator created by Fabrice Bellard:
      http://fabrice.bellard.free.fr/qemu/


Harmony on Macosx [was Re: [jira] Created: (HARMONY-2374) [classlib][awt] Missing java2d code for OpenGL pipeline.]

Posted by Stefano Mazzocchi <st...@apache.org>.
Alexey Petrenko wrote:
> 2006/11/30, Stefano Mazzocchi <st...@apache.org>:
>> Oleg Khaschansky wrote:
>> >> Now, if only I knew how to port all this stuff over to Macosx :,-(
>> >
>> > Porting opengl 2d rendering shouldn't be complicated at all. Ideally,
>> > only system-dependent part of the code (which manages opengl context)
>> > should be re-implemented using AGL library. There's pbuffer support in
>> > AGL, so no problems with blitters (they do use pbuffers already).
>> >
>> > But it is not a simple task to port the rest of awt. 2d rendering is
>> > just a part of it.
>> No, I'm talking about porting the entire Harmony codebase not just
>> this ;-)
> Didn't you try to run Harmony on OS X with X server?

So, yesterday I got my first Intel-powered mac (which I'm using to type
now.... faaaaaaaaaaaaast), which means I believe (but then again, I
might be wrong, it has been years since I wrote any x86 assembly code
and I have no clue what the core 2 duo instruction set it) might reduce
the barrier to porting harmony.

So, no, I have not tried it because running harmony on macosx/powerpc
seemed like too big of a stretch for me to even consider.

> It could help to use Linux codebase I think...

well, certainly I wouldn't have started with the windows one ;-)

> In fact I'm not a Mac OS X guru :(

Right and years ago I would have thought that Intel and Macosx had
enough impedance mismatch to basically have me to look somewhere else
for help... but things have changed and I wonder if you guys can find us
some macosx expert that might be able to help us with the transition.

btw, macosx shouldn't be that different from freebsd and I know there
are a lot of freebsd people around the ASF... (and, well, one of the
original darwin developers is an apache member.. and most apache members
use macosx as their OS... question is: how do we get the migration
started? and how do we convince people it's not that hard?

do we have any documentation about "porting to other system"? I think
would be immensely helpful.

Thoughts? ideas? suggestions?

I'll try to build harmony on macosx/core2duo today and see how far along
I can go before my C/C++/UNIX-linking ignorance creeps in.

BTW, what instruction set is the core2duo anyway?

-- 
Stefano.


Re: [jira] Created: (HARMONY-2374) [classlib][awt] Missing java2d code for OpenGL pipeline.

Posted by Alexey Petrenko <al...@gmail.com>.
2006/11/30, Stefano Mazzocchi <st...@apache.org>:
> Oleg Khaschansky wrote:
> >> Now, if only I knew how to port all this stuff over to Macosx :,-(
> >
> > Porting opengl 2d rendering shouldn't be complicated at all. Ideally,
> > only system-dependent part of the code (which manages opengl context)
> > should be re-implemented using AGL library. There's pbuffer support in
> > AGL, so no problems with blitters (they do use pbuffers already).
> >
> > But it is not a simple task to port the rest of awt. 2d rendering is
> > just a part of it.
> No, I'm talking about porting the entire Harmony codebase not just this ;-)
Didn't you try to run Harmony on OS X with X server?
It could help to use Linux codebase I think...

In fact I'm not a Mac OS X guru :(

SY, Alexey


> > On 11/30/06, Stefano Mazzocchi <st...@apache.org> wrote:
> >> Oleg Khaschansky (JIRA) wrote:
> >> > [classlib][awt] Missing java2d code for OpenGL pipeline.
> >> > --------------------------------------------------------
> >> >
> >> >                  Key: HARMONY-2374
> >> >                  URL: http://issues.apache.org/jira/browse/HARMONY-2374
> >> >              Project: Harmony
> >> >           Issue Type: New Feature
> >> >           Components: Classlib
> >> >             Reporter: Oleg Khaschansky
> >> >
> >> >
> >> > The suggested code enables opengl java2d pipeline on linux and
> >> win32. It provides the implementation of the Graphics2D based on
> >> OpenGL API. Font rendering is not supported yet. There's also a known
> >> unresolved issue on win32 (swapping color components).
> >> >
> >> > To enable opengl pipeline system property java2d.opengl should be
> >> set to true, i.e. -Djava2d.opengl=true
> >>
> >> Niiiiiiiiiice!!!!!
> >>
> >> Can't wait to try Agora/Welkin on it!
> >>
> >> Now, if only I knew how to port all this stuff over to Macosx :,-(
> >>
> >> --
> >> Stefano.
> >>
> >>
>
>
> --
> Stefano.
>
>

Re: [jira] Created: (HARMONY-2374) [classlib][awt] Missing java2d code for OpenGL pipeline.

Posted by Stefano Mazzocchi <st...@apache.org>.
Oleg Khaschansky wrote:
>> Now, if only I knew how to port all this stuff over to Macosx :,-(
> 
> Porting opengl 2d rendering shouldn't be complicated at all. Ideally,
> only system-dependent part of the code (which manages opengl context)
> should be re-implemented using AGL library. There's pbuffer support in
> AGL, so no problems with blitters (they do use pbuffers already).
> 
> But it is not a simple task to port the rest of awt. 2d rendering is
> just a part of it.

No, I'm talking about porting the entire Harmony codebase not just this ;-)

> 
> On 11/30/06, Stefano Mazzocchi <st...@apache.org> wrote:
>> Oleg Khaschansky (JIRA) wrote:
>> > [classlib][awt] Missing java2d code for OpenGL pipeline.
>> > --------------------------------------------------------
>> >
>> >                  Key: HARMONY-2374
>> >                  URL: http://issues.apache.org/jira/browse/HARMONY-2374
>> >              Project: Harmony
>> >           Issue Type: New Feature
>> >           Components: Classlib
>> >             Reporter: Oleg Khaschansky
>> >
>> >
>> > The suggested code enables opengl java2d pipeline on linux and
>> win32. It provides the implementation of the Graphics2D based on
>> OpenGL API. Font rendering is not supported yet. There's also a known
>> unresolved issue on win32 (swapping color components).
>> >
>> > To enable opengl pipeline system property java2d.opengl should be
>> set to true, i.e. -Djava2d.opengl=true
>>
>> Niiiiiiiiiice!!!!!
>>
>> Can't wait to try Agora/Welkin on it!
>>
>> Now, if only I knew how to port all this stuff over to Macosx :,-(
>>
>> -- 
>> Stefano.
>>
>>


-- 
Stefano.


Re: [jira] Created: (HARMONY-2374) [classlib][awt] Missing java2d code for OpenGL pipeline.

Posted by Oleg Khaschansky <ol...@gmail.com>.
> Now, if only I knew how to port all this stuff over to Macosx :,-(

Porting opengl 2d rendering shouldn't be complicated at all. Ideally,
only system-dependent part of the code (which manages opengl context)
should be re-implemented using AGL library. There's pbuffer support in
AGL, so no problems with blitters (they do use pbuffers already).

But it is not a simple task to port the rest of awt. 2d rendering is
just a part of it.

On 11/30/06, Stefano Mazzocchi <st...@apache.org> wrote:
> Oleg Khaschansky (JIRA) wrote:
> > [classlib][awt] Missing java2d code for OpenGL pipeline.
> > --------------------------------------------------------
> >
> >                  Key: HARMONY-2374
> >                  URL: http://issues.apache.org/jira/browse/HARMONY-2374
> >              Project: Harmony
> >           Issue Type: New Feature
> >           Components: Classlib
> >             Reporter: Oleg Khaschansky
> >
> >
> > The suggested code enables opengl java2d pipeline on linux and win32. It provides the implementation of the Graphics2D based on OpenGL API. Font rendering is not supported yet. There's also a known unresolved issue on win32 (swapping color components).
> >
> > To enable opengl pipeline system property java2d.opengl should be set to true, i.e. -Djava2d.opengl=true
>
> Niiiiiiiiiice!!!!!
>
> Can't wait to try Agora/Welkin on it!
>
> Now, if only I knew how to port all this stuff over to Macosx :,-(
>
> --
> Stefano.
>
>