[Box Backup] Win32 port
Chris Wilson
boxbackup@fluffy.co.uk
Mon, 5 Dec 2005 13:43:45 +0000 (GMT)
Hi Ben, Martin, Nick and all,
I wrote:
>> I've checked out Nick's tree from SVN, along with 0.08 and the trunk. I
>> think I've fixed all the line endings and reduced the patch (against 0.08)
>> to a manageable size (a mere 4,700 lines :-).
Ben wrote:
> Is that different to http://bbdev.fluffy.co.uk/svn/box/martin/test/ ?
Oops, I didn't realise Martin had already done that work :-(
Martin and I had different ideas about which files should be converted to
Unix line endings and which shouldn't:
File Martin Me (my reason)
---- ------ --------------
boxbackup.sln (VS project?) Yes No (does it still work with VS?)
lib/win32/bbackupd.conf No Yes (cross platform compatibility)
lib/win32/emu.{cpp,h} No Yes (converted all .cpp files)
lib/win32/ReadMe.txt No Yes (converted all .txt files)
lib/win32/win32test.cpp No Yes (converted all .cpp files)
I don't have any real objections to going along with Martin's decisions,
provided that the project files still work in VS and we don't mind having
inconsistent line endings between lib/win32 and the rest of the project,
but I would be interested to hear what others think.
I would like to clean up the comments and line lengths before this gets
merged, since I'm certain you won't allow me to change them afterwards :-)
Any objections?
I also see that Martin has removed boost from the project, but I don't see
any changes to the build files to replace the boost regex library which
Nick used.
I think we must have regex support on win32. Would you have any objections
to including a copy of Henry Spencer's regex library?
[http://gnuwin32.sourceforge.net/packages/regex-spencer.htm]
The license is BSD-like with attribution clause, so we would have to
acknowlegde him in the docs, but apart from that I hope it will not
conflict with your license.
> There are two parts to the Win32 port:
>
> 1) The actual porting effort.
>
> 2) Some extra features, for example, the dumping of state to disc.
>
> They should, perhaps be separated.
I agree completely, and would like to go ahead and do so.
> The most helpful approach might be to get the changes applied to a copy of
> trunk, and separating out the two parts. But that may be more work than it's
> worth. But if it's done line by 4700 lines, we'd make sure we don't lose any
> extra code.
I will do that as well as I can, but reviews of my changes would be
greatly appreciated.
> This is a bit of a mess. It's my fault. I should have opened up the source
> control system far earlier.
No worries, I'm glad that it's open now. The win32 port was never going to
be easy to merge into a project with long release cycles.
> and you can download the compilers for free if you don't want the IDE as well
> or object to the "free for a year" business.
Free for a year is OK by me. I just hope it doesn't preclude me from
working on GPL code.
> I only have VC++ 6, so I can't use the project files in the project. I would
> really prefer that they didn't rely on anything which wasn't free (as in
> beer), though.
Absolutely. I want people to be able to build Box and Boxi on Windows
using free tools, although I would also like to give them the option of
using VS if they prefer.
> Having said that, MinGW might not be a bad way to go, as it should allow the
> existing build script to work, which, under the new autoconf stuff, might
> save a whole world of bother.
Don't the existing scripts require a decent shell (>> cmd.exe) and Perl?
Then MinGW wouldn't be enough by itself, you would probably need Cygwin to
run them.
I'm looking at using a free (as in beer) Windows IDE called Chinook, which
comes with wxWidgets support and the MinGW tools. I think it would be
quite easy to auto-generate the Chinook project file from Perl, maybe even
a cmd.exe batch file would do it.
> Yes, this leaked. Removal is probably wise.
Will do.
Cheers, Chris.
--
_ ___ __ _
/ __/ / ,__(_)_ | Chris Wilson <0000 at qwirx.com> - Cambs UK |
/ (_/ ,\/ _/ /_ \ | Security/C/C++/Java/Perl/SQL/HTML Developer |
\ _/_/_/_//_/___/ | We are GNU-free your mind-and your software |