Re: [sablevm-jchevm] Windows port
Enrico Migliore <[email protected]> Wed, 12 Apr 2006 13:08:05 +0200
| Newsgroups | gmane.comp.java.vm.sablevm.devel |
|---|---|
| Organization | - |
| Message-ID | <[email protected]> |
Etienne Gagnon wrote: >Enrico Migliore wrote: > > >>I'm figuring the folder layout structure, to put somewhere, please let >>me know if you find it reasonable: >> >>win32 >> |_____src (proposal A) >> |_____include >> >> >>arch >> |_____win32 >> |______src (proposal B) >> |______include >> >> > >It is too soon to go this way. For now, as I said, you should simply go >the #ifdef way. The problem of a hierarchy, like above, is that it >duplicates much code. Look at src/libsablevm/system.c. You'll see that >many, many platforms share the same code. So, a hierarchy is only >useful if some code has to be distinct for each system. > >FYI, I dislike separate include directories, unless there's a good >reason for doing so. (See src/libsablevm/include : it has a purpose, as >these files are useful to *users* of sablevm). I also dislike separate >compilation of each .c, as there is no reason for separate compilation >on modern systems (actually, separate compilation can eliminate many >optimization opportunities, and it forces you to export many symbols >that shouldn't be exported, like static functions). Sorry for my >compiler background showing up... > > > Got it. I'll leave the current directories tree intact, and use #ifdef . I'll keep the MSVC design file in a different directory and configure the build system to point to ~/src >>For this initial part of the port, I can make a local copy of the files >>that require Windows specific functions, in the folder: "src" and >>"include", and work on them. >> >> > >Hmmm.... First, you should get a SableVM sandbox, and do regular >check-ins. ;-) But, first, we need to settle the legal issues. > >I'll get in touch with you in private about it. > > > Ok >>I already did a quite complex port in the past (FreeDOS's filesystem >>ported to some embedded platforms) and it took me 6 months, to make a >>clean and reliable work. >> >> > >Great. I don't expect SableVM's port to be such a difficult task. >Hopefully. :-) > > > It wasn't that difficult: it took me that much because it was an after-dinner work and because I: 1. Debugged almost all the source code 2. Added a certain number of black-box tests 3. Tested on floppy disk, on a USB and on flash device Enrico