From: demerphq <dem...@gm...> - 2006-04-29 11:04:12
|
On 4/28/06, Vadim <va...@vk...> wrote: > > >> In a merge process, I see 2 different paths: > >> - 1. just move ./wince/* into subdir of win32. Easy but essentially > >> hiding a problem under a carpet. > >> - 2. integrate closely. This is harder, yet this brings another > >> problem. Wince port uses CELIB, which, unfortunately, isn't very > >> perfect, and probably it will not be needed at all when WinCE OS will > >> provide enough C library functions (this is why CELIB currently > >> needed); so "polluting" win32 with CELIB has its drawbacks. > >> > >> So please go and merge as you see fit. > >> > >> I'll provide my help with any choosen way of doing things. > > > > > > Im going the #2 route. Cant we make CELIB load only when UNDER_CE? > > > Fine. I hope 'win32' tree will not be polluted to much to annoy win32 > people. > > Yet, you should not bother about CELIB, and indeed it is loaded only > UNDER_CE. > > > > > > Maybe we should take this offlist? Or is this interesting to others? > > Maybe Steve P? > > > perlce.sf.net has its mailing list, but it is calm now, so we can easily > take this offlist, and may be CC per...@li... :) Since folks seemed interested (and since i apparently have some free time I didnt expect) I put the current state of my merging efforts online as http://flux8.com:8079/perl/win.tar.bz2 Just to recap my methodology was as follows: First i diffed WinCE and Win32 and realized that there were basically three classes of file: A. Additions in Win32 that hadnt been applied to the wince directory. B. Stuff in the WinCE directory that had been written with Win32 compatibilty in mind C. Suff in the Wince directory that had assumed that Win32 stuff didnt mat= ter. Because of this I did the following: 1. Set up a new dir 'Win' based on the contents of the Win32 directory. 2. Copy the contents of the Wince directory over the Win32 contents, thus after this step hypothetically Wince should have been able to build ok. 3. Started merging content from the Win32 to Win directory so that eventually the files were identical. If the content was case A the changes were to the Win directory, for case B it was to the Win32 directory and for case C it was to both. But I mostly tackled the case A and B stuff first and left the C for later. 4. As changes were applied to the Win32 directory I checked that at least it builds "out of the box" for win32. The result was the patch I sent in to Win32. Eventually it should be that the Win directory contains exactly the same content as the Win32 directory, plus any files that are in the WinCE directory that are not in the Win32 directory. And it should be possible to build for both platforms from the Win directory. At that point I guess the final patch would be to move the new files from wince directory to the win32 directory and then delete the rest. I dont know how P5P would like to handle stuff like this in source control. It seems to me that putting the "Win" directory under source control would make it easier to track the changes, even if it meant that for a short time blead would have three win directories. Because after not that long it would only have one. Anyway, thats obviously not my call. :-) Miscleaneous stufff: One difference that i decided in the favour of the Win32 branch was the icon for the exe. Im not sure if the WinCE one was intended as a lower resolution icon or not, it certainly was smaller. Possibly this change needs to be enhanced to allow selecting the icon from the cmdline. An interesting issue are the additional files in the WinCE directory, some of them (the batch files) are kindof interesting and long term might be made to do the right thing for a normal win32 build. Likewise there are some interesting stuff in the Makefile.ce Now that we know for sure that UNDER_CE will be defined when building for CE we can change all the stuff that says _WIN_CE to say UNDER_CE. cheers Yves -- perl -Mre=3Ddebug -e "/just|another|perl|hacker/" |