From 39e887e8e623acd011a9ae40f06b8f16548c019d Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 2 Feb 2012 10:56:23 -0400 Subject: update; unix-compat gets some of the way --- doc/todo/windows_support.mdwn | 32 ++++++++++++++------------------ 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/doc/todo/windows_support.mdwn b/doc/todo/windows_support.mdwn index 8df792fd6..c64e6fce5 100644 --- a/doc/todo/windows_support.mdwn +++ b/doc/todo/windows_support.mdwn @@ -1,25 +1,16 @@ -short answer: no +Can it be built on Windows? -Long answer, quoting from a mail to someone else: +short answer: not yet -Well, I can tell you that it assumes a POSIX system, both in available -utilities and system calls, So you'd need to use cygwin or something -like that. (Perhaps you already are for git, I think git also assumes a -POSIX system.) So you need a Haskell that can target that. What this -page refers to as "GHC-Cygwin": - -I don't know where to get one. Did find this: - +First, you need to get some unix utilities for windows. Git of course. +Also rsync, and a `cp` command that understands at least `cp -p`, and +`uuid`, and `xargs` and `sha1sum`. Note that some of these could be +replaced with haskell libraries to some degree. -(There are probably also still some places where it assumes / as a path -separator, although I fixed some. Probably almost all are fixed now.) +There are probably still some places where it assumes / as a path +separator, although I fixed probably almost all by now. -FWIW, git-annex works fine on OS X and other fine proprietary unixen. ;P ---[[Joey]] - ----- - -Alternatively, windows versions of these functions could be found, +Then windows versions of these functions could be found, which are all the ones that need POSIX, I think. A fair amount of this, the stuff to do with signals and users, could be empty stubs in windows. The file manipulation, particularly symlinks, would probably be the main @@ -63,3 +54,8 @@ sigCHLD sigINT unionFileModes + +A good starting point is +. However, note +that its implementations of stuff like `createSymbolicLink` are stubs. +--[[Joey]] -- cgit v1.2.3