On Tue, Nov 22, 2011 at 09:21:59PM +0100, Alexander Neundorf wrote: > On Tuesday 22 November 2011, Peter Collingbourne wrote: > > On Tue, Nov 15, 2011 at 06:54:01PM +0100, Nicolas Desprès wrote: > > > On Tue, Nov 15, 2011 at 5:29 PM, Bill Hoffman > <bill.hoff...@kitware.com>wrote: > > > > On 11/11/2011 9:36 PM, Peter Collingbourne wrote: > > > > Note that this generator is *nix only (it relies on POSIX shell > > > > > > > >> functionality), and will only be built on *nix platforms. I am not > > > >> interested in Windows support, but I understand that others have > > > >> expressed an interest in adding support. > > > >> > > > >> How much of the POSIX shell stuff can be done with cmake -E stuff? > > > >> It > > > > > > > > would be good to use as little POSIX stuff as possible as someday when > > > > someone does the inevitable windows port it is easier... > > > > > > Too much in my opinion. Specially the && operator of the shell. Using > > > cmake -E is the first step. I am planning to suggest an evolution of > > > Ninja to fix this issue. Actually, it is the main issue which stop me > > > while writing the beginning of this generator. > > > > Other than && we also have: > > > > rm -f $file -- used to delete static library archives before rebuilding > > cmake -E remove -f $file
I can't see a cmd.exe builtin with the same semantics as rm -f. But it looks like the -f flag causes cmake to exit with a status of 0 regardless of whether it was able to remove the file, which is probably not what we want. "cmake -E remove $file" should work. > > : -- used as a no-op command > > maybe > cmake -E echo I don't think that we should spawn another process just for a no-op, especially on Windows where process creation is expensive. We should use a shell builtin for this. I can't see a cmd.exe builtin which is explicitly a no-op, but perhaps a builtin with no effect such as "echo off" would work. Anyway, that change should be done by whoever does the Windows port. Thanks, -- Peter -- Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers