FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Core32 for Ares?
Goto page 1, 2  Next
 
Post new topic   Reply to topic     Forum Index -> Core32
View previous topic :: View next topic  
Author Message
kris



Joined: 27 Mar 2004
Posts: 1494
Location: South Pacific

PostPosted: Wed Dec 28, 2005 8:18 pm    Post subject: Core32 for Ares? Reply with quote

I understand there's some conflicts between core32 and the imports used by some of the Phobos modules? Would you be interested in resolving that for Ares, which is currently free from such conflicts? It would be nice to have one single place to get Win32 imports, and a blessing to avoid the Phobos conflicts ...
Back to top
View user's profile Send private message
jcc7



Joined: 22 Feb 2004
Posts: 657
Location: Muskogee, OK, USA

PostPosted: Wed Dec 28, 2005 9:03 pm    Post subject: Reply with quote

(I don't quite get what you're asking, so I'll ramble a little and then you can tell me if anything I write resembles the issue you're discussing.)

Are there conflicts if someone tries to use both Core32 and Ares? I'm aware of Ares, but I haven't actually tried it myself. (By the way, if you compile Core32 with version(STANDALONE) set, it'll use everything.)

I'm willing to help, but I generally use trial-and-error to version-out conflicts. So I'd need someone to tell me where the conflicts are. If there are any.

Of course, with D's limited versioning system, I'm not sure how I'd handle it if it conflicts in both Ares and Phobos or just Ares or just Phobos.

So what do you have in mind?
Back to top
View user's profile Send private message AIM Address
kris



Joined: 27 Mar 2004
Posts: 1494
Location: South Pacific

PostPosted: Thu Dec 29, 2005 2:39 pm    Post subject: Reply with quote

Oh, if that's the case then presumeably one could upgrade Ares to the core32 headers instead of the ares.sys.windows.c.windows.d (which is a bit like the phobos equivalent)?

That is, since there's very little in the way of windows.d dependencies within Ares, we should get rid of that file right now and substitute with core32.d instead. At least there'd then be only one import, and subsequently no conflicts ~ yes? We'd have to add a version=Standalone at the top of the file ...
Back to top
View user's profile Send private message
JJR



Joined: 22 Feb 2004
Posts: 1104

PostPosted: Thu Dec 29, 2005 3:13 pm    Post subject: Reply with quote

I like that idea, Kris.
Back to top
View user's profile Send private message
jcc7



Joined: 22 Feb 2004
Posts: 657
Location: Muskogee, OK, USA

PostPosted: Thu Dec 29, 2005 8:41 pm    Post subject: Reply with quote

Okay, guys.

Just let me know if there's something I should change in Core32 to help Ares.
Back to top
View user's profile Send private message AIM Address
kris



Joined: 27 Mar 2004
Posts: 1494
Location: South Pacific

PostPosted: Thu Dec 29, 2005 8:47 pm    Post subject: Reply with quote

jcc7 wrote:
Just let me know if there's something I should change in Core32 to help Ares.

Seems like the only thing needed is to ensure the version=Standalone happens for Ares. This could be done either by simply forking the current headers (and adding the version= at the top of the appropriate files), or by adding a version(Ares)version=Standalone; to those same files and making the assumption version=Ares will always be true for Ares builds (which, itself, is not a really solid assertion).

Either way, it seems pretty minor?
Back to top
View user's profile Send private message
jcc7



Joined: 22 Feb 2004
Posts: 657
Location: Muskogee, OK, USA

PostPosted: Thu Dec 29, 2005 9:05 pm    Post subject: Reply with quote

kris wrote:
jcc7 wrote:
Just let me know if there's something I should change in Core32 to help Ares.

Seems like the only thing needed is to ensure the version=Standalone happens for Ares. This could be done either by simply forking the current headers (and adding the version= at the top of the appropriate files), or by adding a version(Ares)version=Standalone; to those same files and making the assumption version=Ares will always be true for Ares builds (which, itself, is not a really solid assertion).

Either way, it seems pretty minor?
Even more minor: I could provide a special build file for STANDALONE fans. The only difference between the current build file and the STANDALONE version would be STANDALONE would be set.

Wow! Sorry about all that yelling! It's just the variable name. Wink
Back to top
View user's profile Send private message AIM Address
kris



Joined: 27 Mar 2004
Posts: 1494
Location: South Pacific

PostPosted: Thu Dec 29, 2005 9:24 pm    Post subject: Reply with quote

THAT WOULD BE GREAT!

Uhem ~ that would be great! Smile
Back to top
View user's profile Send private message
JJR



Joined: 22 Feb 2004
Posts: 1104

PostPosted: Thu Dec 29, 2005 9:42 pm    Post subject: Reply with quote

Thank you, Justin. Do you think we should move Core32 out of the "inactive" projects section too? It's bound to be around for awhile, especially if it maintains any sort of connection with Ares.

-JJR
Back to top
View user's profile Send private message
kris



Joined: 27 Mar 2004
Posts: 1494
Location: South Pacific

PostPosted: Thu Dec 29, 2005 9:51 pm    Post subject: Reply with quote

jcc7 wrote:
Even more minor: I could provide a special build file for STANDALONE fans. The only difference between the current build file and the STANDALONE version would be STANDALONE would be set.

Sorry, Justin. I misunderstood this.

I thought you were saying you'd put the version=Standalone within the files, but you were talking about the Build file instead. I don't see how that would help Ares users, since it's rather likely they'd be using their own Build files (or not using Build at all) whilst importing the Core32 headers.

What I wish to avoid is for users to remember having to specify some kind of version= when they use certain imports. I know Mango currently takes this approach, but it bothers me. If any of Mango ends up in Ares, then the same issue would have to be resolved there too.
Back to top
View user's profile Send private message
jcc7



Joined: 22 Feb 2004
Posts: 657
Location: Muskogee, OK, USA

PostPosted: Fri Dec 30, 2005 1:22 am    Post subject: Reply with quote

kris wrote:
Sorry, Justin. I misunderstood this.

I thought you were saying you'd put the version=Standalone within the files, but you were talking about the Build file instead. I don't see how that would help Ares users, since it's rather likely they'd be using their own Build files (or not using Build at all) whilst importing the Core32 headers.

What I wish to avoid is for users to remember having to specify some kind of version= when they use certain imports. I know Mango currently takes this approach, but it bothers me. If any of Mango ends up in Ares, then the same issue would have to be resolved there too.
Oops. I was trying to make it simpler than it is. Sad

I see what I can do now. It's not as easy as I was hoping, but it shouldn't be too bad. I'll call this request "ticket #1". It shouldn't be hard to do (and actually it sounds like fun), but it'll probably be a few days before I get around to it (New Year's Eve and all that). But since I made a ticket for it, I hopefully won't completely forget about it. I've got a little momentum going, and I don't won't to lose it. Wink
Back to top
View user's profile Send private message AIM Address
sean



Joined: 24 Jun 2004
Posts: 609
Location: Bay Area, CA

PostPosted: Wed Feb 08, 2006 3:01 pm    Post subject: Reply with quote

I think I'm going to try replacing Ares' existing Windows headers with those from Core32 today and see how it goes. Will let you know how it goes.
Back to top
View user's profile Send private message
sean



Joined: 24 Jun 2004
Posts: 609
Location: Bay Area, CA

PostPosted: Wed Feb 08, 2006 8:41 pm    Post subject: Reply with quote

Quick follow-up. It looks like many of the Core32 modules are converted Microsoft header files, which all contain copyright information. Is it legal to create such a derivative work? I don't always mind the "don't ask, don't tell" approach for personal projects, but I am hesitant to use them for Ares.
Back to top
View user's profile Send private message
jcc7



Joined: 22 Feb 2004
Posts: 657
Location: Muskogee, OK, USA

PostPosted: Thu Feb 09, 2006 12:21 pm    Post subject: Reply with quote

sean wrote:
Is it legal to create such a derivative work?
IANAL, but probably not. I didn't do any of the original conversion (L8night did all of the heavy lifting), but I'm pretty sure the files are all derived from Microsoft's files.

Yes, it's a sore subject. I'd like to do something about it, but fixing doesn't sound like much fun when the current headers work (other than the possible legal ramifications). As has been mentioned earlier since the MinGW headers are mostly public domain, it'd be good to convert these headers into D to escape the Microsoft license issues.

Going back to square one and converting manually would take a lot of time, so automation would be helpful. Unfortunately, when I tried to use the Perl script from hp.vector.co.jp to translate the files, I ran into problems. The problems might be easy to work around, but I don't know any Perl (and I'm not in the mood to learn any). Eventually someone will write an effective .h-to-.d translater, and I guess I'm waiting for someone else to blaze that trail.

So I don't know what the solution is that doesn't require more time than I'm willing to spend on this. Sad
Back to top
View user's profile Send private message AIM Address
sean



Joined: 24 Jun 2004
Posts: 609
Location: Bay Area, CA

PostPosted: Tue Feb 14, 2006 11:39 pm    Post subject: Reply with quote

Regarding automation--it's something I'm going to look into as I think it's the only way I'll get the glibc Posix headers ported to D. I've got a front-end to play with, but probably won't have a chance to look at it for a few weeks yet.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> Core32 All times are GMT - 6 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group