From MAILER-DAEMON Mon Oct 01 01:12:47 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcDaJ-0008LJ-D0 for mharc-make-w32@gnu.org; Mon, 01 Oct 2007 01:12:47 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcDaG-0008L5-QM for make-w32@gnu.org; Mon, 01 Oct 2007 01:12:44 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcDaF-0008Jg-5O for make-w32@gnu.org; Mon, 01 Oct 2007 01:12:44 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcDaE-0008Jd-R5 for make-w32@gnu.org; Mon, 01 Oct 2007 01:12:42 -0400 Received: from py-out-1112.google.com ([64.233.166.180]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IcDaE-0007no-GT for make-w32@gnu.org; Mon, 01 Oct 2007 01:12:42 -0400 Received: by py-out-1112.google.com with SMTP id a73so7502259pye for ; Sun, 30 Sep 2007 22:12:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=PcsTv+6TdBxA5ACDLQGtr0ZMaa6DvyoZeuFTqASB/Xs=; b=eSdnWDEgfo8il8daxyU9ObS/1FqAS+uAfqrtkdlkHIvQJQuezSjkGKCVmx31SCItDUkqsJS6Q9S1W9ooziwTKL6Oe8n5IpJAzauDxfw+jgWbp97iB2xw1f9W8bwxH8n/JCuc/JeIzStna+XeE8HvCuiDzBAcaaLzPk/Wd5SqD6o= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=HEic7IET+GW8kKxWFYfGRO+pq6lSbJSP3Z2IN45VxiEDl+G8o0Xuqs4rExlXPnUXFPm9s/yODqqyC6WOjDR3nFHPBiA4QKHzO5ICL9kMCmk21NuqM3ByzSxVpYEkX13f9vOpeltztE9mF1V5dYG/TZ8o5TKbCyLgR1++lzn9vhk= Received: by 10.65.236.13 with SMTP id n13mr10232051qbr.1191215561203; Sun, 30 Sep 2007 22:12:41 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Sun, 30 Sep 2007 22:12:41 -0700 (PDT) Message-ID: <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> Date: Mon, 1 Oct 2007 13:12:41 +0800 From: "Yongwei Wu" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Oct 2007 05:12:45 -0000 On 01/10/2007, Eli Zaretskii wrote: > > Date: Sun, 30 Sep 2007 17:28:02 +0800 > > From: "Yongwei Wu" > > Cc: make-w32@gnu.org > > > > I was really guessing my modification might not be right. However, I > > do not know how to build Make from CVS, and have not found > > documentation. > > > > Any simple guidelines? I have access to Cygwin, native MinGW, and > > MSVC (7.1). > > With Cygwin, the same guidelines as for Posix (Unix and GNU/Linux) > systems should work (see README.cvs). However, the result will be a > Cygwin build of Make, not a native Windows port. The Cygwin build is > recommended for use only with Cygwin tools, and MinGW/MSVC build is > recommended for use only with native Windows development tools. (Slapping myself) sorry for my folly. With your information I successfully built Make under Cygwin: autoreconf -i ./configure --build=i686-pc-mingw32 CC='gcc -mno-cygwin' cd w32 && make && cd .. make make.exe (I may not have enough tools installed to make from the root directory.) > With MinGW and MSVC, running build_w32.bat should work if you add the > line that produces config.h from config.h.W32.template. But make sure > you edit template strings such as %VERSION% into something suitable > before you run the compiler. I saw now the way my copying config.h.W32.template to config.h was not correct. Do I have to manually replace %PACKAGE% and %VERSION%? Is there an easy way? Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Mon Oct 01 05:53:41 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcHy9-0001Fr-3D for mharc-make-w32@gnu.org; Mon, 01 Oct 2007 05:53:41 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcHy8-0001Ey-6y for make-w32@gnu.org; Mon, 01 Oct 2007 05:53:40 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcHy5-0001By-Mc for make-w32@gnu.org; Mon, 01 Oct 2007 05:53:38 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcHy5-0001Bu-I2 for make-w32@gnu.org; Mon, 01 Oct 2007 05:53:37 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IcHy5-0002uk-37 for make-w32@gnu.org; Mon, 01 Oct 2007 05:53:37 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-23-193.inter.net.il [80.230.23.193]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DTG13280 (AUTH halo1); Mon, 1 Oct 2007 11:53:35 +0200 (IST) Date: Mon, 01 Oct 2007 11:53:37 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" In-reply-to: <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> (wuyongwei@gmail.com) References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Oct 2007 09:53:40 -0000 > Date: Mon, 1 Oct 2007 13:12:41 +0800 > From: "Yongwei Wu" > Cc: make-w32@gnu.org > > (Slapping myself) sorry for my folly. With your information I > successfully built Make under Cygwin: > > autoreconf -i > ./configure --build=i686-pc-mingw32 CC='gcc -mno-cygwin' > cd w32 && make && cd .. > make make.exe Beware: the make.exe binary produced in this way is not guaranteed to behave like intended. This is because this way of building a native Windows port of Make is not officially supported. As one caveat, you will see that config.h.W32.template has near its end a few symbols whose definition changes Make's behavior wrt program invocation with various shells you might have installed: I'm not sure what the configure script does with those definitions, so please at least look at those symbols and verify that the binary you produced will behave as you'd like it to. > I saw now the way my copying config.h.W32.template to config.h was not > correct. Do I have to manually replace %PACKAGE% and %VERSION%? Is > there an easy way? Well, you could edit it with Sed, instead of just copying. Someone who dares to build a CVS version can be expected to have Sed installed. From MAILER-DAEMON Mon Oct 01 07:28:53 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcJSF-00048D-4t for mharc-make-w32@gnu.org; Mon, 01 Oct 2007 07:28:52 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcJSC-00047H-Q3 for make-w32@gnu.org; Mon, 01 Oct 2007 07:28:48 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcJS9-00045t-L8 for make-w32@gnu.org; Mon, 01 Oct 2007 07:28:47 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcJS6-00045i-6z for make-w32@gnu.org; Mon, 01 Oct 2007 07:28:42 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IcJS5-0004gm-Th for make-w32@gnu.org; Mon, 01 Oct 2007 07:28:41 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l91BScYV001687 for ; Mon, 1 Oct 2007 07:28:38 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l91BSbBh001675 for make-w32@gnu.org; Mon, 1 Oct 2007 07:28:37 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from 155.70.141.45 ([155.70.141.45]) by mail.progw.org (Horde MIME library) with HTTP; Mon, 01 Oct 2007 07:28:37 -0400 Message-ID: <20071001072837.34kvb6u66jackowo@mail.progw.org> X-Priority: 3 (Normal) Date: Mon, 01 Oct 2007 07:28:37 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-Detected-Kernel: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Oct 2007 11:28:49 -0000 Quoting Eli Zaretskii : >> Date: Mon, 1 Oct 2007 13:12:41 +0800 >> From: "Yongwei Wu" >> Cc: make-w32@gnu.org >> >> (Slapping myself) sorry for my folly. With your information I >> successfully built Make under Cygwin: >> >> autoreconf -i >> ./configure --build=i686-pc-mingw32 CC='gcc -mno-cygwin' >> cd w32 && make && cd .. >> make make.exe > > Beware: the make.exe binary produced in this way is not guaranteed to > behave like intended. This is because this way of building a native > Windows port of Make is not officially supported. As one caveat, you > will see that config.h.W32.template has near its end a few symbols > whose definition changes Make's behavior wrt program invocation with > various shells you might have installed: I'm not sure what the > configure script does with those definitions, so please at least look > at those symbols and verify that the binary you produced will behave > as you'd like it to. > There should be no reason it shouldn't work but isn't --build the wrong switch? Don't you want --host instead? The --build switch is saying that your environment is i686-pc-mingw32 but your environment is cygwin. >> I saw now the way my copying config.h.W32.template to config.h was not >> correct. Do I have to manually replace %PACKAGE% and %VERSION%? Is >> there an easy way? > > Well, you could edit it with Sed, instead of just copying. Someone > who dares to build a CVS version can be expected to have Sed > installed. I have a feeling that Yongwei knows what he is doing. Earnie From MAILER-DAEMON Mon Oct 01 10:36:46 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcMO5-0001sv-Rd for mharc-make-w32@gnu.org; Mon, 01 Oct 2007 10:36:45 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcMO4-0001sq-Cj for make-w32@gnu.org; Mon, 01 Oct 2007 10:36:44 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcMO3-0001sO-JJ for make-w32@gnu.org; Mon, 01 Oct 2007 10:36:44 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcMO3-0001sL-FM for make-w32@gnu.org; Mon, 01 Oct 2007 10:36:43 -0400 Received: from nz-out-0506.google.com ([64.233.162.228]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IcMO3-0002aO-4D for make-w32@gnu.org; Mon, 01 Oct 2007 10:36:43 -0400 Received: by nz-out-0506.google.com with SMTP id f1so2650563nzc for ; Mon, 01 Oct 2007 07:36:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=NlXzUeigbQ1SUu6jhofY4owISaaSMj12TPVQHkt2Tho=; b=S7ibK3F6dib/YVRvjpH348Uj7ir1SeFFCvj0peWdh2WHqZeFIZB5fO1Rb8ik6bujNGmO5cabM+yg/p8JxUgP4MmEJevKEYCeTL9RsIWl4izJlUNhrCh2z08OLv6ygMN5pnHkj/5y6ZWD/2IYX+51Bl6QjcsPUmFFZXiYlLqArmQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=IR1/D3D4UA7fakwQut6QptfF6MS7jKxZRR0WuhT6FHg0OF8qIyE6VBA1GpaV6vbdOq/Or2R/ptxVFx1AG/eFz8qjahLWuTtKMhuWyqeG7pfucX1oIGElLr8Gun8oTrvaJS2zrBOaFBrBG7MGiU75N9STVx+PuwTFqOgCq1Z7mIM= Received: by 10.64.142.10 with SMTP id p10mr5700567qbd.1191249401480; Mon, 01 Oct 2007 07:36:41 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Mon, 1 Oct 2007 07:36:41 -0700 (PDT) Message-ID: <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> Date: Mon, 1 Oct 2007 22:36:41 +0800 From: "Yongwei Wu" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Oct 2007 14:36:44 -0000 On 01/10/2007, Eli Zaretskii wrote: > > Date: Mon, 1 Oct 2007 13:12:41 +0800 > > From: "Yongwei Wu" > > Cc: make-w32@gnu.org > > > > (Slapping myself) sorry for my folly. With your information I > > successfully built Make under Cygwin: > > > > autoreconf -i > > ./configure --build=i686-pc-mingw32 CC='gcc -mno-cygwin' > > cd w32 && make && cd .. > > make make.exe > > Beware: the make.exe binary produced in this way is not guaranteed to > behave like intended. This is because this way of building a native > Windows port of Make is not officially supported. As one caveat, you > will see that config.h.W32.template has near its end a few symbols > whose definition changes Make's behavior wrt program invocation with > various shells you might have installed: I'm not sure what the > configure script does with those definitions, so please at least look > at those symbols and verify that the binary you produced will behave > as you'd like it to. I checked config.h, and the only things I have some doubts are: /* Define to the character that separates directories in PATH. */ #define PATH_SEPARATOR_CHAR ':' /* Define to the name of the SCCS 'get' command. */ #define SCCS_GET "get" I also doubt config.h.W32.template may be a little out of date. It defines some macros that are never used, like HAVE_LONG_FILE_NAMES and HAVE_STRFTIME. Comments? > > I saw now the way my copying config.h.W32.template to config.h was not > > correct. Do I have to manually replace %PACKAGE% and %VERSION%? Is > > there an easy way? > > Well, you could edit it with Sed, instead of just copying. Someone > who dares to build a CVS version can be expected to have Sed > installed. I mean, which is the official position where I can grab the version number (instead of running autoreconf)? Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Mon Oct 01 12:24:33 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcO4P-0003xq-Ax for mharc-make-w32@gnu.org; Mon, 01 Oct 2007 12:24:33 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcO4N-0003tz-I8 for make-w32@gnu.org; Mon, 01 Oct 2007 12:24:31 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcO4I-0003jF-Mz for make-w32@gnu.org; Mon, 01 Oct 2007 12:24:31 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcO4I-0003iw-EJ for make-w32@gnu.org; Mon, 01 Oct 2007 12:24:26 -0400 Received: from nitzan.inter.net.il ([213.8.233.22]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IcO4I-0000Hw-0O for make-w32@gnu.org; Mon, 01 Oct 2007 12:24:26 -0400 Received: from HOME-C4E4A596F7 (IGLD-84-228-45-30.inter.net.il [84.228.45.30]) by nitzan.inter.net.il (MOS 3.7.3a-GA) with ESMTP id HXW62271 (AUTH halo1); Mon, 1 Oct 2007 18:21:43 +0200 (IST) Date: Mon, 01 Oct 2007 18:24:25 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" In-reply-to: <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> (wuyongwei@gmail.com) References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Oct 2007 16:24:31 -0000 > Date: Mon, 1 Oct 2007 22:36:41 +0800 > From: "Yongwei Wu" > Cc: make-w32@gnu.org > > > Beware: the make.exe binary produced in this way is not guaranteed to > > behave like intended. This is because this way of building a native > > Windows port of Make is not officially supported. As one caveat, you > > will see that config.h.W32.template has near its end a few symbols > > whose definition changes Make's behavior wrt program invocation with > > various shells you might have installed: I'm not sure what the > > configure script does with those definitions, so please at least look > > at those symbols and verify that the binary you produced will behave > > as you'd like it to. > > I checked config.h, and the only things I have some doubts are: I didn't mean config.h, I meant specifically config.h.W32.template. (Because you ran the configure script, it used the general config.h.in rather than the W32 template, to create config.h, and config.h.in does not have those symbols.) There are several symbols near the end of the template that you need to consider: BATCH_MODE_ONLY_SHELL HAVE_CYGWIN_SHELL HAVE_MKS_SHELL Please read the comments that describe each one of them (and the code that uses them, if the comments are not clear enough). > I also doubt config.h.W32.template may be a little out of date. It > defines some macros that are never used, like HAVE_LONG_FILE_NAMES and > HAVE_STRFTIME. I guess someone needs to resync the templates (not only W32) with config.h.in. > I mean, which is the official position where I can grab the version > number (instead of running autoreconf)? I don't know. Paul, can you help? From MAILER-DAEMON Mon Oct 01 15:58:44 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcRPg-0002xo-BD for mharc-make-w32@gnu.org; Mon, 01 Oct 2007 15:58:44 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcQBM-0001z8-5V for make-w32@gnu.org; Mon, 01 Oct 2007 14:39:52 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcQBG-0001xC-0R for make-w32@gnu.org; Mon, 01 Oct 2007 14:39:51 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcQBF-0001x9-UM for make-w32@gnu.org; Mon, 01 Oct 2007 14:39:45 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IcQBE-0006an-Ke for make-w32@gnu.org; Mon, 01 Oct 2007 14:39:45 -0400 Received: (qmail invoked by alias); 01 Oct 2007 18:39:28 -0000 Received: from dialin-145-254-068-234.pools.arcor-ip.net (EHLO j4f3n1) [145.254.68.234] by mail.gmx.net (mp030) with SMTP; 01 Oct 2007 20:39:28 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX19yxANfPxxyeFEdm71f6FFW+HKeQfHJXq6calQWip AmJ7VYUrBOFjKs Message-ID: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> From: "grischka" To: Date: Mon, 1 Oct 2007 20:37:56 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-Detected-Kernel: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Mon, 01 Oct 2007 15:58:43 -0400 Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Oct 2007 18:39:52 -0000 > Well, obviously casting a const char* to a char* so you can modify it is > not valid code. There's a reason these values are const, and that > reason is that they should not be modified. Well, that is maybe arguable whether or not a cast is valid code in C. However I wonder what problem the original hack is trying to solve at all. Or, what now is a practical case where a gmake with that hack works better than one without? For example, the linux version of gmake considers 'dir' and 'dir/' as well as './dir/' all the same, and removes any 'decoration' automatically: $ cat makefile ./dir/ : ; echo $@ $ gmake echo dir dir Now this basically makes sense, only it does not work with the windows version. For example: $ type makefile all : dir/ dir/ : ; mkdir $@ $ gmake mkdir dir $ gmake mkdir dir/ Invalid option - / I.e. there is some strange thing going on in that whether or not the slash is removed seems to depend on whether 'dir' exists. Whereas in the make logic gmake always thinks it does not exist. With backslashes I have no idea in the first place how one is supposed to enter trailing backslashes at all. Basically you can have two backslashes or no backslash, just not a single backslash. This is independent of whether on linux or windows: $ cat makefile all : dir\\ dir\\ : ; mkdir $@ $ gmake gmake: *** No rule to make target `dir\\', needed by `all'. Stop. The only way I found was using some macro function. Now in the best case I'd expect to see the backslash removed accordingly to what happens with forward slashes on linux. But, well, it doesn't really get that far: DIR = $(addsuffix \,dir) all : $(DIR) $(DIR) : ; mkdir $@ $ gmake gmake: *** No rule to make target `dir\', needed by `all'. Stop. Aside from all that, it turns out that with the native mkdir on windows none of 'mkdir dir\\', 'mkdir dir\' or 'mkdir dir/' would practically work. So, there is still the question: when is the backslash trick in find_directory supposed to help, actually? -- grischka From MAILER-DAEMON Mon Oct 01 16:34:34 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcRyM-0004HN-Pj for mharc-make-w32@gnu.org; Mon, 01 Oct 2007 16:34:34 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcRyK-0004FF-Ge for make-w32@gnu.org; Mon, 01 Oct 2007 16:34:32 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcRyJ-0004EJ-G0 for make-w32@gnu.org; Mon, 01 Oct 2007 16:34:32 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcRyJ-0004E3-8S for make-w32@gnu.org; Mon, 01 Oct 2007 16:34:31 -0400 Received: from nitzan.inter.net.il ([213.8.233.22]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IcRyI-0002oH-RG for make-w32@gnu.org; Mon, 01 Oct 2007 16:34:31 -0400 Received: from HOME-C4E4A596F7 ([81.5.39.223]) by nitzan.inter.net.il (MOS 3.7.3a-GA) with ESMTP id HXX44794 (AUTH halo1); Mon, 1 Oct 2007 22:31:48 +0200 (IST) Date: Mon, 01 Oct 2007 22:34:30 +0200 Message-Id: From: Eli Zaretskii To: "grischka" In-reply-to: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> (grishka@gmx.de) References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Oct 2007 20:34:33 -0000 > From: "grischka" > Date: Mon, 1 Oct 2007 20:37:56 +0200 > > > Well, obviously casting a const char* to a char* so you can modify it is > > not valid code. There's a reason these values are const, and that > > reason is that they should not be modified. > > Well, that is maybe arguable whether or not a cast is valid code in C. It's valid C, allright, but the code clearly wants not to modify the `name' argument to the function, and the function's prototype promises that it won't be modified. So modifying it would be a breach of contract between the function and its callers. If, for example, at some point, `find_directory' is passed a constant string literal as its argument, Make could crash at run time. I will suggest an alternative patch in a while. > However I wonder what problem the original hack is trying to solve > at all. There's a comment there that says it all: /* Remove any trailing '\'. Windows32 stat fails even on valid directories if they end in '\'. */ And I can confirm that this is true: `stat' fails on Windows if its argument ends in a slash or a backslash. > Or, what now is a practical case where a gmake with that > hack works better than one without? I don't know how to come up with an example that shows this problem. But we don't need a specific example to know that this is a problem that needs to be taken care of. Good engineering does not need an example for each potential problem in order to prevent them. As long as we cannot prove that the argument will _never_ have a trailing slash, we need to protect against that. > For example, the linux version of gmake considers 'dir' and > 'dir/' as well as './dir/' all the same, and removes any > 'decoration' automatically: That's a feature of a Posix filesystem. It doesn't work that way on Windows. > $ gmake > mkdir dir > $ gmake > mkdir dir/ > Invalid option - / That's because `mkdir' that got invoked is the built-in command of the Windows shell, and that built-in command thinks a forward slash begins an option. Try quoting the directory name, like this: mkdir "dir/" then I think it will work, because the slashes inside quotes aren't interpreted by the Windows shell. But this has nothing to do with the problem at hand: the code we are talking about calls `stat' on directories, AFAIK as part of Make's directory-caching machinery. > So, there is still the question: when is the backslash trick in > find_directory supposed to help, actually? Whenever the argument has a trailing slash. From MAILER-DAEMON Mon Oct 01 17:01:12 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcSO8-0006bK-Fy for mharc-make-w32@gnu.org; Mon, 01 Oct 2007 17:01:12 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcSO6-0006X2-DJ for make-w32@gnu.org; Mon, 01 Oct 2007 17:01:10 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcSO2-0006Qa-8n for make-w32@gnu.org; Mon, 01 Oct 2007 17:01:08 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcSO2-0006Q9-3G for make-w32@gnu.org; Mon, 01 Oct 2007 17:01:06 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IcSO1-0000mA-Gv for make-w32@gnu.org; Mon, 01 Oct 2007 17:01:05 -0400 Received: from HOME-C4E4A596F7 ([81.5.39.223]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JAC02966 (AUTH halo1); Mon, 1 Oct 2007 23:00:51 +0200 (IST) Date: Mon, 01 Oct 2007 23:00:58 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" , make-w32@gnu.org In-reply-to: (message from Eli Zaretskii on Mon, 01 Oct 2007 22:34:30 +0200) References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: grishka@gmx.de Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 01 Oct 2007 21:01:11 -0000 > Date: Mon, 01 Oct 2007 22:34:30 +0200 > From: Eli Zaretskii > Cc: make-w32@gnu.org > > It's valid C, allright, but the code clearly wants not to modify the > `name' argument to the function, and the function's prototype promises > that it won't be modified. So modifying it would be a breach of > contract between the function and its callers. If, for example, at > some point, `find_directory' is passed a constant string literal as > its argument, Make could crash at run time. > > I will suggest an alternative patch in a while. Here's my suggestion. Could Yongwei Wu please test this and see if it works? 2007-10-01 Eli Zaretskii * dir.c (find_directory) [WINDOWS32]: Don't modify the const string pointed by p. --- dir.c~0 2007-07-21 19:06:58.251125000 +0300 +++ dir.c 2007-10-01 22:57:29.531250000 +0200 @@ -453,27 +453,24 @@ find_directory (const char *name) hash_insert_at (&directories, dir, dir_slot); /* The directory is not in the name hash table. Find its device and inode numbers, and look it up by them. */ - -#ifdef WINDOWS32 - /* Remove any trailing '\'. Windows32 stat fails even on valid - directories if they end in '\'. */ - if (p[-1] == '\\') - p[-1] = '\0'; -#endif - #ifdef VMS r = vmsstat_dir (name, &st); +#elif defined(WINDOWS32) + { + char tem[MAXPATHLEN], *t; + + /* Remove any trailing slashes. Windows32 stat fails even on + valid directories if they end in a slash. */ + memcpy (tem, name, p - name + 1); + t = tem + (p - name - 1); + if (*t == '/' || *t == '\\') + *t = '\0'; + r = stat (tem, &st); + } #else EINTRLOOP (r, stat (name, &st)); #endif -#ifdef WINDOWS32 - /* Put back the trailing '\'. If we don't, we're permanently - truncating the value! */ - if (p[-1] == '\0') - p[-1] = '\\'; -#endif - if (r < 0) { /* Couldn't stat the directory. Mark this by From MAILER-DAEMON Mon Oct 01 20:08:44 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcVJb-00020P-Os for mharc-make-w32@gnu.org; Mon, 01 Oct 2007 20:08:43 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcVJZ-0001za-Oi for make-w32@gnu.org; Mon, 01 Oct 2007 20:08:41 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcVJY-0001z1-TS for make-w32@gnu.org; Mon, 01 Oct 2007 20:08:41 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcVJY-0001yw-Mm for make-w32@gnu.org; Mon, 01 Oct 2007 20:08:40 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IcVJV-0007PR-9h; Mon, 01 Oct 2007 20:08:37 -0400 Received: from mr02.lnh.mail.rcn.net ([207.172.157.22]) by smtp02.lnh.mail.rcn.net with ESMTP; 01 Oct 2007 20:08:36 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr02.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id NVQ61118; Mon, 1 Oct 2007 20:08:36 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 01 Oct 2007 20:08:35 -0400 Received: from psmith by homebase.localnet with local (Exim 4.63) (envelope-from ) id 1IcVJW-0000aC-G4; Mon, 01 Oct 2007 20:08:38 -0400 From: Paul Smith To: Yongwei Wu In-Reply-To: <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Mon, 01 Oct 2007 20:08:37 -0400 Message-Id: <1191283717.17874.31.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr02.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090204.47018C03.009A,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-Detected-Kernel: Genre and OS details not recognized. Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 00:08:42 -0000 On Mon, 2007-10-01 at 22:36 +0800, Yongwei Wu wrote: > I mean, which is the official position where I can grab the version > number (instead of running autoreconf)? The official version number for GNU make is kept in the configure.in file, here: AC_INIT([GNU make],[3.81],[bug-make@gnu.org]) All other instances of the version, including the one in the GNU make manual, are derived from this. Cheers! -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Tue Oct 02 07:51:16 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcgHU-0006Wl-Fs for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 07:51:16 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcgHT-0006VC-G3 for make-w32@gnu.org; Tue, 02 Oct 2007 07:51:15 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcgHS-0006Ru-03 for make-w32@gnu.org; Tue, 02 Oct 2007 07:51:15 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcgHR-0006RC-Mz for make-w32@gnu.org; Tue, 02 Oct 2007 07:51:13 -0400 Received: from py-out-1112.google.com ([64.233.166.176]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IcgHQ-0001ig-C9 for make-w32@gnu.org; Tue, 02 Oct 2007 07:51:12 -0400 Received: by py-out-1112.google.com with SMTP id a73so8452481pye for ; Tue, 02 Oct 2007 04:51:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=U5fVc8GtVDPmQ909N4jdweBCP5r1MOYmXq6FcXLJT0c=; b=ovMQ23mbPL45hROFhx3jqXH+qREfiTHK8cQYSN8fKX6Taf7FIgA9mK4zYA9W3sdOTPJtKZMeu35WVF7AzXwoKLpvVfP6srflaa/cmktSot8oHYWdTbzkfO8xU90QtxLnfb+Kkn/JzCG2i/tTviJco1R97iJWonnrBlSYZsms7Nw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=usjSwCVRk0vOSnuNQ7fdInCt2t19X+mwMWk5UqI7kIkplwzNo3oLNwiGuomLgZLK0Zo93j9V4GccYR6ATkZr44vfxawG0wk+SkSdL3Yqq+6A3nVG70SFbnsn5vJ4xQyNRexU2BbgUIzgkjJXODy50grXuelLWmK3uHwK9oD4UQg= Received: by 10.65.151.6 with SMTP id d6mr17972419qbo.1191325870229; Tue, 02 Oct 2007 04:51:10 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Tue, 2 Oct 2007 04:51:10 -0700 (PDT) Message-ID: <8eeef57f0710020451s1fc4182dqf80cfe97471f36f9@mail.gmail.com> Date: Tue, 2 Oct 2007 19:51:10 +0800 From: "Yongwei Wu" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: grischka , make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 11:51:15 -0000 On 02/10/2007, Eli Zaretskii wrote: > > Or, what now is a practical case where a gmake with that > > hack works better than one without? > > I don't know how to come up with an example that shows this problem. > But we don't need a specific example to know that this is a problem > that needs to be taken care of. Good engineering does not need an > example for each potential problem in order to prevent them. As long > as we cannot prove that the argument will _never_ have a trailing > slash, we need to protect against that. Can we make sure all arguments passed to find_directory on Windows do not contain a "/" or "\" at the end? I cannot find any example either. And I have tested that neither DIR\\ or DIR/ can match an existing directory DIR currently---removing the trailing slash is OK. The code was added by Paul in 1999 (very long ago). What was the exact case then? Is the reason still valid? [snipped] > That's because `mkdir' that got invoked is the built-in command of the > Windows shell, and that built-in command thinks a forward slash begins > an option. Try quoting the directory name, like this: > > mkdir "dir/" > > then I think it will work, because the slashes inside quotes aren't > interpreted by the Windows shell. Yes, this is true. > > So, there is still the question: when is the backslash trick in > > find_directory supposed to help, actually? > > Whenever the argument has a trailing slash. As I said above, we have no real case here. -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Tue Oct 02 07:57:15 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcgNH-0003f9-4G for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 07:57:15 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcgNF-0003f1-JA for make-w32@gnu.org; Tue, 02 Oct 2007 07:57:13 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcgNE-0003ep-Bu for make-w32@gnu.org; Tue, 02 Oct 2007 07:57:13 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcgNE-0003em-6t for make-w32@gnu.org; Tue, 02 Oct 2007 07:57:12 -0400 Received: from nz-out-0506.google.com ([64.233.162.239]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IcgND-0002zu-Mv for make-w32@gnu.org; Tue, 02 Oct 2007 07:57:11 -0400 Received: by nz-out-0506.google.com with SMTP id f1so2936885nzc for ; Tue, 02 Oct 2007 04:57:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=TFCzZ2k62a5a/U9ElAYQn0tg6XFYLaFYKZnM40FTALA=; b=OoZd3BSl2kC+T8FlOE1osYTz2ZdNh9zlX5h8O8EG86UsXWs8YuV1gE+nEumVngGVUmxApa0trw0sq4W+XJ13wCkt1VfjPuAMykR4Qb2oVkv8svzfKutP9yQLCkjGFFs0sBMrpGnW142D3qKPDWrwc4K9OQJEIr877mEbc5ZnpnE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=IRe8phA98+JuLAHvta9oVMN221NfWyyo8hS6TYLnBtV4Ue7Q/KbgYA7v5ky5WTxIOTl5q8qlXvZ1XaxuoPc9XoDHUh1DU1fGW1VHN4miGcJO1ntVDq6DyM+Fo93UaDlyl4M0xYfLDQqomC125R1/GUHwxEb2/m9qXtNtcyRLnmU= Received: by 10.65.192.19 with SMTP id u19mr9352649qbp.1191326230747; Tue, 02 Oct 2007 04:57:10 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Tue, 2 Oct 2007 04:57:10 -0700 (PDT) Message-ID: <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> Date: Tue, 2 Oct 2007 19:57:10 +0800 From: "Yongwei Wu" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 11:57:14 -0000 On 02/10/2007, Eli Zaretskii wrote: > > Date: Mon, 01 Oct 2007 22:34:30 +0200 > > From: Eli Zaretskii > > Cc: make-w32@gnu.org > > > > It's valid C, allright, but the code clearly wants not to modify the > > `name' argument to the function, and the function's prototype promises > > that it won't be modified. So modifying it would be a breach of > > contract between the function and its callers. If, for example, at > > some point, `find_directory' is passed a constant string literal as > > its argument, Make could crash at run time. > > > > I will suggest an alternative patch in a while. > > Here's my suggestion. Could Yongwei Wu please test this and see if it > works? [patch snipped] The patch itself is good. Can I suggest a small alternative? --- dir.c.bak 2007-10-02 19:33:52.281250000 +0800 +++ dir.c 2007-10-02 19:35:35.656250000 +0800 @@ -457,10 +457,11 @@ r = vmsstat_dir (name, &st); #elif defined(WINDOWS32) { - char tem[MAXPATHLEN], *t; + char *tem, *t; /* Remove any trailing slashes. Windows32 stat fails even on valid directories if they end in a slash. */ + tem = alloca (p - name + 1); memcpy (tem, name, p - name + 1); t = tem + (p - name - 1); if (*t == '/' || *t == '\\') Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Tue Oct 02 08:16:44 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Icgg8-0003Kk-H5 for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 08:16:44 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Icgg6-0003JT-Cu for make-w32@gnu.org; Tue, 02 Oct 2007 08:16:42 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Icgg3-0003I4-Dw for make-w32@gnu.org; Tue, 02 Oct 2007 08:16:41 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Icgg3-0003Ht-76 for make-w32@gnu.org; Tue, 02 Oct 2007 08:16:39 -0400 Received: from py-out-1112.google.com ([64.233.166.181]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Icgg3-0007kS-3u for make-w32@gnu.org; Tue, 02 Oct 2007 08:16:39 -0400 Received: by py-out-1112.google.com with SMTP id a73so8464909pye for ; Tue, 02 Oct 2007 05:16:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=TBWG2ImPgI5A/9XGNabCRkOem15NftaRnGq0krgB1mM=; b=IU8qzfjbU/tJFHdMDiWD2ew7F+tO376R87IuGDbzDf39881/mK1YteHjl37srXMX9cKJjOun56ESANC1xQhLGhWJcZNq0XmxkBc0nsh8GY1bBDohdLVlL5EhnAayRyA/JvB7y94BN1Cihr4/9YllSalWzbep9m5NzpnX4ljUNEI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=LFgRMDsnTtoNfZ/xqVIAuxZOja8OT6MXEHSP57EQC/tkTvJyg5R2SLCmlRajYKGWGhMJD3scGrWQMOt7p6IeQCIDk7wL3YX6MK7iBMbpFlmODc76RMzcBH5b3gvc5PHNs/zljJXHCFh3GwpzRvdwPKGaKJBjSKmTo/E43lyvZxc= Received: by 10.65.213.4 with SMTP id p4mr17894511qbq.1191327396334; Tue, 02 Oct 2007 05:16:36 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Tue, 2 Oct 2007 05:16:36 -0700 (PDT) Message-ID: <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> Date: Tue, 2 Oct 2007 20:16:36 +0800 From: "Yongwei Wu" To: psmith@gnu.org In-Reply-To: <1191283717.17874.31.camel@homebase.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 12:16:42 -0000 On 02/10/2007, Paul Smith wrote: > On Mon, 2007-10-01 at 22:36 +0800, Yongwei Wu wrote: > > I mean, which is the official position where I can grab the version > > number (instead of running autoreconf)? > > The official version number for GNU make is kept in the configure.in > file, here: > > AC_INIT([GNU make],[3.81],[bug-make@gnu.org]) > > All other instances of the version, including the one in the GNU make > manual, are derived from this. With this piece of information, I would like to have such a patch: 2007-10-02 Yongwei Wu * make_config.h.W32.sh: New script to create config.h.W32 from config.h.W32.template, updating PACKAGE and VERSION. * build_w32.bat: Create config.h.W32 using the script above, if it does exist. Index: build_w32.bat =================================================================== RCS file: /sources/make/make/build_w32.bat,v retrieving revision 2.13 diff -u -r2.13 build_w32.bat --- build_w32.bat 4 Jul 2007 19:35:17 -0000 2.13 +++ build_w32.bat 2 Oct 2007 10:14:44 -0000 @@ -16,6 +16,7 @@ rem You should have received a copy of the GNU General Public License along rem with this program. If not, see . +if not exist config.h.W32 sh make_config.h.W32.sh if not exist config.h copy config.h.W32 config.h cd w32\subproc echo "Creating the subproc library" Index: make_config.h.W32.sh =================================================================== RCS file: make_config.h.W32.sh diff -N make_config.h.W32.sh --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ make_config.h.W32.sh 2 Oct 2007 10:14:45 -0000 @@ -0,0 +1,3 @@ +#! /bin/sh +VERSION=`sed -n 's/^AC_INIT(\[GNU make\],\[\([^]]\+\)\].*/\1/p' configure.in` +sed -e "s/%PACKAGE%/make/" -e "s/%VERSION%/$VERSION/" config.h.W32.template > config.h.W32 Is it OK? Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Tue Oct 02 09:10:09 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IchVp-0002JW-Cu for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 09:10:09 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IchVn-0002JC-Kv for make-w32@gnu.org; Tue, 02 Oct 2007 09:10:07 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IchVl-0002IW-2s for make-w32@gnu.org; Tue, 02 Oct 2007 09:10:07 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IchVl-0002IT-0F for make-w32@gnu.org; Tue, 02 Oct 2007 09:10:05 -0400 Received: from nz-out-0506.google.com ([64.233.162.226]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IchVk-0003t2-Lp for make-w32@gnu.org; Tue, 02 Oct 2007 09:10:04 -0400 Received: by nz-out-0506.google.com with SMTP id f1so2955049nzc for ; Tue, 02 Oct 2007 06:10:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=nw3cajtlSL+Dm0y/hqykvW9hSkERgu3/r+mALdo7HFQ=; b=K+sDlfrKdBlaxpo/Q4IsdAYiN8f4E/roGezTKjGM0Gg2KZFMfdjN20TCSeEkZkOIKQev7Ntz8PkfrLyVlfEDZ5gSfxKK4cUJYM7H963Bv8PWV/CLVMe43F1UC3eJm37xBqQo4pAlveuo98B42G1oeu5eshB2Htd4UhNHx/s2TRs= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=P5F8O2+KvFTyZowZVw2EMBXB6eTEJHe1DaC7ZjoE9+9wdr0+RCz7i3LCVR7DRtE3gMc92WBs/y+oAFl8z+q+7voc4IoeF9eTiIQxCtnWeb0jSQseijuFyRYzJ52vswUpmZqRcciqP+KY2Sc7ILLl31+VdXzzZzklKT5gMlaAG8s= Received: by 10.64.242.5 with SMTP id p5mr613979qbh.1191330599165; Tue, 02 Oct 2007 06:09:59 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Tue, 2 Oct 2007 06:09:59 -0700 (PDT) Message-ID: <8eeef57f0710020609i72974d44pe16b4b4040a67590@mail.gmail.com> Date: Tue, 2 Oct 2007 21:09:59 +0800 From: "Yongwei Wu" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: Earnie Boyd , make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 13:10:07 -0000 On 02/10/2007, Eli Zaretskii wrote: > > Date: Mon, 1 Oct 2007 22:36:41 +0800 > > From: "Yongwei Wu" > > Cc: make-w32@gnu.org > > > > > Beware: the make.exe binary produced in this way is not guaranteed to > > > behave like intended. This is because this way of building a native > > > Windows port of Make is not officially supported. As one caveat, you > > > will see that config.h.W32.template has near its end a few symbols > > > whose definition changes Make's behavior wrt program invocation with > > > various shells you might have installed: I'm not sure what the > > > configure script does with those definitions, so please at least look > > > at those symbols and verify that the binary you produced will behave > > > as you'd like it to. > > > > I checked config.h, and the only things I have some doubts are: > > I didn't mean config.h, I meant specifically config.h.W32.template. > (Because you ran the configure script, it used the general config.h.in > rather than the W32 template, to create config.h, and config.h.in does > not have those symbols.) There are several symbols near the end of > the template that you need to consider: > > BATCH_MODE_ONLY_SHELL > HAVE_CYGWIN_SHELL > HAVE_MKS_SHELL > > Please read the comments that describe each one of them (and the code > that uses them, if the comments are not clear enough). OK, I did compare config.h.W32.template and my config.h, and found nothing significant other than those I mentioned last time. I do not think I need the settings you mentioned. I want a clean native Win32 make.exe, like the one provided in MinGW. I can confirm that the PATH_SEPARATOR_CHAR setting in the config.h by my ./configure procedure is wrong. Earnie, maybe you want to have a check whether this issue exists in the MinGW build. I hope not. Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Tue Oct 02 11:08:59 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcjMp-0007RB-LF for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 11:08:59 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcjMn-0007Qr-H5 for make-w32@gnu.org; Tue, 02 Oct 2007 11:08:57 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcjMl-0007QK-NU for make-w32@gnu.org; Tue, 02 Oct 2007 11:08:56 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcjMl-0007QH-IG for make-w32@gnu.org; Tue, 02 Oct 2007 11:08:55 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IcjMk-0006XN-IC for make-w32@gnu.org; Tue, 02 Oct 2007 11:08:54 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-203-201.inter.net.il [80.230.203.201]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DTM55147 (AUTH halo1); Tue, 2 Oct 2007 17:08:46 +0200 (IST) Date: Tue, 02 Oct 2007 17:08:49 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" In-reply-to: <8eeef57f0710020451s1fc4182dqf80cfe97471f36f9@mail.gmail.com> (wuyongwei@gmail.com) References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020451s1fc4182dqf80cfe97471f36f9@mail.gmail.com> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: grishka@gmx.de, make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 15:08:58 -0000 > Date: Tue, 2 Oct 2007 19:51:10 +0800 > From: "Yongwei Wu" > Cc: grischka , make-w32@gnu.org > > Can we make sure all arguments passed to find_directory on Windows > do not contain a "/" or "\" at the end? I don't know how to do that. Please suggest a way. Personally, I think dealing with this lossage at a single place where it matters is a lot cleaner than having multiple snippets all around Make's sources that remove the trailing slashes for reasons that are unrelated to the code in the immediate vicinity. From MAILER-DAEMON Tue Oct 02 11:26:55 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcjeB-0003SD-0e for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 11:26:55 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Icje8-0003Pv-RW for make-w32@gnu.org; Tue, 02 Oct 2007 11:26:52 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Icje7-0003Oc-B8 for make-w32@gnu.org; Tue, 02 Oct 2007 11:26:52 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Icje7-0003OU-3X for make-w32@gnu.org; Tue, 02 Oct 2007 11:26:51 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Icje6-0001NQ-AK for make-w32@gnu.org; Tue, 02 Oct 2007 11:26:50 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-203-201.inter.net.il [80.230.203.201]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DTM62677 (AUTH halo1); Tue, 2 Oct 2007 17:26:46 +0200 (IST) Date: Tue, 02 Oct 2007 17:26:48 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" In-reply-to: <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> (wuyongwei@gmail.com) References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 15:26:53 -0000 > Date: Tue, 2 Oct 2007 19:57:10 +0800 > From: "Yongwei Wu" > Cc: make-w32@gnu.org > > The patch itself is good. Can I suggest a small alternative? > > --- dir.c.bak 2007-10-02 19:33:52.281250000 +0800 > +++ dir.c 2007-10-02 19:35:35.656250000 +0800 > @@ -457,10 +457,11 @@ > r = vmsstat_dir (name, &st); > #elif defined(WINDOWS32) > { > - char tem[MAXPATHLEN], *t; > + char *tem, *t; > > /* Remove any trailing slashes. Windows32 stat fails even on > valid directories if they end in a slash. */ > + tem = alloca (p - name + 1); > memcpy (tem, name, p - name + 1); > t = tem + (p - name - 1); > if (*t == '/' || *t == '\\') Thanks, but can you explain why alloca is better here? We are talking about a variable that is local to a small block, and goes out of existence immediately after that block is exited. What advantage is there in using alloca? I know about a disadvantage: alloca might have portability problems to some Windows compilers. Btw, I just realized that there could be in principle more than one trailing slash there, so there needs to be a loop, and it should not mishandle the case of the root directory. A revised patch attached. --- dir.c~0 2007-07-21 19:06:58.251125000 +0300 +++ dir.c 2007-10-02 17:19:50.187500000 +0200 @@ -453,27 +453,29 @@ find_directory (const char *name) hash_insert_at (&directories, dir, dir_slot); /* The directory is not in the name hash table. Find its device and inode numbers, and look it up by them. */ - -#ifdef WINDOWS32 - /* Remove any trailing '\'. Windows32 stat fails even on valid - directories if they end in '\'. */ - if (p[-1] == '\\') - p[-1] = '\0'; -#endif - #ifdef VMS r = vmsstat_dir (name, &st); +#elif defined(WINDOWS32) + { + char tem[MAXPATHLEN], *tstart, *tend; + + /* Remove any trailing slashes. Windows32 stat fails even on + valid directories if they end in a slash. */ + memcpy (tem, name, p - name + 1); + tstart = tem; + if (tstart[1] == ':') + tstart += 2; + for (tend = tem + (p - name - 1); + tend > tstart && (*tend == '/' || *tend == '\\'); + tend--) + *tend = '\0'; + + r = stat (tem, &st); + } #else EINTRLOOP (r, stat (name, &st)); #endif -#ifdef WINDOWS32 - /* Put back the trailing '\'. If we don't, we're permanently - truncating the value! */ - if (p[-1] == '\0') - p[-1] = '\\'; -#endif - if (r < 0) { /* Couldn't stat the directory. Mark this by From MAILER-DAEMON Tue Oct 02 11:42:14 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Icjt0-0004uR-Ex for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 11:42:14 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Icjsz-0004so-AU for make-w32@gnu.org; Tue, 02 Oct 2007 11:42:13 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Icjsy-0004rR-G2 for make-w32@gnu.org; Tue, 02 Oct 2007 11:42:12 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Icjsy-0004rA-Bf for make-w32@gnu.org; Tue, 02 Oct 2007 11:42:12 -0400 Received: from nitzan.inter.net.il ([213.8.233.22]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Icjst-00050A-Je; Tue, 02 Oct 2007 11:42:07 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-203-201.inter.net.il [80.230.203.201]) by nitzan.inter.net.il (MOS 3.7.3a-GA) with ESMTP id HYB10712 (AUTH halo1); Tue, 2 Oct 2007 17:39:22 +0200 (IST) Date: Tue, 02 Oct 2007 17:42:05 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" In-reply-to: <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> (wuyongwei@gmail.com) References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 15:42:13 -0000 > Date: Tue, 2 Oct 2007 20:16:36 +0800 > From: "Yongwei Wu" > Cc: "Eli Zaretskii" , make-w32@gnu.org > > +#! /bin/sh > +VERSION=`sed -n 's/^AC_INIT(\[GNU make\],\[\([^]]\+\)\].*/\1/p' configure.in` > +sed -e "s/%PACKAGE%/make/" -e "s/%VERSION%/$VERSION/" > config.h.W32.template > config.h.W32 Thanks. Personally, I think that requiring a Unixy shell for such a simple job is an overkill. How about the following alternative? --- build_w32.bat~0 2007-07-21 19:01:24.376125000 +0300 +++ build_w32.bat 2007-10-02 17:40:25.453125000 +0200 @@ -16,6 +16,11 @@ rem You should have received a copy of the GNU General Public License along rem with this program. If not, see . +if exist config.h.W32 GoTo NotCVS +sed -n "s/^AC_INIT(\[GNU make\],\[\([^]]\+\)\].*/s,%%VERSION%%,\1,g/p" configure.in > config.h.W32.sed +echo s,%%PACKAGE%%,make,g >> config.h.W32.sed +sed -f config.h.W32.sed config.h.W32.template > config.h.W32 +:NotCVS if not exist config.h copy config.h.W32 config.h cd w32\subproc echo "Creating the subproc library" From MAILER-DAEMON Tue Oct 02 14:11:17 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcmDF-0001sf-RN for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 14:11:17 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcmDE-0001q0-IE for make-w32@gnu.org; Tue, 02 Oct 2007 14:11:16 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcmDD-0001oa-FX for make-w32@gnu.org; Tue, 02 Oct 2007 14:11:15 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcmDD-0001oS-Bt for make-w32@gnu.org; Tue, 02 Oct 2007 14:11:15 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IcmDC-0006o0-Vu for make-w32@gnu.org; Tue, 02 Oct 2007 14:11:15 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l92IB7WX005552 for ; Tue, 2 Oct 2007 14:11:07 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l92IB7NS005543 for make-w32@gnu.org; Tue, 2 Oct 2007 14:11:07 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from cpe-65-189-186-77.columbus.res.rr.com (cpe-65-189-186-77.columbus.res.rr.com [65.189.186.77]) by mail.progw.org (Horde MIME library) with HTTP; Tue, 02 Oct 2007 14:11:07 -0400 Message-ID: <20071002141107.moarnccw6rmok4ss@mail.progw.org> X-Priority: 3 (Normal) Date: Tue, 02 Oct 2007 14:11:07 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-Detected-Kernel: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 18:11:16 -0000 Quoting Eli Zaretskii : >> Date: Tue, 2 Oct 2007 20:16:36 +0800 >> From: "Yongwei Wu" >> Cc: "Eli Zaretskii" , make-w32@gnu.org >> >> +#! /bin/sh >> +VERSION=`sed -n 's/^AC_INIT(\[GNU make\],\[\([^]]\+\)\].*/\1/p' >> configure.in` >> +sed -e "s/%PACKAGE%/make/" -e "s/%VERSION%/$VERSION/" >> config.h.W32.template > config.h.W32 > > Thanks. > > Personally, I think that requiring a Unixy shell for such a simple job > is an overkill. > > How about the following alternative? > > --- build_w32.bat~0 2007-07-21 19:01:24.376125000 +0300 > +++ build_w32.bat 2007-10-02 17:40:25.453125000 +0200 > @@ -16,6 +16,11 @@ > rem You should have received a copy of the GNU General Public License along > rem with this program. If not, see . > > +if exist config.h.W32 GoTo NotCVS > +sed -n "s/^AC_INIT(\[GNU > make\],\[\([^]]\+\)\].*/s,%%VERSION%%,\1,g/p" configure.in > > config.h.W32.sed > +echo s,%%PACKAGE%%,make,g >> config.h.W32.sed > +sed -f config.h.W32.sed config.h.W32.template > config.h.W32 > +:NotCVS > if not exist config.h copy config.h.W32 config.h > cd w32\subproc > echo "Creating the subproc library" > I think you need both. I don't build with WINDOWS. I build with UNIXY SHELL on WINDOWS. Others build with the WINDOWSY SHELL. Earnie From MAILER-DAEMON Tue Oct 02 14:19:29 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IcmLA-00012h-Sc for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 14:19:28 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IcmL8-00011q-Ky for make-w32@gnu.org; Tue, 02 Oct 2007 14:19:26 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IcmL6-00010b-9i for make-w32@gnu.org; Tue, 02 Oct 2007 14:19:25 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IcmL6-00010O-3y for make-w32@gnu.org; Tue, 02 Oct 2007 14:19:24 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IcmL5-0008O3-8J for make-w32@gnu.org; Tue, 02 Oct 2007 14:19:23 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l92IJKTw024053 for ; Tue, 2 Oct 2007 14:19:20 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l92IJKss024051 for make-w32@gnu.org; Tue, 2 Oct 2007 14:19:20 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from cpe-65-189-186-77.columbus.res.rr.com (cpe-65-189-186-77.columbus.res.rr.com [65.189.186.77]) by mail.progw.org (Horde MIME library) with HTTP; Tue, 02 Oct 2007 14:19:20 -0400 Message-ID: <20071002141920.vebqrgnb66jkgo8w@mail.progw.org> X-Priority: 3 (Normal) Date: Tue, 02 Oct 2007 14:19:20 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <8eeef57f0710020609i72974d44pe16b4b4040a67590@mail.gmail.com> In-Reply-To: <8eeef57f0710020609i72974d44pe16b4b4040a67590@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-Detected-Kernel: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 18:19:26 -0000 Quoting Yongwei Wu : > I can confirm that the PATH_SEPARATOR_CHAR setting in the config.h by > my ./configure procedure is wrong. Earnie, maybe you want to have a > check whether this issue exists in the MinGW build. I hope not. > I don't remember that I provided the last version. Maybe it was corrected manually. You'll need to take a look at the autoconf macro that sets the variable. It should set PATH_SEPARATOR_CHAR to the correct value for target *-*-mingw*. Earnie From MAILER-DAEMON Tue Oct 02 17:54:22 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Icph8-0002EI-Pt for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 17:54:22 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Icph7-00029v-1E for make-w32@gnu.org; Tue, 02 Oct 2007 17:54:21 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Icph4-00026I-QJ for make-w32@gnu.org; Tue, 02 Oct 2007 17:54:20 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Icph4-00025G-91 for make-w32@gnu.org; Tue, 02 Oct 2007 17:54:18 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Icph3-0001KM-Ri for make-w32@gnu.org; Tue, 02 Oct 2007 17:54:18 -0400 Received: from HOME-C4E4A596F7 ([81.5.49.245]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DTO32282 (AUTH halo1); Tue, 2 Oct 2007 23:54:12 +0200 (IST) Date: Tue, 02 Oct 2007 23:54:15 +0200 Message-Id: From: Eli Zaretskii To: Earnie Boyd In-reply-to: <20071002141107.moarnccw6rmok4ss@mail.progw.org> (message from Earnie Boyd on Tue, 02 Oct 2007 14:11:07 -0400) References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> <20071002141107.moarnccw6rmok4ss@mail.progw.org> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 21:54:21 -0000 > Date: Tue, 02 Oct 2007 14:11:07 -0400 > From: Earnie Boyd > > I think you need both. I don't build with WINDOWS. I build with UNIXY > SHELL on WINDOWS. But then you don't need config.h.W32.template, do you? You run the configure script that produces config.h from config.h.in, right? From MAILER-DAEMON Tue Oct 02 17:58:17 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Icpkv-0000Yc-Bp for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 17:58:17 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Icpks-0000VT-Tr for make-w32@gnu.org; Tue, 02 Oct 2007 17:58:15 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Icpkr-0000Se-FL for make-w32@gnu.org; Tue, 02 Oct 2007 17:58:14 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Icpkq-0000Qa-Re for make-w32@gnu.org; Tue, 02 Oct 2007 17:58:13 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Icpkp-0002M2-Qc for make-w32@gnu.org; Tue, 02 Oct 2007 17:58:12 -0400 Received: from HOME-C4E4A596F7 ([81.5.49.245]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DTO34300 (AUTH halo1); Tue, 2 Oct 2007 23:58:09 +0200 (IST) Date: Tue, 02 Oct 2007 23:58:13 +0200 Message-Id: From: Eli Zaretskii To: Earnie Boyd In-reply-to: <20071002141920.vebqrgnb66jkgo8w@mail.progw.org> (message from Earnie Boyd on Tue, 02 Oct 2007 14:19:20 -0400) References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <8eeef57f0710020609i72974d44pe16b4b4040a67590@mail.gmail.com> <20071002141920.vebqrgnb66jkgo8w@mail.progw.org> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Oct 2007 21:58:15 -0000 > Date: Tue, 02 Oct 2007 14:19:20 -0400 > From: Earnie Boyd > > > Quoting Yongwei Wu : > > > I can confirm that the PATH_SEPARATOR_CHAR setting in the config.h by > > my ./configure procedure is wrong. Earnie, maybe you want to have a > > check whether this issue exists in the MinGW build. I hope not. > > > > I don't remember that I provided the last version. Maybe it was > corrected manually. You'll need to take a look at the autoconf macro > that sets the variable. It should set PATH_SEPARATOR_CHAR to the > correct value for target *-*-mingw*. I suspect that if you run the configure script with the Cygwin shell, PATH_SEPARATOR_CHAR will be set for Cygwin. From MAILER-DAEMON Tue Oct 02 21:26:52 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ict0m-0003HY-7D for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 21:26:52 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ict0j-0003FX-My for make-w32@gnu.org; Tue, 02 Oct 2007 21:26:49 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ict0i-0003F0-Qd for make-w32@gnu.org; Tue, 02 Oct 2007 21:26:49 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ict0i-0003Et-K7 for make-w32@gnu.org; Tue, 02 Oct 2007 21:26:48 -0400 Received: from py-out-1112.google.com ([64.233.166.178]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ict0i-0004g5-AN for make-w32@gnu.org; Tue, 02 Oct 2007 21:26:48 -0400 Received: by py-out-1112.google.com with SMTP id a73so8942674pye for ; Tue, 02 Oct 2007 18:26:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=PeQVbn2+8mcnGDqDYyQMpTLkbIzDpQ9Qax1QbDi0WxE=; b=oflYK0T8jjD6DzW/1gwCYm/nskzWh1zrAubKN2gA8haf9bTq8iXYwDpIBp46250LjWy6nhzKTLrcYSI/Oc69OlL+ZXdtkA83pjf6k4GLBnmiTPQExEI4jxI97GE6iS1RKcYtiQk8zLAkkcFof7bJiE6n7etAOhtodyQV8RbWfQc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=HvfgqbvEyYnlIbFwyhtdHa2e30G9YtSVGFwRPXIWyGgos09T3yLaW6yHcxN7l//xUu73dFPYcIvDHzWaIkieDHN07lLPBlh2b0DaeFzNrzUCzrz5fJMYqwLWbyO4FLo/EiryM1IuKIDE6mqI0iX+zz+ZuNVWtBIKXzSIjvLzkvQ= Received: by 10.65.72.7 with SMTP id z7mr3417804qbk.1191374806974; Tue, 02 Oct 2007 18:26:46 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Tue, 2 Oct 2007 18:26:46 -0700 (PDT) Message-ID: <8eeef57f0710021826j5b06b2c2l964384eaf983d8a@mail.gmail.com> Date: Wed, 3 Oct 2007 09:26:46 +0800 From: "Yongwei Wu" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 01:26:50 -0000 On 02/10/2007, Eli Zaretskii wrote: > > Date: Tue, 2 Oct 2007 19:57:10 +0800 > > From: "Yongwei Wu" > > Cc: make-w32@gnu.org > > > > The patch itself is good. Can I suggest a small alternative? > > > > --- dir.c.bak 2007-10-02 19:33:52.281250000 +0800 > > +++ dir.c 2007-10-02 19:35:35.656250000 +0800 > > @@ -457,10 +457,11 @@ > > r = vmsstat_dir (name, &st); > > #elif defined(WINDOWS32) > > { > > - char tem[MAXPATHLEN], *t; > > + char *tem, *t; > > > > /* Remove any trailing slashes. Windows32 stat fails even on > > valid directories if they end in a slash. */ > > + tem = alloca (p - name + 1); > > memcpy (tem, name, p - name + 1); > > t = tem + (p - name - 1); > > if (*t == '/' || *t == '\\') > > Thanks, but can you explain why alloca is better here? We are talking > about a variable that is local to a small block, and goes out of > existence immediately after that block is exited. What advantage is > there in using alloca? I know about a disadvantage: alloca might have > portability problems to some Windows compilers. Just a personal preference. I do not like big fixed-size arrays, which look to me both a waste of stack space and a potential source for buffer overrun. Probably not in this case, but I still do not like them. I do not know any decent Windows compilers that do not support alloca. I tested with GCC, MSVC, and Digital Mars. I think Borland C Compiler will do too, but I do not have it at hand. > Btw, I just realized that there could be in principle more than one > trailing slash there, so there needs to be a loop, and it should not > mishandle the case of the root directory. > > A revised patch attached. > > > --- dir.c~0 2007-07-21 19:06:58.251125000 +0300 > +++ dir.c 2007-10-02 17:19:50.187500000 +0200 > @@ -453,27 +453,29 @@ find_directory (const char *name) > hash_insert_at (&directories, dir, dir_slot); > /* The directory is not in the name hash table. > Find its device and inode numbers, and look it up by them. */ > - > -#ifdef WINDOWS32 > - /* Remove any trailing '\'. Windows32 stat fails even on valid > - directories if they end in '\'. */ > - if (p[-1] == '\\') > - p[-1] = '\0'; > -#endif > - > #ifdef VMS > r = vmsstat_dir (name, &st); > +#elif defined(WINDOWS32) > + { > + char tem[MAXPATHLEN], *tstart, *tend; > + > + /* Remove any trailing slashes. Windows32 stat fails even on > + valid directories if they end in a slash. */ > + memcpy (tem, name, p - name + 1); > + tstart = tem; > + if (tstart[1] == ':') > + tstart += 2; > + for (tend = tem + (p - name - 1); > + tend > tstart && (*tend == '/' || *tend == '\\'); > + tend--) > + *tend = '\0'; > + > + r = stat (tem, &st); > + } > #else > EINTRLOOP (r, stat (name, &st)); > #endif > > -#ifdef WINDOWS32 > - /* Put back the trailing '\'. If we don't, we're permanently > - truncating the value! */ > - if (p[-1] == '\0') > - p[-1] = '\\'; > -#endif > - > if (r < 0) > { > /* Couldn't stat the directory. Mark this by You are very careful. Thanks. I have no objections. Just that I never found the "= '\0'" line here being run :-(, even when I have a rule like "test.exe: BUG/". So the copying looks a waste of CPU time. Though I do not believe it can really hurt the performance, I am not comfortable with the facts that there is an extra overhead on Windows and that it has no benefits I can see. Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Tue Oct 02 21:39:13 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IctCj-00016H-2w for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 21:39:13 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IctCh-000161-U4 for make-w32@gnu.org; Tue, 02 Oct 2007 21:39:11 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IctCh-00015f-CU for make-w32@gnu.org; Tue, 02 Oct 2007 21:39:11 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IctCh-00015c-7A for make-w32@gnu.org; Tue, 02 Oct 2007 21:39:11 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IctCc-0006aq-SQ; Tue, 02 Oct 2007 21:39:07 -0400 Received: from mr08.lnh.mail.rcn.net ([207.172.157.28]) by smtp02.lnh.mail.rcn.net with ESMTP; 02 Oct 2007 21:39:06 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr08.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id JDZ73984; Tue, 2 Oct 2007 21:39:05 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 02 Oct 2007 21:39:02 -0400 Received: from psmith by homebase.localnet with local (Exim 4.63) (envelope-from ) id 1IctCa-0006uL-NR; Tue, 02 Oct 2007 21:39:04 -0400 From: Paul Smith To: Eli Zaretskii In-Reply-To: References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Tue, 02 Oct 2007 21:39:04 -0400 Message-Id: <1191375544.18998.24.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr08.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090205.4702F2B9.0126,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-Detected-Kernel: Genre and OS details not recognized. Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 01:39:12 -0000 On Tue, 2007-10-02 at 17:26 +0200, Eli Zaretskii wrote: > What advantage is there in using alloca? On UNIX it's useful because there's no realistic constant value MAXPATHLEN that is guaranteed to be large enough to hold a full pathname; different filesystems on UNIX can have different maximum path lengths so the only way to know is to detect the value at runtime through pathconf() or similar. There are _minimum_ path lengths that are required to be supported by every POSIX-conforming filesystem, but no maximum (that I'm aware of). So, alloca() is nice because it's dynamic. This doesn't seem to be as much of an issue on Windows where the max path length appears to be much more strictly defined. -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Tue Oct 02 21:53:49 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IctQr-0007rm-TS for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 21:53:49 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IctQq-0007rL-8U for make-w32@gnu.org; Tue, 02 Oct 2007 21:53:48 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IctQm-0007r9-LD for make-w32@gnu.org; Tue, 02 Oct 2007 21:53:47 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IctQm-0007r6-Hb for make-w32@gnu.org; Tue, 02 Oct 2007 21:53:44 -0400 Received: from nz-out-0506.google.com ([64.233.162.231]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IctQm-0000RQ-81 for make-w32@gnu.org; Tue, 02 Oct 2007 21:53:44 -0400 Received: by nz-out-0506.google.com with SMTP id f1so3152553nzc for ; Tue, 02 Oct 2007 18:53:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=jWrKSnwhVMT0DbTICCGxlj2szKsqN/Dd6oFu2GMnwUE=; b=XkiXDi/rUGYWIeT/UgyZXG99uMnt0DKTjdXAPftWJw/l5a+a/JN/VwrDiuakLrehUd2n3xxGyXgoXtdWsfZ0BTkB7kSoqKdlax24z9IhSHjWpNcsi28r8MUvEB+3Od24yiNGgkQ92QN0+TTgtFVLvj+5QQ3P4BrmBT+XCU28FRI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=IZVQ8b2acNW9M2Skgvmx+ocHnrZbiLGM9sYb/YDNGwk9/u0pDyI0NkefWjSS49wQLMGLkQpfLbyjSY1qaPpjWSxrYgu98/EglzirDgfsDidLj9sg72Fq8S13IjFfDtF3RCqOo3VRz+DErOXPKZ2u5wYA/0yB150zlp5ioZcJ/C8= Received: by 10.65.155.19 with SMTP id h19mr19980419qbo.1191376423250; Tue, 02 Oct 2007 18:53:43 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Tue, 2 Oct 2007 18:53:43 -0700 (PDT) Message-ID: <8eeef57f0710021853n1b5a4363xa0eb047eb1ef11a@mail.gmail.com> Date: Wed, 3 Oct 2007 09:53:43 +0800 From: "Yongwei Wu" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 01:53:48 -0000 On 02/10/2007, Eli Zaretskii wrote: > > Date: Tue, 2 Oct 2007 20:16:36 +0800 > > From: "Yongwei Wu" > > Cc: "Eli Zaretskii" , make-w32@gnu.org > > > > +#! /bin/sh > > +VERSION=`sed -n 's/^AC_INIT(\[GNU make\],\[\([^]]\+\)\].*/\1/p' configure.in` > > +sed -e "s/%PACKAGE%/make/" -e "s/%VERSION%/$VERSION/" > > config.h.W32.template > config.h.W32 > > Thanks. > > Personally, I think that requiring a Unixy shell for such a simple job > is an overkill. > > How about the following alternative? > > --- build_w32.bat~0 2007-07-21 19:01:24.376125000 +0300 > +++ build_w32.bat 2007-10-02 17:40:25.453125000 +0200 > @@ -16,6 +16,11 @@ > rem You should have received a copy of the GNU General Public License along > rem with this program. If not, see . > > +if exist config.h.W32 GoTo NotCVS > +sed -n "s/^AC_INIT(\[GNU make\],\[\([^]]\+\)\].*/s,%%VERSION%%,\1,g/p" configure.in > config.h.W32.sed > +echo s,%%PACKAGE%%,make,g >> config.h.W32.sed > +sed -f config.h.W32.sed config.h.W32.template > config.h.W32 > +:NotCVS > if not exist config.h copy config.h.W32 config.h > cd w32\subproc > echo "Creating the subproc library" Excellent! Except that the double "%" does not work for me. Cutting them by half works :-). I was frustrated by the fact that Batch files do not support things like "echo -n" and "`cmd`", so resorting to a Shell script was really a desperate hack. I did not think of "sed -f". Thanks. Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Tue Oct 02 22:02:16 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IctZ2-00049q-4e for mharc-make-w32@gnu.org; Tue, 02 Oct 2007 22:02:16 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IctYz-00048Y-76 for make-w32@gnu.org; Tue, 02 Oct 2007 22:02:13 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IctYx-00047s-P3 for make-w32@gnu.org; Tue, 02 Oct 2007 22:02:12 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IctYx-00047p-LN for make-w32@gnu.org; Tue, 02 Oct 2007 22:02:11 -0400 Received: from nz-out-0506.google.com ([64.233.162.238]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IctYx-00026L-4r for make-w32@gnu.org; Tue, 02 Oct 2007 22:02:11 -0400 Received: by nz-out-0506.google.com with SMTP id f1so3154002nzc for ; Tue, 02 Oct 2007 19:02:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=JXaunwbd2b1Vc1F/f9EwSbOw7F9KZ4qUVYwf/NV9wF8=; b=H6U/3afAh5IzW3uRyjH24UhTXgt/IMIt0r8J4rUwigIYFlqamLIW0l0t7O2XyULC2THcYV2TkSaO4KgFG3QpZPGe+72tyHfUCWgjsdshl44f8CPqPXXIM+aPFuVgP5gDsOTcQ2bK2yibTOsZvd6XHnWocA3++Mv3Hym7aSiW6Dc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=mzXAHfrNzGb3g9B8jRkbyT+Hkdt8IurmrO6fw44JVHyH6VdQWXrMugYwz0QN/htyVZVZdl9YAqXbURu+MpJRDuJHNdDAcBGkUvLAD+HF1eq53vh9DNKMi1sqLYUS9VMN8Wp+UUbuEeNSXTPJQLaLkziHuFAHDMPHvyXau6HTQP0= Received: by 10.65.192.19 with SMTP id u19mr11483207qbp.1191376930036; Tue, 02 Oct 2007 19:02:10 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Tue, 2 Oct 2007 19:02:09 -0700 (PDT) Message-ID: <8eeef57f0710021902l179df0a2m1efffc1756909398@mail.gmail.com> Date: Wed, 3 Oct 2007 10:02:09 +0800 From: "Yongwei Wu" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <8eeef57f0710020609i72974d44pe16b4b4040a67590@mail.gmail.com> <20071002141920.vebqrgnb66jkgo8w@mail.progw.org> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: Earnie Boyd , make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 02:02:13 -0000 On 03/10/2007, Eli Zaretskii wrote: > > Date: Tue, 02 Oct 2007 14:19:20 -0400 > > From: Earnie Boyd > > > > > > Quoting Yongwei Wu : > > > > > I can confirm that the PATH_SEPARATOR_CHAR setting in the config.h by > > > my ./configure procedure is wrong. Earnie, maybe you want to have a > > > check whether this issue exists in the MinGW build. I hope not. > > > > > > > I don't remember that I provided the last version. Maybe it was > > corrected manually. You'll need to take a look at the autoconf macro > > that sets the variable. It should set PATH_SEPARATOR_CHAR to the > > correct value for target *-*-mingw*. > > I suspect that if you run the configure script with the Cygwin shell, > PATH_SEPARATOR_CHAR will be set for Cygwin. This is true: I have found no MinGW-specific settings in the configure script. It only detects PATH_SEPARATOR_CHAR from the environment. So I guess both Cygwin and MSYS will cause the auto-detected path separator to be ":". It has to be manually changed currently. Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Wed Oct 03 03:42:55 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Icysg-0007W4-Q8 for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 03:42:54 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Icyse-0007VN-Br for make-w32@gnu.org; Wed, 03 Oct 2007 03:42:52 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Icysc-0007Uz-Tj for make-w32@gnu.org; Wed, 03 Oct 2007 03:42:52 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Icysc-0007Uw-LV for make-w32@gnu.org; Wed, 03 Oct 2007 03:42:50 -0400 Received: from nitzan.inter.net.il ([213.8.233.22]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Icysc-000288-32 for make-w32@gnu.org; Wed, 03 Oct 2007 03:42:50 -0400 Received: from HOME-C4E4A596F7 (IGLD-84-229-122-22.inter.net.il [84.229.122.22]) by nitzan.inter.net.il (MOS 3.7.3a-GA) with ESMTP id HYE56744 (AUTH halo1); Wed, 3 Oct 2007 09:40:06 +0200 (IST) Date: Wed, 03 Oct 2007 09:42:45 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" In-reply-to: <8eeef57f0710021826j5b06b2c2l964384eaf983d8a@mail.gmail.com> (wuyongwei@gmail.com) References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> <8eeef57f0710021826j5b06b2c2l964384eaf983d8a@mail.gmail.com> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 07:42:53 -0000 > Date: Wed, 3 Oct 2007 09:26:46 +0800 > From: "Yongwei Wu" > Cc: make-w32@gnu.org > > Just that I never found the "= '\0'" line here being run :-(, even > when I have a rule like "test.exe: BUG/". So the copying looks a > waste of CPU time. Well, memcpy is very fast, and at least with GCC, it's inlined. > Though I do not believe it can really hurt the performance I think it's negligible, since Make's performance is driven by other, much slower, factors. From MAILER-DAEMON Wed Oct 03 03:53:04 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Icz2W-00030y-5a for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 03:53:04 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Icz2U-0002x1-BH for make-w32@gnu.org; Wed, 03 Oct 2007 03:53:02 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Icz2S-0002tN-Px for make-w32@gnu.org; Wed, 03 Oct 2007 03:53:01 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Icz2S-0002t9-Mr for make-w32@gnu.org; Wed, 03 Oct 2007 03:53:00 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Icz2O-0004K7-8j; Wed, 03 Oct 2007 03:52:56 -0400 Received: from HOME-C4E4A596F7 (IGLD-84-229-122-22.inter.net.il [84.229.122.22]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JAJ73469 (AUTH halo1); Wed, 3 Oct 2007 09:52:43 +0200 (IST) Date: Wed, 03 Oct 2007 09:52:52 +0200 Message-Id: From: Eli Zaretskii To: psmith@gnu.org In-reply-to: <1191375544.18998.24.camel@homebase.localnet> (message from Paul Smith on Tue, 02 Oct 2007 21:39:04 -0400) References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> <1191375544.18998.24.camel@homebase.localnet> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 07:53:02 -0000 > From: Paul Smith > Cc: Yongwei Wu , make-w32@gnu.org > Date: Tue, 02 Oct 2007 21:39:04 -0400 > > On Tue, 2007-10-02 at 17:26 +0200, Eli Zaretskii wrote: > > What advantage is there in using alloca? > > So, alloca() is nice because it's dynamic. But it could get you in trouble if the file name in question is very long, since the stack is limited. > This doesn't seem to be as much of an issue on Windows where the max > path length appears to be much more strictly defined. The newer filesystems can go as far as 32K characters, but only for Unicode-formatted file names, and Make currently doesn't support that anyhow. Otherwise, the limit is 260 characters. From MAILER-DAEMON Wed Oct 03 03:56:04 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Icz5Q-0006Vo-I6 for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 03:56:04 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Icz5O-0006Td-Pj for make-w32@gnu.org; Wed, 03 Oct 2007 03:56:02 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Icz5J-0006MJ-NS for make-w32@gnu.org; Wed, 03 Oct 2007 03:56:01 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Icz5J-0006M9-Cc for make-w32@gnu.org; Wed, 03 Oct 2007 03:55:57 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Icz5E-0005Fx-31; Wed, 03 Oct 2007 03:55:53 -0400 Received: from HOME-C4E4A596F7 (IGLD-84-229-122-22.inter.net.il [84.229.122.22]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DTQ32933 (AUTH halo1); Wed, 3 Oct 2007 09:55:49 +0200 (IST) Date: Wed, 03 Oct 2007 09:55:48 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" In-reply-to: <8eeef57f0710021853n1b5a4363xa0eb047eb1ef11a@mail.gmail.com> (wuyongwei@gmail.com) References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> <8eeef57f0710021853n1b5a4363xa0eb047eb1ef11a@mail.gmail.com> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 07:56:03 -0000 > Date: Wed, 3 Oct 2007 09:53:43 +0800 > From: "Yongwei Wu" > Cc: psmith@gnu.org, make-w32@gnu.org > > > +if exist config.h.W32 GoTo NotCVS > > +sed -n "s/^AC_INIT(\[GNU make\],\[\([^]]\+\)\].*/s,%%VERSION%%,\1,g/p" configure.in > config.h.W32.sed > > +echo s,%%PACKAGE%%,make,g >> config.h.W32.sed > > +sed -f config.h.W32.sed config.h.W32.template > config.h.W32 > > +:NotCVS > > if not exist config.h copy config.h.W32 config.h > > cd w32\subproc > > echo "Creating the subproc library" > > Excellent! Except that the double "%" does not work for me. Cutting > them by half works :-). Did you try running the batch file, or did you run the commands by hand from the command line? In the latter case, you will indeed need only one % instead of two; batch files need to double the %. > I was frustrated by the fact that Batch files do not support things > like "echo -n" and "`cmd`", so resorting to a Shell script was really > a desperate hack. Well, actually `cmd` _is_ supported, but only in newer versions of Windows (W2K and later), and I didn't want to limit users to those versions. From MAILER-DAEMON Wed Oct 03 07:26:37 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id2NB-0000K6-Pr for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 07:26:37 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id2N9-0000Jt-9l for make-w32@gnu.org; Wed, 03 Oct 2007 07:26:35 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id2N6-0000Jh-SO for make-w32@gnu.org; Wed, 03 Oct 2007 07:26:34 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id2N6-0000Je-JF for make-w32@gnu.org; Wed, 03 Oct 2007 07:26:32 -0400 Received: from nz-out-0506.google.com ([64.233.162.231]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Id2N6-0001mo-AF for make-w32@gnu.org; Wed, 03 Oct 2007 07:26:32 -0400 Received: by nz-out-0506.google.com with SMTP id f1so3256052nzc for ; Wed, 03 Oct 2007 04:26:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=oM53L7btwqSYpEPA2JlxxesMN95NjwH3bJM1qNAuBDw=; b=F6S7kIfgUO1tel09Qxc6dh0DUuAEtSFNlfm0Rw5HM8+2Dfr1dBHa0cpEMlTyScko3pmDLu8wuB+kxGauboTNy6Gi2rYx7Qg3YJhmyosONERNDp0iJOrLNaKIWV0C910cT+l7qT99i8MptNBctAWd9J+IZXAUhI/Mh4rPEjJVVw0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=DGTCsDjuOSLVaFs5f7PhsfeYVEug57a6bdhyzJmu+oQIzNi8yPnIEGkKZdo4HwJFV54m+ST7Q+nnEMT8M5jBRWfOs7ZdZs4tT5f1vECmZdJ/sbGGtNuIY8/l5/QpA00B0zLCV4QJ/L5j16DrNMzLhvjx35WNRUm5Jc/cD9b1yZ8= Received: by 10.65.240.17 with SMTP id s17mr11426863qbr.1191410790662; Wed, 03 Oct 2007 04:26:30 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Wed, 3 Oct 2007 04:26:29 -0700 (PDT) Message-ID: <8eeef57f0710030426g6ff934d3q84625d8036b6df95@mail.gmail.com> Date: Wed, 3 Oct 2007 19:26:29 +0800 From: "Yongwei Wu" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> <1191375544.18998.24.camel@homebase.localnet> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 11:26:35 -0000 On 03/10/2007, Eli Zaretskii wrote: > > From: Paul Smith > > Cc: Yongwei Wu , make-w32@gnu.org > > Date: Tue, 02 Oct 2007 21:39:04 -0400 > > > > On Tue, 2007-10-02 at 17:26 +0200, Eli Zaretskii wrote: > > > What advantage is there in using alloca? > > > > So, alloca() is nice because it's dynamic. > > But it could get you in trouble if the file name in question is very > long, since the stack is limited. char array[MAX] also allocates on the stack. So alloca is better, since it should allocate less. Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Wed Oct 03 07:46:28 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id2gO-0005Rn-HP for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 07:46:28 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id2gM-0005Q9-EM for make-w32@gnu.org; Wed, 03 Oct 2007 07:46:26 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id2gK-0005O4-J2 for make-w32@gnu.org; Wed, 03 Oct 2007 07:46:25 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id2gK-0005Nt-Ec for make-w32@gnu.org; Wed, 03 Oct 2007 07:46:24 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Id2gK-0006ZK-8j for make-w32@gnu.org; Wed, 03 Oct 2007 07:46:24 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l93BkMQm023737 for ; Wed, 3 Oct 2007 07:46:22 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l93BkMPF023733 for make-w32@gnu.org; Wed, 3 Oct 2007 07:46:22 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from 155.70.141.45 ([155.70.141.45]) by mail.progw.org (Horde MIME library) with HTTP; Wed, 03 Oct 2007 07:46:22 -0400 Message-ID: <20071003074622.pjvdokrp6cqogwwg@mail.progw.org> X-Priority: 3 (Normal) Date: Wed, 03 Oct 2007 07:46:22 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <8eeef57f0710020609i72974d44pe16b4b4040a67590@mail.gmail.com> <20071002141920.vebqrgnb66jkgo8w@mail.progw.org> <8eeef57f0710021902l179df0a2m1efffc1756909398@mail.gmail.com> In-Reply-To: <8eeef57f0710021902l179df0a2m1efffc1756909398@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-Detected-Kernel: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 11:46:26 -0000 Quoting Yongwei Wu : > On 03/10/2007, Eli Zaretskii wrote: >> > Date: Tue, 02 Oct 2007 14:19:20 -0400 >> > From: Earnie Boyd >> > >> > >> > Quoting Yongwei Wu : >> > >> > > I can confirm that the PATH_SEPARATOR_CHAR setting in the config.h by >> > > my ./configure procedure is wrong. Earnie, maybe you want to have a >> > > check whether this issue exists in the MinGW build. I hope not. >> > > >> > >> > I don't remember that I provided the last version. Maybe it was >> > corrected manually. You'll need to take a look at the autoconf macro >> > that sets the variable. It should set PATH_SEPARATOR_CHAR to the >> > correct value for target *-*-mingw*. >> >> I suspect that if you run the configure script with the Cygwin shell, >> PATH_SEPARATOR_CHAR will be set for Cygwin. > > This is true: I have found no MinGW-specific settings in the configure > script. It only detects PATH_SEPARATOR_CHAR from the environment. So > I guess both Cygwin and MSYS will cause the auto-detected path > separator to be ":". It has to be manually changed currently. > It should be set based on the specified --host. If it isn't set correctly then a patch to autoconf is due. I'll put in on my round tuit to take a look. Earnie From MAILER-DAEMON Wed Oct 03 07:49:45 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id2jZ-0001kO-Jy for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 07:49:45 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id2jX-0001hV-E4 for make-w32@gnu.org; Wed, 03 Oct 2007 07:49:43 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id2jV-0001fd-QQ for make-w32@gnu.org; Wed, 03 Oct 2007 07:49:43 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id2jV-0001fE-FY for make-w32@gnu.org; Wed, 03 Oct 2007 07:49:41 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Id2jV-0007NE-4d for make-w32@gnu.org; Wed, 03 Oct 2007 07:49:41 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l93BndrC030099 for ; Wed, 3 Oct 2007 07:49:39 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l93BndeN030086 for make-w32@gnu.org; Wed, 3 Oct 2007 07:49:39 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from 155.70.141.45 ([155.70.141.45]) by mail.progw.org (Horde MIME library) with HTTP; Wed, 03 Oct 2007 07:49:39 -0400 Message-ID: <20071003074939.3rpyttnqhl74804w@mail.progw.org> X-Priority: 3 (Normal) Date: Wed, 03 Oct 2007 07:49:39 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> <1191375544.18998.24.camel@homebase.localnet> In-Reply-To: <1191375544.18998.24.camel@homebase.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-Detected-Kernel: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 11:49:44 -0000 Quoting Paul Smith : > > This doesn't seem to be as much of an issue on Windows where the max > path length appears to be much more strictly defined. > I wouldn't count on that as always going to be. Earnie From MAILER-DAEMON Wed Oct 03 07:52:34 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id2mI-0004XJ-GL for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 07:52:34 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id2mH-0004X0-9M for make-w32@gnu.org; Wed, 03 Oct 2007 07:52:33 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id2mG-0004WV-CA for make-w32@gnu.org; Wed, 03 Oct 2007 07:52:32 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id2mG-0004WP-8A for make-w32@gnu.org; Wed, 03 Oct 2007 07:52:32 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Id2mG-00087k-0w for make-w32@gnu.org; Wed, 03 Oct 2007 07:52:32 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l93BqS9X003861 for ; Wed, 3 Oct 2007 07:52:28 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l93BqSw1003856 for make-w32@gnu.org; Wed, 3 Oct 2007 07:52:28 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from 155.70.141.45 ([155.70.141.45]) by mail.progw.org (Horde MIME library) with HTTP; Wed, 03 Oct 2007 07:52:28 -0400 Message-ID: <20071003075228.v4674ff3rpc00oo4@mail.progw.org> X-Priority: 3 (Normal) Date: Wed, 03 Oct 2007 07:52:28 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> <20071002141107.moarnccw6rmok4ss@mail.progw.org> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-Detected-Kernel: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 11:52:33 -0000 Quoting Eli Zaretskii : >> Date: Tue, 02 Oct 2007 14:11:07 -0400 >> From: Earnie Boyd >> >> I think you need both. I don't build with WINDOWS. I build with UNIXY >> SHELL on WINDOWS. > > But then you don't need config.h.W32.template, do you? You run the > configure script that produces config.h from config.h.in, right? > Oh, yea, sorry for the noise. Earnie From MAILER-DAEMON Wed Oct 03 08:26:57 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id3JZ-0006h7-KQ for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 08:26:57 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id3JX-0006f9-Oc for make-w32@gnu.org; Wed, 03 Oct 2007 08:26:55 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id3JV-0006dF-WB for make-w32@gnu.org; Wed, 03 Oct 2007 08:26:55 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id3JV-0006d8-SP for make-w32@gnu.org; Wed, 03 Oct 2007 08:26:53 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Id3JS-0001OS-6Q; Wed, 03 Oct 2007 08:26:50 -0400 Received: from HOME-C4E4A596F7 (IGLD-84-229-207-208.inter.net.il [84.229.207.208]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JAK83608 (AUTH halo1); Wed, 3 Oct 2007 14:26:36 +0200 (IST) Date: Wed, 03 Oct 2007 14:26:46 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" In-reply-to: <8eeef57f0710030426g6ff934d3q84625d8036b6df95@mail.gmail.com> (wuyongwei@gmail.com) References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> <1191375544.18998.24.camel@homebase.localnet> <8eeef57f0710030426g6ff934d3q84625d8036b6df95@mail.gmail.com> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 12:26:56 -0000 > Date: Wed, 3 Oct 2007 19:26:29 +0800 > From: "Yongwei Wu" > Cc: psmith@gnu.org, make-w32@gnu.org > > On 03/10/2007, Eli Zaretskii wrote: > > > From: Paul Smith > > > Cc: Yongwei Wu , make-w32@gnu.org > > > Date: Tue, 02 Oct 2007 21:39:04 -0400 > > > > > > On Tue, 2007-10-02 at 17:26 +0200, Eli Zaretskii wrote: > > > > What advantage is there in using alloca? > > > > > > So, alloca() is nice because it's dynamic. > > > > But it could get you in trouble if the file name in question is very > > long, since the stack is limited. > > char array[MAX] also allocates on the stack. Of course. But it allocates a constant-size buffer, and the value is sufficiently small to avoid any problems (except if Make is already terribly short on free stack space, which shouldn't happen). By contrast, using alloca with very long file names is less safe. In general, using alloca for more than a few KB is not recommended. > So alloca is better, since it should allocate less. It should allocate less only for file names shorter than MAXPATHLEN. But I was responding to what Paul wrote: that on many modern filesystems file names can be longer than that. In particular, I've seen situations on Windows where various APIs return file names longer than 260 characters, which other APIs cannot handle. From MAILER-DAEMON Wed Oct 03 08:31:12 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id3Ng-0000PH-0o for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 08:31:12 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id3Ne-0000N2-Nt for make-w32@gnu.org; Wed, 03 Oct 2007 08:31:10 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id3Nd-0000KL-2p for make-w32@gnu.org; Wed, 03 Oct 2007 08:31:10 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id3Nc-0000Ju-Ri for make-w32@gnu.org; Wed, 03 Oct 2007 08:31:08 -0400 Received: from nitzan.inter.net.il ([213.8.233.22]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Id3Nc-0002Ug-KF for make-w32@gnu.org; Wed, 03 Oct 2007 08:31:08 -0400 Received: from HOME-C4E4A596F7 (IGLD-84-229-207-208.inter.net.il [84.229.207.208]) by nitzan.inter.net.il (MOS 3.7.3a-GA) with ESMTP id HYF65033 (AUTH halo1); Wed, 3 Oct 2007 14:28:26 +0200 (IST) Date: Wed, 03 Oct 2007 14:31:05 +0200 Message-Id: From: Eli Zaretskii To: Earnie Boyd In-reply-to: <20071003074939.3rpyttnqhl74804w@mail.progw.org> (message from Earnie Boyd on Wed, 03 Oct 2007 07:49:39 -0400) References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> <1191375544.18998.24.camel@homebase.localnet> <20071003074939.3rpyttnqhl74804w@mail.progw.org> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 12:31:11 -0000 > Date: Wed, 03 Oct 2007 07:49:39 -0400 > From: Earnie Boyd > > > This doesn't seem to be as much of an issue on Windows where the max > > path length appears to be much more strictly defined. > > > > I wouldn't count on that as always going to be. To be on the safe side with this issue, we really need to call pathconf to get the correct values. (It will need to be emulated on Windows, but that isn't hard, at least as far as _POSIX_PATH_MAX and _POSIX_NAME_MAX are concerned.) If pathconf returns something greater than a few KB, I'd suggest to avoid alloca or any other stack-based allocations. From MAILER-DAEMON Wed Oct 03 09:16:37 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id45d-0007fR-H2 for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 09:16:37 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id45b-0007eN-6C for make-w32@gnu.org; Wed, 03 Oct 2007 09:16:35 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id45a-0007e0-44 for make-w32@gnu.org; Wed, 03 Oct 2007 09:16:34 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id45a-0007dw-17 for make-w32@gnu.org; Wed, 03 Oct 2007 09:16:34 -0400 Received: from nz-out-0506.google.com ([64.233.162.238]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Id45Z-0007Re-DY for make-w32@gnu.org; Wed, 03 Oct 2007 09:16:33 -0400 Received: by nz-out-0506.google.com with SMTP id f1so3281682nzc for ; Wed, 03 Oct 2007 06:16:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=HY47uz32w7r5dmmWEKQUpS6GFsEoSXsWcaT0wRboa94=; b=H6HAinzuDcoqgEljVuYhOUDTwXM6cQQSrFhC9vVqtg7O0is/WPMFQuW+4Yk28c3PgKz7O/rTnm9/W9kM5NjdyoGmU0E4rCePkUmOLpBRZEVr0jVp/j15jqmgPgf2pIzXFHEK7dzxjW1Ikn1aPvjSQ2WTWNzXcijLXs8NVGXB8No= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=m4aXhZJ+7DJL95dnieryWYdcWpHNmufZekG9cPzARSBdqrJJ5oKa1/O+PUXCCNjmUYMWm5S8ckZ5FNmWxbNe5XqJ38AGxh+WLg3sQT4D95D77LHQTyODTbr971ulV8+vuI5wgM2muO1/eVSkyAwZLHRImi1w7y+DVogWP9QTN+4= Received: by 10.64.203.4 with SMTP id a4mr3913595qbg.1191417391546; Wed, 03 Oct 2007 06:16:31 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Wed, 3 Oct 2007 06:16:31 -0700 (PDT) Message-ID: <8eeef57f0710030616w5ee75f8blbfe2471c81e8bbb0@mail.gmail.com> Date: Wed, 3 Oct 2007 21:16:31 +0800 From: "Yongwei Wu" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> <8eeef57f0710021853n1b5a4363xa0eb047eb1ef11a@mail.gmail.com> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 13:16:35 -0000 On 03/10/2007, Eli Zaretskii wrote: > > Date: Wed, 3 Oct 2007 09:53:43 +0800 > > From: "Yongwei Wu" > > Cc: psmith@gnu.org, make-w32@gnu.org > > > > > +if exist config.h.W32 GoTo NotCVS > > > +sed -n "s/^AC_INIT(\[GNU make\],\[\([^]]\+\)\].*/s,%%VERSION%%,\1,g/p" configure.in > config.h.W32.sed > > > +echo s,%%PACKAGE%%,make,g >> config.h.W32.sed > > > +sed -f config.h.W32.sed config.h.W32.template > config.h.W32 > > > +:NotCVS > > > if not exist config.h copy config.h.W32 config.h > > > cd w32\subproc > > > echo "Creating the subproc library" > > > > Excellent! Except that the double "%" does not work for me. Cutting > > them by half works :-). > > Did you try running the batch file, or did you run the commands by > hand from the command line? In the latter case, you will indeed need > only one % instead of two; batch files need to double the %. Oh my, you are right! The holiday gives me some leisure, but apparently not a very critical mind. :-( > > I was frustrated by the fact that Batch files do not support things > > like "echo -n" and "`cmd`", so resorting to a Shell script was really > > a desperate hack. > > Well, actually `cmd` _is_ supported, but only in newer versions of > Windows (W2K and later), and I didn't want to limit users to those > versions. Bother to elaborate more? I have no knowledge about this. I made a very simple test on my XP box, and do not have a clue. Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Wed Oct 03 09:29:25 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id4I1-00077C-Fd for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 09:29:25 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id4I0-000758-2a for make-w32@gnu.org; Wed, 03 Oct 2007 09:29:24 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id4Hz-00073j-4v for make-w32@gnu.org; Wed, 03 Oct 2007 09:29:23 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id4Hy-00073J-ST for make-w32@gnu.org; Wed, 03 Oct 2007 09:29:22 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Id4Hv-00030P-F2; Wed, 03 Oct 2007 09:29:19 -0400 Received: from mr02.lnh.mail.rcn.net ([207.172.157.22]) by smtp02.lnh.mail.rcn.net with ESMTP; 03 Oct 2007 09:29:19 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr02.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id NVU90959; Wed, 3 Oct 2007 09:29:18 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 03 Oct 2007 09:29:17 -0400 Received: from psmith by homebase.localnet with local (Exim 4.63) (envelope-from ) id 1Id4Hu-0003nA-QZ; Wed, 03 Oct 2007 09:29:18 -0400 From: Paul Smith To: Eli Zaretskii In-Reply-To: References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> <1191375544.18998.24.camel@homebase.localnet> <20071003074939.3rpyttnqhl74804w@mail.progw.org> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Wed, 03 Oct 2007 09:29:12 -0400 Message-Id: <1191418152.18998.73.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr02.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090208.4703992E.022A,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-Detected-Kernel: Genre and OS details not recognized. Cc: Earnie Boyd , make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 13:29:24 -0000 On Wed, 2007-10-03 at 14:31 +0200, Eli Zaretskii wrote: > To be on the safe side with this issue, we really need to call > pathconf to get the correct values. (It will need to be emulated on > Windows, but that isn't hard, at least as far as _POSIX_PATH_MAX and > _POSIX_NAME_MAX are concerned.) If pathconf returns something greater > than a few KB, I'd suggest to avoid alloca or any other stack-based > allocations. The thing is, even if pathnames are ALLOWED to be very long, the chances that they actually ARE very long are exceedingly slim (especially for GNU make, which generally deals with real files in real directories rather than artificially created ones). So, alloca() is a good fit... except in those very, very, VERY rare situations where it's not. And, as has been pointed out, using a char x[MAXPATHLEN] is even more susceptible to stack overflow as alloca()... or else it's susceptible to buffer overflow, which is even worse! The only real solution is to avoid alloca() and use malloc() everywhere. Or else rewrite make in C++. Or else go with a garbage collector. -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Wed Oct 03 09:55:42 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id4hR-0005Gk-T1 for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 09:55:42 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id4hQ-0005FJ-6j for make-w32@gnu.org; Wed, 03 Oct 2007 09:55:40 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id4hM-0005Dn-5e for make-w32@gnu.org; Wed, 03 Oct 2007 09:55:39 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id4hM-0005Dc-33 for make-w32@gnu.org; Wed, 03 Oct 2007 09:55:36 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Id4hF-0001rn-I2; Wed, 03 Oct 2007 09:55:29 -0400 Received: from HOME-C4E4A596F7 (IGLD-84-229-207-208.inter.net.il [84.229.207.208]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JAL09863 (AUTH halo1); Wed, 3 Oct 2007 15:54:58 +0200 (IST) Date: Wed, 03 Oct 2007 15:55:06 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" In-reply-to: <8eeef57f0710030616w5ee75f8blbfe2471c81e8bbb0@mail.gmail.com> (wuyongwei@gmail.com) References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> <8eeef57f0710021853n1b5a4363xa0eb047eb1ef11a@mail.gmail.com> <8eeef57f0710030616w5ee75f8blbfe2471c81e8bbb0@mail.gmail.com> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 13:55:40 -0000 > Date: Wed, 3 Oct 2007 21:16:31 +0800 > From: "Yongwei Wu" > Cc: psmith@gnu.org, make-w32@gnu.org > > > > I was frustrated by the fact that Batch files do not support things > > > like "echo -n" and "`cmd`", so resorting to a Shell script was really > > > a desperate hack. > > > > Well, actually `cmd` _is_ supported, but only in newer versions of > > Windows (W2K and later), and I didn't want to limit users to those > > versions. > > Bother to elaborate more? I have no knowledge about this. I made a > very simple test on my XP box, and do not have a clue. It's buried in the FOR command, where you wouldn't dream of looking for it. Type "for /?" and read the part about the "for /f" option, you will see that backticks are supported. It is a trivial exercise to make a FOR loop that loops exactly once and uses `foo`. Still, it's not as advanced as the Unixy shell `foo` feature; in particular, redirection in the `foo` command can be tricky or even downright impossible. From MAILER-DAEMON Wed Oct 03 12:01:30 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id6fC-0003TI-2J for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 12:01:30 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id6f9-0003Sj-Gl for make-w32@gnu.org; Wed, 03 Oct 2007 12:01:28 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id6f5-0003RQ-FU for make-w32@gnu.org; Wed, 03 Oct 2007 12:01:26 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id6f3-0003RF-DV for make-w32@gnu.org; Wed, 03 Oct 2007 12:01:22 -0400 Received: from py-out-1112.google.com ([64.233.166.178]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Id6f2-0000C7-Lq for make-w32@gnu.org; Wed, 03 Oct 2007 12:01:20 -0400 Received: by py-out-1112.google.com with SMTP id a73so9406464pye for ; Wed, 03 Oct 2007 09:01:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=tnty4GS4rtg9wxihRhWiHrXIQP1pcGzmKxU9MmmCiyE=; b=Ja+Z3momtdQDQD2kOstgKWZa563eNE6zRDwFY1JIx27M/p5xhLgF4qto0zRTbDfiAL4suUPZsr05UD66BAP4ih23E1riv7Z2Gvv3AmOBO3Byom51Nsd9eaht5Mv/RYNhReinsrh3D7jMgTXCXDze8/QBptCE0KvUbTMbgoVRrPA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=GylGmwZH3deffL+2NO/ov/xLfQOdwwEIDryGrpM3dliOgCLPfhSlbnGn6nkbcXZ5G+BnF5WsvaiGdnB0Y+PqN0ZcygJV/HFzzAWfKWISDrq8hapV2k3TfPo/iI78/+5bfyXTZd64/dHODxFoupfEDEYfjUJxYNT4Wsrchj6Kv5c= Received: by 10.64.193.2 with SMTP id q2mr6253861qbf.1191427277641; Wed, 03 Oct 2007 09:01:17 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Wed, 3 Oct 2007 09:01:17 -0700 (PDT) Message-ID: <8eeef57f0710030901o7605949cx4a3753464905019@mail.gmail.com> Date: Thu, 4 Oct 2007 00:01:17 +0800 From: "Yongwei Wu" To: psmith@gnu.org In-Reply-To: <1191418152.18998.73.camel@homebase.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> <1191375544.18998.24.camel@homebase.localnet> <20071003074939.3rpyttnqhl74804w@mail.progw.org> <1191418152.18998.73.camel@homebase.localnet> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: Earnie Boyd , make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 16:01:28 -0000 On 03/10/2007, Paul Smith wrote: > On Wed, 2007-10-03 at 14:31 +0200, Eli Zaretskii wrote: > > To be on the safe side with this issue, we really need to call > > pathconf to get the correct values. (It will need to be emulated on > > Windows, but that isn't hard, at least as far as _POSIX_PATH_MAX and > > _POSIX_NAME_MAX are concerned.) If pathconf returns something greater > > than a few KB, I'd suggest to avoid alloca or any other stack-based > > allocations. > > The thing is, even if pathnames are ALLOWED to be very long, the chances > that they actually ARE very long are exceedingly slim (especially for > GNU make, which generally deals with real files in real directories > rather than artificially created ones). So, alloca() is a good fit... > except in those very, very, VERY rare situations where it's not. And, > as has been pointed out, using a char x[MAXPATHLEN] is even more > susceptible to stack overflow as alloca()... or else it's susceptible to > buffer overflow, which is even worse! Well said. :-) > The only real solution is to avoid alloca() and use malloc() everywhere. I do not like heap allocation here, which is vastly slower, and will really make the Windows fix very, very ugly. > Or else rewrite make in C++. I like C++. Rewriting does not look worth while. > Or else go with a garbage collector. You do have a very open mind.... I am more conservative. Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Wed Oct 03 12:26:34 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id73S-0003zO-HW for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 12:26:34 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id73R-0003yy-Tc for make-w32@gnu.org; Wed, 03 Oct 2007 12:26:33 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id73P-0003wy-Rw for make-w32@gnu.org; Wed, 03 Oct 2007 12:26:33 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id73P-0003wt-OU for make-w32@gnu.org; Wed, 03 Oct 2007 12:26:31 -0400 Received: from mail.artimi.com ([194.72.81.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Id73N-000642-Aw; Wed, 03 Oct 2007 12:26:29 -0400 Received: from rainbow ([192.168.8.46] RDNS failed) by mail.artimi.com with Microsoft SMTPSVC(6.0.3790.3959); Wed, 3 Oct 2007 17:26:26 +0100 From: "Dave Korn" To: "'Yongwei Wu'" , References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> <1191375544.18998.24.camel@homebase.localnet><20071003074939.3rpyttnqhl74804w@mail.progw.org> <1191418152.18998.73.camel@homebase.localnet> <8eeef57f0710030901o7605949cx4a3753464905019@mail.gmail.com> Date: Wed, 3 Oct 2007 17:26:24 +0100 Message-ID: <00a001c805da$255c8950$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <8eeef57f0710030901o7605949cx4a3753464905019@mail.gmail.com> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138 Thread-Index: AcgF13ISHfLJxRIdQkaNw0pFwjEXOAAAZ18g X-OriginalArrivalTime: 03 Oct 2007 16:26:26.0794 (UTC) FILETIME=[255D4CA0:01C805DA] X-Detected-Kernel: Windows 2000 SP4, XP SP1+ Cc: 'Earnie Boyd' , make-w32@gnu.org Subject: RE: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 16:26:34 -0000 On 03 October 2007 17:01, Yongwei Wu wrote: >> The only real solution is to avoid alloca() and use malloc() everywhere. > > I do not like heap allocation here, which is vastly slower, and will > really make the Windows fix very, very ugly. "Slow" is a relative term. Given that this allocation is only necessary when we're about to go out to the disk to perform a 'stat' operation, I believe that the (actually fairly small) amount of time it takes the heap allocater to pull a chunk off a linked-list is likely to be entirely insignificant compared to the time required by the I/O. cheers, DaveK -- Can't think of a witty .sigline today.... From MAILER-DAEMON Wed Oct 03 15:30:13 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Id9vB-00020d-Ek for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 15:30:13 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Id8rj-0001o6-Nj for make-w32@gnu.org; Wed, 03 Oct 2007 14:22:35 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Id8rg-0001ms-NE for make-w32@gnu.org; Wed, 03 Oct 2007 14:22:35 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Id8rg-0001mp-K8 for make-w32@gnu.org; Wed, 03 Oct 2007 14:22:32 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Id8rg-0007Ie-6U for make-w32@gnu.org; Wed, 03 Oct 2007 14:22:32 -0400 Received: (qmail invoked by alias); 03 Oct 2007 18:22:29 -0000 Received: from dialin-212-144-010-233.pools.arcor-ip.net (EHLO j4f3n1) [212.144.10.233] by mail.gmx.net (mp010) with SMTP; 03 Oct 2007 20:22:29 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX1+FXPNlyDaFjBPl6ySoxIpta4pvUAkswsbna7dV5u EFl1x69PrgAjja Message-ID: <006801c805ea$34083b60$e90a90d4@j4f3n1> From: "grischka" To: "Yongwei Wu" References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020451s1fc4182dqf80cfe97471f36f9@mail.gmail.com> Date: Wed, 3 Oct 2007 20:20:08 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-Detected-Kernel: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Wed, 03 Oct 2007 15:30:12 -0400 Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 18:22:36 -0000 > Can we make sure all arguments passed to find_directory on Windows > do not contain a "/" or "\" at the end? I cannot find any example > either. Try this: VPATH = foo\ bar all : zap.o Note that normally (like with: foo\ bar:;echo $@) foo\ bar is one filename with a space, i.e. "foo bar", but it does not work like this in VPATH. Note also that bar is there just to avoid the backslash at the end of the line. (I guess such details could make an interesting chapter in the documentation. "Working with GNU-make non-features" ... ;) Anyway, running this makefile produces (among others) the following calls to find_directory: ... find_directory: RCS find_directory: SCCS find_directory: foo\ find_directory: bar find_directory: foo/ find_directory: foo\/RCS find_directory: bar/RCS find_directory: foo\/SCCS find_directory: bar/SCCS make: *** No rule to make target `zap.o', needed by `all'. Stop. It fails however regardless whether or not you have (for example) foo\zap.c. (also regardless what stat-patch you have). > And I have tested that neither DIR\\ or DIR/ can match an > existing directory DIR currently---removing the trailing slash is OK. This is probably because there are some more stat()'s around in gmake, and these don't have slash fixes. --- grischka From MAILER-DAEMON Wed Oct 03 15:44:37 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IdA97-0005g6-52 for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 15:44:37 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IdA95-0005fY-PL for make-w32@gnu.org; Wed, 03 Oct 2007 15:44:35 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IdA94-0005ed-3E for make-w32@gnu.org; Wed, 03 Oct 2007 15:44:35 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IdA93-0005eX-UQ for make-w32@gnu.org; Wed, 03 Oct 2007 15:44:33 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IdA93-0002iX-FB for make-w32@gnu.org; Wed, 03 Oct 2007 15:44:33 -0400 Received: from HOME-C4E4A596F7 (IGLD-83-130-249-81.inter.net.il [83.130.249.81]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DTS38612 (AUTH halo1); Wed, 3 Oct 2007 21:44:31 +0200 (IST) Date: Wed, 03 Oct 2007 21:44:30 +0200 Message-Id: From: Eli Zaretskii To: "grischka" In-reply-to: <006801c805ea$34083b60$e90a90d4@j4f3n1> (grishka@gmx.de) References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020451s1fc4182dqf80cfe97471f36f9@mail.gmail.com> <006801c805ea$34083b60$e90a90d4@j4f3n1> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 19:44:36 -0000 > From: "grischka" > Date: Wed, 3 Oct 2007 20:20:08 +0200 > Cc: make-w32@gnu.org > > > And I have tested that neither DIR\\ or DIR/ can match an > > existing directory DIR currently---removing the trailing slash is OK. > > This is probably because there are some more stat()'s around in gmake, > and these don't have slash fixes. Maybe we should simply have a wrapper for `stat' on Windows, which could remove the slashes. Then these problems would be solved in one place once and for all. From MAILER-DAEMON Wed Oct 03 18:42:09 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IdCuv-0000As-IF for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 18:42:09 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IdCuu-00009C-6x for make-w32@gnu.org; Wed, 03 Oct 2007 18:42:08 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IdCut-000080-75 for make-w32@gnu.org; Wed, 03 Oct 2007 18:42:07 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IdCus-00007h-WE for make-w32@gnu.org; Wed, 03 Oct 2007 18:42:07 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IdCus-0006Q2-Fk for make-w32@gnu.org; Wed, 03 Oct 2007 18:42:06 -0400 Received: from mr02.lnh.mail.rcn.net ([207.172.157.22]) by smtp02.lnh.mail.rcn.net with ESMTP; 03 Oct 2007 18:41:58 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr02.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id NVZ10697; Wed, 3 Oct 2007 18:41:58 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 03 Oct 2007 18:41:58 -0400 Received: from psmith by homebase.localnet with local (Exim 4.63) (envelope-from ) id 1IdCun-0007mv-3E; Wed, 03 Oct 2007 18:42:01 -0400 From: Paul Smith To: Dave Korn In-Reply-To: <00a001c805da$255c8950$2e08a8c0@CAM.ARTIMI.COM> References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> <1191375544.18998.24.camel@homebase.localnet> <20071003074939.3rpyttnqhl74804w@mail.progw.org> <1191418152.18998.73.camel@homebase.localnet> <8eeef57f0710030901o7605949cx4a3753464905019@mail.gmail.com> <00a001c805da$255c8950$2e08a8c0@CAM.ARTIMI.COM> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Wed, 03 Oct 2007 18:42:00 -0400 Message-Id: <1191451320.18998.115.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr02.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090208.47041AB6.0020,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-Detected-Kernel: Genre and OS details not recognized. Cc: 'Earnie Boyd' , make-w32@gnu.org Subject: RE: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 22:42:08 -0000 On Wed, 2007-10-03 at 17:26 +0100, Dave Korn wrote: > "Slow" is a relative term. Given that this allocation is only > necessary when we're about to go out to the disk to perform a 'stat' > operation, I believe that the (actually fairly small) amount of time > it takes the heap allocater to pull a chunk off a linked-list is > likely to be entirely insignificant compared to the time required by > the I/O. I agree; speed is not an issue here. However, messy/ugly/etc. code is a major issue and one reason alloca() is so nice. But, correctness is more important. -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Wed Oct 03 18:43:49 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IdCwX-0003DJ-99 for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 18:43:49 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IdCwV-00039D-Ef for make-w32@gnu.org; Wed, 03 Oct 2007 18:43:47 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IdCwT-00034t-Bx for make-w32@gnu.org; Wed, 03 Oct 2007 18:43:46 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IdCwT-00034i-7z for make-w32@gnu.org; Wed, 03 Oct 2007 18:43:45 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IdCwP-0006ik-2V; Wed, 03 Oct 2007 18:43:41 -0400 Received: from mr08.lnh.mail.rcn.net ([207.172.157.28]) by smtp02.lnh.mail.rcn.net with ESMTP; 03 Oct 2007 18:43:40 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr08.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id JEC29622; Wed, 3 Oct 2007 18:43:40 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 03 Oct 2007 18:43:34 -0400 Received: from psmith by homebase.localnet with local (Exim 4.63) (envelope-from ) id 1IdCwK-0007nz-U4; Wed, 03 Oct 2007 18:43:36 -0400 From: Paul Smith To: Eli Zaretskii In-Reply-To: References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020451s1fc4182dqf80cfe97471f36f9@mail.gmail.com> <006801c805ea$34083b60$e90a90d4@j4f3n1> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Wed, 03 Oct 2007 18:43:36 -0400 Message-Id: <1191451416.18998.118.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr08.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090202.47041B1C.0171,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-Detected-Kernel: Genre and OS details not recognized. Cc: grischka , make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2007 22:43:47 -0000 On Wed, 2007-10-03 at 21:44 +0200, Eli Zaretskii wrote: > Maybe we should simply have a wrapper for `stat' on Windows, which > could remove the slashes. Then these problems would be solved in one > place once and for all. I was thinking about this today. It seems like it would be a useful thing to store a "canonical" name for a given file, even on POSIX systems. One minor nit is that make conflates "targets" with "files"; not all targets are files and it's conceivable that you wouldn't want to canonicalize targets. -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Wed Oct 03 20:56:00 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IdF0S-00061U-SO for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 20:56:00 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IdF0R-000614-UI for make-w32@gnu.org; Wed, 03 Oct 2007 20:55:59 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IdF0R-00060h-C9 for make-w32@gnu.org; Wed, 03 Oct 2007 20:55:59 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IdF0R-00060a-7A for make-w32@gnu.org; Wed, 03 Oct 2007 20:55:59 -0400 Received: from py-out-1112.google.com ([64.233.166.177]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IdF0Q-0006Vm-RM for make-w32@gnu.org; Wed, 03 Oct 2007 20:55:58 -0400 Received: by py-out-1112.google.com with SMTP id a73so4806pye for ; Wed, 03 Oct 2007 17:55:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=wlQCV52Qm9E9XrOvb5V4crH6qNwKPvKt7YOz9NG9MPk=; b=dtypKz7BY+8z/ZE9WuasSu/MoMYCL0ZUWBM3meHfXINtUXIq+fcCVHb/Omp2jmBAJNHyUWsjpOjifBiKESsY3WqRSKeuxqQabbIJH90QBNmpG5uahMN0uXteVbPKQadxkXXxAphShV4Pl6q0QoJj41vQjle7sKVm1OdUf56nmRA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=l099DNOiGYnn4FDYtMGjbBys9kcwAsJulqt6yHJQfUcipUQNfm3U/qXLmGOIrbOg+v8iqDvX0OnfPrOkEykPzEDfHua3mjaZtCTN5kJ/V9DflVPZK6uUM4Q9/t507uIN8We+8vCl3aUJUJWltXNwMKcXd79HIonWJDXZQC9gM9c= Received: by 10.64.250.7 with SMTP id x7mr14123661qbh.1191459357835; Wed, 03 Oct 2007 17:55:57 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Wed, 3 Oct 2007 17:55:57 -0700 (PDT) Message-ID: <8eeef57f0710031755h696e9289va2cf1414f869bd8f@mail.gmail.com> Date: Thu, 4 Oct 2007 08:55:57 +0800 From: "Yongwei Wu" To: psmith@gnu.org In-Reply-To: <1191451416.18998.118.camel@homebase.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020451s1fc4182dqf80cfe97471f36f9@mail.gmail.com> <006801c805ea$34083b60$e90a90d4@j4f3n1> <1191451416.18998.118.camel@homebase.localnet> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: grischka , make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Oct 2007 00:56:00 -0000 On 04/10/2007, Paul Smith wrote: > On Wed, 2007-10-03 at 21:44 +0200, Eli Zaretskii wrote: > > Maybe we should simply have a wrapper for `stat' on Windows, which > > could remove the slashes. Then these problems would be solved in one > > place once and for all. > > I was thinking about this today. It seems like it would be a useful > thing to store a "canonical" name for a given file, even on POSIX > systems. One minor nit is that make conflates "targets" with "files"; > not all targets are files and it's conceivable that you wouldn't want to > canonicalize targets. This will be very nice! My original purpose here is to see whether there is a "good" way to have case-sensitive phony targets when HAVE_CASE_INSENSITIVE_FS is defined. Your suggestion is potentially one step closer for me. Only non-phony targets should have a canonicalized name. I think in phony targets the field canonical_name (assume you mean an additional field in the struct) should not be used at all. Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Wed Oct 03 21:03:08 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IdF7M-0007Pd-IO for mharc-make-w32@gnu.org; Wed, 03 Oct 2007 21:03:08 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IdF7K-0007Oa-PY for make-w32@gnu.org; Wed, 03 Oct 2007 21:03:06 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IdF7J-0007OO-3W for make-w32@gnu.org; Wed, 03 Oct 2007 21:03:06 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IdF7J-0007OL-1h for make-w32@gnu.org; Wed, 03 Oct 2007 21:03:05 -0400 Received: from py-out-1112.google.com ([64.233.166.177]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IdF7I-0007jf-GJ for make-w32@gnu.org; Wed, 03 Oct 2007 21:03:04 -0400 Received: by py-out-1112.google.com with SMTP id a73so7903pye for ; Wed, 03 Oct 2007 18:03:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=C852g/KhDfdp28L+ZKblw0YVJ2BKasULVXRqOW9otbU=; b=uJ9AOTUe13M9FyStJ1K9LiD2/kWfMTV2KWuw1ASwgSum9KuU8W9z4kPIfNCcU1fHiL9SstG5HXvk3BAssFOdrQVAOrSPt0x9654mUp3KuS49KNRYSkcp3VJzkHMbJpsaPgrvihyQSjEoSb+7sT0ushCZYSF/cc1vk8Fcn7SmuIw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=G9NA/+KAPsV13Iqt3ht+J2gjmJWYa64++qgb/7MHiYkDD1KX++c5tqibZSsKLmu9aJRlubWVeEKq7P2pKTsF2rdU7rfYKJ7+sJ3f56mAh/juuf3QdGEY6fVdAuOVQmWx3UaQOSpp/sqinR1LbVuD0QEcFI+oKoJrELWgE4IcSwA= Received: by 10.65.135.19 with SMTP id m19mr11673649qbn.1191459783066; Wed, 03 Oct 2007 18:03:03 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Wed, 3 Oct 2007 18:03:02 -0700 (PDT) Message-ID: <8eeef57f0710031803l3df84d7cg17ea4ae2c7b06d66@mail.gmail.com> Date: Thu, 4 Oct 2007 09:03:02 +0800 From: "Yongwei Wu" To: "Dave Korn" In-Reply-To: <00a001c805da$255c8950$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020457l5ee9b06dte97469dd938afe2c@mail.gmail.com> <1191375544.18998.24.camel@homebase.localnet> <20071003074939.3rpyttnqhl74804w@mail.progw.org> <1191418152.18998.73.camel@homebase.localnet> <8eeef57f0710030901o7605949cx4a3753464905019@mail.gmail.com> <00a001c805da$255c8950$2e08a8c0@CAM.ARTIMI.COM> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: Earnie Boyd , make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Oct 2007 01:03:07 -0000 On 04/10/2007, Dave Korn wrote: > On 03 October 2007 17:01, Yongwei Wu wrote: > > > >> The only real solution is to avoid alloca() and use malloc() everywhere. > > > > I do not like heap allocation here, which is vastly slower, and will > > really make the Windows fix very, very ugly. > > "Slow" is a relative term. Given that this allocation is only necessary > when we're about to go out to the disk to perform a 'stat' operation, I > believe that the (actually fairly small) amount of time it takes the heap > allocater to pull a chunk off a linked-list is likely to be entirely > insignificant compared to the time required by the I/O. Your belief is true. Against my wishes, tests show that although malloc/free may be about 100 times slower than alloca, stat is again 100 times slower than malloc/free on my box. Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Thu Oct 04 05:11:58 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IdMkQ-0003Bw-L9 for mharc-make-w32@gnu.org; Thu, 04 Oct 2007 05:11:58 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IdMkP-00039t-E6 for make-w32@gnu.org; Thu, 04 Oct 2007 05:11:57 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IdMkN-00036a-DS for make-w32@gnu.org; Thu, 04 Oct 2007 05:11:56 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IdMkM-00035w-T7 for make-w32@gnu.org; Thu, 04 Oct 2007 05:11:54 -0400 Received: from nitzan.inter.net.il ([213.8.233.22]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IdMkI-0003Cn-T4; Thu, 04 Oct 2007 05:11:51 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-141-225.inter.net.il [80.230.141.225]) by nitzan.inter.net.il (MOS 3.7.3a-GA) with ESMTP id HYI81175 (AUTH halo1); Thu, 4 Oct 2007 11:09:08 +0200 (IST) Date: Thu, 04 Oct 2007 11:11:47 +0200 Message-Id: From: Eli Zaretskii To: psmith@gnu.org In-reply-to: <1191451416.18998.118.camel@homebase.localnet> (message from Paul Smith on Wed, 03 Oct 2007 18:43:36 -0400) References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020451s1fc4182dqf80cfe97471f36f9@mail.gmail.com> <006801c805ea$34083b60$e90a90d4@j4f3n1> <1191451416.18998.118.camel@homebase.localnet> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: grishka@gmx.de, make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Oct 2007 09:11:57 -0000 > From: Paul Smith > Cc: grischka , make-w32@gnu.org > Date: Wed, 03 Oct 2007 18:43:36 -0400 > > I was thinking about this today. It seems like it would be a useful > thing to store a "canonical" name for a given file, even on POSIX > systems. That's fine, too, although it will need to use a system-dependent method for canonicalizing file names. > One minor nit is that make conflates "targets" with "files"; > not all targets are files and it's conceivable that you wouldn't want to > canonicalize targets. Why would it be bad to canonicalize non-file targets? If Make knows that they are not files (like in .PHONY targets), Make will not access the canonical names. And if it does't know, it actually tries to `stat' them today already, which in effect is canonicalizing them, right? From MAILER-DAEMON Thu Oct 04 09:30:35 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IdQmh-0003JK-2P for mharc-make-w32@gnu.org; Thu, 04 Oct 2007 09:30:35 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IdQNF-0004cV-Rf for make-w32@gnu.org; Thu, 04 Oct 2007 09:04:17 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IdQNC-0004Z6-LJ for make-w32@gnu.org; Thu, 04 Oct 2007 09:04:16 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IdQNC-0004Yi-Ah for make-w32@gnu.org; Thu, 04 Oct 2007 09:04:14 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IdQN9-00089w-M3 for make-w32@gnu.org; Thu, 04 Oct 2007 09:04:12 -0400 Received: (qmail invoked by alias); 04 Oct 2007 13:04:09 -0000 Received: from dialin-145-254-068-125.pools.arcor-ip.net (EHLO j4f3n1) [145.254.68.125] by mail.gmx.net (mp047) with SMTP; 04 Oct 2007 15:04:09 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX1+iww50/IWiq66m0iBHNEc6B0cr3tnnnNSEO6/ws2 cc4EpETdWpegUI Message-ID: <005401c80686$e4eed1e0$7d44fe91@j4f3n1> From: "grischka" To: References: <008601c8045a$3a9a0800$ea44fe91@j4f3n1> <8eeef57f0710020451s1fc4182dqf80cfe97471f36f9@mail.gmail.com> <006801c805ea$34083b60$e90a90d4@j4f3n1> <1191451416.18998.118.camel@homebase.localnet> <8eeef57f0710031755h696e9289va2cf1414f869bd8f@mail.gmail.com> Date: Thu, 4 Oct 2007 15:02:50 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-Detected-Kernel: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Thu, 04 Oct 2007 09:30:33 -0400 Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Oct 2007 13:04:18 -0000 > On 04/10/2007, Paul Smith wrote: > > On Wed, 2007-10-03 at 21:44 +0200, Eli Zaretskii wrote: > > > Maybe we should simply have a wrapper for `stat' on Windows, which > > > could remove the slashes. Then these problems would be solved in one > > > place once and for all. > > > > I was thinking about this today. It seems like it would be a useful > > thing to store a "canonical" name for a given file, even on POSIX > > systems. One minor nit is that make conflates "targets" with "files"; > > not all targets are files and it's conceivable that you wouldn't want to > > canonicalize targets. It might even better store both: for each file the notation as written in the makefile and its unified representation (canonical) for stat and friends. Basically because for dynamic variables I want to see substituted what I originally wrote, which might also include quoting. A (not yet) working example: list : x\ a x\ b ls $^ x\ a x\ b : echo $@ > $@ --- grischka From MAILER-DAEMON Tue Oct 09 09:57:43 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IfFah-00033j-Og for mharc-make-w32@gnu.org; Tue, 09 Oct 2007 09:57:43 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IfFaf-000332-UP for make-w32@gnu.org; Tue, 09 Oct 2007 09:57:41 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IfFae-00032R-Ss for make-w32@gnu.org; Tue, 09 Oct 2007 09:57:41 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IfFae-00032L-Nd for make-w32@gnu.org; Tue, 09 Oct 2007 09:57:40 -0400 Received: from py-out-1112.google.com ([64.233.166.183]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IfFae-0005v2-Bt for make-w32@gnu.org; Tue, 09 Oct 2007 09:57:40 -0400 Received: by py-out-1112.google.com with SMTP id a73so3425289pye for ; Tue, 09 Oct 2007 06:57:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=LnFsMlHWxzEy5ld79ZIQbNIXVQmpKCID66irjQs1PcA=; b=XUoZucH9tGHqP8i9x9bChRgEKl+C39OcmVOy+W7KKuONbdZM5IdJkrNw2AXim9jatimi31O1aV10tzaumE24K2ZJRl3aoJdWgnnouBHo7GE7jVQnTnfFT5vl8HvEDmCYd+iWsBYohrWge7A+ko9aiVFVTROCVSKr3N60Vc5LjN0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=Lo32xqKpP5H6zBpAE22EKED8utoI9vfDsumcv9GiswT9I2i3NlGpG6KCIuJMHhbepcY+vPWbA7w2WH/HdNnUQdV2tlhr0TNCbqqWCYKYGwdGPQQkIpuxeLLfmi8g2AkMakU3r8h9pDXEbWkD9bwWij7LzEPUKkfWlV+3n2MQIkU= Received: by 10.64.131.4 with SMTP id e4mr13385763qbd.1191938259232; Tue, 09 Oct 2007 06:57:39 -0700 (PDT) Received: by 10.65.43.3 with HTTP; Tue, 9 Oct 2007 06:57:39 -0700 (PDT) Message-ID: <8eeef57f0710090657m2cf8cf44if5cb24079ddf0082@mail.gmail.com> Date: Tue, 9 Oct 2007 21:57:39 +0800 From: "Yongwei Wu" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Oct 2007 13:57:42 -0000 On 02/10/2007, Eli Zaretskii wrote: > > Date: Tue, 2 Oct 2007 20:16:36 +0800 > > From: "Yongwei Wu" > > Cc: "Eli Zaretskii" , make-w32@gnu.org > > > > +#! /bin/sh > > +VERSION=`sed -n 's/^AC_INIT(\[GNU make\],\[\([^]]\+\)\].*/\1/p' configure.in` > > +sed -e "s/%PACKAGE%/make/" -e "s/%VERSION%/$VERSION/" > > config.h.W32.template > config.h.W32 > > Thanks. > > Personally, I think that requiring a Unixy shell for such a simple job > is an overkill. > > How about the following alternative? > > --- build_w32.bat~0 2007-07-21 19:01:24.376125000 +0300 > +++ build_w32.bat 2007-10-02 17:40:25.453125000 +0200 > @@ -16,6 +16,11 @@ > rem You should have received a copy of the GNU General Public License along > rem with this program. If not, see . > > +if exist config.h.W32 GoTo NotCVS > +sed -n "s/^AC_INIT(\[GNU make\],\[\([^]]\+\)\].*/s,%%VERSION%%,\1,g/p" configure.in > config.h.W32.sed > +echo s,%%PACKAGE%%,make,g >> config.h.W32.sed > +sed -f config.h.W32.sed config.h.W32.template > config.h.W32 > +:NotCVS > if not exist config.h copy config.h.W32 config.h > cd w32\subproc > echo "Creating the subproc library" All are silent? Could we first do the undisputed patches, like this one and the w32_kill change? And I think the CVS version should at least build. So I think Eli's patch to change `p[-1] =' is better than the current state, using or not using alloca. --- What do you think? Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Tue Oct 09 16:47:39 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IfLzP-00043v-Bw for mharc-make-w32@gnu.org; Tue, 09 Oct 2007 16:47:39 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IfLzN-00043k-Gd for make-w32@gnu.org; Tue, 09 Oct 2007 16:47:37 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IfLzM-00043U-Jf for make-w32@gnu.org; Tue, 09 Oct 2007 16:47:37 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IfLzM-00043R-Do for make-w32@gnu.org; Tue, 09 Oct 2007 16:47:36 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IfLzI-00055G-9C; Tue, 09 Oct 2007 16:47:32 -0400 Received: from HOME-C4E4A596F7 ([81.5.45.170]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DUV21428 (AUTH halo1); Tue, 9 Oct 2007 22:47:29 +0200 (IST) Date: Tue, 09 Oct 2007 22:47:30 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" In-reply-to: <8eeef57f0710090657m2cf8cf44if5cb24079ddf0082@mail.gmail.com> (wuyongwei@gmail.com) References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> <8eeef57f0710090657m2cf8cf44if5cb24079ddf0082@mail.gmail.com> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Oct 2007 20:47:38 -0000 > Date: Tue, 9 Oct 2007 21:57:39 +0800 > From: "Yongwei Wu" > Cc: psmith@gnu.org, make-w32@gnu.org > > All are silent? Could we first do the undisputed patches, like this > one and the w32_kill change? I think Paul said he will install the changes for that when he has time. From MAILER-DAEMON Tue Oct 09 19:45:44 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IfOlk-0002pP-BY for mharc-make-w32@gnu.org; Tue, 09 Oct 2007 19:45:44 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IfOli-0002p1-N1 for make-w32@gnu.org; Tue, 09 Oct 2007 19:45:42 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IfOlh-0002nc-N1 for make-w32@gnu.org; Tue, 09 Oct 2007 19:45:42 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IfOlh-0002nT-KO for make-w32@gnu.org; Tue, 09 Oct 2007 19:45:41 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IfOlc-0008C3-Kx; Tue, 09 Oct 2007 19:45:36 -0400 Received: from mr08.lnh.mail.rcn.net ([207.172.157.28]) by smtp02.lnh.mail.rcn.net with ESMTP; 09 Oct 2007 19:45:36 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr08.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id JEQ11188; Tue, 9 Oct 2007 19:41:03 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 09 Oct 2007 19:28:54 -0400 Received: from psmith by homebase.localnet with local (Exim 4.63) (envelope-from ) id 1IfOVC-00014B-Cz; Tue, 09 Oct 2007 19:28:38 -0400 From: Paul Smith To: Yongwei Wu In-Reply-To: <8eeef57f0710090657m2cf8cf44if5cb24079ddf0082@mail.gmail.com> References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709300228g5e7098faj43ab5f1badd76fe2@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> <8eeef57f0710090657m2cf8cf44if5cb24079ddf0082@mail.gmail.com> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Tue, 09 Oct 2007 19:28:37 -0400 Message-Id: <1191972517.4436.23.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr08.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A09020B.470C129E.028F,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-Detected-Kernel: Genre and OS details not recognized. Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Oct 2007 23:45:43 -0000 On Tue, 2007-10-09 at 21:57 +0800, Yongwei Wu wrote: > All are silent? Could we first do the undisputed patches, like this > one and the w32_kill change? > > And I think the CVS version should at least build. So I think Eli's > patch to change `p[-1] =' is better than the current state, using or > not using alloca. --- What do you think? If you guys can come up with a patch everyone seems to agree on, I'll apply it. I don't even own a Windows system, much less one that can compile GNU make, so I'm completely at the mercy of the porting folks for Windows-only issues. I generally don't apply patches unless there is a clear and firm consensus and agreement from one or more of the "longstanding" Windows hackers. I'm not sure exactly what you're suggesting we apply: Eli's last patches, here: http://www.mail-archive.com/make-w32%40gnu.org/msg01586.html and here: http://www.mail-archive.com/make-w32%40gnu.org/msg01585.html ? Eli wrote: > I think Paul said he will install the changes for that when he has > time. I can do it tonight if there is agreement on what to apply... -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Tue Oct 09 21:52:39 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IfQkZ-0006NH-K8 for mharc-make-w32@gnu.org; Tue, 09 Oct 2007 21:52:39 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IfQkY-0006NC-Nq for make-w32@gnu.org; Tue, 09 Oct 2007 21:52:38 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IfQkW-0006N0-D3 for make-w32@gnu.org; Tue, 09 Oct 2007 21:52:37 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IfQkW-0006Mx-7N for make-w32@gnu.org; Tue, 09 Oct 2007 21:52:36 -0400 Received: from py-out-1112.google.com ([64.233.166.176]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IfQkV-0008JR-QV for make-w32@gnu.org; Tue, 09 Oct 2007 21:52:35 -0400 Received: by py-out-1112.google.com with SMTP id a73so107671pye for ; Tue, 09 Oct 2007 18:52:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=u/awmHHxBExJFutNrOVjQE2+jovhrikdo3k2HqeIZKA=; b=BM+ywXX6yjvi0h/KdWZkoBGMNrSWwu1W25ZI+MM2OfXCGfx6SCurQ0MUaPY7FTAJcH54R9Bp8NRTArv8HQ6JcwAGcncXZcpoR//IMfNFTsPCcg1qeX4vUiLVAWez9zaoPLKO+c9Ka8VZE1Kzzmdrb97UWlbYYAQX1kogBNXGP+I= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=gAhxr7cYawWu//AO9CI5Yq/IW4xA5O1feVMNOLiYuCov1gi86/lZLYnf/eHIPlFnSAGUb6Xnhu59H8o7gQEQccWlqQk4NrTsPGzSnXKXkkZRPBnEj39XFuK2cnTZP1plUtorBFLA0lEcOtG5WkG2XAqtw86Ev7ThZDZcQTrBWs4= Received: by 10.65.253.6 with SMTP id f6mr275668qbs.1191981154602; Tue, 09 Oct 2007 18:52:34 -0700 (PDT) Received: by 10.65.135.13 with HTTP; Tue, 9 Oct 2007 18:52:34 -0700 (PDT) Message-ID: <8eeef57f0710091852u18377d70q80aa7ad1e87538b7@mail.gmail.com> Date: Wed, 10 Oct 2007 09:52:34 +0800 From: "Yongwei Wu" To: psmith@gnu.org In-Reply-To: <1191972517.4436.23.camel@homebase.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> <8eeef57f0710090657m2cf8cf44if5cb24079ddf0082@mail.gmail.com> <1191972517.4436.23.camel@homebase.localnet> X-Detected-Kernel: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Oct 2007 01:52:38 -0000 On 10/10/2007, Paul Smith wrote: > On Tue, 2007-10-09 at 21:57 +0800, Yongwei Wu wrote: > > All are silent? Could we first do the undisputed patches, like this > > one and the w32_kill change? > > > > And I think the CVS version should at least build. So I think Eli's > > patch to change `p[-1] =' is better than the current state, using or > > not using alloca. --- What do you think? > > If you guys can come up with a patch everyone seems to agree on, I'll > apply it. I don't even own a Windows system, much less one that can > compile GNU make, so I'm completely at the mercy of the porting folks > for Windows-only issues. I generally don't apply patches unless there > is a clear and firm consensus and agreement from one or more of the > "longstanding" Windows hackers. > > I'm not sure exactly what you're suggesting we apply: Eli's last > patches, here: > http://www.mail-archive.com/make-w32%40gnu.org/msg01586.html > > and here: > http://www.mail-archive.com/make-w32%40gnu.org/msg01585.html > > ? These two and: Index: make.h =================================================================== RCS file: /sources/make/make/make.h,v retrieving revision 1.129 diff -u -p -r1.129 make.h --- make.h 4 Jul 2007 19:35:19 -0000 1.129 +++ make.h 30 Sep 2007 03:15:35 -0000 @@ -329,7 +329,7 @@ char *strsignal (int signum); # define kill(_pid,_sig) w32_kill((_pid),(_sig)) void sync_Path_environment (void); -int kill (int pid, int sig); +int w32_kill (int pid, int sig); char *end_of_token_w32 (const char *s, char stopchar); int find_and_set_default_shell (const char *token); Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Wed Oct 10 00:34:00 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IfTGi-0003Ln-N2 for mharc-make-w32@gnu.org; Wed, 10 Oct 2007 00:34:00 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IfTGh-0003Jn-CQ for make-w32@gnu.org; Wed, 10 Oct 2007 00:33:59 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IfTGc-0003Hi-Tk for make-w32@gnu.org; Wed, 10 Oct 2007 00:33:59 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IfTGc-0003Hb-Jn for make-w32@gnu.org; Wed, 10 Oct 2007 00:33:54 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IfTGZ-0005YL-It; Wed, 10 Oct 2007 00:33:51 -0400 Received: from mr08.lnh.mail.rcn.net ([207.172.157.28]) by smtp02.lnh.mail.rcn.net with ESMTP; 10 Oct 2007 00:33:51 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr08.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id JEQ94919; Wed, 10 Oct 2007 00:33:50 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 10 Oct 2007 00:34:09 -0400 Received: from psmith by homebase.localnet with local (Exim 4.63) (envelope-from ) id 1IfTFc-000582-ON; Wed, 10 Oct 2007 00:32:52 -0400 From: Paul Smith To: Yongwei Wu In-Reply-To: <8eeef57f0710091852u18377d70q80aa7ad1e87538b7@mail.gmail.com> References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> <8eeef57f0710090657m2cf8cf44if5cb24079ddf0082@mail.gmail.com> <1191972517.4436.23.camel@homebase.localnet> <8eeef57f0710091852u18377d70q80aa7ad1e87538b7@mail.gmail.com> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Wed, 10 Oct 2007 00:32:52 -0400 Message-Id: <1191990772.5596.8.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr08.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090205.470C562E.0174,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-Detected-Kernel: Genre and OS details not recognized. Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Oct 2007 04:33:59 -0000 OK, I committed those changes. -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Wed Oct 10 09:18:25 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IfbSC-00044V-UQ for mharc-make-w32@gnu.org; Wed, 10 Oct 2007 09:18:24 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IfbSB-00043F-DS for make-w32@gnu.org; Wed, 10 Oct 2007 09:18:23 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IfbS6-00040b-Ne for make-w32@gnu.org; Wed, 10 Oct 2007 09:18:22 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IfbS6-00040Y-KC for make-w32@gnu.org; Wed, 10 Oct 2007 09:18:18 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IfbS1-0001eV-BR; Wed, 10 Oct 2007 09:18:13 -0400 Received: from mr08.lnh.mail.rcn.net ([207.172.157.28]) by smtp02.lnh.mail.rcn.net with ESMTP; 10 Oct 2007 09:18:13 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr08.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id JER45731; Wed, 10 Oct 2007 09:18:12 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 10 Oct 2007 09:18:34 -0400 Received: from psmith by homebase.localnet with local (Exim 4.63) (envelope-from ) id 1IfbR2-0003u4-9k; Wed, 10 Oct 2007 09:17:12 -0400 From: Paul Smith To: Eli Zaretskii In-Reply-To: References: Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Wed, 10 Oct 2007 09:17:11 -0400 Message-Id: <1192022231.5596.34.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr08.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A09020A.470CD114.01E2,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-Detected-Kernel: Genre and OS details not recognized. Cc: make-w32@gnu.org Subject: Re: Allow SHELL to include variables and functions. X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Oct 2007 13:18:23 -0000 Hi Eli; I was reviewing this patch: http://www.mail-archive.com/make-w32%40gnu.org/msg01387.html and I had a few questions: first, I tried this with UNIX make (using the warning in the SHELL variable) and it already works there; I'm not sure why the windows port is different in this respect? Second, I don't quite get how this works; it seems to me that you're expanding the value when the variable is defined (where things like $@ etc. are not set yet) and then storing the expanded variable...? I'm obviously missing something here. Third, I think you have a memory leak; you're not freeing the (potential) contents of alloc_value before you reassign it. Cheers! -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Wed Oct 10 14:19:03 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ifg99-0006Kn-A2 for mharc-make-w32@gnu.org; Wed, 10 Oct 2007 14:19:03 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ifg97-0006Ic-CK for make-w32@gnu.org; Wed, 10 Oct 2007 14:19:01 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ifg92-0006HQ-1u for make-w32@gnu.org; Wed, 10 Oct 2007 14:19:00 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ifg91-0006H9-TL for make-w32@gnu.org; Wed, 10 Oct 2007 14:18:55 -0400 Received: from nitzan.inter.net.il ([213.8.233.22]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ifg8x-00059G-1S; Wed, 10 Oct 2007 14:18:51 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-21-192.inter.net.il [80.230.21.192]) by nitzan.inter.net.il (MOS 3.7.3a-GA) with ESMTP id HZP24680 (AUTH halo1); Wed, 10 Oct 2007 20:16:08 +0200 (IST) Date: Wed, 10 Oct 2007 20:18:47 +0200 Message-Id: From: Eli Zaretskii To: psmith@gnu.org In-reply-to: <1191990772.5596.8.camel@homebase.localnet> (message from Paul Smith on Wed, 10 Oct 2007 00:32:52 -0400) References: <8eeef57f0709292020k12522c5eideb5d9abb07f1336@mail.gmail.com> <8eeef57f0709302212r162a78b5t46d1d912d841f303@mail.gmail.com> <8eeef57f0710010736r593d490h3ee90b93998972f9@mail.gmail.com> <1191283717.17874.31.camel@homebase.localnet> <8eeef57f0710020516t6f4bd5c9w8d0baac02432c049@mail.gmail.com> <8eeef57f0710090657m2cf8cf44if5cb24079ddf0082@mail.gmail.com> <1191972517.4436.23.camel@homebase.localnet> <8eeef57f0710091852u18377d70q80aa7ad1e87538b7@mail.gmail.com> <1191990772.5596.8.camel@homebase.localnet> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make CVS HEAD version build out of the box X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Oct 2007 18:19:01 -0000 > From: Paul Smith > Cc: Eli Zaretskii , make-w32@gnu.org > Date: Wed, 10 Oct 2007 00:32:52 -0400 > > OK, I committed those changes. Thanks! From MAILER-DAEMON Wed Oct 10 15:00:27 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IfgnD-0005S1-T4 for mharc-make-w32@gnu.org; Wed, 10 Oct 2007 15:00:27 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IfgnC-0005Qi-8b for make-w32@gnu.org; Wed, 10 Oct 2007 15:00:26 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ifgn9-0005Ow-QW for make-w32@gnu.org; Wed, 10 Oct 2007 15:00:26 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ifgn9-0005Ol-IP for make-w32@gnu.org; Wed, 10 Oct 2007 15:00:23 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ifgn4-0006eF-Nb; Wed, 10 Oct 2007 15:00:18 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-21-192.inter.net.il [80.230.21.192]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JBT25097 (AUTH halo1); Wed, 10 Oct 2007 21:00:04 +0200 (IST) Date: Wed, 10 Oct 2007 21:00:16 +0200 Message-Id: From: Eli Zaretskii To: psmith@gnu.org In-reply-to: <1192022231.5596.34.camel@homebase.localnet> (message from Paul Smith on Wed, 10 Oct 2007 09:17:11 -0400) References: <1192022231.5596.34.camel@homebase.localnet> X-Detected-Kernel: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Allow SHELL to include variables and functions. X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Oct 2007 19:00:26 -0000 > From: Paul Smith > Cc: make-w32@gnu.org > Date: Wed, 10 Oct 2007 09:17:11 -0400 > > Hi Eli; I was reviewing this patch: > > http://www.mail-archive.com/make-w32%40gnu.org/msg01387.html > > and I had a few questions: first, I tried this with UNIX make (using the > warning in the SHELL variable) and it already works there; I'm not sure > why the windows port is different in this respect? The Windows port is different because it does not blindly obey the value of SHELL: it knows about cmd.exe, the stock Windows shell and about Unixy shells whose names include the substring "sh". Any other value of SHELL is required to be an existing file, specified either as an absolute file name, or as a relative file name that can be found along PATH. See the function find_and_set_default_shell, which is specific to Windows, for the gory details. If the value of SHELL fails the tests of that function, that value will be rejected. > Second, I don't quite get how this works; it seems to me that you're > expanding the value when the variable is defined (where things like $@ > etc. are not set yet) and then storing the expanded variable...? Yes, that's true. But I think that things like $@ will get evaluated when the command $(SHELL) -c whatever is run by Make, because at that time all the variables present in the command line are expanded, right? > Third, I think you have a memory leak; you're not freeing the > (potential) contents of alloc_value before you reassign it. Yep, my bad. Sorry. From MAILER-DAEMON Thu Oct 11 01:12:39 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IfqLf-0002Co-3F for mharc-make-w32@gnu.org; Thu, 11 Oct 2007 01:12:39 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IfqLc-0002CE-LQ for make-w32@gnu.org; Thu, 11 Oct 2007 01:12:36 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IfqLa-0002BW-Fy for make-w32@gnu.org; Thu, 11 Oct 2007 01:12:35 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IfqLa-0002BT-6q for make-w32@gnu.org; Thu, 11 Oct 2007 01:12:34 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IfqLW-0008Tv-0v; Thu, 11 Oct 2007 01:12:30 -0400 Received: from mr02.lnh.mail.rcn.net ([207.172.157.22]) by smtp02.lnh.mail.rcn.net with ESMTP; 11 Oct 2007 01:12:29 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr02.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id NWR47100; Thu, 11 Oct 2007 01:11:29 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 11 Oct 2007 01:12:03 -0400 Received: from psmith by homebase.localnet with local (Exim 4.63) (envelope-from ) id 1IfqJb-0001bG-Dr; Thu, 11 Oct 2007 01:10:31 -0400 From: Paul Smith To: Eli Zaretskii In-Reply-To: References: <1192022231.5596.34.camel@homebase.localnet> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Thu, 11 Oct 2007 01:10:30 -0400 Message-Id: <1192079430.5596.88.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr02.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A09020B.470DB080.0146,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-Detected-Kernel: Genre and OS details not recognized. Cc: make-w32@gnu.org Subject: Re: Allow SHELL to include variables and functions. X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Oct 2007 05:12:36 -0000 On Wed, 2007-10-10 at 21:00 +0200, Eli Zaretskii wrote: > > Second, I don't quite get how this works; it seems to me that you're > > expanding the value when the variable is defined (where things like $@ > > etc. are not set yet) and then storing the expanded variable...? > > Yes, that's true. But I think that things like $@ will get evaluated > when the command > > $(SHELL) -c whatever > > is run by Make, because at that time all the variables present in the > command line are expanded, right? Well yes, but it looks to me like you're expanding the value of SHELL when it's defined (aren't you?)... so that would mean when make reads in: SHELL = $($w [$@ ($^) ($?)])$(OLD_SHELL) won't the code you've added expand it right there, as part of the do_variable_define()? Or is the expansion somehow deferred until the rule is invoked? And if it's expanded right here then won't the automatic variables like $@, $^, and $? not be set yet? I feel like I'm definitely missing something. -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Fri Oct 12 13:02:04 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IgNtk-0001Iy-Ds for mharc-make-w32@gnu.org; Fri, 12 Oct 2007 13:02:04 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IgNti-0001I5-2R for make-w32@gnu.org; Fri, 12 Oct 2007 13:02:02 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IgNtf-0001H2-5y for make-w32@gnu.org; Fri, 12 Oct 2007 13:02:01 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IgNtf-0001Gv-0o for make-w32@gnu.org; Fri, 12 Oct 2007 13:01:59 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IgNta-0005S4-Tf; Fri, 12 Oct 2007 13:01:55 -0400 Received: from HOME-C4E4A596F7 ([81.5.57.11]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DVN41455 (AUTH halo1); Fri, 12 Oct 2007 19:01:52 +0200 (IST) Date: Fri, 12 Oct 2007 19:01:54 +0200 Message-Id: From: Eli Zaretskii To: psmith@gnu.org In-reply-to: <1192079430.5596.88.camel@homebase.localnet> (message from Paul Smith on Thu, 11 Oct 2007 01:10:30 -0400) References: <1192022231.5596.34.camel@homebase.localnet> <1192079430.5596.88.camel@homebase.localnet> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Allow SHELL to include variables and functions. X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Oct 2007 17:02:02 -0000 > From: Paul Smith > Cc: make-w32@gnu.org > Date: Thu, 11 Oct 2007 01:10:30 -0400 > > I feel like I'm definitely missing something. I should have known better: the chances that _I_ am missing something are much greater than yours. The short answer is that my patch had a bug, and my testing was skewed, so it looked to me as if it worked. Sorry. A modified patch is below; with it, I verified that this trick: > SHELL = $($w [$@ ($^) ($?)])$(OLD_SHELL) works on Windows (albeit with an extra expansion where the values come out empty; see below). > Well yes, but it looks to me like you're expanding the value of SHELL > when it's defined (aren't you?)... so that would mean when make reads > in: > > SHELL = $($w [$@ ($^) ($?)])$(OLD_SHELL) > > won't the code you've added expand it right there, as part of the > do_variable_define()? Yes, the expansion does happen right there and then. > And if it's expanded right here then won't the automatic variables like > $@, $^, and $? not be set yet? Yes. That is why the modified patch below installs the original value, not the expanded one (as the original patch mistakenly did). IOW, the expansion in do_variable_definition is only to have find_and_set_default_shell happy, but it's thrown away once we are past that. Then, when job.c expands $SHELL, the expansion happens again, and this time it's in the context of a rule, so the automatic variables are set, and the magic works. Btw, I wonder whether I should recursively_expand the value, not just expand it once, in case the first expansion still yields variables and/or functions. WDYT? Oh, and I think there's no memory leak introduced by the patch, because do_variable_definition does this just before it returns: if (alloc_value) free (alloc_value); The corrected patch follows: --- variable.c~1 2006-03-09 00:15:08.000000000 +0200 +++ variable.c 2007-10-12 17:12:41.605125000 +0200 @@ -1187,6 +1187,16 @@ do_variable_definition (const struct flo flocp); no_default_sh_exe = 0; } + else if (find_and_set_default_shell (alloc_value = allocated_variable_expand (p))) + { + v = define_variable_in_set (varname, strlen (varname), p, + origin, flavor == f_recursive, + (target_var + ? current_variable_set_list->set + : NULL), + flocp); + no_default_sh_exe = 0; + } else v = lookup_variable (varname, strlen (varname)); } From MAILER-DAEMON Fri Oct 12 21:25:02 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IgVkU-0007jr-BS for mharc-make-w32@gnu.org; Fri, 12 Oct 2007 21:25:02 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IgVkS-0007i9-Od for make-w32@gnu.org; Fri, 12 Oct 2007 21:25:00 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IgVkQ-0007fe-Da for make-w32@gnu.org; Fri, 12 Oct 2007 21:25:00 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IgVkQ-0007fX-1M for make-w32@gnu.org; Fri, 12 Oct 2007 21:24:58 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IgVkL-0000bM-PM; Fri, 12 Oct 2007 21:24:53 -0400 Received: from mr02.lnh.mail.rcn.net ([207.172.157.22]) by smtp02.lnh.mail.rcn.net with ESMTP; 12 Oct 2007 21:24:53 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr02.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id NWW73463; Fri, 12 Oct 2007 21:24:42 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 12 Oct 2007 21:25:43 -0400 Received: from psmith by homebase.localnet with local (Exim 4.67) (envelope-from ) id 1IgVkA-00058r-2m; Fri, 12 Oct 2007 21:24:42 -0400 From: Paul Smith To: Eli Zaretskii In-Reply-To: References: <1192022231.5596.34.camel@homebase.localnet> <1192079430.5596.88.camel@homebase.localnet> Content-Type: multipart/mixed; boundary="=-Sl9ppYw8Fnpzs6trQfre" Organization: GNU's Not UNIX! Date: Fri, 12 Oct 2007 21:24:41 -0400 Message-Id: <1192238681.17584.34.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr02.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090201.47101E5B.004E,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. Cc: make-w32@gnu.org Subject: Re: Allow SHELL to include variables and functions. X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 01:25:01 -0000 --=-Sl9ppYw8Fnpzs6trQfre Content-Type: text/plain Content-Transfer-Encoding: 7bit On Fri, 2007-10-12 at 19:01 +0200, Eli Zaretskii wrote: > > And if it's expanded right here then won't the automatic variables like > > $@, $^, and $? not be set yet? > > Yes. That is why the modified patch below installs the original > value, not the expanded one (as the original patch mistakenly did). Ah! That makes more sense to me. Thanks! > Btw, I wonder whether I should recursively_expand the value, not just > expand it once, in case the first expansion still yields variables > and/or functions. WDYT? All expansion in make is recursive; there's no such thing as an expansion that just does "the first level". It already does what you'd expect, as far as I can see, just by using allocated_variable_expand(). > Oh, and I think there's no memory leak introduced by the patch, > because do_variable_definition does this just before it returns: > > if (alloc_value) > free (alloc_value); True, but before that happens you drop whatever memory alloc_value is set to, here: > + else if (find_and_set_default_shell (alloc_value = allocated_variable_expand (p))) so that's the memory leak. But, I fixed this and applied this patch; let me know if I messed something up: 2007-10-12 Eli Zaretskii * variable.c (do_variable_definition): Allow $(SHELL) to expand to a more complex value than a simple shell: if it's not a default shell now then expand it and see if is a default shell then. -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist --=-Sl9ppYw8Fnpzs6trQfre Content-Disposition: attachment; filename=var.c.diff Content-Transfer-Encoding: base64 Content-Type: text/x-patch; name=var.c.diff; charset=utf-8 SW5kZXg6IHZhcmlhYmxlLmMNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvc291cmNlcy9tYWtlL21h a2UvdmFyaWFibGUuYyx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuOTINCmRpZmYgLXUgLXIxLjky IHZhcmlhYmxlLmMNCi0tLSB2YXJpYWJsZS5jCTQgSnVsIDIwMDcgMTk6MzU6MjAgLTAwMDAJMS45 Mg0KKysrIHZhcmlhYmxlLmMJMTMgT2N0IDIwMDcgMDE6MjM6MzcgLTAwMDANCkBAIC0xMTg4LDcg KzExODgsMjQgQEANCiAgICAgICAgICAgbm9fZGVmYXVsdF9zaF9leGUgPSAwOw0KICAgICAgICAg fQ0KICAgICAgIGVsc2UNCi0gICAgICAgIHYgPSBsb29rdXBfdmFyaWFibGUgKHZhcm5hbWUsIHN0 cmxlbiAodmFybmFtZSkpOw0KKyAgICAgICAgew0KKyAgICAgICAgICBpZiAoYWxsb2NfdmFsdWUp DQorICAgICAgICAgICAgZnJlZSAoYWxsb2NfdmFsdWUpOw0KKw0KKyAgICAgICAgICBhbGxvY192 YWx1ZSA9IGFsbG9jYXRlZF92YXJpYWJsZV9leHBhbmQgKHApOw0KKyAgICAgICAgICBpZiAoZmlu ZF9hbmRfc2V0X2RlZmF1bHRfc2hlbGwgKGFsbG9jX3ZhbHVlKSkNCisgICAgICAgICAgICB7DQor ICAgICAgICAgICAgICB2ID0gZGVmaW5lX3ZhcmlhYmxlX2luX3NldCAodmFybmFtZSwgc3RybGVu ICh2YXJuYW1lKSwgcCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBvcmlnaW4sIGZsYXZvciA9PSBmX3JlY3Vyc2l2ZSwNCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAodGFyZ2V0X3Zhcg0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICA/IGN1cnJlbnRfdmFyaWFibGVfc2V0X2xpc3QtPnNldA0KKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IE5VTEwpLA0KKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2NwKTsNCisgICAgICAgICAg ICAgIG5vX2RlZmF1bHRfc2hfZXhlID0gMDsNCisgICAgICAgICAgICB9DQorICAgICAgICAgIGVs c2UNCisgICAgICAgICAgICB2ID0gbG9va3VwX3ZhcmlhYmxlICh2YXJuYW1lLCBzdHJsZW4gKHZh cm5hbWUpKTsNCisgICAgICAgIH0NCiAgICAgfQ0KICAgZWxzZQ0KICNlbmRpZg0K --=-Sl9ppYw8Fnpzs6trQfre-- From MAILER-DAEMON Sat Oct 13 06:19:34 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ige5m-0001hX-Mv for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 06:19:34 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ige5k-0001fz-Ed for make-w32@gnu.org; Sat, 13 Oct 2007 06:19:32 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ige5i-0001fQ-TB for make-w32@gnu.org; Sat, 13 Oct 2007 06:19:32 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ige5i-0001fJ-Nq for make-w32@gnu.org; Sat, 13 Oct 2007 06:19:30 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ige5e-0007NZ-Rx; Sat, 13 Oct 2007 06:19:27 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-42-210.inter.net.il [80.230.42.210]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DVQ49962 (AUTH halo1); Sat, 13 Oct 2007 12:19:24 +0200 (IST) Date: Sat, 13 Oct 2007 12:19:26 +0200 Message-Id: From: Eli Zaretskii To: psmith@gnu.org In-reply-to: <1192238681.17584.34.camel@homebase.localnet> (message from Paul Smith on Fri, 12 Oct 2007 21:24:41 -0400) References: <1192022231.5596.34.camel@homebase.localnet> <1192079430.5596.88.camel@homebase.localnet> <1192238681.17584.34.camel@homebase.localnet> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Allow SHELL to include variables and functions. X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 10:19:32 -0000 > From: Paul Smith > Cc: make-w32@gnu.org > Date: Fri, 12 Oct 2007 21:24:41 -0400 > > But, I fixed this and applied this patch; let me know if I messed > something up: > > 2007-10-12 Eli Zaretskii > > * variable.c (do_variable_definition): Allow $(SHELL) to expand to > a more complex value than a simple shell: if it's not a default > shell now then expand it and see if is a default shell then. It works, thanks. From MAILER-DAEMON Sat Oct 13 12:37:55 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Igjzu-00084h-Sf for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 12:37:54 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Igjzt-00083J-8y for make-w32@gnu.org; Sat, 13 Oct 2007 12:37:53 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Igjzr-00082O-U2 for make-w32@gnu.org; Sat, 13 Oct 2007 12:37:53 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Igjzo-00081B-Rv; Sat, 13 Oct 2007 12:37:48 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Igjzo-0001oV-KS; Sat, 13 Oct 2007 12:37:48 -0400 Received: from mr02.lnh.mail.rcn.net ([207.172.157.22]) by smtp02.lnh.mail.rcn.net with ESMTP; 13 Oct 2007 12:37:48 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr02.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id NWX58401; Sat, 13 Oct 2007 12:37:47 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 13 Oct 2007 12:38:57 -0400 Received: from psmith by homebase.localnet with local (Exim 4.67) (envelope-from ) id 1Igjzn-00082w-3f; Sat, 13 Oct 2007 12:37:47 -0400 From: Paul Smith To: Make Windows , bug-make Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Sat, 13 Oct 2007 12:37:46 -0400 Message-Id: <1192293466.17584.95.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr02.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090204.4710F45B.009A,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. Cc: Subject: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 16:37:53 -0000 Hi all; I'm considering switching from CVS to another form of SCM. Currently, Savannah supports (in addition to CVS) GNU arch and GIT. If SVN were supported I'd probably go for that, because (a) it has great support for alternative OSs like Windows, etc.; and (b) GNU make development is currently straightforward enough that the advanced features of GIT (advanced merging and peer-to-peer development) aren't critical. However, SVN is not an option and I would like some more advanced SCM capabilities such as moving/renaming files (I've been putting off some code cleanups waiting for this). It seems like GIT is where the mindshare is these days, plus a number of the other autotools projects have already migrated (or are in the middle of migrating) to GIT, so that's what I'd go with. As with the other projects, we'll maintain a read-only CVS mirror of the main GIT archive at least for the time being so people can use that to obtain code, the same way they do today. Still, it would be better if people had more direct access; I'd be happy to delegate support for Windows (MINGW, Cygwin, etc.) and pull those from other GIT repositories if that seems reasonable. I don't really know what the current state-of-the-art is WRT GIT on non-POSIX systems, so... please give me your opinions on this change. Cheers! -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Sat Oct 13 13:19:54 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IgkeY-0007Yh-B9 for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 13:19:54 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IgkeW-0007WQ-EH for make-w32@gnu.org; Sat, 13 Oct 2007 13:19:52 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IgkeU-0007VO-SW for make-w32@gnu.org; Sat, 13 Oct 2007 13:19:52 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IgkeU-0007VL-QC; Sat, 13 Oct 2007 13:19:50 -0400 Received: from 2.139.39-62.rev.gaoland.net ([62.39.139.2] helo=kualalumpur.lrde.epita.fr) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Igke1-0003Wg-Mh; Sat, 13 Oct 2007 13:19:21 -0400 Received: from quanta.tsunanet.net ([82.229.223.213]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1Igkdy-0003eg-Nw; Sat, 13 Oct 2007 19:19:18 +0200 In-Reply-To: <1192293466.17584.95.camel@homebase.localnet> References: <1192293466.17584.95.camel@homebase.localnet> Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="Apple-Mail-51--759641760" Message-Id: <7E053315-5216-4BE6-8D3A-15FFB78EBFC9@lrde.epita.fr> Content-Transfer-Encoding: 7bit From: Benoit SIGOURE Date: Sat, 13 Oct 2007 19:18:42 +0200 To: psmith@gnu.org X-Pgp-Agent: GPGMail 1.1.2 (Tiger) X-Mailer: Apple Mail (2.752.3) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Cc: Make Windows , bug-make Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 17:19:52 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --Apple-Mail-51--759641760 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed On Oct 13, 2007, at 6:37 PM, Paul Smith wrote: > Hi all; > > I'm considering switching from CVS to another form of SCM. Currently, > Savannah supports (in addition to CVS) GNU arch and GIT. [...] > I don't really know what the current state-of-the-art is WRT GIT on > non-POSIX systems, so... please give me your opinions on this change. > A very good change in perspective. I frequently read Git's ML and it seems rather stable on Cygwin. The MSYS version should work too, even though I haven't tried it personally. Some people happen to send bug reports on the ML, but that's not frequent. AFAIK the MSYS port is slightly behind WRT the standard version though. -- Benoit Sigoure aka Tsuna EPITA Research and Development Laboratory --Apple-Mail-51--759641760 content-type: application/pgp-signature; x-mac-type=70674453; name=PGP.sig content-description: This is a digitally signed message part content-disposition: inline; filename=PGP.sig content-transfer-encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (Darwin) iD8DBQFHEP3ywwE67wC8PUkRAtPvAKCa+nb65NSyrj/s2Kb8CkR+ganaVACeMVlF AD0g/9knbWSa0rW8YK3ZkgY= =xKZt -----END PGP SIGNATURE----- --Apple-Mail-51--759641760-- From MAILER-DAEMON Sat Oct 13 13:59:51 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IglHD-0005Gt-FE for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 13:59:51 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IglHB-0005Fe-RP for make-w32@gnu.org; Sat, 13 Oct 2007 13:59:49 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IglHA-0005Eb-Uh for make-w32@gnu.org; Sat, 13 Oct 2007 13:59:49 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IglH9-0005Dk-CI; Sat, 13 Oct 2007 13:59:47 -0400 Received: from pool-71-174-251-188.bstnma.fios.verizon.net ([71.174.251.188] helo=cgf.cx) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IglH6-0003zP-Bb; Sat, 13 Oct 2007 13:59:44 -0400 Received: from ednor.cgf.cx (ednor.casa.cgf.cx [192.168.187.5]) by cgf.cx (Postfix) with ESMTP id B241C13C302; Sat, 13 Oct 2007 13:59:43 -0400 (EDT) Received: by ednor.cgf.cx (Postfix, from userid 201) id AB6B12B353; Sat, 13 Oct 2007 13:59:43 -0400 (EDT) Date: Sat, 13 Oct 2007 13:59:43 -0400 From: Christopher Faylor To: Make Windows , Paul Smith , bug-make Message-ID: <20071013175943.GA8792@ednor.casa.cgf.cx> References: <1192293466.17584.95.camel@homebase.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1192293466.17584.95.camel@homebase.localnet> User-Agent: Mutt/1.5.16 (2007-06-09) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 1) Cc: Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 17:59:50 -0000 On Sat, Oct 13, 2007 at 12:37:46PM -0400, Paul Smith wrote: >Hi all; > >I'm considering switching from CVS to another form of SCM. Currently, >Savannah supports (in addition to CVS) GNU arch and GIT. If SVN were >supported I'd probably go for that, because (a) it has great support for >alternative OSs like Windows, etc.; and (b) GNU make development is >currently straightforward enough that the advanced features of GIT >(advanced merging and peer-to-peer development) aren't critical. >However, SVN is not an option and I would like some more advanced SCM >capabilities such as moving/renaming files (I've been putting off some >code cleanups waiting for this). > >It seems like GIT is where the mindshare is these days, plus a number of >the other autotools projects have already migrated (or are in the middle >of migrating) to GIT, so that's what I'd go with. As with the other >projects, we'll maintain a read-only CVS mirror of the main GIT archive >at least for the time being so people can use that to obtain code, the >same way they do today. Still, it would be better if people had more >direct access; I'd be happy to delegate support for Windows (MINGW, >Cygwin, etc.) and pull those from other GIT repositories if that seems >reasonable. > >I don't really know what the current state-of-the-art is WRT GIT on >non-POSIX systems, so... please give me your opinions on this change. git is available for download from the standard Cygwin installation and it reportedly works fine. Isn't there a pure MinGW (not msys) version too? cgf From MAILER-DAEMON Sat Oct 13 14:53:39 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Igm7H-00067j-FZ for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 14:53:39 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Igm7G-00067N-JX for make-w32@gnu.org; Sat, 13 Oct 2007 14:53:38 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Igm7G-000678-0W for make-w32@gnu.org; Sat, 13 Oct 2007 14:53:38 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Igm7E-00066e-44; Sat, 13 Oct 2007 14:53:36 -0400 Received: from 2.139.39-62.rev.gaoland.net ([62.39.139.2] helo=kualalumpur.lrde.epita.fr) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Igm7D-0006kH-OC; Sat, 13 Oct 2007 14:53:35 -0400 Received: from quanta.tsunanet.net ([82.229.223.213]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1Igm7C-0005my-8B; Sat, 13 Oct 2007 20:53:34 +0200 In-Reply-To: <20071013175943.GA8792@ednor.casa.cgf.cx> References: <1192293466.17584.95.camel@homebase.localnet> <20071013175943.GA8792@ednor.casa.cgf.cx> Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="Apple-Mail-55--753986161" Message-Id: <75CE11AA-E257-4778-AF99-DA4A09FD7DC7@lrde.epita.fr> Content-Transfer-Encoding: 7bit From: Benoit SIGOURE Date: Sat, 13 Oct 2007 20:52:58 +0200 To: Make Windows X-Pgp-Agent: GPGMail 1.1.2 (Tiger) X-Mailer: Apple Mail (2.752.3) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Cc: bug-make Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 18:53:38 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --Apple-Mail-55--753986161 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed On Oct 13, 2007, at 7:59 PM, Christopher Faylor wrote: > Isn't there a pure MinGW (not msys) version too? > This sounds unlikely because many commands in git-core are shell scripts (or sometimes Perl scripts) written on top of plumbing commands. But with the librarification of Git, it will probably be to achieve this... Not in the near future though. -- Benoit Sigoure aka Tsuna EPITA Research and Development Laboratory --Apple-Mail-55--753986161 content-type: application/pgp-signature; x-mac-type=70674453; name=PGP.sig content-description: This is a digitally signed message part content-disposition: inline; filename=PGP.sig content-transfer-encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (Darwin) iD8DBQFHERQKwwE67wC8PUkRAgT4AKCaA2rkYdExhGLKesAyCJqf7EI31QCgnddU 6gKY93oEjweHS7B7GtHVQ50= =GJ8p -----END PGP SIGNATURE----- --Apple-Mail-55--753986161-- From MAILER-DAEMON Sat Oct 13 15:04:19 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IgmHb-0004am-9O for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 15:04:19 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IgmHZ-0004Zz-Rf for make-w32@gnu.org; Sat, 13 Oct 2007 15:04:17 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IgmHX-0004YG-Un for make-w32@gnu.org; Sat, 13 Oct 2007 15:04:17 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IgmHX-0004Y9-Q8; Sat, 13 Oct 2007 15:04:15 -0400 Received: from nitzan.inter.net.il ([213.8.233.22]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IgmHT-0000mq-KZ; Sat, 13 Oct 2007 15:04:11 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-249-214.inter.net.il [80.230.249.214]) by nitzan.inter.net.il (MOS 3.7.3a-GA) with ESMTP id IAF53357 (AUTH halo1); Sat, 13 Oct 2007 21:01:27 +0200 (IST) Date: Sat, 13 Oct 2007 21:04:08 +0200 Message-Id: From: Eli Zaretskii To: Christopher Faylor In-reply-to: <20071013175943.GA8792@ednor.casa.cgf.cx> (message from Christopher Faylor on Sat, 13 Oct 2007 13:59:43 -0400) References: <1192293466.17584.95.camel@homebase.localnet> <20071013175943.GA8792@ednor.casa.cgf.cx> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: bug-make@gnu.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 19:04:18 -0000 > Date: Sat, 13 Oct 2007 13:59:43 -0400 > From: Christopher Faylor > Cc: > > Isn't there a pure MinGW (not msys) version too? If someone knows where to get it, please tell. From MAILER-DAEMON Sat Oct 13 15:10:59 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IgmO3-0008PC-LA for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 15:10:59 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IgmO1-0008OQ-Lm for make-w32@gnu.org; Sat, 13 Oct 2007 15:10:57 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IgmNz-0008N6-LZ for make-w32@gnu.org; Sat, 13 Oct 2007 15:10:56 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IgmNz-0008N3-Fw; Sat, 13 Oct 2007 15:10:55 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IgmNw-0002CS-D8; Sat, 13 Oct 2007 15:10:52 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-249-214.inter.net.il [80.230.249.214]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JCJ41945 (AUTH halo1); Sat, 13 Oct 2007 21:10:35 +0200 (IST) Date: Sat, 13 Oct 2007 21:10:48 +0200 Message-Id: From: Eli Zaretskii To: psmith@gnu.org In-reply-to: <1192293466.17584.95.camel@homebase.localnet> (message from Paul Smith on Sat, 13 Oct 2007 12:37:46 -0400) References: <1192293466.17584.95.camel@homebase.localnet> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org, bug-make@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 19:10:58 -0000 > From: Paul Smith > Date: Sat, 13 Oct 2007 12:37:46 -0400 > Cc: > > I'm considering switching from CVS to another form of SCM. Can you tell why? From MAILER-DAEMON Sat Oct 13 15:13:11 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IgmQB-0001cE-48 for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 15:13:11 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IgmQ7-0001ZE-I4 for make-w32@gnu.org; Sat, 13 Oct 2007 15:13:07 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IgmQ4-0001Vv-HR for make-w32@gnu.org; Sat, 13 Oct 2007 15:13:07 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IgmQ4-0001VZ-8O; Sat, 13 Oct 2007 15:13:04 -0400 Received: from nitzan.inter.net.il ([213.8.233.22]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IgmPz-0002Yf-DB; Sat, 13 Oct 2007 15:12:59 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-249-214.inter.net.il [80.230.249.214]) by nitzan.inter.net.il (MOS 3.7.3a-GA) with ESMTP id IAF56145 (AUTH halo1); Sat, 13 Oct 2007 21:10:11 +0200 (IST) Date: Sat, 13 Oct 2007 21:12:52 +0200 Message-Id: From: Eli Zaretskii To: Benoit SIGOURE In-reply-to: <7E053315-5216-4BE6-8D3A-15FFB78EBFC9@lrde.epita.fr> (message from Benoit SIGOURE on Sat, 13 Oct 2007 19:18:42 +0200) References: <1192293466.17584.95.camel@homebase.localnet> <7E053315-5216-4BE6-8D3A-15FFB78EBFC9@lrde.epita.fr> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: bug-make@gnu.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 19:13:08 -0000 > From: Benoit SIGOURE > Date: Sat, 13 Oct 2007 19:18:42 +0200 > Cc: Make Windows , bug-make > > I frequently read Git's ML and it seems rather stable on Cygwin. Which for me is a turn-off, because I don't want to install Cygwin. > The MSYS version should work too, even though I haven't tried it > personally. MSYS is just a fork of Cygwin, so it doesn't solve my problem above. Is there a good native Windows port of GIT? From MAILER-DAEMON Sat Oct 13 15:21:06 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IgmXq-0001IV-Cx for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 15:21:06 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IgllX-0007RW-RA for make-w32@gnu.org; Sat, 13 Oct 2007 14:31:11 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IgllW-0007R9-EF for make-w32@gnu.org; Sat, 13 Oct 2007 14:31:11 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IgllW-0007R5-3m for make-w32@gnu.org; Sat, 13 Oct 2007 14:31:10 -0400 Received: from fk-out-0910.google.com ([209.85.128.184]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IgllV-0001q7-ON for make-w32@gnu.org; Sat, 13 Oct 2007 14:31:09 -0400 Received: by fk-out-0910.google.com with SMTP id 19so1100934fkr for ; Sat, 13 Oct 2007 11:31:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; bh=sgiy23pwqkUaS17gSTGGmH9Pei0CwN+xfgixMzoLyoE=; b=gg9Hvc/dEMr0ttRpczdS5594c1HPDvcUzeEsm0/XCKj9Kb7zG/cUyBPLst1CYT/o6vOoCHfNUEdzn4gNBaBVYgL4lgoCE0tZ+a7cO8yD9vmDb8Q9JvREPNkF098cvyKZTtnAvWImSmMhOeLd+GHmDws/HDXckvFxVpIsYg6AvHQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; b=DlkcLmO83lqwZO2WECZvZe2XtyGTIHcG9aD21mCSG3wgKyBefLG2rK3W5ps6ElyewJ3Iq26RNzHtyoVcIEVxyXog0kefLzaF0HB3AgJJjYpPWzOTuNngEFIp2ydmcFX7eejkJ9EJnsDmvPPF1QG7HiLjz4e9jS1bC/2nmeLg/xU= Received: by 10.82.160.19 with SMTP id i19mr7185533bue.1192300267959; Sat, 13 Oct 2007 11:31:07 -0700 (PDT) Received: by 10.82.172.5 with HTTP; Sat, 13 Oct 2007 11:31:07 -0700 (PDT) Message-ID: <3bbc18d20710131131l1eac2eb0v127d47b6b2bce700@mail.gmail.com> Date: Sat, 13 Oct 2007 14:31:07 -0400 From: "Matt McCutchen" Sender: hashproduct@gmail.com To: "Paul Smith" In-Reply-To: <1192293466.17584.95.camel@homebase.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <1192293466.17584.95.camel@homebase.localnet> X-Google-Sender-Auth: d87f964839f38075 X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) X-Mailman-Approved-At: Sat, 13 Oct 2007 15:21:05 -0400 Cc: Make Windows , bug-make Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 18:31:12 -0000 On 10/13/07, Paul Smith wrote: > It seems like GIT is where the mindshare is these days, plus a number of > the other autotools projects have already migrated (or are in the middle > of migrating) to GIT, so that's what I'd go with. > please give me your opinions on this change. Yes!!! Git rocks! It's *the* format for modern source control: git repositories can be modified, merged, mirrored, and otherwise messed with in so many useful ways. > GNU make development is > currently straightforward enough that the advanced features of GIT > (advanced merging and peer-to-peer development) aren't critical. They might not be critical for the main development team, but they are an enormous boon to others maintaining patches / modified versions (like potentially me!). Case in point: rsync and Eclipse are still using CVS, but I import them into git myself so I can manage patches with StGIT; if the upstream project uses git, that's even better. > I don't really know what the current state-of-the-art is WRT GIT on > non-POSIX systems Yes, this is the only potential drawback that I can think of. Matt From MAILER-DAEMON Sat Oct 13 15:24:49 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IgmbQ-00039k-UL for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 15:24:49 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IgmbP-00038R-4Y for make-w32@gnu.org; Sat, 13 Oct 2007 15:24:47 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IgmbJ-00031Y-HA for make-w32@gnu.org; Sat, 13 Oct 2007 15:24:45 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IgmbJ-00031U-CY; Sat, 13 Oct 2007 15:24:41 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IgmbJ-0004w8-2O; Sat, 13 Oct 2007 15:24:41 -0400 Received: from HOME-C4E4A596F7 (IGLD-83-130-233-215.inter.net.il [83.130.233.215]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DVS13924 (AUTH halo1); Sat, 13 Oct 2007 21:24:38 +0200 (IST) Date: Sat, 13 Oct 2007 21:24:40 +0200 Message-Id: From: Eli Zaretskii To: Benoit SIGOURE In-reply-to: <75CE11AA-E257-4778-AF99-DA4A09FD7DC7@lrde.epita.fr> (message from Benoit SIGOURE on Sat, 13 Oct 2007 20:52:58 +0200) References: <1192293466.17584.95.camel@homebase.localnet> <20071013175943.GA8792@ednor.casa.cgf.cx> <75CE11AA-E257-4778-AF99-DA4A09FD7DC7@lrde.epita.fr> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org, bug-make@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 19:24:47 -0000 > From: Benoit SIGOURE > Date: Sat, 13 Oct 2007 20:52:58 +0200 > Cc: bug-make > > On Oct 13, 2007, at 7:59 PM, Christopher Faylor wrote: > > > Isn't there a pure MinGW (not msys) version too? > > > > This sounds unlikely because many commands in git-core are shell > scripts (or sometimes Perl scripts) written on top of plumbing commands. Another turn-off. From MAILER-DAEMON Sat Oct 13 16:10:44 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IgnJs-0004bV-05 for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 16:10:44 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IgnJp-0004ao-IP for make-w32@gnu.org; Sat, 13 Oct 2007 16:10:41 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IgnJo-0004aW-V0 for make-w32@gnu.org; Sat, 13 Oct 2007 16:10:41 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IgnJo-0004aR-Qa; Sat, 13 Oct 2007 16:10:40 -0400 Received: from 2.139.39-62.rev.gaoland.net ([62.39.139.2] helo=kualalumpur.lrde.epita.fr) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IgnJj-0005RO-St; Sat, 13 Oct 2007 16:10:36 -0400 Received: from quanta.tsunanet.net ([82.229.223.213]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1IgnJi-00045y-6n; Sat, 13 Oct 2007 22:10:34 +0200 In-Reply-To: References: <1192293466.17584.95.camel@homebase.localnet> <7E053315-5216-4BE6-8D3A-15FFB78EBFC9@lrde.epita.fr> Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="Apple-Mail-57--749368385" Message-Id: Content-Transfer-Encoding: 7bit From: Benoit SIGOURE Date: Sat, 13 Oct 2007 22:09:56 +0200 To: Eli Zaretskii X-Pgp-Agent: GPGMail 1.1.2 (Tiger) X-Mailer: Apple Mail (2.752.3) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Cc: Make Windows , bug-make Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 20:10:42 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --Apple-Mail-57--749368385 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed On Oct 13, 2007, at 9:12 PM, Eli Zaretskii wrote: >> From: Benoit SIGOURE >> Date: Sat, 13 Oct 2007 19:18:42 +0200 >> Cc: Make Windows , bug-make >> >> I frequently read Git's ML and it seems rather stable on Cygwin. > > Which for me is a turn-off, because I don't want to install Cygwin. > Fair enough. >> The MSYS version should work too, even though I haven't tried it >> personally. > > MSYS is just a fork of Cygwin, so it doesn't solve my problem above. > > Is there a good native Windows port of GIT? http://git.or.cz/gitwiki/WindowsInstall Git was designed the way we're used to design traditional UNIX programs: lots of small programs, each performing a simple task. Most of the "low level commands" (called "plumbing") are wrapped up in nicer, higher level interfaces ("porcelain"), and they happen to be written in Shell script (for many of them at least). So I don't think you can seriously use Git without having at least a minimal POSIX environment. On the other hand, Git has lots of GUIs, one of which (qgit) is written with Qt. Therefore, if it was written properly, it ought to work on Windows too (thanks Qt!). Gitk should also probably work (Tcl/Tk works on Windows AFAIK). I don't know about git-gui. Let us know. Anyways, it's only a matter of time before proper Windows support will be added straight into Git, I think. Demand for a good Windows port is high and once Git will be entirely librarified, it will be easy to write lots of tools on top of it (like a TortoiseGit-like interface or whatever). Cheers, -- Benoit Sigoure aka Tsuna EPITA Research and Development Laboratory --Apple-Mail-57--749368385 content-type: application/pgp-signature; x-mac-type=70674453; name=PGP.sig content-description: This is a digitally signed message part content-disposition: inline; filename=PGP.sig content-transfer-encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (Darwin) iD8DBQFHESYUwwE67wC8PUkRAkRKAKDDKZYtVG+E0MSNHz7In7FVWtCUXQCgr6aI 09ukDsvp1SW9Wjx6WQiB9zo= =ayFL -----END PGP SIGNATURE----- --Apple-Mail-57--749368385-- From MAILER-DAEMON Sat Oct 13 16:45:41 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ignrh-0008Dw-0G for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 16:45:41 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IgnVt-0004Bt-Sb for make-w32@gnu.org; Sat, 13 Oct 2007 16:23:09 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IgnVs-0004Bc-Cu for make-w32@gnu.org; Sat, 13 Oct 2007 16:23:09 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IgnVs-0004BX-4i for make-w32@gnu.org; Sat, 13 Oct 2007 16:23:08 -0400 Received: from wa-out-1112.google.com ([209.85.146.183]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IgnVr-0007jW-8X for make-w32@gnu.org; Sat, 13 Oct 2007 16:23:07 -0400 Received: by wa-out-1112.google.com with SMTP id k34so1479172wah for ; Sat, 13 Oct 2007 13:22:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=WvOsVlkearvQtqjbE3EdFE3pLMS0mfZOG4pae9Uowlc=; b=idcU3IEyNCHNA/q41AosNi57G8aFw28NbBe1if248iBGKV5F1o9pEzIpfyeKDsljjlBgCmFgWoRUEqWw2IC4YULT3S9rqBLC5vRaRJiFXb8UR70mR2AE8wo8JfeQMBHEAJdrHvPsA83NLiOV87PfIB3hgwOUSBcMbte9FJLA7xA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=VtwuNVcoUXjDoPgL6B4NJTILzwBJGlf/yYMK1nwbmv6sf7CJVFlNXU70PSzm7ZaG8+rAWsk3dUoDxSz/pKKUl2oMdMBgyXeu7aOagwLgTsaxs4RlwTU50Jilk9udNW/F1jSMI/FwHyQOoJ6YiczJi1LNHRaFo8r+u1SGPGtNSfA= Received: by 10.114.88.1 with SMTP id l1mr5106683wab.1192306976576; Sat, 13 Oct 2007 13:22:56 -0700 (PDT) Received: by 10.114.181.10 with HTTP; Sat, 13 Oct 2007 13:22:56 -0700 (PDT) Message-ID: Date: Sat, 13 Oct 2007 22:22:56 +0200 From: "=?UTF-8?Q?Ram=C3=B3n_Garc=C3=ADa?=" To: psmith@gnu.org In-Reply-To: <1192293466.17584.95.camel@homebase.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <1192293466.17584.95.camel@homebase.localnet> X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) X-Mailman-Approved-At: Sat, 13 Oct 2007 16:45:39 -0400 Cc: Make Windows , bug-make Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 20:23:10 -0000 In my opinion, distributed control version systems like GIT or Mercurial are the way to go in the long term. In Sun all the repositories are (or are being migrated to) Mercurial. There is only one serious limitation with GIT: each developer must have a complete repository, that is, it is not posible to work with a subdirectory. But this is not an issue for projects like GNU Make. I have no experience with GIT on Windows, but there is a page about it in the GIT Wiki: http://git.or.cz/gitwiki/WindowsInstall Ramon From MAILER-DAEMON Sat Oct 13 17:05:09 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IgoAX-0004Ux-67 for mharc-make-w32@gnu.org; Sat, 13 Oct 2007 17:05:09 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IgoAV-0004T7-Ex for make-w32@gnu.org; Sat, 13 Oct 2007 17:05:07 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IgoAT-0004Q4-RT for make-w32@gnu.org; Sat, 13 Oct 2007 17:05:07 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IgoAT-0004PR-OM; Sat, 13 Oct 2007 17:05:05 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IgoAS-0005cw-Rc; Sat, 13 Oct 2007 17:05:05 -0400 Received: from HOME-C4E4A596F7 (IGLD-83-130-233-215.inter.net.il [83.130.233.215]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JCJ89454 (AUTH halo1); Sat, 13 Oct 2007 23:04:32 +0200 (IST) Date: Sat, 13 Oct 2007 23:04:45 +0200 Message-Id: From: Eli Zaretskii To: Benoit SIGOURE In-reply-to: (message from Benoit SIGOURE on Sat, 13 Oct 2007 22:09:56 +0200) References: <1192293466.17584.95.camel@homebase.localnet> <7E053315-5216-4BE6-8D3A-15FFB78EBFC9@lrde.epita.fr> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org, bug-make@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Oct 2007 21:05:07 -0000 > Cc: Make Windows , > bug-make > From: Benoit SIGOURE > Date: Sat, 13 Oct 2007 22:09:56 +0200 > > > Is there a good native Windows port of GIT? > > http://git.or.cz/gitwiki/WindowsInstall Thanks, I already found that page. However, it sounds like it only points to the source (is that right?), and I'm not sure what do I do to download the sources, even if I wanted it. There's no Download link that leads me to some tarball or installer. I'd prefer binaries, as building from sources is notoriously problematic for MinGW ports of complex packages (they usually need many tools to be installed and configured before the build will run to completion, and the setup of those tools is not well documented). But I don't see a pointer to a binary distribution. > Git was designed the way we're used to design traditional UNIX > programs: lots of small programs, each performing a simple task. > Most of the "low level commands" (called "plumbing") are wrapped up > in nicer, higher level interfaces ("porcelain"), and they happen to > be written in Shell script (for many of them at least). So I don't > think you can seriously use Git without having at least a minimal > POSIX environment. Yes, and therein is my gripe: lots of shell scripts means I need a good port of a Unixy shell and other associated utilities that are routinely invoked by shell scripts. I do have these installed, but I really don't want to stress-test their compatibility each time I need to commit a change or update my sandbox. > On the other hand, Git has lots of GUIs, one of which (qgit) is > written with Qt. Therefore, if it was written properly, it ought to > work on Windows too (thanks Qt!). Gitk should also probably work > (Tcl/Tk works on Windows AFAIK). I don't know about git-gui. I don't think I need to worry about a GUI front end, since Emacs already supports GIT. But again, having commands that need a Unixy shell will make things harder, even with Emacs, because it by default invokes the stock Windows shell. That is why I asked Paul why he wanted to switch: Make is not a large package, and its group of developers is quite small to expose the problems with CVS. From MAILER-DAEMON Sun Oct 14 06:44:47 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ih0xj-0000Va-3J for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 06:44:47 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ih0xg-0000SJ-Dm for make-w32@gnu.org; Sun, 14 Oct 2007 06:44:44 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ih0xe-0000Ru-Vo for make-w32@gnu.org; Sun, 14 Oct 2007 06:44:43 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ih0xe-0000Rq-NF for make-w32@gnu.org; Sun, 14 Oct 2007 06:44:42 -0400 Received: from smtp109.sbc.mail.re2.yahoo.com ([68.142.229.96]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Ih0xe-0003Ih-BG for make-w32@gnu.org; Sun, 14 Oct 2007 06:44:42 -0400 Received: (qmail 60099 invoked from network); 14 Oct 2007 10:44:40 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=sbcglobal.net; h=Received:X-YMail-OSG:Message-ID:Date:From:User-Agent:MIME-Version:To:CC:Subject:References:In-Reply-To:X-Enigmail-Version:Content-Type:Content-Transfer-Encoding; b=x8HZhOUZfze2MNCmKn0IgLNvk2zsNjG43YhN0kfJp0kKhRzSsXn/kbWWLib5PgiHkJ66EFn0RJj0IQ3FSGUWz0q68vHPB4j3RpYsr6Ho2tobxCfi1QBj5Pvdaeyk1Fhs8IG7GMwuRolylcES2ksBPkslMucntbCv1Slq9cr1KNc= ; Received: from unknown (HELO ?192.168.1.100?) (gchicares@sbcglobal.net@76.196.109.247 with plain) by smtp109.sbc.mail.re2.yahoo.com with SMTP; 14 Oct 2007 10:44:40 -0000 X-YMail-OSG: KHvU6iMVM1lrp1wzBx4EOYAESueWRBMMUGc_yTPZZarj9kZgMfbvsSox426NSm.hJ2NtUFomQ30i4QGUThNyhry0rPnOAzP.i1JluGUhDItt6kqeudwGKg-- Message-ID: <4711F318.2000504@sbcglobal.net> Date: Sun, 14 Oct 2007 10:44:40 +0000 From: Greg Chicares User-Agent: Thunderbird 2.0.0.6 (Windows/20070728) MIME-Version: 1.0 To: psmith@gnu.org References: <1192293466.17584.95.camel@homebase.localnet> In-Reply-To: <1192293466.17584.95.camel@homebase.localnet> X-Enigmail-Version: 0.95.3 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. Cc: Make Windows , bug-make Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 10:44:44 -0000 On 2007-10-13 16:37Z, Paul Smith wrote: > > I'm considering switching from CVS to another form of SCM. Currently, > Savannah supports (in addition to CVS) GNU arch and GIT. If SVN were > supported I'd probably go for that, because (a) it has great support for > alternative OSs like Windows, etc.; and (b) GNU make development is > currently straightforward enough that the advanced features of GIT > (advanced merging and peer-to-peer development) aren't critical. > However, SVN is not an option Although the FAQ https://savannah.gnu.org/maintenance/WhenSvN says SVN isn't available yet, that page was last edited six months ago and seems out of date in light of this post by one of the savannah hackers a month ago: https://savannah.gnu.org/task/index.php?7111#comment3 | savannah offers subversion as beta test (for information, I used it | for 1 month now without any problems). But savannah offers git and | arch too. So you have choice. I'd guess this is the savannah svn repository he's referring to: https://savannah.nongnu.org/svn/?group=scleaner in case anyone wants to see a concrete example. From MAILER-DAEMON Sun Oct 14 09:53:42 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ih3uY-0006Ty-FK for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 09:53:42 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ih21c-0007BH-Bx for make-w32@gnu.org; Sun, 14 Oct 2007 07:52:52 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ih21X-00079Z-S5 for make-w32@gnu.org; Sun, 14 Oct 2007 07:52:52 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ih21R-000798-Hc; Sun, 14 Oct 2007 07:52:41 -0400 Received: from pasmtpb.tele.dk ([80.160.77.98]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ih20j-00059U-1P; Sun, 14 Oct 2007 07:51:58 -0400 Received: from ravnborg.org (0x535d98d8.vgnxx8.adsl-dhcp.tele.dk [83.93.152.216]) by pasmtpB.tele.dk (Postfix) with ESMTP id D7F63E30456; Sun, 14 Oct 2007 13:51:15 +0200 (CEST) Received: by ravnborg.org (Postfix, from userid 500) id 0D7DD580D2; Sun, 14 Oct 2007 13:52:49 +0200 (CEST) Date: Sun, 14 Oct 2007 13:52:48 +0200 From: Sam Ravnborg To: Eli Zaretskii Message-ID: <20071014115248.GA24568@uranus.ravnborg.org> References: <1192293466.17584.95.camel@homebase.localnet> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.1i X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Sun, 14 Oct 2007 09:53:41 -0400 Cc: bug-make@gnu.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 11:52:52 -0000 On Sat, Oct 13, 2007 at 09:10:48PM +0200, Eli Zaretskii wrote: > > From: Paul Smith > > Date: Sat, 13 Oct 2007 12:37:46 -0400 > > Cc: > > > > I'm considering switching from CVS to another form of SCM. > > Can you tell why? Paul already wrote: "I would like some more advanced SCM capabilities such as moving/renaming files (I've been putting off some code cleanups waiting for this)." Sam From MAILER-DAEMON Sun Oct 14 12:57:33 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ih6mS-0000u7-Oj for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 12:57:32 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ih6mQ-0000s6-S8 for make-w32@gnu.org; Sun, 14 Oct 2007 12:57:30 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ih6mQ-0000rB-1m for make-w32@gnu.org; Sun, 14 Oct 2007 12:57:30 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ih6mN-0000ol-QQ; Sun, 14 Oct 2007 12:57:27 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ih6mJ-0008Hr-8W; Sun, 14 Oct 2007 12:57:23 -0400 Received: from mr02.lnh.mail.rcn.net ([207.172.157.22]) by smtp02.lnh.mail.rcn.net with ESMTP; 14 Oct 2007 12:57:23 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr02.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id NWZ02854; Sun, 14 Oct 2007 12:57:22 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 14 Oct 2007 12:58:46 -0400 Received: from psmith by homebase.localnet with local (Exim 4.67) (envelope-from ) id 1Ih6mH-00024Q-UR; Sun, 14 Oct 2007 12:57:21 -0400 From: Paul Smith To: Eli Zaretskii In-Reply-To: References: <1192293466.17584.95.camel@homebase.localnet> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Sun, 14 Oct 2007 12:57:20 -0400 Message-Id: <1192381040.4908.57.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr02.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090206.47124A73.0022,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. Cc: make-w32@gnu.org, bug-make@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: bug-make@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 16:57:31 -0000 On Sat, 2007-10-13 at 21:10 +0200, Eli Zaretskii wrote: > Can you tell why? The main reasons are lack of functionality in CVS re renaming, removing, and reorganizing files. However, it's not a critical issue; I've lived with it for this long. The other problems CVS has (poor branch/merge, no atomicity, server-only repositories, etc.) are not as big a problem for a project the size of GNU make. Another reason others have mentioned is making it simple for "downstream" folks to work on make. Ideally I'd be happy to hand over maintenance of the non-POSIX ports (for example) to others more completely, and just pull from their changed trees. A sort of very, very miniature version of the Linux kernel development model. It's not such a huge hardship for me to apply patches that I really mind the current environment but it might help others--assuming that the tool works properly in their environment of course. It looks like (as someone else mentioned) SVN may be supported on Savannah "soonish". So another option is to wait for that. I certainly don't want to switch more than once, if I do decide to switch. Originally SVN would have been my definite preference, just based on its similarity to CVS and its portability. However, others have asked explicitly for GIT due to its distributed development model. Also the other autotools are all switching to GIT. So, maybe we should back up and reconsider: which of the four tools Savannah does or apparently will soon support do people feel is the best for GNU make: (1) stay with CVS, (2) GNU arch, (3) GIT, (4) Subversion. I've seen a lot of pro/con discussions which I can summarize if people want, but the big thing no one else seems to have addressed much in other discussions I've seen is portability. It LOOKS like there are native ports of GIT to MINGW, but I have no idea how complete and usable they are. If someone who has a Windows system could look into that it would be a big help. -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Sun Oct 14 13:10:51 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ih6zK-0006cS-UL for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 13:10:50 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ih6zJ-0006bX-HE for make-w32@gnu.org; Sun, 14 Oct 2007 13:10:49 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ih6zI-0006aN-Kh for make-w32@gnu.org; Sun, 14 Oct 2007 13:10:49 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ih6zI-0006aH-HR for make-w32@gnu.org; Sun, 14 Oct 2007 13:10:48 -0400 Received: from 2.139.39-62.rev.gaoland.net ([62.39.139.2] helo=kualalumpur.lrde.epita.fr) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Ih6zB-0002VP-GA; Sun, 14 Oct 2007 13:10:41 -0400 Received: from quanta.tsunanet.net ([82.229.223.213]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1Ih6z9-0005w2-R1; Sun, 14 Oct 2007 19:10:39 +0200 In-Reply-To: <1192381040.4908.57.camel@homebase.localnet> References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="Apple-Mail-63--673758817" Message-Id: <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> Content-Transfer-Encoding: 7bit From: Benoit SIGOURE Date: Sun, 14 Oct 2007 19:10:05 +0200 To: git list X-Pgp-Agent: GPGMail 1.1.2 (Tiger) X-Mailer: Apple Mail (2.752.3) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Cc: Make Windows Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 17:10:49 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --Apple-Mail-63--673758817 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Context: GNU make seems to be willing to switch from CVS to ... something else. On Oct 14, 2007, at 6:57 PM, Paul Smith wrote: > [...] the big thing no one else seems to have addressed much in > other discussions I've seen is portability. It LOOKS like there are > native ports of GIT to MINGW, but I have no idea how complete and > usable > they are. If someone who has a Windows system could look into that it > would be a big help. I think the best thing to do is to ask directly on the Git ML. Someone already pointed out that he'd like to use Git on Windows but doesn't want to install either Cygwin or MSYS. Is this possible, or will it be possible in the near future? Is it possible to use one of the various GUIs (git-gui, gitk, qgit) on Windows without requiring a POSIXish shell etc.? When will the librarification of Git be finished? (if Git is available as a library, and if this library works on Windows, it will greatly help truly native Windows ports). Not that I like Windows in any way, right, but it's legitimate for people working on Windows ports of various software to be willing to have a truly native port of Git for Windows. -- Benoit Sigoure aka Tsuna EPITA Research and Development Laboratory --Apple-Mail-63--673758817 content-type: application/pgp-signature; x-mac-type=70674453; name=PGP.sig content-description: This is a digitally signed message part content-disposition: inline; filename=PGP.sig content-transfer-encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (Darwin) iD8DBQFHEk1twwE67wC8PUkRAqZSAJ9Y9XlGn6S7yVDud2y+QUJsB9iTEgCg2Dn2 OjD6eWV63RvJ/kGHC3Z3/KE= =jnln -----END PGP SIGNATURE----- --Apple-Mail-63--673758817-- From MAILER-DAEMON Sun Oct 14 13:53:47 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ih7et-00065c-AT for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 13:53:47 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ih7er-000652-7y for make-w32@gnu.org; Sun, 14 Oct 2007 13:53:45 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ih7ep-00064j-M9 for make-w32@gnu.org; Sun, 14 Oct 2007 13:53:43 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ih7en-00064O-Si; Sun, 14 Oct 2007 13:53:41 -0400 Received: from pool-71-174-251-188.bstnma.fios.verizon.net ([71.174.251.188] helo=cgf.cx) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ih7en-0003H9-EZ; Sun, 14 Oct 2007 13:53:41 -0400 Received: from ednor.cgf.cx (ednor.casa.cgf.cx [192.168.187.5]) by cgf.cx (Postfix) with ESMTP id A3B0113C302; Sun, 14 Oct 2007 13:53:39 -0400 (EDT) Received: by ednor.cgf.cx (Postfix, from userid 201) id 98CCA2B353; Sun, 14 Oct 2007 13:53:39 -0400 (EDT) Date: Sun, 14 Oct 2007 13:53:39 -0400 From: Christopher Faylor To: Make Windows , bug-make Message-ID: <20071014175339.GE11619@ednor.casa.cgf.cx> References: <1192293466.17584.95.camel@homebase.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.16 (2007-06-09) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 1) Cc: Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 17:53:45 -0000 On Sat, Oct 13, 2007 at 10:22:56PM +0200, Ram??n Garc??a wrote: >In my opinion, distributed control version systems like GIT or >Mercurial are the way to go in the long term. In Sun all the >repositories are (or are being migrated to) Mercurial. > >There is only one serious limitation with GIT: each developer must have >a complete repository, that is, it is not posible to work with a >subdirectory. But this is not an issue for projects like GNU Make. > >I have no experience with GIT on Windows, but there is a page about it >in the GIT Wiki: http://git.or.cz/gitwiki/WindowsInstall That page seems to imply either MSys or Cygwin. Neither of those is a pure windows-only solution. I can see why people wouldn't want to install cygwin + perl + bash + tk + whatever just to do source control. I was reading the git mailing list for a while and one person was rabidly anti-cygwin - enough for me to eventually decide it wasn't worth getting a jolt of adrenaline one morning a week. I thought this person was actively working on a mingw port and, attitude aside, he seemed very competent. If the direction of the port was to use *MSYS* to do some of the heavy lifting then that's just too funny. Someone mentioned mercurial already. There is YA "enthusiastic" camp of people who think it is superior to git. The author made a pretty compelling case in a presentation I saw at a past OLS. I'm wondering if it is somewhat lighter weight in terms of number of packages that need to be installed. I don't know if Paul would consider this or not. It means convincing savannah sysadmins that this is a good idea, I guess. I could sponsor the hosting of GNU make at sourceware.org, which has mercurial installed, but I guess that's a sort of radical step. cgf From MAILER-DAEMON Sun Oct 14 16:08:27 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ih9lD-00081s-82 for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 16:08:27 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ih7rh-00060I-BV for make-w32@gnu.org; Sun, 14 Oct 2007 14:07:01 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ih7rf-0005yS-Tc for make-w32@gnu.org; Sun, 14 Oct 2007 14:07:01 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ih7rf-0005yD-O7 for make-w32@gnu.org; Sun, 14 Oct 2007 14:06:59 -0400 Received: from rv-out-0910.google.com ([209.85.198.189]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ih7rf-0006Jn-G5 for make-w32@gnu.org; Sun, 14 Oct 2007 14:06:59 -0400 Received: by rv-out-0910.google.com with SMTP id c27so1127591rvf for ; Sun, 14 Oct 2007 11:06:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=o39kYTfOma04/fAUsdkF2hDxLONf7KqGEcAXKzaLk4s=; b=jdBPoNZFb8TtKjXzAjFsxa6yTinGBuCMDROEAaBGXVv0W23SGF0cyXSdIFaEq9ncsnukJfYO9AIw+W0bgVSPIMjMHn1G6uP9RQzTk6AzGr47YHepBiccdC/Gw/VTjsROdLOUmnSDQ2/LKf3g4XqS2iiqHwAx8ifAlwbj3rDnwpA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=bTm+yUK7MoNzPKVy4FGOULST5c8yCCj6Dgz0a3hPLTI7DR5zWRQssbWaSgozqct4qZPcjpIx3lQltDkAePq/2Bv1/Fqc8DzTjAtFHgx4DQIqVlDeLd/JVT0NEtgQpjGc4wonVg33bNdJ7a9cqS1ZdpldaasfyNasOegD96END4Q= Received: by 10.141.159.13 with SMTP id l13mr2362220rvo.1192385217533; Sun, 14 Oct 2007 11:06:57 -0700 (PDT) Received: by 10.140.185.19 with HTTP; Sun, 14 Oct 2007 11:06:57 -0700 (PDT) Message-ID: Date: Sun, 14 Oct 2007 20:06:57 +0200 From: "Marco Costalba" To: "Benoit SIGOURE" In-Reply-To: <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) X-Mailman-Approved-At: Sun, 14 Oct 2007 16:08:25 -0400 Cc: Make Windows , git list Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 18:07:01 -0000 On 10/14/07, Benoit SIGOURE wrote: > > Is it possible to use one of > the various GUIs (git-gui, gitk, qgit) on Windows without requiring a > POSIXish shell etc.? > qgit-2.0 works natively under Windows http://sourceforge.net/project/showfiles.php?group_id=139897 Check the README for how to install. Marco From MAILER-DAEMON Sun Oct 14 16:08:27 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ih9lD-000822-BW for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 16:08:27 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ih850-00036C-0I for make-w32@gnu.org; Sun, 14 Oct 2007 14:20:46 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ih84x-00034a-CJ for make-w32@gnu.org; Sun, 14 Oct 2007 14:20:44 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ih84x-00034X-7E for make-w32@gnu.org; Sun, 14 Oct 2007 14:20:43 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Ih84w-0000nF-SM for make-w32@gnu.org; Sun, 14 Oct 2007 14:20:43 -0400 Received: (qmail invoked by alias); 14 Oct 2007 18:20:40 -0000 Received: from wbgn013.biozentrum.uni-wuerzburg.de (EHLO openvpn-client) [132.187.25.13] by mail.gmx.net (mp001) with SMTP; 14 Oct 2007 20:20:40 +0200 X-Authenticated: #1490710 X-Provags-ID: V01U2FsdGVkX18abjcUN7gaRsjlmQqvS3j39sV+GHnVME8nIoGydq IdLhmfaayS2RmW Date: Sun, 14 Oct 2007 19:20:37 +0100 (BST) From: Johannes Schindelin X-X-Sender: gene099@racer.site To: Benoit SIGOURE In-Reply-To: <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Sun, 14 Oct 2007 16:08:25 -0400 Cc: Make Windows , git list Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 18:20:46 -0000 Hi, On Sun, 14 Oct 2007, Benoit SIGOURE wrote: > Context: GNU make seems to be willing to switch from CVS to ... > something else. > > On Oct 14, 2007, at 6:57 PM, Paul Smith wrote: > > > [...] the big thing no one else seems to have addressed much in other > > discussions I've seen is portability. It LOOKS like there are native > > ports of GIT to MINGW, but I have no idea how complete and usable they > > are. If someone who has a Windows system could look into that it > > would be a big help. There is msysGit. This project is nearing to its first beta, being self-hosted since mid-August IIRC. It is a port of Git to MinGW, using parts of MSys as long as we have dependencies on bash and perl. I have no doubt that we'll manage to finish version 0.3 of the installer this week, still not decided if it is still alpha or already beta. There are some issues with using msysGit, none of them really serious, but you better be ready to ask questions on this list or #git in case something crops up. msysGit is young. Having said that, IMHO msysGit is already quite usable, and should be pretty stable within a few weeks (if it is not already). Ciao, Dscho From MAILER-DAEMON Sun Oct 14 16:08:27 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ih9lD-00082U-L5 for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 16:08:27 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ih8Ms-0003fh-5A for make-w32@gnu.org; Sun, 14 Oct 2007 14:39:14 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ih8Mq-0003f6-Qx for make-w32@gnu.org; Sun, 14 Oct 2007 14:39:13 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ih8Mq-0003f3-LL for make-w32@gnu.org; Sun, 14 Oct 2007 14:39:12 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Ih8Mq-0004Uo-BR for make-w32@gnu.org; Sun, 14 Oct 2007 14:39:12 -0400 Received: (qmail invoked by alias); 14 Oct 2007 18:39:11 -0000 Received: from wbgn013.biozentrum.uni-wuerzburg.de (EHLO openvpn-client) [132.187.25.13] by mail.gmx.net (mp031) with SMTP; 14 Oct 2007 20:39:11 +0200 X-Authenticated: #1490710 X-Provags-ID: V01U2FsdGVkX1/IHyZOuq3I5xTRTQ4KFq/T+m47jN/GynL/+v+fP6 6OuCO93bZd86kW Date: Sun, 14 Oct 2007 19:39:07 +0100 (BST) From: Johannes Schindelin X-X-Sender: gene099@racer.site To: Andreas Ericsson In-Reply-To: <47125F74.9050600@op5.se> Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Sun, 14 Oct 2007 16:08:25 -0400 Cc: git list , Make Windows Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 18:39:14 -0000 Hi, On Sun, 14 Oct 2007, Andreas Ericsson wrote: > Benoit SIGOURE wrote: > > Context: GNU make seems to be willing to switch from CVS to ... something > > else. > > > > On Oct 14, 2007, at 6:57 PM, Paul Smith wrote: > > > > > [...] the big thing no one else seems to have addressed much in > > > other discussions I've seen is portability. It LOOKS like there are > > > native ports of GIT to MINGW, but I have no idea how complete and usable > > > they are. If someone who has a Windows system could look into that it > > > would be a big help. > > > > I think the best thing to do is to ask directly on the Git ML. > > > > Someone already pointed out that he'd like to use Git on Windows but > > doesn't want to install either Cygwin or MSYS. Is this possible, or > > will it be possible in the near future? > > It is sort of possible. Without cygwin he'll be in the black for the few > features that are still implemented as shell-scripts, but perhaps he/she > will then be inclined to help us migrate those scripts to C builtins. Umm. There are quite a few shell scripts still _necessary_ to run git: git-commit, git-fetch and git-merge being the most prominent ones. The first two are in the process of being rewritten _right_ _now_, but no official git release has them yet. And I have to disagree strongly with the "black": In msysGit (which brings its own minimal version of MSys), it is very smooth. > > Is it possible to use one of the various GUIs (git-gui, gitk, qgit) > > on Windows without requiring a POSIXish shell etc.? > > > > qgit is possible to use natively, if one installs the qgit4 libraries > for windows, but it's more of a viewer than an action gui. git-gui and > gitk are usable if you have the windows TCL port. I haven't tried it, > but there are installers available, so testing it out (with all > dependencies) shouldn't take too long. FWIW msysGit comes with Tcl. You can run git gui and gitk without any hassles. > > When will the librarification of Git be finished? > > When someone gets around to doing it ;-) There has been a GSoC project, and it has a nice small API which can be called from Python, for example. Funnily enough, the first user is qgit as far as I know, which is written in C++... > > (if Git is available as a library, and if this library works on > > Windows, it will greatly help truly native Windows ports). > > Yup. I believe the primary reason for libification is to easier support > both porting and fully-fledged gui's. Why? I do not see any reason why libification helps the user experience on Windows. Ciao, Dscho From MAILER-DAEMON Sun Oct 14 16:08:28 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ih9lD-00082w-Pj for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 16:08:27 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ih8px-0005pU-HX for make-w32@gnu.org; Sun, 14 Oct 2007 15:09:17 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ih8pw-0005pM-5y for make-w32@gnu.org; Sun, 14 Oct 2007 15:09:16 -0400 Received: from mail.op5.se ([193.201.96.20]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ih8pv-0002pu-SC; Sun, 14 Oct 2007 15:09:16 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.op5.se (Postfix) with ESMTP id D354D173068B; Sun, 14 Oct 2007 21:07:17 +0200 (CEST) X-Virus-Scanned: amavisd-new at X-Spam-Score: -2.499 Received: from mail.op5.se ([127.0.0.1]) by localhost (mail.op5.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NBpY9EoqLAwO; Sun, 14 Oct 2007 21:07:17 +0200 (CEST) Received: from nox.op5.se (unknown [172.27.77.30]) by mail.op5.se (Postfix) with ESMTP id D82501730656; Sun, 14 Oct 2007 21:07:16 +0200 (CEST) Message-ID: <47126957.1020204@op5.se> Date: Sun, 14 Oct 2007 21:09:11 +0200 From: Andreas Ericsson User-Agent: Thunderbird 2.0.0.5 (X11/20070727) MIME-Version: 1.0 To: Johannes Schindelin References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) X-Mailman-Approved-At: Sun, 14 Oct 2007 16:08:25 -0400 Cc: git list , Make Windows Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 19:09:17 -0000 Johannes Schindelin wrote: > Hi, > > On Sun, 14 Oct 2007, Andreas Ericsson wrote: > >> Benoit SIGOURE wrote: >>> Context: GNU make seems to be willing to switch from CVS to ... something >>> else. >>> >>> On Oct 14, 2007, at 6:57 PM, Paul Smith wrote: >>> >>>> [...] the big thing no one else seems to have addressed much in >>>> other discussions I've seen is portability. It LOOKS like there are >>>> native ports of GIT to MINGW, but I have no idea how complete and usable >>>> they are. If someone who has a Windows system could look into that it >>>> would be a big help. >>> I think the best thing to do is to ask directly on the Git ML. >>> >>> Someone already pointed out that he'd like to use Git on Windows but >>> doesn't want to install either Cygwin or MSYS. Is this possible, or >>> will it be possible in the near future? >> It is sort of possible. Without cygwin he'll be in the black for the few >> features that are still implemented as shell-scripts, but perhaps he/she >> will then be inclined to help us migrate those scripts to C builtins. > > Umm. There are quite a few shell scripts still _necessary_ to run git: > git-commit, git-fetch and git-merge being the most prominent ones. The > first two are in the process of being rewritten _right_ _now_, but no > official git release has them yet. > Ah, right. I think of "accepted into git.git" as being released. > And I have to disagree strongly with the "black": In msysGit (which brings > its own minimal version of MSys), it is very smooth. > Oh? I didn't know that. Windows and its unixifying toolboxes is unknown territory to me, as I happily spend all my time on various unices. >>> Is it possible to use one of the various GUIs (git-gui, gitk, qgit) >>> on Windows without requiring a POSIXish shell etc.? >>> >> qgit is possible to use natively, if one installs the qgit4 libraries >> for windows, but it's more of a viewer than an action gui. git-gui and >> gitk are usable if you have the windows TCL port. I haven't tried it, >> but there are installers available, so testing it out (with all >> dependencies) shouldn't take too long. > > FWIW msysGit comes with Tcl. You can run git gui and gitk without any > hassles. > Yes, my phrasing there was a bit obscure. I meant that all dependencies are installed by the installer package. >>> (if Git is available as a library, and if this library works on >>> Windows, it will greatly help truly native Windows ports). >> Yup. I believe the primary reason for libification is to easier support >> both porting and fully-fledged gui's. > > Why? > > I do not see any reason why libification helps the user experience on > Windows. > I was under the impression that the windows port suffers from Windows' lack of a proper fork() and friends and that a proper library would help solving those problems. Perhaps I was misinformed. -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231 From MAILER-DAEMON Sun Oct 14 16:08:27 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ih9lD-00082E-Gi for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 16:08:27 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ih8B6-0006lB-Pd for make-w32@gnu.org; Sun, 14 Oct 2007 14:27:04 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ih8B6-0006kl-Er for make-w32@gnu.org; Sun, 14 Oct 2007 14:27:04 -0400 Received: from mail.op5.se ([193.201.96.20]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ih8B6-0001z3-4m; Sun, 14 Oct 2007 14:27:04 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.op5.se (Postfix) with ESMTP id 237C81730710; Sun, 14 Oct 2007 20:27:03 +0200 (CEST) X-Virus-Scanned: amavisd-new at X-Spam-Score: -2.499 Received: from mail.op5.se ([127.0.0.1]) by localhost (mail.op5.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id QJxuYO4IHeLv; Sun, 14 Oct 2007 20:27:02 +0200 (CEST) Received: from nox.op5.se (unknown [172.27.77.30]) by mail.op5.se (Postfix) with ESMTP id 88F161730700; Sun, 14 Oct 2007 20:27:01 +0200 (CEST) Message-ID: <47125F74.9050600@op5.se> Date: Sun, 14 Oct 2007 20:27:00 +0200 From: Andreas Ericsson User-Agent: Thunderbird 2.0.0.5 (X11/20070727) MIME-Version: 1.0 To: Benoit SIGOURE References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> In-Reply-To: <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) X-Mailman-Approved-At: Sun, 14 Oct 2007 16:08:25 -0400 Cc: Make Windows , git list Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 18:27:04 -0000 Benoit SIGOURE wrote: > Context: GNU make seems to be willing to switch from CVS to ... > something else. > > On Oct 14, 2007, at 6:57 PM, Paul Smith wrote: > >> [...] the big thing no one else seems to have addressed much in >> other discussions I've seen is portability. It LOOKS like there are >> native ports of GIT to MINGW, but I have no idea how complete and usable >> they are. If someone who has a Windows system could look into that it >> would be a big help. > > I think the best thing to do is to ask directly on the Git ML. > > Someone already pointed out that he'd like to use Git on Windows but > doesn't want to install either Cygwin or MSYS. Is this possible, or > will it be possible in the near future? It is sort of possible. Without cygwin he'll be in the black for the few features that are still implemented as shell-scripts, but perhaps he/she will then be inclined to help us migrate those scripts to C builtins. > Is it possible to use one of > the various GUIs (git-gui, gitk, qgit) on Windows without requiring a > POSIXish shell etc.? > qgit is possible to use natively, if one installs the qgit4 libraries for windows, but it's more of a viewer than an action gui. git-gui and gitk are usable if you have the windows TCL port. I haven't tried it, but there are installers available, so testing it out (with all dependencies) shouldn't take too long. > When will the librarification of Git be finished? When someone gets around to doing it ;-) For a real answer, I'll have to defer to others. Everything works to my satisfaction where I'm using it, so I'm not very inclined to fiddle with it and risk breaking things. > (if Git is available > as a library, and if this library works on Windows, it will greatly help > truly native Windows ports). > Yup. I believe the primary reason for libification is to easier support both porting and fully-fledged gui's. > Not that I like Windows in any way, right, but it's legitimate for > people working on Windows ports of various software to be willing to > have a truly native port of Git for Windows. > Naturally. Amazingly few of those stuck with windows have so far volunteered for helping out though, and since many of us on this list don't even have a windows system for testing, it's kinda slow going :-/ I'd imagine getting in touch with Dscho to get a list of what's needed, or reading the biweekly msys.git herald on this list, is the best way of finding out the porting project's current priorities. -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231 From MAILER-DAEMON Sun Oct 14 17:03:20 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhAcK-0006v2-3I for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 17:03:20 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ih9r6-000419-A7 for make-w32@gnu.org; Sun, 14 Oct 2007 16:14:32 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ih9r4-0003zK-QE for make-w32@gnu.org; Sun, 14 Oct 2007 16:14:31 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ih9r4-0003zD-GZ for make-w32@gnu.org; Sun, 14 Oct 2007 16:14:30 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Ih9r4-0006WS-Eh for make-w32@gnu.org; Sun, 14 Oct 2007 16:14:30 -0400 Received: (qmail invoked by alias); 14 Oct 2007 20:14:28 -0000 Received: from wbgn013.biozentrum.uni-wuerzburg.de (EHLO openvpn-client) [132.187.25.13] by mail.gmx.net (mp037) with SMTP; 14 Oct 2007 22:14:28 +0200 X-Authenticated: #1490710 X-Provags-ID: V01U2FsdGVkX1+/K3tn0+O/X3CFXQ95VTtBS8O9Sw20k+02lVLMC9 +a1ZOV4TL8t6Nj Date: Sun, 14 Oct 2007 21:14:25 +0100 (BST) From: Johannes Schindelin X-X-Sender: gene099@racer.site To: Andreas Ericsson In-Reply-To: <47126957.1020204@op5.se> Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Sun, 14 Oct 2007 17:03:19 -0400 Cc: git list , Make Windows Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 20:14:32 -0000 Hi, On Sun, 14 Oct 2007, Andreas Ericsson wrote: > Johannes Schindelin wrote: > > > I do not see any reason why libification helps the user experience on > > Windows. > > I was under the impression that the windows port suffers from Windows' > lack of a proper fork() and friends and that a proper library would help > solving those problems. Perhaps I was misinformed. It suffered. Until Hannes Sixt did a very fine job which cumulated in the patch series he posted yesterday. Of course, this work is the reason msysGit is functional. Ciao, Dscho From MAILER-DAEMON Sun Oct 14 17:11:17 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhAk1-00031w-QK for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 17:11:17 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhAjz-0002zT-E9 for make-w32@gnu.org; Sun, 14 Oct 2007 17:11:15 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhAjw-0002ug-V8 for make-w32@gnu.org; Sun, 14 Oct 2007 17:11:15 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhAjw-0002uX-L3; Sun, 14 Oct 2007 17:11:12 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhAjw-0007Z6-84; Sun, 14 Oct 2007 17:11:12 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-5-89.inter.net.il [80.230.5.89]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DVX67603 (AUTH halo1); Sun, 14 Oct 2007 23:11:09 +0200 (IST) Date: Sun, 14 Oct 2007 23:11:12 +0200 Message-Id: From: Eli Zaretskii To: bug-make@gnu.org In-reply-to: <1192381040.4908.57.camel@homebase.localnet> (message from Paul Smith on Sun, 14 Oct 2007 12:57:20 -0400) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org, bug-make@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 21:11:15 -0000 > From: Paul Smith > Cc: make-w32@gnu.org, bug-make@gnu.org > Date: Sun, 14 Oct 2007 12:57:20 -0400 > > On Sat, 2007-10-13 at 21:10 +0200, Eli Zaretskii wrote: > > Can you tell why? > > The main reasons are lack of functionality in CVS re renaming, removing, > and reorganizing files. However, it's not a critical issue; I've lived > with it for this long. The other problems CVS has (poor branch/merge, > no atomicity, server-only repositories, etc.) are not as big a problem > for a project the size of GNU make. Then perhaps you don't need to switch at all. Doing so will require a non-trivial effort; I don't know how your free time, but mine is hardly enough to try debugging an occasional w32-related bug report. Is it really worth wasting what few resources we have on switching to another VCS? > Another reason others have mentioned is making it simple for > "downstream" folks to work on make. Ideally I'd be happy to hand over > maintenance of the non-POSIX ports (for example) to others more > completely, and just pull from their changed trees. Why not give those who do work on non-POSIX ports write access to the CVS tree? > It looks like (as someone else mentioned) SVN may be supported on > Savannah "soonish". So another option is to wait for that. I certainly > don't want to switch more than once, if I do decide to switch. SVN certainly sounds as easier for use on Windows than GIT. From MAILER-DAEMON Sun Oct 14 17:25:54 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhAyA-0001Pf-2j for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 17:25:54 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhAy8-0001PJ-IF for make-w32@gnu.org; Sun, 14 Oct 2007 17:25:52 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhAy7-0001Ov-Sp for make-w32@gnu.org; Sun, 14 Oct 2007 17:25:52 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhAy5-0001OP-KT; Sun, 14 Oct 2007 17:25:49 -0400 Received: from 2.139.39-62.rev.gaoland.net ([62.39.139.2] helo=kualalumpur.lrde.epita.fr) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhAy1-0001xM-2E; Sun, 14 Oct 2007 17:25:45 -0400 Received: from quanta.tsunanet.net ([82.229.223.213]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1IhAxy-0006JJ-Pr; Sun, 14 Oct 2007 23:25:42 +0200 In-Reply-To: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="Apple-Mail-67--658455913" Message-Id: <65FF5FB3-573D-43E1-B78C-EF7941EEA155@lrde.epita.fr> Content-Transfer-Encoding: 7bit From: Benoit SIGOURE Date: Sun, 14 Oct 2007 23:25:08 +0200 To: Eli Zaretskii X-Pgp-Agent: GPGMail 1.1.2 (Tiger) X-Mailer: Apple Mail (2.752.3) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Cc: bug-make@gnu.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 21:25:52 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --Apple-Mail-67--658455913 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed On Oct 14, 2007, at 11:11 PM, Eli Zaretskii wrote: >> From: Paul Smith >> Cc: make-w32@gnu.org, bug-make@gnu.org >> Date: Sun, 14 Oct 2007 12:57:20 -0400 >> >> On Sat, 2007-10-13 at 21:10 +0200, Eli Zaretskii wrote: >>> Can you tell why? >> >> The main reasons are lack of functionality in CVS re renaming, >> removing, >> and reorganizing files. However, it's not a critical issue; I've >> lived >> with it for this long. The other problems CVS has (poor branch/ >> merge, >> no atomicity, server-only repositories, etc.) are not as big a >> problem >> for a project the size of GNU make. > > Then perhaps you don't need to switch at all. Doing so will require a > non-trivial effort; I don't know how your free time, but mine is > hardly enough to try debugging an occasional w32-related bug report. > Is it really worth wasting what few resources we have on switching to > another VCS? OTOH, Git has a git-cvsserver, which means that you can still access the Git repository with a standard CVS client. Most of the time, people chose to restrain the CVS access to read-only, but you can go read/write if you want (although I've heard of a couple of issues with write access, not sure whether this was only branch-related problems or real commit problems). -- Benoit Sigoure aka Tsuna EPITA Research and Development Laboratory --Apple-Mail-67--658455913 content-type: application/pgp-signature; x-mac-type=70674453; name=PGP.sig content-description: This is a digitally signed message part content-disposition: inline; filename=PGP.sig content-transfer-encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (Darwin) iD8DBQFHEok0wwE67wC8PUkRAk7oAJoDXBUHNFFCQzkPjsidX76SyiCi5wCggAq5 CMSzR92zwKy1RKvscBu/qC8= =w8jT -----END PGP SIGNATURE----- --Apple-Mail-67--658455913-- From MAILER-DAEMON Sun Oct 14 18:42:02 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhC9q-0002SI-JH for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 18:42:02 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhC9p-0002Qp-7B for make-w32@gnu.org; Sun, 14 Oct 2007 18:42:01 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhC9o-0002Pu-Lh for make-w32@gnu.org; Sun, 14 Oct 2007 18:42:00 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhC9o-0002Pi-55 for make-w32@gnu.org; Sun, 14 Oct 2007 18:42:00 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhC9n-0004W6-OB for make-w32@gnu.org; Sun, 14 Oct 2007 18:41:59 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-5-89.inter.net.il [80.230.5.89]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JCP88932 (AUTH halo1); Mon, 15 Oct 2007 00:41:28 +0200 (IST) Date: Mon, 15 Oct 2007 00:41:38 +0200 Message-Id: From: Eli Zaretskii To: Alex Riesen In-reply-to: <20071014221446.GC2776@steel.home> (message from Alex Riesen on Mon, 15 Oct 2007 00:14:46 +0200) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: git@vger.kernel.org, ae@op5.se, Johannes.Schindelin@gmx.de, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 22:42:01 -0000 > Date: Mon, 15 Oct 2007 00:14:46 +0200 > From: Alex Riesen > Cc: Andreas Ericsson , Benoit SIGOURE , > git list , Eli Zaretskii , > Make Windows > > Re "functional". Have to remind something (besides the fork): That's a 20-20 hindsight: if you deliberately write a program to rely heavily on Posix-isms, don't be surprised when you discover that it cannot be easily ported to other platforms. > - no proper VFS I'm not sure what you are talking about. What VFS do you use on GNU/Linux that cannot work on Windows, and why do you use it? > - no proper filename semantics (case-insensitivity and stupid rules for > allowed characters in filenames, like ":" in filenames in > cross-platform projects) There's a flag on Windows to open files case-sensitively, if you need that. In any case, I don't see how this can be of any real relevance to porting GIT. As for ":" in file names, simply don't use it, like you don't use white space or characters below 32 decimal: it's inconvenient, even if it's allowed. > - no acceptable level of performance in filesystem and VFS (readdir, > stat, open and read/write are annoyingly slow) With what libraries? Native `stat' and `readdir' are quite fast. Perhaps you mean the ported glibc (libgw32c), where `readdir' is indeed painfully slow, but then you don't need to use it. > - it is the only OS in the world with multi-root (/a/b/c and /a/b/c > can be not the same, depending on what current "drive" is) So what? on Unix "a/b/c" can be not the same. Both cases are simply not complete file names, that's all. No one said there must be a single root for all volumes, it's the Posix jingoism creeping in again. > and multi-cwd No longer a problem on Windows versions since 2000. > - no real "mmap" (which kills perfomance and complicates code) You only need mmap because you are accustomed to use it on GNU/Linux. > Interprocess communication: > > - no reliable text environment (I'm programming in the damn thing for > 10 years and I still don't know how to pass an environment variable > _for_sure_) > > - it has only one argument (limited in size) passed to started > programs, which means that there is no possible way to safely pass > file and text arguments on command line (more than one, that is) Not enough context, so I cannot talk intelligently about this. Why do you need interprocess communication in the first place? why not simply give birth to a subsidiary process and pass it a command line (which can be up to 32KB)? From MAILER-DAEMON Sun Oct 14 18:42:36 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhCAN-00035o-T1 for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 18:42:35 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhBjd-0005Ky-BA for make-w32@gnu.org; Sun, 14 Oct 2007 18:14:57 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhBjc-0005Kd-6C for make-w32@gnu.org; Sun, 14 Oct 2007 18:14:56 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhBjb-0005Ka-U0 for make-w32@gnu.org; Sun, 14 Oct 2007 18:14:56 -0400 Received: from mo-p07-ob.rzone.de ([81.169.146.189]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhBjX-0000RY-RQ; Sun, 14 Oct 2007 18:14:52 -0400 Received: from tigra.home (Fc8e3.f.strato-dslnet.de [195.4.200.227]) by post.webmailer.de (klopstock mo56) (RZmta 13.4) with ESMTP id 5033f1j9ELUH9I ; Mon, 15 Oct 2007 00:14:46 +0200 (MEST) (envelope-from: ) Received: from steel.home (steel.home [192.168.1.2]) by tigra.home (Postfix) with ESMTP id 8B25A277AE; Mon, 15 Oct 2007 00:14:46 +0200 (CEST) Received: by steel.home (Postfix, from userid 1000) id 22A6356D22; Mon, 15 Oct 2007 00:14:46 +0200 (CEST) Date: Mon, 15 Oct 2007 00:14:46 +0200 From: Alex Riesen To: Johannes Schindelin Message-ID: <20071014221446.GC2776@steel.home> References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.15+20070412 (2007-04-11) X-RZG-AUTH: z4gQVF2k5XWuW3CcuQaEWow2U+g= X-RZG-CLASS-ID: mo07 X-detected-kernel: by monty-python.gnu.org: Solaris 10 (beta) X-Mailman-Approved-At: Sun, 14 Oct 2007 18:42:34 -0400 Cc: Andreas Ericsson , git list , Make Windows Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Alex Riesen List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 22:14:58 -0000 Johannes Schindelin, Sun, Oct 14, 2007 22:14:25 +0200: > On Sun, 14 Oct 2007, Andreas Ericsson wrote: > > Johannes Schindelin wrote: > > > > > I do not see any reason why libification helps the user experience on > > > Windows. > > > > I was under the impression that the windows port suffers from Windows' > > lack of a proper fork() and friends and that a proper library would help > > solving those problems. Perhaps I was misinformed. > > It suffered. Until Hannes Sixt did a very fine job which cumulated in the > patch series he posted yesterday. Of course, this work is the reason > msysGit is functional. > Re "functional". Have to remind something (besides the fork): Filesystem: - no proper VFS (can't do anything with files opened elsewhere, and we have not enough error handling and diagnostic output to detect the problems) - no proper filename semantics (case-insensitivity and stupid rules for allowed characters in filenames, like ":" in filenames in cross-platform projects) - no acceptable level of performance in filesystem and VFS (readdir, stat, open and read/write are annoyingly slow) - it is the only OS in the world with multi-root (/a/b/c and /a/b/c can be not the same, depending on what current "drive" is) and multi-cwd, which hasn't had formed itself into a problem yet, but surely will - no real "mmap" (which kills perfomance and complicates code) Interprocess communication: - no reliable text environment (I'm programming in the damn thing for 10 years and I still don't know how to pass an environment variable _for_sure_) - it has only one argument (limited in size) passed to started programs, which means that there is no possible way to safely pass file and text arguments on command line (more than one, that is) From MAILER-DAEMON Sun Oct 14 18:59:42 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhCQv-0002xK-V7 for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 18:59:41 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhCQt-0002wP-Sa for make-w32@gnu.org; Sun, 14 Oct 2007 18:59:39 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhCQs-0002w9-4G for make-w32@gnu.org; Sun, 14 Oct 2007 18:59:39 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhCQr-0002w6-VA for make-w32@gnu.org; Sun, 14 Oct 2007 18:59:37 -0400 Received: from mail.artimi.com ([194.72.81.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhCQr-0007i7-Hr for make-w32@gnu.org; Sun, 14 Oct 2007 18:59:37 -0400 Received: from rainbow ([192.168.8.46]) by mail.artimi.com with Microsoft SMTPSVC(6.0.3790.3959); Sun, 14 Oct 2007 23:59:35 +0100 From: "Dave Korn" To: "'Alex Riesen'" , "'Johannes Schindelin'" References: <1192293466.17584.95.camel@homebase.localnet><1192381040.4908.57.camel@homebase.localnet><1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr><47125F74.9050600@op5.se><47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> Date: Sun, 14 Oct 2007 23:59:35 +0100 Message-ID: <023101c80eb5$e3b6b310$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <20071014221446.GC2776@steel.home> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138 Thread-Index: AcgOs4fHch/7bR+URh6XAXw0UYKR0AAAadQg X-OriginalArrivalTime: 14 Oct 2007 22:59:35.0261 (UTC) FILETIME=[E3BAF8D0:01C80EB5] X-detected-kernel: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ Cc: 'Andreas Ericsson' , 'Make Windows' , 'git list' Subject: RE: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 22:59:40 -0000 On 14 October 2007 23:15, Alex Riesen wrote: > Interprocess communication: > > - no reliable text environment (I'm programming in the damn thing for > 10 years and I still don't know how to pass an environment variable > _for_sure_) > > - it has only one argument (limited in size) passed to started > programs, which means that there is no possible way to safely pass > file and text arguments on command line (more than one, that is) Whuh? http://msdn2.microsoft.com/en-us/library/y5zz48s1(VS.80).aspx cheers, DaveK -- Can't think of a witty .sigline today.... From MAILER-DAEMON Sun Oct 14 20:36:55 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhDx1-00073F-Az for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 20:36:55 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhDwy-00071L-RS for make-w32@gnu.org; Sun, 14 Oct 2007 20:36:52 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhDwy-00070z-B1 for make-w32@gnu.org; Sun, 14 Oct 2007 20:36:52 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhDwy-00070w-5a for make-w32@gnu.org; Sun, 14 Oct 2007 20:36:52 -0400 Received: from dessent.net ([69.60.119.225]) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhDwv-0004fY-5S; Sun, 14 Oct 2007 20:36:49 -0400 Received: from localhost ([127.0.0.1] helo=dessent.net) by dessent.net with esmtp (Exim 4.50) id 1IhDwm-0006ee-9t; Mon, 15 Oct 2007 00:36:40 +0000 Message-ID: <4712B616.165BBF8D@dessent.net> Date: Sun, 14 Oct 2007 17:36:38 -0700 From: Brian Dessent Organization: My own little world... X-Mailer: Mozilla 4.79 [en] (Windows NT 5.0; U) X-Accept-Language: en,en-US MIME-Version: 1.0 To: Johannes Schindelin References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.4-2.6 Cc: Alex Riesen , make-w32@gnu.org, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: git@vger.kernel.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 00:36:53 -0000 Johannes Schindelin wrote: > The problem is that on Windows, you cannot keep a file open and delete it > at the same time. This is an issue in Windows' equivalent of VFS. > > A neat trick to work with temporary files without permission issues is to > open the file and delete it right after that. This does not work on > Windows. You can achieve the same thing on Windows with CreateFile() by setting the dwShareMode parameter to zero and setting the FILE_FLAG_DELETE_ON_CLOSE attribute on dwFlagsAndAttributes. This results in a file that cannot be opened or read by any other process and that will be automatically deleted when all open handles are closed. > I think Alex means this: you can have C:\a\b\c and D:\a\b\c. So depending > on which drive you are, you mean one or the other. Just comparing the > paths is not enough. This just means that you have to consider the drive letter as part of the filename. > > > - no real "mmap" (which kills perfomance and complicates code) > > > > You only need mmap because you are accustomed to use it on GNU/Linux. > > Yes. And we rely on the performance very much. Windows may not call it mmap() but it most certainly has memory-mapped file IO: . Brian From MAILER-DAEMON Sun Oct 14 21:45:10 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhF14-00068D-6s for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 21:45:10 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhF13-000684-3h for make-w32@gnu.org; Sun, 14 Oct 2007 21:45:09 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhF11-00067p-Ho for make-w32@gnu.org; Sun, 14 Oct 2007 21:45:07 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhF11-00067k-B4 for make-w32@gnu.org; Sun, 14 Oct 2007 21:45:07 -0400 Received: from main.gmane.org ([80.91.229.2] helo=ciao.gmane.org) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhF10-0001FF-Qq for make-w32@gnu.org; Sun, 14 Oct 2007 21:45:07 -0400 Received: from root by ciao.gmane.org with local (Exim 4.43) id 1IhF0w-0001mq-8N for make-w32@gnu.org; Mon, 15 Oct 2007 01:45:02 +0000 Received: from 83-65-235-226.dynamic.xdsl-line.inode.at ([83.65.235.226]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 15 Oct 2007 01:45:02 +0000 Received: from gebi by 83-65-235-226.dynamic.xdsl-line.inode.at with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 15 Oct 2007 01:45:02 +0000 X-Injected-Via-Gmane: http://gmane.org/ To: make-w32@gnu.org From: Michael Gebetsroither Followup-To: gmane.comp.version-control.git Date: Mon, 15 Oct 2007 02:46:11 +0200 Organization: www.grml.org Lines: 15 Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 83-65-235-226.dynamic.xdsl-line.inode.at User-Agent: slrn/0.9.8.1pl1 (Debian) Sender: news X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 01:45:09 -0000 ["Followup-To:" header set to gmane.comp.version-control.git.] > - it is the only OS in the world with multi-root (/a/b/c and /a/b/c > can be not the same, depending on what current "drive" is) and > multi-cwd, which hasn't had formed itself into a problem yet, but > surely will Thats true for linux too. /a/b/c and /a/b/c can be 2 totally different files depending on the vfs namespace you are one. cu, michael -- It's already too late! From MAILER-DAEMON Sun Oct 14 23:48:50 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhGwk-0001v0-0t for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 23:48:50 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhD9e-0006AZ-GA for make-w32@gnu.org; Sun, 14 Oct 2007 19:45:54 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhD9d-00069C-2p for make-w32@gnu.org; Sun, 14 Oct 2007 19:45:53 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhD9c-00068x-QX for make-w32@gnu.org; Sun, 14 Oct 2007 19:45:52 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IhD9c-00069r-8a for make-w32@gnu.org; Sun, 14 Oct 2007 19:45:52 -0400 Received: (qmail invoked by alias); 14 Oct 2007 23:45:50 -0000 Received: from wbgn013.biozentrum.uni-wuerzburg.de (EHLO openvpn-client) [132.187.25.13] by mail.gmx.net (mp038) with SMTP; 15 Oct 2007 01:45:50 +0200 X-Authenticated: #1490710 X-Provags-ID: V01U2FsdGVkX1+m/AcGZUKmtLbTqFW3NmO7eoLDnuWnuJXXuy0Wj+ F/BLxBBYt6d8TO Date: Mon, 15 Oct 2007 00:45:47 +0100 (BST) From: Johannes Schindelin X-X-Sender: gene099@racer.site To: Eli Zaretskii In-Reply-To: Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Sun, 14 Oct 2007 23:48:46 -0400 Cc: ae@op5.se, Alex Riesen , git@vger.kernel.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 23:45:54 -0000 Hi, On Mon, 15 Oct 2007, Eli Zaretskii wrote: > Alex Riesen said: > > > - no proper VFS > > I'm not sure what you are talking about. What VFS do you use on > GNU/Linux that cannot work on Windows, and why do you use it? The problem is that on Windows, you cannot keep a file open and delete it at the same time. This is an issue in Windows' equivalent of VFS. A neat trick to work with temporary files without permission issues is to open the file and delete it right after that. This does not work on Windows. > > - no proper filename semantics (case-insensitivity and stupid rules for > > allowed characters in filenames, like ":" in filenames in > > cross-platform projects) > > There's a flag on Windows to open files case-sensitively, if you need > that. The problem is not so much opening, but determining if an existing file and a file in the index have the same name. For example, "README" in the index, but "readme" in the working directory, will be handled as "deleted/untracked" by the current machinery. IOW git will not know that what it gets from readdir() as "readme" really is the same file as "README" in the index. > > - no acceptable level of performance in filesystem and VFS (readdir, > > stat, open and read/write are annoyingly slow) > > With what libraries? Native `stat' and `readdir' are quite fast. > Perhaps you mean the ported glibc (libgw32c), where `readdir' is indeed > painfully slow, but then you don't need to use it. No, native. Once you experienced the performance of git on Linux, then rebooted into Windows on the same box, you will grow a beard while waiting for trivial operations. Sure, git kicks ass on Windows, but only as compared to other programs _on Windows_. > > - it is the only OS in the world with multi-root (/a/b/c and /a/b/c > > can be not the same, depending on what current "drive" is) > > So what? on Unix "a/b/c" can be not the same. Both cases are simply not > complete file names, that's all. No one said there must be a single > root for all volumes, it's the Posix jingoism creeping in again. I think Alex means this: you can have C:\a\b\c and D:\a\b\c. So depending on which drive you are, you mean one or the other. Just comparing the paths is not enough. > > - no real "mmap" (which kills perfomance and complicates code) > > You only need mmap because you are accustomed to use it on GNU/Linux. Yes. And we rely on the performance very much. Hth, Dscho From MAILER-DAEMON Sun Oct 14 23:48:50 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhGwk-0001vR-E8 for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 23:48:50 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhDJV-0002Jf-2f for make-w32@gnu.org; Sun, 14 Oct 2007 19:56:05 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhDJT-0002JU-Li for make-w32@gnu.org; Sun, 14 Oct 2007 19:56:03 -0400 Received: from mail.op5.se ([193.201.96.20]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhDJS-0007mz-VG; Sun, 14 Oct 2007 19:56:03 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.op5.se (Postfix) with ESMTP id 2812B173068B; Mon, 15 Oct 2007 01:55:45 +0200 (CEST) X-Virus-Scanned: amavisd-new at X-Spam-Score: -2.499 Received: from mail.op5.se ([127.0.0.1]) by localhost (mail.op5.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Q4ugQmtwSguT; Mon, 15 Oct 2007 01:55:44 +0200 (CEST) Received: from nox.op5.se (unknown [172.27.77.30]) by mail.op5.se (Postfix) with ESMTP id 8F93B173068A; Mon, 15 Oct 2007 01:55:43 +0200 (CEST) Message-ID: <4712AC8C.9050006@op5.se> Date: Mon, 15 Oct 2007 01:55:56 +0200 From: Andreas Ericsson User-Agent: Thunderbird 2.0.0.5 (X11/20070727) MIME-Version: 1.0 To: Eli Zaretskii References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) X-Mailman-Approved-At: Sun, 14 Oct 2007 23:48:46 -0400 Cc: git@vger.kernel.org, Alex Riesen , Johannes.Schindelin@gmx.de, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 23:56:05 -0000 Eli Zaretskii wrote: >> Date: Mon, 15 Oct 2007 00:14:46 +0200 >> From: Alex Riesen >> Cc: Andreas Ericsson , Benoit SIGOURE , >> git list , Eli Zaretskii , >> Make Windows >> >> Re "functional". Have to remind something (besides the fork): > > That's a 20-20 hindsight: if you deliberately write a program to rely > heavily on Posix-isms, don't be surprised when you discover that it > cannot be easily ported to other platforms. > True. It was originally developed because Linux kernel development came to a stand-still and needed an scm quickly. Since the original design worked out nicely, nobody bothered (then) about possible future porting issues. Windows is still a second class citizen, but that's true for pretty much every unix-born application out there, so I'm not all that stressed out about it. > >> - no proper filename semantics (case-insensitivity and stupid rules for >> allowed characters in filenames, like ":" in filenames in >> cross-platform projects) > > There's a flag on Windows to open files case-sensitively, if you need > that. In any case, I don't see how this can be of any real relevance > to porting GIT. Because having Path/foo path/Foo PATH path/foo is possible in git's native playground, but not on windows, so it can quite seriously hamper cross-platform cooperation. When that happens, users usually start blaming the tools in use. Browse the list archives for HFS and you'll see what I mean, although come to think of it, the HFS problems might actually be worse, since HFS reports case-changes while not actually being case-sensitive. > As for ":" in file names, simply don't use it, like > you don't use white space or characters below 32 decimal: it's > inconvenient, even if it's allowed. > It's still a real problem because sooner or later someone will use that, and it needs to be handled with a bit more grace than just bombing out. > >> - no real "mmap" (which kills perfomance and complicates code) > > You only need mmap because you are accustomed to use it on GNU/Linux. > Not really. mmap() provides a real performance boost when reading large repos, due to the sliding window code that handles pack-files. mmap was invented for occasions like that, and was allowed to endure because it was a much better solution than simply read(fd, buf, st.st_size) and moving pointers around. >> Interprocess communication: >> >> - no reliable text environment (I'm programming in the damn thing for >> 10 years and I still don't know how to pass an environment variable >> _for_sure_) >> >> - it has only one argument (limited in size) passed to started >> programs, which means that there is no possible way to safely pass >> file and text arguments on command line (more than one, that is) > > Not enough context, so I cannot talk intelligently about this. Why do > you need interprocess communication in the first place? Because some of the commands operate on large data-sets that are best passed as a stream. It's ridiculously easy to set that up on unix, but (afaiu) quite troublesome under windows. > why not simply > give birth to a subsidiary process and pass it a command line (which > can be up to 32KB)? I believe work is in progress that will run things as threads rather than using fork()+execve(). 32KiB of data is nowhere near enough to sustain many of the more data-hungry commands. Or rather, it won't be once the repository has grown passed 50-odd revisions. All that being said, welcome to the git mailing list. Hopefully you can help iron out the wrinkles on windows. You seem to have a fairly good grasp of what's available there, and I'm sure the msys team would be pretty happy to get a few patches to speed them on their way. -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231 From MAILER-DAEMON Sun Oct 14 23:48:51 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhGwk-0001vn-Op for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 23:48:50 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhDON-0006EJ-KE for make-w32@gnu.org; Sun, 14 Oct 2007 20:01:07 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhDOM-0006E4-5m for make-w32@gnu.org; Sun, 14 Oct 2007 20:01:07 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhDOM-0006E1-30 for make-w32@gnu.org; Sun, 14 Oct 2007 20:01:06 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IhDOL-0008VP-Fp for make-w32@gnu.org; Sun, 14 Oct 2007 20:01:05 -0400 Received: (qmail invoked by alias); 15 Oct 2007 00:01:04 -0000 Received: from wbgn013.biozentrum.uni-wuerzburg.de (EHLO openvpn-client) [132.187.25.13] by mail.gmx.net (mp049) with SMTP; 15 Oct 2007 02:01:04 +0200 X-Authenticated: #1490710 X-Provags-ID: V01U2FsdGVkX1+SKUpmnwCSdW7KRmNrpeithHmUAwebAQ8+up3Euj K2B9Iz08rA58pU Date: Mon, 15 Oct 2007 01:01:00 +0100 (BST) From: Johannes Schindelin X-X-Sender: gene099@racer.site To: Dave Korn In-Reply-To: <023101c80eb5$e3b6b310$2e08a8c0@CAM.ARTIMI.COM> Message-ID: References: <1192293466.17584.95.camel@homebase.localnet><1192381040.4908.57.camel@homebase.localnet><1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr><47125F74.9050600@op5.se><47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <023101c80eb5$e3b6b310$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Sun, 14 Oct 2007 23:48:46 -0400 Cc: 'Andreas Ericsson' , 'Alex Riesen' , 'Make Windows' , 'git list' Subject: RE: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 00:01:07 -0000 Hi, On Sun, 14 Oct 2007, Dave Korn wrote: > On 14 October 2007 23:15, Alex Riesen wrote: > > > Interprocess communication: > > > > - no reliable text environment (I'm programming in the damn thing for > > 10 years and I still don't know how to pass an environment variable > > _for_sure_) > > > > - it has only one argument (limited in size) passed to started > > programs, which means that there is no possible way to safely pass > > file and text arguments on command line (more than one, that is) > > Whuh? > > http://msdn2.microsoft.com/en-us/library/y5zz48s1(VS.80).aspx It does have an exec() call, yes, since that is required by the C standard. But internally, it converts that into one single command line. In corner cases, you find problems with that. Hth, Dscho From MAILER-DAEMON Sun Oct 14 23:48:51 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhGwl-0001wI-7a for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 23:48:51 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhDRD-0007W2-WD for make-w32@gnu.org; Sun, 14 Oct 2007 20:04:04 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhDRC-0007Vq-K6 for make-w32@gnu.org; Sun, 14 Oct 2007 20:04:03 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhDRC-0007Vn-GW for make-w32@gnu.org; Sun, 14 Oct 2007 20:04:02 -0400 Received: from mail.davidb.org ([66.93.32.219]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhDRB-0000PN-Tk for make-w32@gnu.org; Sun, 14 Oct 2007 20:04:02 -0400 Received: from davidb by mail.davidb.org with local (Exim 4.67 #1 (Debian)) id 1IhDQx-0003TA-Rs; Sun, 14 Oct 2007 17:03:47 -0700 Date: Sun, 14 Oct 2007 17:03:47 -0700 From: David Brown To: Dave Korn Message-ID: <20071015000347.GA13033@old.davidb.org> Mail-Followup-To: Dave Korn , 'Alex Riesen' , 'Johannes Schindelin' , 'Andreas Ericsson' , 'git list' , 'Make Windows' References: <20071014221446.GC2776@steel.home> <023101c80eb5$e3b6b310$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: <023101c80eb5$e3b6b310$2e08a8c0@CAM.ARTIMI.COM> User-Agent: Mutt/1.5.16 (2007-06-09) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) X-Mailman-Approved-At: Sun, 14 Oct 2007 23:48:46 -0400 Cc: 'Andreas Ericsson' , 'Alex Riesen' , 'git list' , 'Johannes Schindelin' , 'Make Windows' Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 00:04:04 -0000 On Sun, Oct 14, 2007 at 11:59:35PM +0100, Dave Korn wrote: >On 14 October 2007 23:15, Alex Riesen wrote: > >> Interprocess communication: >> >> - it has only one argument (limited in size) passed to started >> programs, which means that there is no possible way to safely pass >> file and text arguments on command line (more than one, that is) > > Whuh? > >http://msdn2.microsoft.com/en-us/library/y5zz48s1(VS.80).aspx The MS exec* calls just concatenate all of the argv arguments, separating them with a space into a single buffer. Look at the general _exec* page: http://msdn2.microsoft.com/en-us/library/431x4c1w(VS.80).aspx and read the first "Note" section. If you know what the library on the other end is doing to re-parse the arguments back into separate strings, it might be possible to quote things enough to handle names with spaces, but it is hard. David From MAILER-DAEMON Sun Oct 14 23:48:52 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhGwm-0001xo-5U for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 23:48:52 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhEhZ-0001Rb-1Q for make-w32@gnu.org; Sun, 14 Oct 2007 21:25:01 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhEhX-0001Pv-4x for make-w32@gnu.org; Sun, 14 Oct 2007 21:25:00 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhEhX-0001Po-11 for make-w32@gnu.org; Sun, 14 Oct 2007 21:24:59 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IhEhW-0005PN-Bq for make-w32@gnu.org; Sun, 14 Oct 2007 21:24:58 -0400 Received: (qmail invoked by alias); 15 Oct 2007 01:24:57 -0000 Received: from wbgn013.biozentrum.uni-wuerzburg.de (EHLO openvpn-client) [132.187.25.13] by mail.gmx.net (mp020) with SMTP; 15 Oct 2007 03:24:57 +0200 X-Authenticated: #1490710 X-Provags-ID: V01U2FsdGVkX1+VYQUiHAOVnTLufZ1ozA4M2D7FsLToEpIFdF61Ae a37zIIfvHdVdJT Date: Mon, 15 Oct 2007 02:24:53 +0100 (BST) From: Johannes Schindelin X-X-Sender: gene099@racer.site To: git@vger.kernel.org In-Reply-To: Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Sun, 14 Oct 2007 23:48:46 -0400 Cc: ae@op5.se, Alex Riesen , make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 01:25:01 -0000 Hi, On Mon, 15 Oct 2007, Johannes Schindelin wrote: > All this supporting Windows business is certainly possible, if tedious. To clarify: git works on Windows. Most of the time, that is. But all those changes that were necessary to go there have not yet found their way into the official git.git repository. Ciao, Dscho From MAILER-DAEMON Sun Oct 14 23:48:52 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhGwl-0001x3-OX for mharc-make-w32@gnu.org; Sun, 14 Oct 2007 23:48:51 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhEfd-0000Oy-BO for make-w32@gnu.org; Sun, 14 Oct 2007 21:23:01 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhEfa-0000Lp-U0 for make-w32@gnu.org; Sun, 14 Oct 2007 21:23:00 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhEfa-0000Lm-Ne for make-w32@gnu.org; Sun, 14 Oct 2007 21:22:58 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IhEfa-0004zD-6U for make-w32@gnu.org; Sun, 14 Oct 2007 21:22:58 -0400 Received: (qmail invoked by alias); 15 Oct 2007 01:22:57 -0000 Received: from wbgn013.biozentrum.uni-wuerzburg.de (EHLO openvpn-client) [132.187.25.13] by mail.gmx.net (mp018) with SMTP; 15 Oct 2007 03:22:57 +0200 X-Authenticated: #1490710 X-Provags-ID: V01U2FsdGVkX1+kgrRSRI6kYqrhFq4FhN4SV271xblXGlLfSIA/8p SvL7a1/IUiL0ZM Date: Mon, 15 Oct 2007 02:22:53 +0100 (BST) From: Johannes Schindelin X-X-Sender: gene099@racer.site To: git@vger.kernel.org In-Reply-To: <4712B616.165BBF8D@dessent.net> Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Sun, 14 Oct 2007 23:48:46 -0400 Cc: ae@op5.se, Alex Riesen , make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 01:23:01 -0000 Hi, On Sun, 14 Oct 2007, Brian Dessent wrote: > Johannes Schindelin wrote: > > > The problem is that on Windows, you cannot keep a file open and delete > > it at the same time. This is an issue in Windows' equivalent of VFS. > > > > A neat trick to work with temporary files without permission issues is > > to open the file and delete it right after that. This does not work > > on Windows. > > You can achieve the same thing on Windows with CreateFile() by setting > the dwShareMode parameter to zero and setting the > FILE_FLAG_DELETE_ON_CLOSE attribute on dwFlagsAndAttributes. This > results in a file that cannot be opened or read by any other process and > that will be automatically deleted when all open handles are closed. Aha. So to support Windows, we have to wrap all sites that use that trick, and special case that #ifdef __MINGW32__. > > I think Alex means this: you can have C:\a\b\c and D:\a\b\c. So > > depending on which drive you are, you mean one or the other. Just > > comparing the paths is not enough. > > This just means that you have to consider the drive letter as part of > the filename. So to support Windows, we have to special case having a ":" as second character in the filename. > > > > - no real "mmap" (which kills perfomance and complicates code) > > > > > > You only need mmap because you are accustomed to use it on GNU/Linux. > > > > Yes. And we rely on the performance very much. > > Windows may not call it mmap() but it most certainly has memory-mapped > file IO: > . Yes, but there are still incompatibilities with POSIX. Again, when you did not close the file, you cannot delete (or rename) it. So, to support Windows, ... All this supporting Windows business is certainly possible, if tedious. Ciao, Dscho From MAILER-DAEMON Mon Oct 15 00:06:51 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhHEB-0003hG-EH for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 00:06:51 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhHE9-0003gr-6S for make-w32@gnu.org; Mon, 15 Oct 2007 00:06:49 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhHE7-0003ge-Lp for make-w32@gnu.org; Mon, 15 Oct 2007 00:06:48 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhHE7-0003gb-J4 for make-w32@gnu.org; Mon, 15 Oct 2007 00:06:47 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhHE7-00062U-Aj for make-w32@gnu.org; Mon, 15 Oct 2007 00:06:47 -0400 Received: from HOME-C4E4A596F7 (IGLD-84-229-224-70.inter.net.il [84.229.224.70]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DVY95366 (AUTH halo1); Mon, 15 Oct 2007 06:06:43 +0200 (IST) Date: Mon, 15 Oct 2007 06:06:42 +0200 Message-Id: From: Eli Zaretskii To: Johannes Schindelin In-reply-to: (message from Johannes Schindelin on Mon, 15 Oct 2007 00:45:47 +0100 (BST)) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: ae@op5.se, raa.lkml@gmail.com, git@vger.kernel.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 04:06:49 -0000 > Date: Mon, 15 Oct 2007 00:45:47 +0100 (BST) > From: Johannes Schindelin > cc: Alex Riesen , ae@op5.se, tsuna@lrde.epita.fr, > git@vger.kernel.org, make-w32@gnu.org > > The problem is that on Windows, you cannot keep a file open and delete it > at the same time. That is no longer true, for quite some time. NT4 and later versions support that almost exactly like Posix filesystems. > > > - no acceptable level of performance in filesystem and VFS (readdir, > > > stat, open and read/write are annoyingly slow) > > > > With what libraries? Native `stat' and `readdir' are quite fast. > > Perhaps you mean the ported glibc (libgw32c), where `readdir' is indeed > > painfully slow, but then you don't need to use it. > > No, native. > > Once you experienced the performance of git on Linux, then rebooted into > Windows on the same box, you will grow a beard while waiting for trivial > operations. Maybe GIT assumes too much about `readdir' and `stat', and should refactor its code into better abstractions. > > > - it is the only OS in the world with multi-root (/a/b/c and /a/b/c > > > can be not the same, depending on what current "drive" is) > > > > So what? on Unix "a/b/c" can be not the same. Both cases are simply not > > complete file names, that's all. No one said there must be a single > > root for all volumes, it's the Posix jingoism creeping in again. > > I think Alex means this: you can have C:\a\b\c and D:\a\b\c. So depending > on which drive you are, you mean one or the other. Just comparing the > paths is not enough. What _I_ meant is that the C: part is part of the full file name, exactly like the leading / is on Unix. > > > - No real "mmap" (which kills perfomance and complicates code) > > > > You only need mmap because you are accustomed to use it on GNU/Linux. > > Yes. And we rely on the performance very much. There's no need for mmap to get memory performance, except if sbrk and friends are too slow. From MAILER-DAEMON Mon Oct 15 00:13:02 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhHKA-0007A4-Ly for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 00:13:02 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhHK8-00079w-Px for make-w32@gnu.org; Mon, 15 Oct 2007 00:13:00 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhHK7-00079L-9c for make-w32@gnu.org; Mon, 15 Oct 2007 00:13:00 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhHK6-00079B-Vl for make-w32@gnu.org; Mon, 15 Oct 2007 00:12:59 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhHK6-0006gq-LZ for make-w32@gnu.org; Mon, 15 Oct 2007 00:12:58 -0400 Received: from HOME-C4E4A596F7 (IGLD-84-229-224-70.inter.net.il [84.229.224.70]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DVY97264 (AUTH halo1); Mon, 15 Oct 2007 06:12:55 +0200 (IST) Date: Mon, 15 Oct 2007 06:12:55 +0200 Message-Id: From: Eli Zaretskii To: Johannes Schindelin In-reply-to: (message from Johannes Schindelin on Mon, 15 Oct 2007 02:22:53 +0100 (BST)) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: ae@op5.se, raa.lkml@gmail.com, git@vger.kernel.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 04:13:01 -0000 > Date: Mon, 15 Oct 2007 02:22:53 +0100 (BST) > From: Johannes Schindelin > cc: Eli Zaretskii , Alex Riesen , ae@op5.se, > tsuna@lrde.epita.fr, make-w32@gnu.org > > > You can achieve the same thing on Windows with CreateFile() by setting > > the dwShareMode parameter to zero and setting the > > FILE_FLAG_DELETE_ON_CLOSE attribute on dwFlagsAndAttributes. This > > results in a file that cannot be opened or read by any other process and > > that will be automatically deleted when all open handles are closed. > > Aha. So to support Windows, we have to wrap all sites that use that > trick, and special case that #ifdef __MINGW32__. No, you need to think in abstractions rather than POSIX-isms, and then let each platform implement those abstractions as appropriate. > > > I think Alex means this: you can have C:\a\b\c and D:\a\b\c. So > > > depending on which drive you are, you mean one or the other. Just > > > comparing the paths is not enough. > > > > This just means that you have to consider the drive letter as part of > > the filename. > > So to support Windows, we have to special case having a ":" as second > character in the filename. No, you need to think abstractions like `absolute_file_name' and `dir_separator'. > > > > > - no real "mmap" (which kills perfomance and complicates code) > > > > > > > > You only need mmap because you are accustomed to use it on GNU/Linux. > > > > > > Yes. And we rely on the performance very much. > > > > Windows may not call it mmap() but it most certainly has memory-mapped > > file IO: > > . > > Yes, but there are still incompatibilities with POSIX. Stop thinking POSIX. Think abstractions that are common to POSIX and non-POSIX systems. If you think POSIX, don't be surprised that it won't port. > Again, when you did not close the file, you cannot delete (or > rename) it. Yes, you can, nowadays. But that doesn't mean it was TRT to use such dirty tricks to implement temporary files or security. One needs to think in abstractions again, and leave the implementation to each platform. > All this supporting Windows business is certainly possible, if tedious. Only if the program was written with disregard to anything but POSIX. From MAILER-DAEMON Mon Oct 15 01:43:59 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhIkB-0008Nl-CA for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 01:43:59 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhIbu-0005e7-Pc for make-w32@gnu.org; Mon, 15 Oct 2007 01:35:26 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhIbu-0005cx-2Y for make-w32@gnu.org; Mon, 15 Oct 2007 01:35:26 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhIbt-0005cn-W6 for make-w32@gnu.org; Mon, 15 Oct 2007 01:35:26 -0400 Received: from hu-out-0506.google.com ([72.14.214.233]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhIbt-00029l-IM for make-w32@gnu.org; Mon, 15 Oct 2007 01:35:25 -0400 Received: by hu-out-0506.google.com with SMTP id 23so1150694huc for ; Sun, 14 Oct 2007 22:35:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=EEPvMVnq4Oq0477uci3BaxorxMObdkIfjGZr8tKJPlU=; b=ZnHsZgu+z26CIcZA8I5/q3aba9yCPJDMUAsfwxAZi5dDY7OEZ3SVOE/7yawC+iNtrMGwCIEGgz+dNlbbPJZeunfIt0yVSo7QyhLrW+RyVMdshN/AcbiniF1dhAc/m4CY+/cui9QajJ8u3raeAb2LTGr4FaQ8dR3X8K4KO3hcihM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=ZLKdD2Gj8eq6EJIcjlappS5YdeBPiqVFIQa68XcdEQTnwx7aNwADIsjzvjm4fg/wFefFqwn62cW/67zjYu+cB0c+lB+381n7ByorXecbiqtm8ITen4CK2cOr0uNaU4Evv9szIpewB0Dr2WgCnJkiY53qa1oAG8bjfoxlCfnaFUU= Received: by 10.66.252.8 with SMTP id z8mr7500368ugh.1192426522485; Sun, 14 Oct 2007 22:35:22 -0700 (PDT) Received: by 10.67.22.19 with HTTP; Sun, 14 Oct 2007 22:35:22 -0700 (PDT) Message-ID: <46a038f90710142235i6d7e39c4qdb5d33941352e1aa@mail.gmail.com> Date: Mon, 15 Oct 2007 18:35:22 +1300 From: "Martin Langhoff" To: "Johannes Schindelin" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) X-Mailman-Approved-At: Mon, 15 Oct 2007 01:43:57 -0400 Cc: git list , Make Windows Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 05:35:27 -0000 On 10/15/07, Johannes Schindelin wrote: > There is msysGit. This project is nearing to its first beta, being > self-hosted since mid-August IIRC. I've been using it recently, I have to say it's pretty impressive - you can use it from cmd.com or from a bash window (courtesy of the msys environment included). The GUIs that ship with git are there (git-gui, gitk). I use gitk extensively, and it works *great*. My work-style is of a shell window for status/diff/commit actions and one or more gitk windows for browsing of proj history. You can use git-gui for a visual status/git/commit workflow, or qgit. qgit is more integrated, and might feel more "at home" for users that expect something more MDI-ish. cheers. martin From MAILER-DAEMON Mon Oct 15 01:56:44 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhIwV-0007so-WB for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 01:56:44 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhIwU-0007sj-B5 for make-w32@gnu.org; Mon, 15 Oct 2007 01:56:42 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhIwS-0007sX-Sl for make-w32@gnu.org; Mon, 15 Oct 2007 01:56:41 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhIwS-0007sU-PD for make-w32@gnu.org; Mon, 15 Oct 2007 01:56:40 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhIwS-0000px-Dc for make-w32@gnu.org; Mon, 15 Oct 2007 01:56:40 -0400 Received: from eliz by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1IhIwR-0006be-Ki; Mon, 15 Oct 2007 01:56:39 -0400 From: Eli Zaretskii To: Johannes Schindelin In-reply-to: (message from Johannes Schindelin on Mon, 15 Oct 2007 00:45:47 +0100 (BST)) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> MIME-version: 1.0 Content-type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Message-Id: Date: Mon, 15 Oct 2007 01:56:39 -0400 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: ae@op5.se, raa.lkml@gmail.com, git@vger.kernel.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 05:56:42 -0000 > Date: Mon, 15 Oct 2007 00:45:47 +0100 (BST) > From: Johannes Schindelin > cc: Alex Riesen , ae@op5.se, tsuna@lrde.epita.fr, > git@vger.kernel.org, make-w32@gnu.org > > The problem is not so much opening, but determining if an existing file > and a file in the index have the same name. > > For example, "README" in the index, but "readme" in the working directory, > will be handled as "deleted/untracked" by the current machinery. IOW git > will not know that what it gets from readdir() as "readme" really is the > same file as "README" in the index. That's because you think file names are simple strings and can be compared by simple string comparison. This naìve view is not true even on POSIX systems: "foo/bar" and "/a/b/foo/bar" can be the same file, as well as "/a/b/c/d" and "/x/y/z", given the right symlinks. But for some reason that eludes me, people who are accustomed to POSIX stop right there and in effect say "file names are strings, if we only make them absolute and resolve links". Instead, recognize that file names are not strings (although they inherit some of the strings' traits), and think in terms of "file-name comparison" abstraction; then everything will fall in place just fine. > > > - no acceptable level of performance in filesystem and VFS (readdir, > > > stat, open and read/write are annoyingly slow) > > > > With what libraries? Native `stat' and `readdir' are quite fast. > > Perhaps you mean the ported glibc (libgw32c), where `readdir' is indeed > > painfully slow, but then you don't need to use it. > > No, native. Can you show a test case where this penalty is clearly visible? I'm curious to see the numbers. TIA From MAILER-DAEMON Mon Oct 15 02:04:51 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhJ4N-0001kw-TW for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 02:04:51 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhJ4M-0001kk-D5 for make-w32@gnu.org; Mon, 15 Oct 2007 02:04:50 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhJ4K-0001kP-U2 for make-w32@gnu.org; Mon, 15 Oct 2007 02:04:49 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhJ4K-0001kL-L1 for make-w32@gnu.org; Mon, 15 Oct 2007 02:04:48 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhJ4K-00026s-9k for make-w32@gnu.org; Mon, 15 Oct 2007 02:04:48 -0400 Received: from eliz by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1IhJ4K-00086x-5U; Mon, 15 Oct 2007 02:04:48 -0400 From: Eli Zaretskii To: Johannes Schindelin In-reply-to: (message from Johannes Schindelin on Mon, 15 Oct 2007 02:24:53 +0100 (BST)) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> Message-Id: Date: Mon, 15 Oct 2007 02:04:48 -0400 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: ae@op5.se, raa.lkml@gmail.com, git@vger.kernel.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 06:04:50 -0000 > Date: Mon, 15 Oct 2007 02:24:53 +0100 (BST) > From: Johannes Schindelin > cc: Eli Zaretskii , Alex Riesen , ae@op5.se, > tsuna@lrde.epita.fr, make-w32@gnu.org > > To clarify: git works on Windows. Most of the time, that is. But all > those changes that were necessary to go there have not yet found their way > into the official git.git repository. I, for one, appreciate all the hard work invested in that. While we are at that: can you (or someone else) point me to instructions on how to build the MinGW port of GIT? I found a tarball of the MinGW-ported GIT (v1.5.3, I think), but what I don't seem to be able to find is some kind of HOWTO: what tools I need to have installed, how to configure them (if there are any special issues there), what command(s) to type, etc. Is there anything like that out there, or can someone post such instructions? TIA From MAILER-DAEMON Mon Oct 15 02:08:08 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhJ7Y-00020A-7e for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 02:08:08 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhJ7W-000205-D2 for make-w32@gnu.org; Mon, 15 Oct 2007 02:08:06 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhJ7V-0001zt-2W for make-w32@gnu.org; Mon, 15 Oct 2007 02:08:05 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhJ7U-0001zq-Rt for make-w32@gnu.org; Mon, 15 Oct 2007 02:08:04 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhJ7U-0002bB-If for make-w32@gnu.org; Mon, 15 Oct 2007 02:08:04 -0400 Received: from eliz by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1IhJ7T-0008AC-8b; Mon, 15 Oct 2007 02:08:03 -0400 From: Eli Zaretskii To: David Brown In-reply-to: <20071015000347.GA13033@old.davidb.org> (message from David Brown on Sun, 14 Oct 2007 17:03:47 -0700) References: <20071014221446.GC2776@steel.home> <023101c80eb5$e3b6b310$2e08a8c0@CAM.ARTIMI.COM> <20071015000347.GA13033@old.davidb.org> Message-Id: Date: Mon, 15 Oct 2007 02:08:03 -0400 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: raa.lkml@gmail.com, make-w32@gnu.org, Johannes.Schindelin@gmx.de, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 06:08:06 -0000 > Date: Sun, 14 Oct 2007 17:03:47 -0700 > From: David Brown > Cc: 'Andreas Ericsson' , 'Alex Riesen' , > 'git list' , > 'Johannes Schindelin' , > 'Make Windows' > > The MS exec* calls just concatenate all of the argv arguments, separating > them with a space into a single buffer. True. > If you know what the library on the other end is doing to re-parse the > arguments back into separate strings, it might be possible to quote things > enough to handle names with spaces, but it is hard. It's not hard, it's just a bit of work. And it needs to be done exactly once. From MAILER-DAEMON Mon Oct 15 04:20:25 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhLBZ-0004ud-5l for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 04:20:25 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhLBY-0004uM-Cv for make-w32@gnu.org; Mon, 15 Oct 2007 04:20:24 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhLBW-0004u0-SO for make-w32@gnu.org; Mon, 15 Oct 2007 04:20:24 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhLBW-0004tx-QD for make-w32@gnu.org; Mon, 15 Oct 2007 04:20:22 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhLBW-0000lC-J4 for make-w32@gnu.org; Mon, 15 Oct 2007 04:20:22 -0400 Received: from eliz by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1IhLBW-0006uw-19; Mon, 15 Oct 2007 04:20:22 -0400 From: Eli Zaretskii To: Steffen Prohaska In-reply-to: (message from Steffen Prohaska on Mon, 15 Oct 2007 09:56:40 +0200) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> Message-Id: Date: Mon, 15 Oct 2007 04:20:22 -0400 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: raa.lkml@gmail.com, make-w32@gnu.org, Johannes.Schindelin@gmx.de, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 08:20:24 -0000 > Cc: Johannes Schindelin , git@vger.kernel.org, > raa.lkml@gmail.com, ae@op5.se, tsuna@lrde.epita.fr, make-w32@gnu.org > From: Steffen Prohaska > Date: Mon, 15 Oct 2007 09:56:40 +0200 > > > While we are at that: can you (or someone else) point me to > > instructions on how to build the MinGW port of GIT? I found a tarball > > of the MinGW-ported GIT (v1.5.3, I think), but what I don't seem to be > > able to find is some kind of HOWTO: what tools I need to have > > installed, how to configure them (if there are any special issues > > there), what command(s) to type, etc. Is there anything like that out > > there, or can someone post such instructions? > > If you want to have a full working development environment, such that > you can start contributing to msysgit right away, and have no firewall > issues, go to > > http://code.google.com/p/msysgit/ > > and install GitMe, currently > > http://msysgit.googlecode.com/files/GitMe-0.4.2.exe > > If you only care about an end-user setup, which contains only the git > binaries on your system, but no tools to compile them, stay tuned for > one or two days. We'll release an updated installer soon. Sorry I wasn't clear: I want neither. I don't think I will have enough free time to become an active contributor to GIT any time soon. OTOH, since binaries are not available (and I'd prefer a tarball as opposed to an installer, to be more in control of what's being installed and where), I asked about the development tools (compiler and Binutils, obviously, but what else?) required to build the source tarball with MinGW tools. Do I understand correctly that building GIT currently requires MSYS? That'd be unfortunate, at least for me. Anyway, thanks for replying. From MAILER-DAEMON Mon Oct 15 04:24:10 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhLFC-0007q7-JP for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 04:24:10 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhIk9-0008NH-B7 for make-w32@gnu.org; Mon, 15 Oct 2007 01:43:57 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhIk8-0008N4-Hi for make-w32@gnu.org; Mon, 15 Oct 2007 01:43:56 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhIk8-0008N1-BR for make-w32@gnu.org; Mon, 15 Oct 2007 01:43:56 -0400 Received: from hu-out-0506.google.com ([72.14.214.238]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhIk7-0005AW-M4 for make-w32@gnu.org; Mon, 15 Oct 2007 01:43:55 -0400 Received: by hu-out-0506.google.com with SMTP id 23so1151367huc for ; Sun, 14 Oct 2007 22:43:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=Z0pPx4KCFXhcAz0Wu6xjuBPCXIIbpOOr8v/8lmKZX+0=; b=VFks9fGhiIIl0071VJrjanDzm3T6DvPASwmpaSJmyQBdK5PfFQBY1j5zbUl6yt44E0xYf4eDxtCje65nkDP8vATWsWlud1Rgac/McAGXBuVqvBve8EjFeW5l7sgR2uiFTKrAlzSw+uenAVKjQzGQ2CYIQ/JFUGGC/vBHMo7/ipQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=pl4ZzqcERZXjQsEDTCnGfwfGYV/WxfRBfXNKsM4X9r9th7pOqJzHGKQwTxlh+LsO7Z04vnaRMNDlfsfY/+WKtfJtuvTQwHM2vPkzqCaF08BqOJjDMubT83sAz1+4ESiCa30iAoBq2JwItGwQ8rE5HYShWBLLssrqO0MIHS/YLiM= Received: by 10.67.19.17 with SMTP id w17mr7517559ugi.1192427034292; Sun, 14 Oct 2007 22:43:54 -0700 (PDT) Received: by 10.67.22.19 with HTTP; Sun, 14 Oct 2007 22:43:54 -0700 (PDT) Message-ID: <46a038f90710142243s7d07d9f8td6c5c24383e135f3@mail.gmail.com> Date: Mon, 15 Oct 2007 18:43:54 +1300 From: "Martin Langhoff" To: "Andreas Ericsson" In-Reply-To: <47126957.1020204@op5.se> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) X-Mailman-Approved-At: Mon, 15 Oct 2007 04:24:07 -0400 Cc: git list , Johannes Schindelin , Make Windows Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 05:43:58 -0000 On 10/15/07, Andreas Ericsson wrote: > > And I have to disagree strongly with the "black": In msysGit (which brings > > its own minimal version of MSys), it is very smooth. > > > > Oh? I didn't know that. Windows and its unixifying toolboxes is unknown > territory to me, as I happily spend all my time on various unices. I'm a unix-head too. Last couple of weeks had to work on a windows server, and installed msysGit. Very impressed - all the needed dependencies are there, from an end-user POV it "just works". > I was under the impression that the windows port suffers from Windows' > lack of a proper fork() and friends and that a proper library would > help solving those problems. Perhaps I was misinformed. I think msys' DLLs might be doing what cygwin does, an emulated fork. A quite surprising thing is that msysgit manages to be very fast. Not as fast as the same git, same hw running on a recent Linux, but pretty usable fast for a tree with a few thousand files. Earlier/other git ports to win32 are pretty slow (still faster than svn and friends, but slooow). cheers, m From MAILER-DAEMON Mon Oct 15 04:24:17 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhLFJ-0007zZ-Rf for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 04:24:17 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhJc8-0003At-2W for make-w32@gnu.org; Mon, 15 Oct 2007 02:39:44 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhJc6-0003Ae-V6 for make-w32@gnu.org; Mon, 15 Oct 2007 02:39:43 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhJc6-0003Ab-PK for make-w32@gnu.org; Mon, 15 Oct 2007 02:39:42 -0400 Received: from mx20.gnu.org ([199.232.41.8]) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhJc6-0007NL-C1 for make-w32@gnu.org; Mon, 15 Oct 2007 02:39:42 -0400 Received: from lilzmailso02.liwest.at ([212.33.55.13]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhJc2-0005DV-TX for make-w32@gnu.org; Mon, 15 Oct 2007 02:39:39 -0400 Received: from cm56-163-160.liwest.at ([86.56.163.160] helo=linz.eudaptics.com) by lilzmailso02.liwest.at with esmtpa (Exim 4.66) (envelope-from ) id 1IhJbm-0004gd-Vj; Mon, 15 Oct 2007 08:39:23 +0200 Received: from [192.168.1.42] (J6T.linz.viscovery [192.168.1.42]) by linz.eudaptics.com (Postfix) with ESMTP id 4563C69F; Mon, 15 Oct 2007 08:39:33 +0200 (CEST) Message-ID: <47130B25.4010304@viscovery.net> Date: Mon, 15 Oct 2007 08:39:33 +0200 From: Johannes Sixt User-Agent: Thunderbird 2.0.0.6 (Windows/20070728) MIME-Version: 1.0 To: Benoit SIGOURE References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> In-Reply-To: <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 1.7 (+) X-detected-kernel: by mx20.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Mon, 15 Oct 2007 04:24:16 -0400 Cc: Make Windows , git list Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 06:39:44 -0000 Benoit SIGOURE schrieb: > Context: GNU make seems to be willing to switch from CVS to ... > something else. > > On Oct 14, 2007, at 6:57 PM, Paul Smith wrote: > >> [...] the big thing no one else seems to have addressed much in >> other discussions I've seen is portability. It LOOKS like there are >> native ports of GIT to MINGW, but I have no idea how complete and usable >> they are. If someone who has a Windows system could look into that it >> would be a big help. > > I think the best thing to do is to ask directly on the Git ML. > > Someone already pointed out that he'd like to use Git on Windows but > doesn't want to install either Cygwin or MSYS. Is this possible, or > will it be possible in the near future? Is it possible to use one of > the various GUIs (git-gui, gitk, qgit) on Windows without requiring a > POSIXish shell etc.? FWIW, I'm using the MinGW port from cmd.exe, i.e. not from a posix shell, on a *production* repository. gitk and git-gui work. Not all operations that I regularly use are available[*] via the GUIs, like git-rebase or non-fast-forwarding push, so the use of the command line is needed from time to time. Unfortunately, "Fetch" does not yet work[*] from within git-gui, so you have to fall back to git-fetch on the command line. Of course, the Posix toolset, including a shell, must still be installed (and in my setup they are in the PATH), but you don't have to use it. [*] Note the distinction between "not available" and "does not work". -- Hannes From MAILER-DAEMON Mon Oct 15 04:24:18 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhLFK-0007zt-15 for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 04:24:18 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhKnN-0000Kc-7b for make-w32@gnu.org; Mon, 15 Oct 2007 03:55:25 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhKnI-0000Fp-En for make-w32@gnu.org; Mon, 15 Oct 2007 03:55:24 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhKnI-0000Fi-9Z for make-w32@gnu.org; Mon, 15 Oct 2007 03:55:20 -0400 Received: from mailer.zib.de ([130.73.108.11]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhKnC-0004Gy-SJ; Mon, 15 Oct 2007 03:55:15 -0400 Received: from mailsrv2.zib.de (sc2.zib.de [130.73.108.31]) by mailer.zib.de (8.13.7+Sun/8.13.7) with ESMTP id l9F7tAQE021775; Mon, 15 Oct 2007 09:55:10 +0200 (CEST) Received: from [130.73.68.185] (cougar.zib.de [130.73.68.185]) (authenticated bits=0) by mailsrv2.zib.de (8.13.4/8.13.4) with ESMTP id l9F7t9GE021527 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Mon, 15 Oct 2007 09:55:09 +0200 (MEST) In-Reply-To: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: Content-Transfer-Encoding: 7bit From: Steffen Prohaska Date: Mon, 15 Oct 2007 09:56:40 +0200 To: Eli Zaretskii X-Mailer: Apple Mail (2.752.3) X-detected-kernel: by monty-python.gnu.org: Solaris 9 X-Mailman-Approved-At: Mon, 15 Oct 2007 04:24:16 -0400 Cc: raa.lkml@gmail.com, make-w32@gnu.org, Johannes Schindelin , ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 07:55:25 -0000 On Oct 15, 2007, at 8:04 AM, Eli Zaretskii wrote: >> Date: Mon, 15 Oct 2007 02:24:53 +0100 (BST) >> From: Johannes Schindelin >> cc: Eli Zaretskii , Alex Riesen >> , ae@op5.se, >> tsuna@lrde.epita.fr, make-w32@gnu.org >> >> To clarify: git works on Windows. Most of the time, that is. But >> all >> those changes that were necessary to go there have not yet found >> their way >> into the official git.git repository. > > I, for one, appreciate all the hard work invested in that. > > While we are at that: can you (or someone else) point me to > instructions on how to build the MinGW port of GIT? I found a tarball > of the MinGW-ported GIT (v1.5.3, I think), but what I don't seem to be > able to find is some kind of HOWTO: what tools I need to have > installed, how to configure them (if there are any special issues > there), what command(s) to type, etc. Is there anything like that out > there, or can someone post such instructions? If you want to have a full working development environment, such that you can start contributing to msysgit right away, and have no firewall issues, go to http://code.google.com/p/msysgit/ and install GitMe, currently http://msysgit.googlecode.com/files/GitMe-0.4.2.exe If you only care about an end-user setup, which contains only the git binaries on your system, but no tools to compile them, stay tuned for one or two days. We'll release an updated installer soon. Steffen From MAILER-DAEMON Mon Oct 15 05:03:41 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhLrR-000652-2B for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 05:03:41 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhLrO-000642-O4 for make-w32@gnu.org; Mon, 15 Oct 2007 05:03:38 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhLrM-00063d-TY for make-w32@gnu.org; Mon, 15 Oct 2007 05:03:37 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhLrM-00063W-JK for make-w32@gnu.org; Mon, 15 Oct 2007 05:03:36 -0400 Received: from 2.139.39-62.rev.gaoland.net ([62.39.139.2] helo=kualalumpur.lrde.epita.fr) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhLrI-0007fX-Th; Mon, 15 Oct 2007 05:03:33 -0400 Received: from tsunaxbook.lrde.epita.fr ([192.168.101.162]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1IhLrH-0000lR-AZ; Mon, 15 Oct 2007 11:03:31 +0200 In-Reply-To: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="Apple-Mail-71--616589665" Message-Id: Content-Transfer-Encoding: 7bit From: Benoit SIGOURE Date: Mon, 15 Oct 2007 11:02:54 +0200 To: Johannes Schindelin X-Pgp-Agent: GPGMail 1.1.2 (Tiger) X-Mailer: Apple Mail (2.752.3) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Cc: Make Windows , git list Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 09:03:38 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --Apple-Mail-71--616589665 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed On Oct 15, 2007, at 10:34 AM, Johannes Schindelin wrote: > Hi, > > On Mon, 15 Oct 2007, Eli Zaretskii wrote: > >> No, you need to think in abstractions rather than POSIX-isms, and >> then >> let each platform implement those abstractions as appropriate. > > Last time I checked, POSIX was already an abstraction, > thankyouverymuch. But as Eli pointed out, it's not universal, so you need higher abstractions on top of them. > Anyway, this discussion gets out of hand. Not at all, actually I think some interesting points were made, including on the technical side of the thing. -- Benoit Sigoure aka Tsuna EPITA Research and Development Laboratory --Apple-Mail-71--616589665 content-type: application/pgp-signature; x-mac-type=70674453; name=PGP.sig content-description: This is a digitally signed message part content-disposition: inline; filename=PGP.sig content-transfer-encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (Darwin) iD8DBQFHEyy/wwE67wC8PUkRAhueAJ0f6nVel6nuw05ajRt815Wa+V9FdACePP2e pEqU/hcMt4CYI9bq4CvJ+BY= =LsaT -----END PGP SIGNATURE----- --Apple-Mail-71--616589665-- From MAILER-DAEMON Mon Oct 15 07:05:33 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhNlN-0003Vo-KJ for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:05:33 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhLOu-0006kI-6n for make-w32@gnu.org; Mon, 15 Oct 2007 04:34:12 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhLOs-0006iO-65 for make-w32@gnu.org; Mon, 15 Oct 2007 04:34:11 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhLOr-0006i6-S2 for make-w32@gnu.org; Mon, 15 Oct 2007 04:34:09 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IhLOr-0002nT-8x for make-w32@gnu.org; Mon, 15 Oct 2007 04:34:09 -0400 Received: (qmail invoked by alias); 15 Oct 2007 08:34:07 -0000 Received: from wbgn013.biozentrum.uni-wuerzburg.de (EHLO openvpn-client) [132.187.25.13] by mail.gmx.net (mp058) with SMTP; 15 Oct 2007 10:34:07 +0200 X-Authenticated: #1490710 X-Provags-ID: V01U2FsdGVkX1/4wFMvKkn4BCPB0NRJotdVTlkiXXVHdinsV32Nsp Qc0GRwKVPF4J2o Date: Mon, 15 Oct 2007 09:34:03 +0100 (BST) From: Johannes Schindelin X-X-Sender: gene099@racer.site To: Eli Zaretskii In-Reply-To: Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 1) X-Mailman-Approved-At: Mon, 15 Oct 2007 07:05:28 -0400 Cc: ae@op5.se, raa.lkml@gmail.com, git@vger.kernel.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 08:34:13 -0000 Hi, On Mon, 15 Oct 2007, Eli Zaretskii wrote: > No, you need to think in abstractions rather than POSIX-isms, and then > let each platform implement those abstractions as appropriate. Last time I checked, POSIX was already an abstraction, thankyouverymuch. Anyway, this discussion gets out of hand. The question was: does Git work on Windows natively, and the answer as far as you are concerned is: yes. Ciao, Dscho From MAILER-DAEMON Mon Oct 15 07:05:34 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhNlO-0003WL-4J for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:05:34 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhLbq-000541-4h for make-w32@gnu.org; Mon, 15 Oct 2007 04:47:34 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhLbo-00053F-Ao for make-w32@gnu.org; Mon, 15 Oct 2007 04:47:33 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhLbn-000537-UB for make-w32@gnu.org; Mon, 15 Oct 2007 04:47:32 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IhLbn-0004a3-5v for make-w32@gnu.org; Mon, 15 Oct 2007 04:47:31 -0400 Received: (qmail invoked by alias); 15 Oct 2007 08:47:30 -0000 Received: from wbgn013.biozentrum.uni-wuerzburg.de (EHLO openvpn-client) [132.187.25.13] by mail.gmx.net (mp030) with SMTP; 15 Oct 2007 10:47:30 +0200 X-Authenticated: #1490710 X-Provags-ID: V01U2FsdGVkX19f69M/6TRfDwPwGqodgYsT9Fq6V8IyffzyyR5luQ KNqEZRp68+0Hbm Date: Mon, 15 Oct 2007 09:47:25 +0100 (BST) From: Johannes Schindelin X-X-Sender: gene099@racer.site To: Eli Zaretskii In-Reply-To: Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Mon, 15 Oct 2007 07:05:28 -0400 Cc: Steffen Prohaska , make-w32@gnu.org, raa.lkml@gmail.com, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 08:47:34 -0000 Hi, On Mon, 15 Oct 2007, Eli Zaretskii wrote: > Do I understand correctly that building GIT currently requires MSYS? > That'd be unfortunate, at least for me. If you could make Git compile with Visual C++, that would be fabulous. TIA, Dscho From MAILER-DAEMON Mon Oct 15 07:05:34 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhNlN-0003W3-Q7 for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:05:33 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhLYi-00038t-VE for make-w32@gnu.org; Mon, 15 Oct 2007 04:44:21 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhLYi-00036v-2L for make-w32@gnu.org; Mon, 15 Oct 2007 04:44:20 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhLYh-00036g-OO for make-w32@gnu.org; Mon, 15 Oct 2007 04:44:19 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IhLYh-00047L-4Z for make-w32@gnu.org; Mon, 15 Oct 2007 04:44:19 -0400 Received: (qmail invoked by alias); 15 Oct 2007 08:44:17 -0000 Received: from wbgn013.biozentrum.uni-wuerzburg.de (EHLO openvpn-client) [132.187.25.13] by mail.gmx.net (mp045) with SMTP; 15 Oct 2007 10:44:17 +0200 X-Authenticated: #1490710 X-Provags-ID: V01U2FsdGVkX1+TkLFXdPCTMNCdpIbatzO/GQeKZbKPd46nIPG0n3 0elIXZEUVxn4H0 Date: Mon, 15 Oct 2007 09:44:12 +0100 (BST) From: Johannes Schindelin X-X-Sender: gene099@racer.site To: Eli Zaretskii In-Reply-To: Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Mon, 15 Oct 2007 07:05:28 -0400 Cc: ae@op5.se, raa.lkml@gmail.com, git@vger.kernel.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 08:44:21 -0000 Hi, On Mon, 15 Oct 2007, Eli Zaretskii wrote: > > Date: Mon, 15 Oct 2007 00:45:47 +0100 (BST) > > From: Johannes Schindelin > > cc: Alex Riesen , ae@op5.se, tsuna@lrde.epita.fr, > > git@vger.kernel.org, make-w32@gnu.org > > > > The problem is not so much opening, but determining if an existing file > > and a file in the index have the same name. > > > > For example, "README" in the index, but "readme" in the working directory, > > will be handled as "deleted/untracked" by the current machinery. IOW git > > will not know that what it gets from readdir() as "readme" really is the > > same file as "README" in the index. > > That's because you think file names are simple strings and can be > compared by simple string comparison. Almost... > This na?ve view is not true even on POSIX systems: "foo/bar" and > "/a/b/foo/bar" can be the same file, as well as "/a/b/c/d" and "/x/y/z", > given the right symlinks. ... not quite, ah ... > But for some reason that eludes me, people who are accustomed to POSIX > stop right there and in effect say "file names are strings, if we only > make them absolute and resolve links". ... yes! There you have it. Absolute filenames, resolved by readlink() are assumed to be the unique (!) identifiers for the contents. _Note:_ absolute paths _without_ readlink() resolving are _still_ unique identifiers; this time for files/symlinks. Things like this utter rubbish that two different file names (which are the keys in the keystore that a filesystem really is) make Windows' filesystem operations so slow. I wonder when Windows heads will realise that this "convenience" is just another reason why Windows is easily outperformed by other OSes (yes, the last one is a plural). > > > > - no acceptable level of performance in filesystem and VFS > > > > (readdir, stat, open and read/write are annoyingly slow) > > > > > > With what libraries? Native `stat' and `readdir' are quite fast. > > > Perhaps you mean the ported glibc (libgw32c), where `readdir' is > > > indeed painfully slow, but then you don't need to use it. > > > > No, native. > > Can you show a test case where this penalty is clearly visible? I'm > curious to see the numbers. TIA No, I cannot. I will not go and buy a copy of Windows just to show you the numbers. Since quite some time I only run Linux on my machine(s), and the reason was a very unscientific experiment: I kept with the OS that did not freeze and let me do nothing for more than one second. Now, that is my _personal_ decision. If _you_ have no problem with Windows, just stick with it. (I always thought this goes without saying, but Windows users tend to be very religious about this issue, thinking just because I hate Windows that I want to make them switch. Hahaha, no.) Ciao, Dscho From MAILER-DAEMON Mon Oct 15 07:05:34 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhNlO-0003Wk-8x for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:05:34 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhLkO-0008Uf-2o for make-w32@gnu.org; Mon, 15 Oct 2007 04:56:24 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhLkL-0008Sg-JE for make-w32@gnu.org; Mon, 15 Oct 2007 04:56:22 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhLkK-0008SY-Vt for make-w32@gnu.org; Mon, 15 Oct 2007 04:56:21 -0400 Received: from pc3.berlin.powerweb.de ([62.67.228.11]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhLkK-0006M6-98 for make-w32@gnu.org; Mon, 15 Oct 2007 04:56:20 -0400 Received: from quinscape.de (dslnet.212-29-44.ip210.dokom.de [212.29.44.210] (may be forged)) by pc3.berlin.powerweb.de (8.9.3p3/8.9.3) with ESMTP id KAA08951 for ; Mon, 15 Oct 2007 10:56:17 +0200 X-Delivered-To: Received: (qmail 14400 invoked from network); 15 Oct 2007 08:56:19 -0000 Received: from unknown (HELO lola.quinscape.zz) ([10.0.3.43]) (envelope-sender ) by ns.quinscape.de (qmail-ldap-1.03) with SMTP for ; 15 Oct 2007 08:56:19 -0000 Received: by lola.quinscape.zz (Postfix, from userid 1001) id DF4288F264; Mon, 15 Oct 2007 10:56:18 +0200 (CEST) To: Johannes Schindelin References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> From: David Kastrup Date: Mon, 15 Oct 2007 10:56:18 +0200 In-Reply-To: (Johannes Schindelin's message of "Mon\, 15 Oct 2007 09\:44\:12 +0100 \(BST\)") Message-ID: <86k5popxhp.fsf@lola.quinscape.zz> User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/23.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-detected-kernel: by monty-python.gnu.org: Linux 2.4-2.6 X-Mailman-Approved-At: Mon, 15 Oct 2007 07:05:27 -0400 Cc: raa.lkml@gmail.com, make-w32@gnu.org, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 08:56:24 -0000 Johannes Schindelin writes: > Hi, > > On Mon, 15 Oct 2007, Eli Zaretskii wrote: > >> > Date: Mon, 15 Oct 2007 00:45:47 +0100 (BST) >> > From: Johannes Schindelin >> > cc: Alex Riesen , ae@op5.se, tsuna@lrde.epita.fr, >> > git@vger.kernel.org, make-w32@gnu.org >> > >> > The problem is not so much opening, but determining if an existing file >> > and a file in the index have the same name. >> > >> > For example, "README" in the index, but "readme" in the working directory, >> > will be handled as "deleted/untracked" by the current machinery. IOW git >> > will not know that what it gets from readdir() as "readme" really is the >> > same file as "README" in the index. >> >> That's because you think file names are simple strings and can be >> compared by simple string comparison. > > Almost... > >> This na?ve view is not true even on POSIX systems: "foo/bar" and >> "/a/b/foo/bar" can be the same file, as well as "/a/b/c/d" and "/x/y/z", >> given the right symlinks. > > ... not quite, ah ... > >> But for some reason that eludes me, people who are accustomed to POSIX >> stop right there and in effect say "file names are strings, if we only >> make them absolute and resolve links". > > ... yes! There you have it. Absolute filenames, resolved by > readlink() are assumed to be the unique (!) identifiers for the > contents. They aren't. One can mount the same file system several times in different places. In Linux, one can even mount directories and files to several places at once. Most Unices also support some case-insensitive file systems, and readlink does not canonicalize the casing. > _Note:_ absolute paths _without_ readlink() resolving are _still_ > unique identifiers; this time for files/symlinks. Not even that. A unique identifier for files would imply that touching the file does not affect, say, the access times of files with other unique identifiers. -- David Kastrup From MAILER-DAEMON Mon Oct 15 07:05:35 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhNlO-0003X1-J0 for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:05:35 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhM9P-0007io-2E for make-w32@gnu.org; Mon, 15 Oct 2007 05:22:15 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhM9N-0007i6-L9 for make-w32@gnu.org; Mon, 15 Oct 2007 05:22:14 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhM9N-0007i3-CR for make-w32@gnu.org; Mon, 15 Oct 2007 05:22:13 -0400 Received: from mailer.zib.de ([130.73.108.11]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhM9J-0002qA-0h; Mon, 15 Oct 2007 05:22:09 -0400 Received: from mailsrv2.zib.de (sc2.zib.de [130.73.108.31]) by mailer.zib.de (8.13.7+Sun/8.13.7) with ESMTP id l9F9M6sP028967; Mon, 15 Oct 2007 11:22:06 +0200 (CEST) Received: from [130.73.68.185] (cougar.zib.de [130.73.68.185]) (authenticated bits=0) by mailsrv2.zib.de (8.13.4/8.13.4) with ESMTP id l9F9M5rc011118 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Mon, 15 Oct 2007 11:22:06 +0200 (MEST) In-Reply-To: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: Content-Transfer-Encoding: 7bit From: Steffen Prohaska Date: Mon, 15 Oct 2007 11:23:37 +0200 To: Eli Zaretskii X-Mailer: Apple Mail (2.752.3) X-detected-kernel: by monty-python.gnu.org: Solaris 9 X-Mailman-Approved-At: Mon, 15 Oct 2007 07:05:27 -0400 Cc: raa.lkml@gmail.com, make-w32@gnu.org, Johannes.Schindelin@gmx.de, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 09:22:15 -0000 On Oct 15, 2007, at 10:20 AM, Eli Zaretskii wrote: >> Cc: Johannes Schindelin , >> git@vger.kernel.org, >> raa.lkml@gmail.com, ae@op5.se, tsuna@lrde.epita.fr, make- >> w32@gnu.org >> From: Steffen Prohaska >> Date: Mon, 15 Oct 2007 09:56:40 +0200 >> >>> While we are at that: can you (or someone else) point me to >>> instructions on how to build the MinGW port of GIT? I found a >>> tarball >>> of the MinGW-ported GIT (v1.5.3, I think), but what I don't seem >>> to be >>> able to find is some kind of HOWTO: what tools I need to have >>> installed, how to configure them (if there are any special issues >>> there), what command(s) to type, etc. Is there anything like >>> that out >>> there, or can someone post such instructions? >> >> If you want to have a full working development environment, such that >> you can start contributing to msysgit right away, and have no >> firewall >> issues, go to >> >> http://code.google.com/p/msysgit/ >> >> and install GitMe, currently >> >> http://msysgit.googlecode.com/files/GitMe-0.4.2.exe >> >> If you only care about an end-user setup, which contains only the git >> binaries on your system, but no tools to compile them, stay tuned for >> one or two days. We'll release an updated installer soon. > > Sorry I wasn't clear: I want neither. I don't think I will have > enough free time to become an active contributor to GIT any time > soon. OTOH, since binaries are not available (and I'd prefer a > tarball as opposed to an installer, to be more in control of what's > being installed and where), Ok, so I uploaded the most recent preview of the installer to http://msysgit.googlecode.com/files/WinGit-1.5.3-preview20071010.exe Note, we're about to release an updated version soon. Personally, I don't plan to put work in providing tar balls. A working installer has higher priority for me. > I asked about the development tools > (compiler and Binutils, obviously, but what else?) required to build > the source tarball with MinGW tools. > > Do I understand correctly that building GIT currently requires MSYS? > That'd be unfortunate, at least for me. msysgit's GitMe contains all tools from MSYS required to build git. It also clones the git source and compiles it. It doesn't install anything outside the folder that you chose upon installation. I strongly believe it is the easiest way to compile git from source. Steffen From MAILER-DAEMON Mon Oct 15 07:05:35 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhNlP-0003XS-B9 for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:05:35 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhMzh-0008Vs-QB for make-w32@gnu.org; Mon, 15 Oct 2007 06:16:17 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhMzg-0008Vk-GE for make-w32@gnu.org; Mon, 15 Oct 2007 06:16:16 -0400 Received: from mail.op5.se ([193.201.96.20]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhMzg-0003ew-5L; Mon, 15 Oct 2007 06:16:16 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.op5.se (Postfix) with ESMTP id 232B117306F0; Mon, 15 Oct 2007 12:16:15 +0200 (CEST) X-Virus-Scanned: amavisd-new at X-Spam-Score: -2.155 Received: from mail.op5.se ([127.0.0.1]) by localhost (mail.op5.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id rs+w7hCwBtG6; Mon, 15 Oct 2007 12:16:14 +0200 (CEST) Received: from nox.op5.se (unknown [192.168.1.20]) by mail.op5.se (Postfix) with ESMTP id 00C941730693; Mon, 15 Oct 2007 12:16:13 +0200 (CEST) Message-ID: <47133DEC.6020600@op5.se> Date: Mon, 15 Oct 2007 12:16:12 +0200 From: Andreas Ericsson User-Agent: Thunderbird 2.0.0.5 (X11/20070727) MIME-Version: 1.0 To: Eli Zaretskii References: <20071014221446.GC2776@steel.home> <023101c80eb5$e3b6b310$2e08a8c0@CAM.ARTIMI.COM> <20071015000347.GA13033@old.davidb.org> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) X-Mailman-Approved-At: Mon, 15 Oct 2007 07:05:28 -0400 Cc: make-w32@gnu.org, Johannes.Schindelin@gmx.de, raa.lkml@gmail.com, David Brown , git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 10:16:18 -0000 Eli Zaretskii wrote: > >> If you know what the library on the other end is doing to re-parse the >> arguments back into separate strings, it might be possible to quote things >> enough to handle names with spaces, but it is hard. > > It's not hard, it's just a bit of work. And it needs to be done > exactly once. Before someone beats me to it: "Patches welcome" ;-) -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231 From MAILER-DAEMON Mon Oct 15 07:05:35 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhNlP-0003Xl-GJ for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:05:35 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhNLM-00047C-Jq for make-w32@gnu.org; Mon, 15 Oct 2007 06:38:40 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhNLL-00045p-0H for make-w32@gnu.org; Mon, 15 Oct 2007 06:38:40 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhNLK-00045m-R2 for make-w32@gnu.org; Mon, 15 Oct 2007 06:38:38 -0400 Received: from lilzmailso02.liwest.at ([212.33.55.13]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhNLD-0007SB-UX; Mon, 15 Oct 2007 06:38:33 -0400 Received: from cm56-163-160.liwest.at ([86.56.163.160] helo=linz.eudaptics.com) by lilzmailso02.liwest.at with esmtpa (Exim 4.66) (envelope-from ) id 1IhNKs-0005kt-L9; Mon, 15 Oct 2007 12:38:10 +0200 Received: from [192.168.1.42] (J6T.linz.viscovery [192.168.1.42]) by linz.eudaptics.com (Postfix) with ESMTP id 1B78369F; Mon, 15 Oct 2007 12:38:21 +0200 (CEST) Message-ID: <4713431C.7030103@viscovery.net> Date: Mon, 15 Oct 2007 12:38:20 +0200 From: Johannes Sixt User-Agent: Thunderbird 2.0.0.6 (Windows/20070728) MIME-Version: 1.0 To: Andreas Ericsson References: <20071014221446.GC2776@steel.home> <023101c80eb5$e3b6b310$2e08a8c0@CAM.ARTIMI.COM> <20071015000347.GA13033@old.davidb.org> <47133DEC.6020600@op5.se> In-Reply-To: <47133DEC.6020600@op5.se> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 1.2 (+) X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Mon, 15 Oct 2007 07:05:28 -0400 Cc: make-w32@gnu.org, Johannes.Schindelin@gmx.de, raa.lkml@gmail.com, David Brown , git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 10:38:40 -0000 Andreas Ericsson schrieb: > Eli Zaretskii wrote: >> >>> If you know what the library on the other end is doing to re-parse the >>> arguments back into separate strings, it might be possible to quote >>> things >>> enough to handle names with spaces, but it is hard. >> >> It's not hard, it's just a bit of work. And it needs to be done >> exactly once. > > Before someone beats me to it: "Patches welcome" ;-) Let others do the research for you, hm? http://repo.or.cz/w/git/mingw.git?a=blob;f=compat/mingw.c;h=2554f19765da5709b787e873da225c59f9d22bb7;hb=HEAD#l306 -- Hannes From MAILER-DAEMON Mon Oct 15 07:05:36 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhNlP-0003Y1-V9 for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:05:35 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhNYR-0003aP-01 for make-w32@gnu.org; Mon, 15 Oct 2007 06:52:11 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhNYQ-0003aF-9i for make-w32@gnu.org; Mon, 15 Oct 2007 06:52:10 -0400 Received: from mail.op5.se ([193.201.96.20]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhNYP-0001zZ-UI; Mon, 15 Oct 2007 06:52:10 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.op5.se (Postfix) with ESMTP id E2D24173070E; Mon, 15 Oct 2007 12:52:08 +0200 (CEST) X-Virus-Scanned: amavisd-new at X-Spam-Score: -2.43 Received: from mail.op5.se ([127.0.0.1]) by localhost (mail.op5.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HHBojHskMrQd; Mon, 15 Oct 2007 12:52:08 +0200 (CEST) Received: from nox.op5.se (unknown [192.168.1.20]) by mail.op5.se (Postfix) with ESMTP id 9F289173070B; Mon, 15 Oct 2007 12:52:07 +0200 (CEST) Message-ID: <47134656.4070707@op5.se> Date: Mon, 15 Oct 2007 12:52:06 +0200 From: Andreas Ericsson User-Agent: Thunderbird 2.0.0.5 (X11/20070727) MIME-Version: 1.0 To: Johannes Sixt References: <20071014221446.GC2776@steel.home> <023101c80eb5$e3b6b310$2e08a8c0@CAM.ARTIMI.COM> <20071015000347.GA13033@old.davidb.org> <47133DEC.6020600@op5.se> <4713431C.7030103@viscovery.net> In-Reply-To: <4713431C.7030103@viscovery.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) X-Mailman-Approved-At: Mon, 15 Oct 2007 07:05:28 -0400 Cc: make-w32@gnu.org, Johannes.Schindelin@gmx.de, raa.lkml@gmail.com, David Brown , git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 10:52:11 -0000 Johannes Sixt wrote: > Andreas Ericsson schrieb: >> Eli Zaretskii wrote: >>> >>>> If you know what the library on the other end is doing to re-parse the >>>> arguments back into separate strings, it might be possible to quote >>>> things >>>> enough to handle names with spaces, but it is hard. >>> >>> It's not hard, it's just a bit of work. And it needs to be done >>> exactly once. >> >> Before someone beats me to it: "Patches welcome" ;-) > > Let others do the research for you, hm? > > http://repo.or.cz/w/git/mingw.git?a=blob;f=compat/mingw.c;h=2554f19765da5709b787e873da225c59f9d22bb7;hb=HEAD#l306 > Yup. Although it was more in the nature of "whoever wrote it surely knows he/she did it and where to find the patch", so I expect this wasn't much of a timesink for you. My apologies if I was incorrect. -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231 From MAILER-DAEMON Mon Oct 15 07:06:52 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhNme-0004Cq-CR for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:06:52 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhNmd-0004By-83 for make-w32@gnu.org; Mon, 15 Oct 2007 07:06:51 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhNmb-00049l-0Z for make-w32@gnu.org; Mon, 15 Oct 2007 07:06:49 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhNmZ-00049b-TA for make-w32@gnu.org; Mon, 15 Oct 2007 07:06:47 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhNmZ-0006XS-I1 for make-w32@gnu.org; Mon, 15 Oct 2007 07:06:47 -0400 Received: from eliz by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1IhNmZ-0002UD-3c; Mon, 15 Oct 2007 07:06:47 -0400 From: Eli Zaretskii To: Steffen Prohaska In-reply-to: (message from Steffen Prohaska on Mon, 15 Oct 2007 11:23:37 +0200) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> Message-Id: Date: Mon, 15 Oct 2007 07:06:47 -0400 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: raa.lkml@gmail.com, make-w32@gnu.org, Johannes.Schindelin@gmx.de, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 11:06:51 -0000 > Cc: Johannes.Schindelin@gmx.de, git@vger.kernel.org, raa.lkml@gmail.com, > ae@op5.se, tsuna@lrde.epita.fr, make-w32@gnu.org > From: Steffen Prohaska > Date: Mon, 15 Oct 2007 11:23:37 +0200 > > Ok, so I uploaded the most recent preview of the installer to > > http://msysgit.googlecode.com/files/WinGit-1.5.3-preview20071010.exe Thanks! > Note, we're about to release an updated version soon. Personally, > I don't plan to put work in providing tar balls. A working installer > has higher priority for me. Fair enough. > msysgit's GitMe contains all tools from MSYS required to build git. > It also clones the git source and compiles it. It doesn't install > anything outside the folder that you chose upon installation. > > I strongly believe it is the easiest way to compile git from source. Okay, thanks a lot for the info. From MAILER-DAEMON Mon Oct 15 07:09:20 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhNp2-0005x6-3i for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:09:20 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhNp0-0005wJ-Vf for make-w32@gnu.org; Mon, 15 Oct 2007 07:09:19 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhNoz-0005vD-F5 for make-w32@gnu.org; Mon, 15 Oct 2007 07:09:18 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhNoz-0005v9-3b for make-w32@gnu.org; Mon, 15 Oct 2007 07:09:17 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhNoy-0007L8-N0 for make-w32@gnu.org; Mon, 15 Oct 2007 07:09:16 -0400 Received: from eliz by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1IhNox-0004n2-N5; Mon, 15 Oct 2007 07:09:15 -0400 From: Eli Zaretskii To: Johannes Schindelin In-reply-to: (message from Johannes Schindelin on Mon, 15 Oct 2007 09:47:25 +0100 (BST)) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> Message-Id: Date: Mon, 15 Oct 2007 07:09:15 -0400 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: prohaska@zib.de, make-w32@gnu.org, raa.lkml@gmail.com, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 11:09:19 -0000 > Date: Mon, 15 Oct 2007 09:47:25 +0100 (BST) > From: Johannes Schindelin > cc: Steffen Prohaska , git@vger.kernel.org, > raa.lkml@gmail.com, ae@op5.se, tsuna@lrde.epita.fr, make-w32@gnu.org > > If you could make Git compile with Visual C++, that would be fabulous. I prefer GCC (the MinGW port), but without the MSYS ports of additional tools. I use the GnuWin32 ports augmented by some of my own (where GnuWin32 ports are buggy or terribly slow). From MAILER-DAEMON Mon Oct 15 07:16:28 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhNvw-0000wJ-Fr for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:16:28 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhNvs-0000uF-Uu for make-w32@gnu.org; Mon, 15 Oct 2007 07:16:25 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhNvm-0000oT-Gf for make-w32@gnu.org; Mon, 15 Oct 2007 07:16:20 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhNvm-0000o4-4g for make-w32@gnu.org; Mon, 15 Oct 2007 07:16:18 -0400 Received: from mail.artimi.com ([194.72.81.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhNvj-0000Jt-E6; Mon, 15 Oct 2007 07:16:15 -0400 Received: from rainbow ([192.168.8.46]) by mail.artimi.com with Microsoft SMTPSVC(6.0.3790.3959); Mon, 15 Oct 2007 12:16:13 +0100 From: "Dave Korn" To: "'Johannes Sixt'" , "'Andreas Ericsson'" References: <20071014221446.GC2776@steel.home> <023101c80eb5$e3b6b310$2e08a8c0@CAM.ARTIMI.COM> <20071015000347.GA13033@old.davidb.org> <47133DEC.6020600@op5.se> <4713431C.7030103@viscovery.net> Date: Mon, 15 Oct 2007 12:16:11 +0100 Message-ID: <029801c80f1c$cb065570$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <4713431C.7030103@viscovery.net> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138 Thread-Index: AcgPF4M0+SgCG1eHSm+Fqono3DoQGgABPpBw X-OriginalArrivalTime: 15 Oct 2007 11:16:13.0367 (UTC) FILETIME=[CBDABC70:01C80F1C] X-detected-kernel: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ Cc: make-w32@gnu.org, Johannes.Schindelin@gmx.de, raa.lkml@gmail.com, 'David Brown' , git@vger.kernel.org Subject: RE: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 11:16:26 -0000 On 15 October 2007 11:38, Johannes Sixt wrote: > = http://repo.or.cz/w/git/mingw.git?a=3Dblob;f=3Dcompat/mingw.c;h=3D2554f19= 765da5709b787e873da225c59f9d22bb7;hb=3DHEAD#l306 >=20 > -- Hannes 291 /* Thanks, Bill. You'll burn in hell for = that. */ ;-) cheers, DaveK --=20 Can't think of a witty .sigline today.... From MAILER-DAEMON Mon Oct 15 07:58:53 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhOaz-0006Vv-JH for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 07:58:53 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhOax-0006Vf-H5 for make-w32@gnu.org; Mon, 15 Oct 2007 07:58:51 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhOau-0006VT-WF for make-w32@gnu.org; Mon, 15 Oct 2007 07:58:50 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhOau-0006VQ-Rr for make-w32@gnu.org; Mon, 15 Oct 2007 07:58:48 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhOau-0002B0-Hn for make-w32@gnu.org; Mon, 15 Oct 2007 07:58:48 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l9FBwiEk017999 for ; Mon, 15 Oct 2007 07:58:44 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l9FBwhhB017996 for make-w32@gnu.org; Mon, 15 Oct 2007 07:58:43 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from 155.70.141.45 ([155.70.141.45]) by mail.progw.org (Horde MIME library) with HTTP; Mon, 15 Oct 2007 07:58:43 -0400 Message-ID: <20071015075843.30ksjd0m0w84kcw8@mail.progw.org> X-Priority: 3 (Normal) Date: Mon, 15 Oct 2007 07:58:43 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 11:58:52 -0000 Quoting Eli Zaretskii : >> Date: Mon, 15 Oct 2007 00:45:47 +0100 (BST) >> From: Johannes Schindelin >> cc: Alex Riesen , ae@op5.se, tsuna@lrde.epita.fr, >> git@vger.kernel.org, make-w32@gnu.org >> >> The problem is that on Windows, you cannot keep a file open and delete it >> at the same time. > > That is no longer true, for quite some time. NT4 and later versions > support that almost exactly like Posix filesystems. > You still can't keep a file open and delete it as far as I know. If you can please share how. Earnie From MAILER-DAEMON Mon Oct 15 08:08:55 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhOkh-00056J-PO for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 08:08:55 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhOkg-00054A-2y for make-w32@gnu.org; Mon, 15 Oct 2007 08:08:54 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhOke-00052X-I6 for make-w32@gnu.org; Mon, 15 Oct 2007 08:08:53 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhOke-00052Q-FF for make-w32@gnu.org; Mon, 15 Oct 2007 08:08:52 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhOkd-0004L6-TS for make-w32@gnu.org; Mon, 15 Oct 2007 08:08:52 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l9FC8n0Y013560 for ; Mon, 15 Oct 2007 08:08:49 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l9FC8noH013556 for make-w32@gnu.org; Mon, 15 Oct 2007 08:08:49 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from 155.70.141.45 ([155.70.141.45]) by mail.progw.org (Horde MIME library) with HTTP; Mon, 15 Oct 2007 08:08:49 -0400 Message-ID: <20071015080849.aq031ml8lhc0g4s4@mail.progw.org> X-Priority: 3 (Normal) Date: Mon, 15 Oct 2007 08:08:49 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 12:08:54 -0000 Quoting Eli Zaretskii : > > SVN certainly sounds as easier for use on Windows than GIT. There are native windows SVN command line tools available. I use those nearly daily as well as CVS. I haven't found a good reason to switch from CVS to SVN though. I doubt that I would find a reason to switch from CVS to any other VCS as well. Earnie From MAILER-DAEMON Mon Oct 15 08:14:44 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhOqJ-00086B-UW for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 08:14:43 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhOqH-00085G-No for make-w32@gnu.org; Mon, 15 Oct 2007 08:14:41 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhOqG-00084Y-0C for make-w32@gnu.org; Mon, 15 Oct 2007 08:14:41 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhOqF-00084T-TL for make-w32@gnu.org; Mon, 15 Oct 2007 08:14:39 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhOqF-0005S4-An for make-w32@gnu.org; Mon, 15 Oct 2007 08:14:39 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l9FCEbkh027976 for ; Mon, 15 Oct 2007 08:14:37 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l9FCEbSA027972 for make-w32@gnu.org; Mon, 15 Oct 2007 08:14:37 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from 155.70.141.45 ([155.70.141.45]) by mail.progw.org (Horde MIME library) with HTTP; Mon, 15 Oct 2007 08:14:36 -0400 Message-ID: <20071015081436.o3kcjs62nv6s8wsw@mail.progw.org> X-Priority: 3 (Normal) Date: Mon, 15 Oct 2007 08:14:36 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 12:14:42 -0000 Quoting Johannes Schindelin : > > And I have to disagree strongly with the "black": In msysGit (which brings > its own minimal version of MSys), it is very smooth. > FLI, I designed MSYS so that this could be done without interfering with a normal install of MSYS. The only thing that will get you into trouble is if you start one session from one directory and within that session cd to a directory containing another MSYS dll. Earnie From MAILER-DAEMON Mon Oct 15 08:37:09 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhPC0-0007UM-W3 for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 08:37:09 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhP6F-0002Tc-G2 for make-w32@gnu.org; Mon, 15 Oct 2007 08:31:11 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhP6D-0002RH-Qv for make-w32@gnu.org; Mon, 15 Oct 2007 08:31:11 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhP6D-0002R8-Ne for make-w32@gnu.org; Mon, 15 Oct 2007 08:31:09 -0400 Received: from lilzmailso01.liwest.at ([212.33.55.23]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhP68-0001VQ-Bl; Mon, 15 Oct 2007 08:31:04 -0400 Received: from cm56-163-160.liwest.at ([86.56.163.160] helo=linz.eudaptics.com) by lilzmailso01.liwest.at with esmtpa (Exim 4.66) (envelope-from ) id 1IhP5u-0007bn-Pp; Mon, 15 Oct 2007 14:30:51 +0200 Received: from [192.168.1.42] (J6T.linz.viscovery [192.168.1.42]) by linz.eudaptics.com (Postfix) with ESMTP id 50FB269F; Mon, 15 Oct 2007 14:31:01 +0200 (CEST) Message-ID: <47135D85.50701@viscovery.net> Date: Mon, 15 Oct 2007 14:31:01 +0200 From: Johannes Sixt User-Agent: Thunderbird 2.0.0.6 (Windows/20070728) MIME-Version: 1.0 To: Eli Zaretskii References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 1.2 (+) X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Mon, 15 Oct 2007 08:37:07 -0400 Cc: prohaska@zib.de, make-w32@gnu.org, Johannes Schindelin , raa.lkml@gmail.com, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 12:31:11 -0000 Eli Zaretskii schrieb: >> Date: Mon, 15 Oct 2007 09:47:25 +0100 (BST) >> From: Johannes Schindelin >> cc: Steffen Prohaska , git@vger.kernel.org, >> raa.lkml@gmail.com, ae@op5.se, tsuna@lrde.epita.fr, make-w32@gnu.org >> >> If you could make Git compile with Visual C++, that would be fabulous. > > I prefer GCC (the MinGW port), but without the MSYS ports of > additional tools. I use the GnuWin32 ports augmented by some of my > own (where GnuWin32 ports are buggy or terribly slow). They should work, too. If a tool is missing, ought to notice it soon enough. These are important to note, though: - The tools must not do their own LF->CRLF conversion when they are used in a pipeline, "just because they know it better". - GNU tar is needed (in the cpio emulator). - ln must be able to create hard links on NTFS or do the equivalent of cp -p - GNU cp -al will be needed and should create hard links on NTFS. (I plan to use it for local clones in place of cpio -pl.) Any feedback on how git works for you with these tools is appreciated. -- Hannes From MAILER-DAEMON Mon Oct 15 08:38:03 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhPCt-0008DM-F0 for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 08:38:03 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhPCr-0008Bs-Am for make-w32@gnu.org; Mon, 15 Oct 2007 08:38:01 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhPCq-0008BG-Hj for make-w32@gnu.org; Mon, 15 Oct 2007 08:38:00 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhPCq-0008Az-2j for make-w32@gnu.org; Mon, 15 Oct 2007 08:38:00 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhPCp-0003bh-Cl for make-w32@gnu.org; Mon, 15 Oct 2007 08:37:59 -0400 Received: from eliz by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1IhPCo-0004ZO-N9; Mon, 15 Oct 2007 08:37:58 -0400 From: Eli Zaretskii To: Johannes Sixt In-reply-to: <47135D85.50701@viscovery.net> (message from Johannes Sixt on Mon, 15 Oct 2007 14:31:01 +0200) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> <47135D85.50701@viscovery.net> Message-Id: Date: Mon, 15 Oct 2007 08:37:58 -0400 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: prohaska@zib.de, make-w32@gnu.org, Johannes.Schindelin@gmx.de, raa.lkml@gmail.com, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 12:38:01 -0000 > Date: Mon, 15 Oct 2007 14:31:01 +0200 > From: Johannes Sixt > Cc: Johannes Schindelin , > prohaska@zib.de, make-w32@gnu.org, raa.lkml@gmail.com, ae@op5.se, > git@vger.kernel.org > > > I prefer GCC (the MinGW port), but without the MSYS ports of > > additional tools. I use the GnuWin32 ports augmented by some of my > > own (where GnuWin32 ports are buggy or terribly slow). > > They should work, too. If a tool is missing, ought to notice it soon enough. > > These are important to note, though: > > - The tools must not do their own LF->CRLF conversion when they are used in > a pipeline, "just because they know it better". > > - GNU tar is needed (in the cpio emulator). > > - ln must be able to create hard links on NTFS or do the equivalent of > cp -p > > - GNU cp -al will be needed and should create hard links on NTFS. (I plan to > use it for local clones in place of cpio -pl.) > > Any feedback on how git works for you with these tools is appreciated. Thanks, I will try. From MAILER-DAEMON Mon Oct 15 08:53:40 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhPS0-0007UM-Cd for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 08:53:40 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhPRz-0007U0-QX for make-w32@gnu.org; Mon, 15 Oct 2007 08:53:39 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhPRz-0007TI-8G for make-w32@gnu.org; Mon, 15 Oct 2007 08:53:39 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhPRz-0007TD-1Q for make-w32@gnu.org; Mon, 15 Oct 2007 08:53:39 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhPRy-0006vA-DE for make-w32@gnu.org; Mon, 15 Oct 2007 08:53:38 -0400 Received: from eliz by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1IhPRy-00058s-0A; Mon, 15 Oct 2007 08:53:38 -0400 From: Eli Zaretskii To: Earnie Boyd In-reply-to: <20071015075843.30ksjd0m0w84kcw8@mail.progw.org> (message from Earnie Boyd on Mon, 15 Oct 2007 07:58:43 -0400) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <20071015075843.30ksjd0m0w84kcw8@mail.progw.org> Message-Id: Date: Mon, 15 Oct 2007 08:53:38 -0400 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 12:53:40 -0000 > Date: Mon, 15 Oct 2007 07:58:43 -0400 > From: Earnie Boyd > > > Quoting Eli Zaretskii : > > >> Date: Mon, 15 Oct 2007 00:45:47 +0100 (BST) > >> From: Johannes Schindelin > >> cc: Alex Riesen , ae@op5.se, tsuna@lrde.epita.fr, > >> git@vger.kernel.org, make-w32@gnu.org > >> > >> The problem is that on Windows, you cannot keep a file open and delete it > >> at the same time. > > > > That is no longer true, for quite some time. NT4 and later versions > > support that almost exactly like Posix filesystems. > > > > You still can't keep a file open and delete it as far as I know. If > you can please share how. I attach a short toy program that can demonstrate this. While it sleeps for 30 seconds, go to another shell window and delete the file which it has open (either its first command-line arg or "topen.tst" if no arg was given. Then try `dir' or `ls' on the removed file, and you will see that continues to be listed until the program closes the handle, at which point it is actually removed. Again, this is a toy program, so please don't pounce on me saying that it doesn't do anything useful. Making some practical use out of this feature is left as an exercise to the interested readers ;-). See also FILE_FLAG_DELETE_ON_CLOSE. (Note that above I said "almost" exactly like Posix, and that's because a Posix filesystem will not show the file in `ls' after it was deleted like that, while Windows does. All the rest is similar.) ----------------------------- cut here ---------------------------- #include #include #include int main (int argc, char *argv[]) { HANDLE fh = CreateFile (argc > 1 ? argv[1] : "topen.tst", GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_DELETE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if (fh != INVALID_HANDLE_VALUE) { Sleep (30000); CloseHandle (fh); } else fprintf (stderr, "%s: cannot open: %lu\n", argc > 1 ? argv[1] : "topen.tst", GetLastError ()); return 0; } From MAILER-DAEMON Mon Oct 15 13:39:37 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhTuj-000196-Ji for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 13:39:37 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhTrW-0000Ad-UD for make-w32@gnu.org; Mon, 15 Oct 2007 13:36:18 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhTrU-0000AI-Vp for make-w32@gnu.org; Mon, 15 Oct 2007 13:36:17 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhTrU-0000AE-SP for make-w32@gnu.org; Mon, 15 Oct 2007 13:36:16 -0400 Received: from mo-p07-ob.rzone.de ([81.169.146.190]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhTrU-0004P2-6s for make-w32@gnu.org; Mon, 15 Oct 2007 13:36:16 -0400 Received: from tigra.home (Fc8e3.f.strato-dslnet.de [195.4.200.227]) by post.webmailer.de (mrclete mo34) (RZmta 13.4) with ESMTP id j00bdej9FFfDQ5 ; Mon, 15 Oct 2007 19:36:10 +0200 (MEST) (envelope-from: ) Received: from steel.home (steel.home [192.168.1.2]) by tigra.home (Postfix) with ESMTP id 70CC8277AE; Mon, 15 Oct 2007 19:36:10 +0200 (CEST) Received: by steel.home (Postfix, from userid 1000) id 0AA6656D22; Mon, 15 Oct 2007 19:36:09 +0200 (CEST) Date: Mon, 15 Oct 2007 19:36:09 +0200 From: Alex Riesen To: Johannes Schindelin Message-ID: <20071015173609.GA2966@steel.home> References: <20071014221446.GC2776@steel.home> <023101c80eb5$e3b6b310$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.15+20070412 (2007-04-11) X-RZG-AUTH: z4gQVF2k5XWuW3CcuQaEWow2U+g= X-RZG-CLASS-ID: mo07 X-detected-kernel: by monty-python.gnu.org: Solaris 10 (beta) X-Mailman-Approved-At: Mon, 15 Oct 2007 13:39:36 -0400 Cc: 'Andreas Ericsson' , 'Make Windows' , 'git list' Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Alex Riesen List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 17:36:19 -0000 Johannes Schindelin, Mon, Oct 15, 2007 02:01:00 +0200: > On Sun, 14 Oct 2007, Dave Korn wrote: > > On 14 October 2007 23:15, Alex Riesen wrote: > > > - it has only one argument (limited in size) passed to started > > > programs, which means that there is no possible way to safely pass > > > file and text arguments on command line (more than one, that is) > > > > Whuh? > > > > http://msdn2.microsoft.com/en-us/library/y5zz48s1(VS.80).aspx > > It does have an exec() call, yes, since that is required by the C > standard. But internally, it converts that into one single command line. > > In corner cases, you find problems with that. > Like: "damn, it is just IMPOSSIBLE to implement without them corner cases." From MAILER-DAEMON Mon Oct 15 13:39:37 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhTuj-00019I-P7 for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 13:39:37 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhTu0-00012B-97 for make-w32@gnu.org; Mon, 15 Oct 2007 13:38:52 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhTty-00011V-Te for make-w32@gnu.org; Mon, 15 Oct 2007 13:38:51 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhTty-00011N-IT for make-w32@gnu.org; Mon, 15 Oct 2007 13:38:50 -0400 Received: from mo-p07-ob.rzone.de ([81.169.146.188]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhTty-00053B-0y for make-w32@gnu.org; Mon, 15 Oct 2007 13:38:50 -0400 Received: from tigra.home (Fc8e3.f.strato-dslnet.de [195.4.200.227]) by post.webmailer.de (fruni mo20) (RZmta 13.4) with ESMTP id z02d7aj9FE0vNc ; Mon, 15 Oct 2007 19:38:32 +0200 (MEST) (envelope-from: ) Received: from steel.home (steel.home [192.168.1.2]) by tigra.home (Postfix) with ESMTP id BA582277AE; Mon, 15 Oct 2007 19:38:32 +0200 (CEST) Received: by steel.home (Postfix, from userid 1000) id 892B856D22; Mon, 15 Oct 2007 19:38:32 +0200 (CEST) Date: Mon, 15 Oct 2007 19:38:32 +0200 From: Alex Riesen To: Michael Gebetsroither Message-ID: <20071015173832.GB2966@steel.home> References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.15+20070412 (2007-04-11) X-RZG-AUTH: z4gQVF2k5XWuW3CcuQaEWow2U+g= X-RZG-CLASS-ID: mo07 X-detected-kernel: by monty-python.gnu.org: Solaris 10 (beta) X-Mailman-Approved-At: Mon, 15 Oct 2007 13:39:36 -0400 Cc: make-w32@gnu.org, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Alex Riesen List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 17:38:52 -0000 Michael Gebetsroither, Mon, Oct 15, 2007 02:46:11 +0200: > > - it is the only OS in the world with multi-root (/a/b/c and /a/b/c > > can be not the same, depending on what current "drive" is) and > > multi-cwd, which hasn't had formed itself into a problem yet, but > > surely will > > Thats true for linux too. > /a/b/c and /a/b/c can be 2 totally different files depending on the vfs > namespace you are one. No it is not. A process will always see the same filesystem object under the same path at the any given time (IOW, you can't have many namespaces active at the same time). From MAILER-DAEMON Mon Oct 15 13:51:46 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhU6U-0006TU-R8 for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 13:51:46 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhU4O-0005Tw-5D for make-w32@gnu.org; Mon, 15 Oct 2007 13:49:36 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhU4M-0005TM-7L for make-w32@gnu.org; Mon, 15 Oct 2007 13:49:35 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhU4M-0005TI-4u for make-w32@gnu.org; Mon, 15 Oct 2007 13:49:34 -0400 Received: from mo-p07-ob.rzone.de ([81.169.146.189]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhU4G-0008CE-Kj; Mon, 15 Oct 2007 13:49:28 -0400 Received: from tigra.home (Fc8e3.f.strato-dslnet.de [195.4.200.227]) by post.webmailer.de (fruni mo17) (RZmta 13.4) with ESMTP id w02d5fj9FHRCac ; Mon, 15 Oct 2007 19:49:23 +0200 (MEST) (envelope-from: ) Received: from steel.home (steel.home [192.168.1.2]) by tigra.home (Postfix) with ESMTP id 0DB9A277AE; Mon, 15 Oct 2007 19:49:23 +0200 (CEST) Received: by steel.home (Postfix, from userid 1000) id D7E5656D22; Mon, 15 Oct 2007 19:49:22 +0200 (CEST) Date: Mon, 15 Oct 2007 19:49:22 +0200 From: Alex Riesen To: Johannes Schindelin Message-ID: <20071015174922.GC2966@steel.home> References: <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.15+20070412 (2007-04-11) X-RZG-AUTH: z4gQVF2k5XWuW3CcuQaEWow2U+g= X-RZG-CLASS-ID: mo07 X-detected-kernel: by monty-python.gnu.org: Solaris 10 (beta) X-Mailman-Approved-At: Mon, 15 Oct 2007 13:51:45 -0400 Cc: ae@op5.se, git@vger.kernel.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Alex Riesen List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 17:49:36 -0000 Johannes Schindelin, Mon, Oct 15, 2007 10:44:12 +0200: > On Mon, 15 Oct 2007, Eli Zaretskii wrote: > > Can you show a test case where this penalty is clearly visible? I'm > > curious to see the numbers. TIA ... > Now, that is my _personal_ decision. If _you_ have no problem with > Windows, just stick with it. (I always thought this goes without saying, > but Windows users tend to be very religious about this issue, thinking > just because I hate Windows that I want to make them switch. Hahaha, no.) They tend to be so exactly because they know how pathetic they are. They just want to have something where they don't suck and do everything to find it. And fail. Then they resort to graphics and user-friendly interface. From MAILER-DAEMON Mon Oct 15 13:54:20 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhU8y-0007ko-7S for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 13:54:20 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhU8m-0007hk-4U for make-w32@gnu.org; Mon, 15 Oct 2007 13:54:08 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhU8k-0007hX-Qb for make-w32@gnu.org; Mon, 15 Oct 2007 13:54:07 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhU8k-0007hU-Jt for make-w32@gnu.org; Mon, 15 Oct 2007 13:54:06 -0400 Received: from mo-p07-ob.rzone.de ([81.169.146.190]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhU8f-000184-6W; Mon, 15 Oct 2007 13:54:01 -0400 Received: from tigra.home (Fc8e3.f.strato-dslnet.de [195.4.200.227]) by post.webmailer.de (fruni mo46) (RZmta 13.4) with ESMTP id D02e03j9FHEveI ; Mon, 15 Oct 2007 19:53:54 +0200 (MEST) (envelope-from: ) Received: from steel.home (steel.home [192.168.1.2]) by tigra.home (Postfix) with ESMTP id B0F3F277AE; Mon, 15 Oct 2007 19:53:54 +0200 (CEST) Received: by steel.home (Postfix, from userid 1000) id 8D9CB56D22; Mon, 15 Oct 2007 19:53:54 +0200 (CEST) Date: Mon, 15 Oct 2007 19:53:54 +0200 From: Alex Riesen To: Johannes Schindelin Message-ID: <20071015175354.GD2966@steel.home> References: <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.15+20070412 (2007-04-11) X-RZG-AUTH: z4gQVF2k5XWuW3CcuQaEWow2U+g= X-RZG-CLASS-ID: mo07 X-detected-kernel: by monty-python.gnu.org: Solaris 10 (beta) X-Mailman-Approved-At: Mon, 15 Oct 2007 13:54:18 -0400 Cc: ae@op5.se, git@vger.kernel.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Alex Riesen List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 17:54:08 -0000 Johannes Schindelin, Mon, Oct 15, 2007 01:45:47 +0200: > On Mon, 15 Oct 2007, Eli Zaretskii wrote: > > Alex Riesen said: > > > - it is the only OS in the world with multi-root (/a/b/c and /a/b/c > > > can be not the same, depending on what current "drive" is) > > > > So what? on Unix "a/b/c" can be not the same. Both cases are simply not > > complete file names, that's all. No one said there must be a single > > root for all volumes, it's the Posix jingoism creeping in again. > > I think Alex means this: you can have C:\a\b\c and D:\a\b\c. So depending > on which drive you are, you mean one or the other. Just comparing the > paths is not enough. Not really. I meant that "/a/b/c" and "/a/b/c". Note the leading slash. On windoze it is _NOT_ absolute path. It is relative to the root of the current drive. From MAILER-DAEMON Mon Oct 15 14:26:02 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhUde-0002Ew-JE for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 14:26:02 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhUdc-0002DD-3t for make-w32@gnu.org; Mon, 15 Oct 2007 14:26:00 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhUdZ-0002AM-9W for make-w32@gnu.org; Mon, 15 Oct 2007 14:25:59 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhUdZ-0002AF-54 for make-w32@gnu.org; Mon, 15 Oct 2007 14:25:57 -0400 Received: from mail.artimi.com ([194.72.81.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhUdY-0002Mm-QR for make-w32@gnu.org; Mon, 15 Oct 2007 14:25:57 -0400 Received: from rainbow ([192.168.8.46]) by mail.artimi.com with Microsoft SMTPSVC(6.0.3790.3959); Mon, 15 Oct 2007 19:25:55 +0100 From: "Dave Korn" To: "'Alex Riesen'" , "'Johannes Schindelin'" References: <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr><47125F74.9050600@op5.se><47126957.1020204@op5.se><20071014221446.GC2776@steel.home> <20071015174922.GC2966@steel.home> Date: Mon, 15 Oct 2007 19:25:55 +0100 Message-ID: <030301c80f58$d37b9710$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <20071015174922.GC2966@steel.home> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138 Thread-Index: AcgPVBHHEeita5VpRSKttbtOdJGWyQAA1/Tg X-OriginalArrivalTime: 15 Oct 2007 18:25:55.0371 (UTC) FILETIME=[D32057B0:01C80F58] X-detected-kernel: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ Cc: ae@op5.se, make-w32@gnu.org, git@vger.kernel.org Subject: RE: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 18:26:00 -0000 On 15 October 2007 18:49, Alex Riesen wrote: > Johannes Schindelin, Mon, Oct 15, 2007 10:44:12 +0200: >> On Mon, 15 Oct 2007, Eli Zaretskii wrote: >>> Can you show a test case where this penalty is clearly visible? I'm >>> curious to see the numbers. TIA > ... >> Now, that is my _personal_ decision. If _you_ have no problem with >> Windows, just stick with it. (I always thought this goes without saying, >> but Windows users tend to be very religious about this issue, thinking >> just because I hate Windows that I want to make them switch. Hahaha, no.) > > They tend to be so exactly because they know how pathetic they are. > They just want to have something where they don't suck and do > everything to find it. And fail. Then they resort to graphics and > user-friendly interface. Translation: "I feel that I am superior to other people. This post has no content apart from me shooting my mouth off in an attempt to prove how much cleverer I am than anyone else. However apart from my self-love I have no contribution to make to the discussion." This isn't slashdot. A computer is just a tool, and it's really *you* who are being pathetic, because you confuse a choice of mass-manufactured consumer product with a statement about personal identity. Loyalty to your favourite brand is a game of one-upmanship suitable only for kids. You need to grow up. cheers, DaveK -- Can't think of a witty .sigline today.... From MAILER-DAEMON Mon Oct 15 14:26:30 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhUe5-0002hb-Ro for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 14:26:29 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhUAr-00087o-Oe for make-w32@gnu.org; Mon, 15 Oct 2007 13:56:17 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhUAq-00087c-Ej for make-w32@gnu.org; Mon, 15 Oct 2007 13:56:17 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhUAq-00087Z-Bd for make-w32@gnu.org; Mon, 15 Oct 2007 13:56:16 -0400 Received: from mo-p07-ob.rzone.de ([81.169.146.189]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhUAm-0001pU-1P; Mon, 15 Oct 2007 13:56:12 -0400 Received: from tigra.home (Fc8e3.f.strato-dslnet.de [195.4.200.227]) by post.webmailer.de (klopstock mo11) (RZmta 13.4) with ESMTP id 003315j9FHoqRy ; Mon, 15 Oct 2007 19:56:07 +0200 (MEST) (envelope-from: ) Received: from steel.home (steel.home [192.168.1.2]) by tigra.home (Postfix) with ESMTP id 28C7E277AE; Mon, 15 Oct 2007 19:56:07 +0200 (CEST) Received: by steel.home (Postfix, from userid 1000) id 060CC56D22; Mon, 15 Oct 2007 19:56:07 +0200 (CEST) Date: Mon, 15 Oct 2007 19:56:06 +0200 From: Alex Riesen To: Johannes Schindelin Message-ID: <20071015175606.GE2966@steel.home> References: <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.15+20070412 (2007-04-11) X-RZG-AUTH: z4gQVF2k5XWuW3CcuQaEWow2U+g= X-RZG-CLASS-ID: mo07 X-detected-kernel: by monty-python.gnu.org: Solaris 10 (beta) X-Mailman-Approved-At: Mon, 15 Oct 2007 14:26:28 -0400 Cc: ae@op5.se, git@vger.kernel.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Alex Riesen List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 17:56:18 -0000 Johannes Schindelin, Mon, Oct 15, 2007 03:22:53 +0200: > On Sun, 14 Oct 2007, Brian Dessent wrote: > > Johannes Schindelin wrote: > > > The problem is that on Windows, you cannot keep a file open and delete > > > it at the same time. This is an issue in Windows' equivalent of VFS. > > > > > > A neat trick to work with temporary files without permission issues is > > > to open the file and delete it right after that. This does not work > > > on Windows. > > > > You can achieve the same thing on Windows with CreateFile() by setting > > the dwShareMode parameter to zero and setting the > > FILE_FLAG_DELETE_ON_CLOSE attribute on dwFlagsAndAttributes. This > > results in a file that cannot be opened or read by any other process and > > that will be automatically deleted when all open handles are closed. > > Aha. So to support Windows, we have to wrap all sites that use that > trick, and special case that #ifdef __MINGW32__. He misunderstood. It is not what you meant. You cannot remove the open file. What he talks about is removing the file after it is _closed_. Junk. From MAILER-DAEMON Mon Oct 15 14:30:00 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhUhT-0006TP-QE for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 14:29:59 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhUhR-0006SD-Ro for make-w32@gnu.org; Mon, 15 Oct 2007 14:29:57 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhUhQ-0006Qg-1m for make-w32@gnu.org; Mon, 15 Oct 2007 14:29:57 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhUhP-0006QZ-U5 for make-w32@gnu.org; Mon, 15 Oct 2007 14:29:55 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhUhJ-0003WL-IF; Mon, 15 Oct 2007 14:29:49 -0400 Received: from mr02.lnh.mail.rcn.net ([207.172.157.22]) by smtp02.lnh.mail.rcn.net with ESMTP; 15 Oct 2007 14:29:41 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr02.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id NXB65381; Mon, 15 Oct 2007 14:29:41 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 15 Oct 2007 14:31:19 -0400 Received: from psmith by homebase.localnet with local (Exim 4.67) (envelope-from ) id 1IhUh9-0003eQ-72; Mon, 15 Oct 2007 14:29:39 -0400 From: Paul Smith To: Eli Zaretskii In-Reply-To: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> <47135D85.50701@viscovery.net> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Mon, 15 Oct 2007 14:29:38 -0400 Message-Id: <1192472978.8299.155.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr02.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090204.4713B195.0179,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. Cc: raa.lkml@gmail.com, prohaska@zib.de, make-w32@gnu.org, Johannes.Schindelin@gmx.de, ae@op5.se, Johannes Sixt , git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: git@vger.kernel.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 18:29:58 -0000 OK, enough. I am extremely grateful for the porting and maintenance efforts of the GNU make porting team (since I have no Windows--or Amiga, or OS/2, or OpenVMS--systems to maintain these ports myself) and I'm not going to choose a tool unless it supports their environment and helps them to work more efficiently (or at least no less efficiently). I'm not interested in getting into a pissing match over which operating system is better or worse, and I'm certainly not interested in unfounded inferences as to the character and quality of my porting team based on the operating system they are using. For those who have provided details and pointers regarding the state of GIT on Windows, thank you very much for your help: it's been very useful and Eli and others sound like they have enough information to be getting on with for now. If you'd like to discuss some Windows porting issues further there are a number of extremely knowledgeable Windows / FLOSS programmers on the make-w32@gnu.org list--although they are generally very busy. If what you're interested in is self-congratulatory back-slapping over the superiority of Linux/POSIX, please keep that on the GIT mailing list, or else an advocacy forum somewhere. I'm setting followups to the GIT list. Cheers all! -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Mon Oct 15 14:37:45 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhUoz-0004Qa-O4 for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 14:37:45 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhUoy-0004PH-3W for make-w32@gnu.org; Mon, 15 Oct 2007 14:37:44 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhUov-0004P2-Pv for make-w32@gnu.org; Mon, 15 Oct 2007 14:37:42 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhUov-0004Oz-Ja for make-w32@gnu.org; Mon, 15 Oct 2007 14:37:41 -0400 Received: from dessent.net ([69.60.119.225]) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhUot-0005uB-Gr; Mon, 15 Oct 2007 14:37:39 -0400 Received: from localhost ([127.0.0.1] helo=dessent.net) by dessent.net with esmtp (Exim 4.50) id 1IhUok-0000sA-Lj; Mon, 15 Oct 2007 18:37:30 +0000 Message-ID: <4713B367.52CEC7E2@dessent.net> Date: Mon, 15 Oct 2007 11:37:27 -0700 From: Brian Dessent Organization: My own little world... X-Mailer: Mozilla 4.79 [en] (Windows NT 5.0; U) X-Accept-Language: en,en-US MIME-Version: 1.0 To: Alex Riesen References: <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <4712B616.165BBF8D@dessent.net> <20071015175606.GE2966@steel.home> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.4-2.6 Cc: make-w32@gnu.org, Johannes Schindelin , ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: git@vger.kernel.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 18:37:44 -0000 Alex Riesen wrote: > He misunderstood. It is not what you meant. You cannot remove the open > file. What he talks about is removing the file after it is _closed_. > Junk. I did not misunderstand. The semantics are equivalent to the POSIX case: you end up with a handle to an open file that is exclusive to that process (it cannot be opened by any other process, even root) and that is automatically reclaimed by the filesystem when all open handles are closed, without any explicit action by the user. It's not "unlinking an open file", no, but it's the same result. Brian From MAILER-DAEMON Mon Oct 15 15:07:04 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhVHM-0000oU-0s for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 15:07:04 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhUmU-00036I-Cw for make-w32@gnu.org; Mon, 15 Oct 2007 14:35:10 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhUmQ-00035C-T8 for make-w32@gnu.org; Mon, 15 Oct 2007 14:35:10 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhUmQ-000359-Qv for make-w32@gnu.org; Mon, 15 Oct 2007 14:35:06 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IhUmQ-0005J2-AQ for make-w32@gnu.org; Mon, 15 Oct 2007 14:35:06 -0400 Received: (qmail invoked by alias); 15 Oct 2007 18:35:04 -0000 Received: from unknown (EHLO [138.251.11.74]) [138.251.11.74] by mail.gmx.net (mp035) with SMTP; 15 Oct 2007 20:35:04 +0200 X-Authenticated: #1490710 X-Provags-ID: V01U2FsdGVkX1/A2hRvlzrAskyxXzS9SFXxkjHyJixfSjtMKprLbo GNZk51+IahsdJU Date: Mon, 15 Oct 2007 19:34:59 +0100 (BST) From: Johannes Schindelin X-X-Sender: gene099@racer.site To: Dave Korn In-Reply-To: <030301c80f58$d37b9710$2e08a8c0@CAM.ARTIMI.COM> Message-ID: References: <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr><47125F74.9050600@op5.se><47126957.1020204@op5.se><20071014221446.GC2776@steel.home> <20071015174922.GC2966@steel.home> <030301c80f58$d37b9710$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Mon, 15 Oct 2007 15:07:02 -0400 Cc: ae@op5.se, 'Alex Riesen' , make-w32@gnu.org, git@vger.kernel.org Subject: RE: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 18:35:10 -0000 Hi, On Mon, 15 Oct 2007, Dave Korn wrote: > On 15 October 2007 18:49, Alex Riesen wrote: > > > Johannes Schindelin, Mon, Oct 15, 2007 10:44:12 +0200: > >> On Mon, 15 Oct 2007, Eli Zaretskii wrote: > >>> Can you show a test case where this penalty is clearly visible? I'm > >>> curious to see the numbers. TIA > > ... > >> Now, that is my _personal_ decision. If _you_ have no problem with > >> Windows, just stick with it. (I always thought this goes without saying, > >> but Windows users tend to be very religious about this issue, thinking > >> just because I hate Windows that I want to make them switch. Hahaha, no.) > > > > They tend to be so exactly because they know how pathetic they are. > > They just want to have something where they don't suck and do > > everything to find it. And fail. Then they resort to graphics and > > user-friendly interface. > > Translation: "I feel that I am superior to other people. This post > has no content apart from me shooting my mouth off in an attempt to > prove how much cleverer I am than anyone else. However apart from my > self-love I have no contribution to make to the discussion." > > This isn't slashdot. A computer is just a tool, and it's really *you* > who are being pathetic, because you confuse a choice of > mass-manufactured consumer product with a statement about personal > identity. Loyalty to your favourite brand is a game of one-upmanship > suitable only for kids. You need to grow up. I sense a classical Stockholm Syndrome here ;-) Ciao, Dscho From MAILER-DAEMON Mon Oct 15 15:25:53 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhVZZ-0004xr-3d for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 15:25:53 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhVZW-0004vD-Lt for make-w32@gnu.org; Mon, 15 Oct 2007 15:25:50 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhVZV-0004v1-8O for make-w32@gnu.org; Mon, 15 Oct 2007 15:25:50 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhVZV-0004uy-3n for make-w32@gnu.org; Mon, 15 Oct 2007 15:25:49 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhVZU-0001Gv-Tq for make-w32@gnu.org; Mon, 15 Oct 2007 15:25:49 -0400 Received: from localhost ([127.0.0.1] helo=lola.goethe.zz) by fencepost.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhVZT-0005hn-U8; Mon, 15 Oct 2007 15:25:48 -0400 Received: by lola.goethe.zz (Postfix, from userid 1002) id 139961C4D4B3; Mon, 15 Oct 2007 21:26:44 +0200 (CEST) To: Alex Riesen References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <20071015173832.GB2966@steel.home> From: David Kastrup Date: Mon, 15 Oct 2007 21:26:44 +0200 In-Reply-To: <20071015173832.GB2966@steel.home> (Alex Riesen's message of "Mon\, 15 Oct 2007 19\:38\:32 +0200") Message-ID: <85ejfwi3gr.fsf@lola.goethe.zz> User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: Michael Gebetsroither , make-w32@gnu.org, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 19:25:51 -0000 Alex Riesen writes: > Michael Gebetsroither, Mon, Oct 15, 2007 02:46:11 +0200: >> > - it is the only OS in the world with multi-root (/a/b/c and /a/b/c >> > can be not the same, depending on what current "drive" is) and >> > multi-cwd, which hasn't had formed itself into a problem yet, but >> > surely will >> >> Thats true for linux too. >> /a/b/c and /a/b/c can be 2 totally different files depending on the vfs >> namespace you are one. > > No it is not. A process will always see the same filesystem object > under the same path at the any given time (IOW, you can't have many > namespaces active at the same time). dak@lola:/home/tmp/emacs$ mkdir -p /tmp/a/b dak@lola:/home/tmp/emacs$ cd /tmp/a/b dak@lola:/tmp/a/b$ sudo mount --bind /usr /tmp/a Password: dak@lola:/tmp/a/b$ command pwd /tmp/a/b dak@lola:/tmp/a/b$ ls -l total 0 dak@lola:/tmp/a/b$ ls -l /tmp/a/b ls: /tmp/a/b: No such file or directory dak@lola:/tmp/a/b$ -- David Kastrup, Kriemhildstr. 15, 44793 Bochum From MAILER-DAEMON Mon Oct 15 15:37:15 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhVkY-00021m-VV for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 15:37:15 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhVem-00008d-9H for make-w32@gnu.org; Mon, 15 Oct 2007 15:31:16 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhVek-000083-JF for make-w32@gnu.org; Mon, 15 Oct 2007 15:31:15 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhVek-000080-8v for make-w32@gnu.org; Mon, 15 Oct 2007 15:31:14 -0400 Received: from mo-p07-ob.rzone.de ([81.169.146.188]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhVeg-0002lQ-0S; Mon, 15 Oct 2007 15:31:10 -0400 Received: from tigra.home (Fca67.f.strato-dslnet.de [195.4.202.103]) by post.webmailer.de (klopstock mo47) (RZmta 13.4) with ESMTP id K033c4j9FJ906c ; Mon, 15 Oct 2007 21:30:54 +0200 (MEST) (envelope-from: ) Received: from steel.home (steel.home [192.168.1.2]) by tigra.home (Postfix) with ESMTP id B8925277AE; Mon, 15 Oct 2007 21:30:53 +0200 (CEST) Received: by steel.home (Postfix, from userid 1000) id 5C98856D22; Mon, 15 Oct 2007 21:30:53 +0200 (CEST) Date: Mon, 15 Oct 2007 21:30:53 +0200 From: Alex Riesen To: David Kastrup Message-ID: <20071015193053.GA15541@steel.home> References: <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <20071015173832.GB2966@steel.home> <85ejfwi3gr.fsf@lola.goethe.zz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <85ejfwi3gr.fsf@lola.goethe.zz> User-Agent: Mutt/1.5.15+20070412 (2007-04-11) X-RZG-AUTH: z4gQVF2k5XWuW3CcuQaGCTv2MPo= X-RZG-CLASS-ID: mo07 X-detected-kernel: by monty-python.gnu.org: Solaris 10 (beta) X-Mailman-Approved-At: Mon, 15 Oct 2007 15:37:13 -0400 Cc: Michael Gebetsroither , make-w32@gnu.org, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Alex Riesen List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 19:31:16 -0000 David Kastrup, Mon, Oct 15, 2007 21:26:44 +0200: > Alex Riesen writes: > > > Michael Gebetsroither, Mon, Oct 15, 2007 02:46:11 +0200: > >> > - it is the only OS in the world with multi-root (/a/b/c and /a/b/c > >> > can be not the same, depending on what current "drive" is) and > >> > multi-cwd, which hasn't had formed itself into a problem yet, but > >> > surely will > >> > >> Thats true for linux too. > >> /a/b/c and /a/b/c can be 2 totally different files depending on the vfs > >> namespace you are one. > > > > No it is not. A process will always see the same filesystem object > > under the same path at the any given time (IOW, you can't have many > > namespaces active at the same time). > > dak@lola:/home/tmp/emacs$ mkdir -p /tmp/a/b > dak@lola:/home/tmp/emacs$ cd /tmp/a/b > dak@lola:/tmp/a/b$ sudo mount --bind /usr /tmp/a Well don't do that in your repos (unless need that for something). It is not like someone creates a distribution which does it automagically all the time and you're forced to use that distribution. From MAILER-DAEMON Mon Oct 15 15:37:15 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhVkZ-000223-DT for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 15:37:15 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhVht-0001Md-G5 for make-w32@gnu.org; Mon, 15 Oct 2007 15:34:29 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhVhs-0001ML-OY for make-w32@gnu.org; Mon, 15 Oct 2007 15:34:29 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhVhs-0001MG-Ku for make-w32@gnu.org; Mon, 15 Oct 2007 15:34:28 -0400 Received: from mo-p07-ob.rzone.de ([81.169.146.190]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhVhs-0003Zb-9a for make-w32@gnu.org; Mon, 15 Oct 2007 15:34:28 -0400 Received: from tigra.home (Fca67.f.strato-dslnet.de [195.4.202.103]) by post.webmailer.de (klopstock mo9) (RZmta 13.4) with ESMTP id m033fcj9FFopLo ; Mon, 15 Oct 2007 21:34:25 +0200 (MEST) (envelope-from: ) Received: from steel.home (steel.home [192.168.1.2]) by tigra.home (Postfix) with ESMTP id B5900277AE; Mon, 15 Oct 2007 21:34:24 +0200 (CEST) Received: by steel.home (Postfix, from userid 1000) id 9D4D656D22; Mon, 15 Oct 2007 21:34:24 +0200 (CEST) Date: Mon, 15 Oct 2007 21:34:24 +0200 From: Alex Riesen To: Dave Korn Message-ID: <20071015193424.GB15541@steel.home> References: <20071015174922.GC2966@steel.home> <030301c80f58$d37b9710$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <030301c80f58$d37b9710$2e08a8c0@CAM.ARTIMI.COM> User-Agent: Mutt/1.5.15+20070412 (2007-04-11) X-RZG-AUTH: z4gQVF2k5XWuW3CcuQaGCTv2MPo= X-RZG-CLASS-ID: mo07 X-detected-kernel: by monty-python.gnu.org: Solaris 10 (beta) X-Mailman-Approved-At: Mon, 15 Oct 2007 15:37:13 -0400 Cc: ae@op5.se, git@vger.kernel.org, 'Johannes Schindelin' , make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Alex Riesen List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 19:34:29 -0000 Dave Korn, Mon, Oct 15, 2007 20:25:55 +0200: > On 15 October 2007 18:49, Alex Riesen wrote: > > > Johannes Schindelin, Mon, Oct 15, 2007 10:44:12 +0200: > >> On Mon, 15 Oct 2007, Eli Zaretskii wrote: > >>> Can you show a test case where this penalty is clearly visible? I'm > >>> curious to see the numbers. TIA > > ... > >> Now, that is my _personal_ decision. If _you_ have no problem with > >> Windows, just stick with it. (I always thought this goes without saying, > >> but Windows users tend to be very religious about this issue, thinking > >> just because I hate Windows that I want to make them switch. Hahaha, no.) > > > > They tend to be so exactly because they know how pathetic they are. > > They just want to have something where they don't suck and do > > everything to find it. And fail. Then they resort to graphics and > > user-friendly interface. > > Translation: "I feel that I am superior to other people. This post has no > content apart from me shooting my mouth off in an attempt to prove how much > cleverer I am than anyone else. However apart from my self-love I have no > contribution to make to the discussion." It is interpretation, not translation. Wrong, too. > This isn't slashdot. A computer is just a tool, and it's really *you* who > are being pathetic, because you confuse a choice of mass-manufactured consumer it is not a "choice". It is an accident. Like in "caused by careless driving". > product with a statement about personal identity. Loyalty to your favourite > brand is a game of one-upmanship suitable only for kids. You need to grow up. Yep. Will do. From MAILER-DAEMON Mon Oct 15 15:49:08 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhVw4-0006WZ-PM for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 15:49:08 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhVw3-0006Vc-Gp for make-w32@gnu.org; Mon, 15 Oct 2007 15:49:07 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhVw1-0006Sf-B2 for make-w32@gnu.org; Mon, 15 Oct 2007 15:49:06 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhVw1-0006SK-27 for make-w32@gnu.org; Mon, 15 Oct 2007 15:49:05 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhVw0-0007Qj-NE for make-w32@gnu.org; Mon, 15 Oct 2007 15:49:04 -0400 Received: from mr08.lnh.mail.rcn.net ([207.172.157.28]) by smtp02.lnh.mail.rcn.net with ESMTP; 15 Oct 2007 15:49:04 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr08.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id JFE18494; Mon, 15 Oct 2007 15:48:56 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 15 Oct 2007 15:50:31 -0400 Received: from psmith by homebase.localnet with local (Exim 4.67) (envelope-from ) id 1IhVvm-0003nq-QO; Mon, 15 Oct 2007 15:48:50 -0400 From: Paul Smith To: Christopher Faylor In-Reply-To: <20071014175339.GE11619@ednor.casa.cgf.cx> References: <1192293466.17584.95.camel@homebase.localnet> <20071014175339.GE11619@ednor.casa.cgf.cx> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Mon, 15 Oct 2007 15:48:49 -0400 Message-Id: <1192477729.8299.185.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr08.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090203.4713C42D.016A,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. Cc: Make Windows Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 19:49:07 -0000 On Sun, 2007-10-14 at 13:53 -0400, Christopher Faylor wrote: > Someone mentioned mercurial already. It means convincing savannah > sysadmins that this is a good idea, I guess. > > I could sponsor the hosting of GNU make at sourceware.org, which has > mercurial installed, but I guess that's a sort of radical step. Since GNU make is a fundamental FSF package, with copyright owned by them, etc. I wouldn't feel right about moving it off of Savannah without their permission, and I don't think this is a sufficiently compelling reason to move. If Mercurial were to be supported on Savannah then I guess that's another possibility that I'd consider, of course. I've not seen any plans for this so far though. -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Mon Oct 15 16:22:58 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhWSn-0002YS-TO for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 16:22:57 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhWSm-0002Xx-GL for make-w32@gnu.org; Mon, 15 Oct 2007 16:22:56 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhWSl-0002Wa-2v for make-w32@gnu.org; Mon, 15 Oct 2007 16:22:56 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhWSk-0002WM-Ps; Mon, 15 Oct 2007 16:22:54 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhWSf-00079d-MA; Mon, 15 Oct 2007 16:22:49 -0400 Received: from mr02.lnh.mail.rcn.net ([207.172.157.22]) by smtp02.lnh.mail.rcn.net with ESMTP; 15 Oct 2007 16:22:49 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr02.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id NXC01847; Mon, 15 Oct 2007 16:22:48 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 15 Oct 2007 16:24:26 -0400 Received: from psmith by homebase.localnet with local (Exim 4.67) (envelope-from ) id 1IhWSa-0003vZ-6h; Mon, 15 Oct 2007 16:22:44 -0400 From: Paul Smith To: bug-make@gnu.org In-Reply-To: <1192381040.4908.57.camel@homebase.localnet> References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Mon, 15 Oct 2007 16:22:43 -0400 Message-Id: <1192479763.8299.192.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr02.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090208.4713CC17.0149,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. Cc: make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 20:22:56 -0000 It looks like this discussion may have been premature, perhaps by as little as a few weeks or so, based on the fact that Savannah has Subversion support in beta right now and that there seems to be a lot of action around GIT support on Windows that is being published either now or very shortly. So, let's table this discussion for the time being. We'll revisit it later this year when hopefully some things have shaken out. In the meantime I'm going to play with some of these other tools. If you (esp. non-Linux users) have time to try them out as well I'd really appreciate any suggestions you come up with. -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Mon Oct 15 17:11:51 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhXE6-00039D-U6 for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 17:11:50 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhXE5-00037N-5m for make-w32@gnu.org; Mon, 15 Oct 2007 17:11:49 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhXE0-00035b-Mf for make-w32@gnu.org; Mon, 15 Oct 2007 17:11:48 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhXE0-00035Y-JB; Mon, 15 Oct 2007 17:11:44 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhXE0-0003rg-0e; Mon, 15 Oct 2007 17:11:44 -0400 Received: from mr08.lnh.mail.rcn.net ([207.172.157.28]) by smtp02.lnh.mail.rcn.net with ESMTP; 15 Oct 2007 17:11:27 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr08.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id JFE41273; Mon, 15 Oct 2007 17:11:26 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 15 Oct 2007 17:13:02 -0400 Received: from psmith by homebase.localnet with local (Exim 4.67) (envelope-from ) id 1IhXDc-00040E-B3; Mon, 15 Oct 2007 17:11:20 -0400 From: Paul Smith To: Howard Chu In-Reply-To: <4713CF65.5020502@highlandsun.com> References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1192479763.8299.192.camel@homebase.localnet> <4713CF65.5020502@highlandsun.com> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Mon, 15 Oct 2007 17:11:19 -0400 Message-Id: <1192482679.8299.200.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr08.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090207.4713D77D.01C5,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. Cc: bug-make@gnu.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 21:11:49 -0000 On Mon, 2007-10-15 at 13:36 -0700, Howard Chu wrote: > IMO the objections to requiring MSYS/Cygwin on Windows made no sense > in this discussion. "Make" is inherently a POSIX command line tool. > Anybody using it on Windows needs a POSIX environment already anyway. That is definitely not true. The Windows ports of make are quite useful in native Windows environments, with no hint of POSIX (command line). They can use the Windows shell instead of the UNIX shell, etc. Certainly you're not going to be able to run any POSIX-based makefile on a Windows system without a full suite of common tools, but that doesn't mean it makes no sense in other situations. Eli can speak more directly to this, though: I've never actually used make in these situations. Cheers! -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist From MAILER-DAEMON Mon Oct 15 17:20:26 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhXMQ-0000ND-Nt for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 17:20:26 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhXMO-0000KT-UQ for make-w32@gnu.org; Mon, 15 Oct 2007 17:20:24 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhXMO-0000K9-EW for make-w32@gnu.org; Mon, 15 Oct 2007 17:20:24 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhXMM-0000JM-Gp; Mon, 15 Oct 2007 17:20:22 -0400 Received: from pool-71-174-251-188.bstnma.fios.verizon.net ([71.174.251.188] helo=cgf.cx) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhXMM-0005le-BR; Mon, 15 Oct 2007 17:20:22 -0400 Received: from ednor.cgf.cx (ednor.casa.cgf.cx [192.168.187.5]) by cgf.cx (Postfix) with ESMTP id F14D113C302; Mon, 15 Oct 2007 17:20:21 -0400 (EDT) Received: by ednor.cgf.cx (Postfix, from userid 201) id E81482B353; Mon, 15 Oct 2007 17:20:21 -0400 (EDT) Date: Mon, 15 Oct 2007 17:20:21 -0400 From: Christopher Faylor To: make-w32@gnu.org, bug-make@gnu.org, Howard Chu Message-ID: <20071015212021.GA15951@ednor.casa.cgf.cx> References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1192479763.8299.192.camel@homebase.localnet> <4713CF65.5020502@highlandsun.com> <1192482679.8299.200.camel@homebase.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1192482679.8299.200.camel@homebase.localnet> User-Agent: Mutt/1.5.16 (2007-06-09) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 1) Cc: Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 21:20:25 -0000 On Mon, Oct 15, 2007 at 05:11:19PM -0400, Paul Smith wrote: >On Mon, 2007-10-15 at 13:36 -0700, Howard Chu wrote: >> IMO the objections to requiring MSYS/Cygwin on Windows made no sense >> in this discussion. "Make" is inherently a POSIX command line tool. >> Anybody using it on Windows needs a POSIX environment already anyway. > >That is definitely not true. The Windows ports of make are quite useful >in native Windows environments, with no hint of POSIX (command line). >They can use the Windows shell instead of the UNIX shell, etc. > >Certainly you're not going to be able to run any POSIX-based makefile on >a Windows system without a full suite of common tools, but that doesn't >mean it makes no sense in other situations. > >Eli can speak more directly to this, though: I've never actually used >make in these situations. Cheers! I'm not Eli but as someone who is intimately familiar with Cygwin, I have to say that having a windows-only version of GNU make makes a lot of sense to me. Microsoft's version of NMAKE isn't very useful, IMO, so if you just want a way to build programs and don't care about having a full UNIX-like system, then a standalone make is the way to go and GNU make is one of the best makes around. cgf From MAILER-DAEMON Mon Oct 15 17:24:03 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhXPv-0006c1-LC for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 17:24:03 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhXPu-0006ac-BC for make-w32@gnu.org; Mon, 15 Oct 2007 17:24:02 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhXPt-0006ZL-8D for make-w32@gnu.org; Mon, 15 Oct 2007 17:24:01 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhXPt-0006ZC-0f for make-w32@gnu.org; Mon, 15 Oct 2007 17:24:01 -0400 Received: from pool-71-174-251-188.bstnma.fios.verizon.net ([71.174.251.188] helo=cgf.cx) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhXPn-0006al-GX; Mon, 15 Oct 2007 17:23:55 -0400 Received: from ednor.cgf.cx (ednor.casa.cgf.cx [192.168.187.5]) by cgf.cx (Postfix) with ESMTP id A1F0E13C304; Mon, 15 Oct 2007 17:23:54 -0400 (EDT) Received: by ednor.cgf.cx (Postfix, from userid 201) id 9BEB02B353; Mon, 15 Oct 2007 17:23:54 -0400 (EDT) Date: Mon, 15 Oct 2007 17:23:54 -0400 From: Christopher Faylor To: Make Windows , Paul Smith Message-ID: <20071015212354.GB15951@ednor.casa.cgf.cx> References: <1192293466.17584.95.camel@homebase.localnet> <20071014175339.GE11619@ednor.casa.cgf.cx> <1192477729.8299.185.camel@homebase.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1192477729.8299.185.camel@homebase.localnet> User-Agent: Mutt/1.5.16 (2007-06-09) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 1) Cc: Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 21:24:02 -0000 On Mon, Oct 15, 2007 at 03:48:49PM -0400, Paul Smith wrote: >On Sun, 2007-10-14 at 13:53 -0400, Christopher Faylor wrote: >> Someone mentioned mercurial already. It means convincing savannah >> sysadmins that this is a good idea, I guess. >> >> I could sponsor the hosting of GNU make at sourceware.org, which has >> mercurial installed, but I guess that's a sort of radical step. > >Since GNU make is a fundamental FSF package, with copyright owned by >them, etc. I wouldn't feel right about moving it off of Savannah without >their permission, and I don't think this is a sufficiently compelling >reason to move. Sure, understood. cgf From MAILER-DAEMON Mon Oct 15 17:25:17 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhXR6-00079h-VV for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 17:25:16 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhWj8-0000KF-4d for make-w32@gnu.org; Mon, 15 Oct 2007 16:39:50 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhWj6-0000K3-Ul for make-w32@gnu.org; Mon, 15 Oct 2007 16:39:49 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhWj6-0000K0-Ph; Mon, 15 Oct 2007 16:39:48 -0400 Received: from highlandsun.propagation.net ([66.221.212.168]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhWj0-0003vg-TG; Mon, 15 Oct 2007 16:39:43 -0400 Received: from [127.0.0.1] (highlandsun.com [66.221.212.169]) by highlandsun.propagation.net (8.13.3/8.13.3) with ESMTP id l9FKddV7029731; Mon, 15 Oct 2007 14:39:39 -0600 Message-ID: <4713CF65.5020502@highlandsun.com> Date: Mon, 15 Oct 2007 13:36:53 -0700 From: Howard Chu User-Agent: Mozilla/5.0 (X11; U; Linux i686; rv:1.9a9pre) Gecko/2007100901 SeaMonkey/2.0a1pre MIME-Version: 1.0 To: psmith@gnu.org References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1192479763.8299.192.camel@homebase.localnet> In-Reply-To: <1192479763.8299.192.camel@homebase.localnet> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.6? (barebone, rare!) X-Mailman-Approved-At: Mon, 15 Oct 2007 17:25:15 -0400 Cc: bug-make@gnu.org, make-w32@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 20:39:50 -0000 Paul Smith wrote: > It looks like this discussion may have been premature, perhaps by as > little as a few weeks or so, based on the fact that Savannah has > Subversion support in beta right now and that there seems to be a lot of > action around GIT support on Windows that is being published either now > or very shortly. > > So, let's table this discussion for the time being. We'll revisit it > later this year when hopefully some things have shaken out. > > In the meantime I'm going to play with some of these other tools. If > you (esp. non-Linux users) have time to try them out as well I'd really > appreciate any suggestions you come up with. > IMO the objections to requiring MSYS/Cygwin on Windows made no sense in this discussion. "Make" is inherently a POSIX command line tool. Anybody using it on Windows needs a POSIX environment already anyway. Whether or not you're building Windows-native code with it doesn't really enter the equation. Aside from that, happy to leave this for later. -- -- Howard Chu Chief Architect, Symas Corp. http://www.symas.com Director, Highland Sun http://highlandsun.com/hyc/ Chief Architect, OpenLDAP http://www.openldap.org/project/ From MAILER-DAEMON Mon Oct 15 17:27:31 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhXTH-0007XM-2j for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 17:27:31 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhXTF-0007WB-Nq for make-w32@gnu.org; Mon, 15 Oct 2007 17:27:29 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhXTE-0007Vo-B1 for make-w32@gnu.org; Mon, 15 Oct 2007 17:27:29 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhXTC-0007VX-Lk; Mon, 15 Oct 2007 17:27:26 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhXT8-0007SV-HN; Mon, 15 Oct 2007 17:27:22 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-6-147.inter.net.il [80.230.6.147]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JCY79479 (AUTH halo1); Mon, 15 Oct 2007 23:27:07 +0200 (IST) Date: Mon, 15 Oct 2007 23:27:18 +0200 Message-Id: From: Eli Zaretskii To: Howard Chu In-reply-to: <4713CF65.5020502@highlandsun.com> (message from Howard Chu on Mon, 15 Oct 2007 13:36:53 -0700) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1192479763.8299.192.camel@homebase.localnet> <4713CF65.5020502@highlandsun.com> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org, bug-make@gnu.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 21:27:30 -0000 > Date: Mon, 15 Oct 2007 13:36:53 -0700 > From: Howard Chu > Cc: bug-make@gnu.org, make-w32@gnu.org > > IMO the objections to requiring MSYS/Cygwin on Windows made no sense in this > discussion. Believe me, it does make sense to some. In a nutshell, if you use Cygwin or MSYS, you are forced to use them, and them alone, as there are subtle incompatibilities with other kinds of programs that can drive you up the wall sometimes. > "Make" is inherently a POSIX command line tool. It's no more POSIX that `ls'. I hope you won't try to claim that `ls' doesn't make sense outside of a POSIX environment. > Anybody using it on Windows needs a POSIX environment already > anyway. Not really. Make is just a program to invoke other programs given a set of rules. It only (loosely) assumes that those programs produce files, and doesn't care much about anything else. Since not only POSIX tools can produce files, Make does not require a POSIX environment. From MAILER-DAEMON Mon Oct 15 19:56:50 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhZnm-0004gw-EG for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 19:56:50 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhZnl-0004gl-3b for make-w32@gnu.org; Mon, 15 Oct 2007 19:56:49 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhZnj-0004gZ-0N for make-w32@gnu.org; Mon, 15 Oct 2007 19:56:47 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhZni-0004gW-Sg for make-w32@gnu.org; Mon, 15 Oct 2007 19:56:46 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhZnh-00035o-AO for make-w32@gnu.org; Mon, 15 Oct 2007 19:56:45 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l9FNuhEi001444 for ; Mon, 15 Oct 2007 19:56:43 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l9FNuhML001441 for make-w32@gnu.org; Mon, 15 Oct 2007 19:56:43 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from cpe-65-189-186-77.columbus.res.rr.com (cpe-65-189-186-77.columbus.res.rr.com [65.189.186.77]) by mail.progw.org (Horde MIME library) with HTTP; Mon, 15 Oct 2007 19:56:42 -0400 Message-ID: <20071015195642.59mxzf40p2gokw4k@mail.progw.org> X-Priority: 3 (Normal) Date: Mon, 15 Oct 2007 19:56:42 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <20071015075843.30ksjd0m0w84kcw8@mail.progw.org> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Oct 2007 23:56:49 -0000 Quoting Eli Zaretskii : > > (Note that above I said "almost" exactly like Posix, and that's > because a Posix filesystem will not show the file in `ls' after it was > deleted like that, while Windows does. All the rest is similar.) > You're also assuming that something else hasn't opened the file without the FILE_SHARE_DELETE. Another difference between POSIX and Windows is that you cannot create a file of the same name while the original still exists even though it is marked for delete while on POSIX it is assigned a new inode is successfully created. Earnie From MAILER-DAEMON Mon Oct 15 21:39:45 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhbPN-0003oP-Og for mharc-make-w32@gnu.org; Mon, 15 Oct 2007 21:39:45 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhaYV-0006wW-C4 for make-w32@gnu.org; Mon, 15 Oct 2007 20:45:07 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhaYU-0006wG-NJ for make-w32@gnu.org; Mon, 15 Oct 2007 20:45:06 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhaYU-0006wA-JM for make-w32@gnu.org; Mon, 15 Oct 2007 20:45:06 -0400 Received: from iabervon.org ([66.92.72.58]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhaYU-0004Bb-0S for make-w32@gnu.org; Mon, 15 Oct 2007 20:45:06 -0400 Received: (qmail 3439 invoked by uid 1000); 16 Oct 2007 00:45:02 -0000 Received: from localhost (sendmail-bs@127.0.0.1) by localhost with SMTP; 16 Oct 2007 00:45:02 -0000 Date: Mon, 15 Oct 2007 20:45:02 -0400 (EDT) From: Daniel Barkalow To: Eli Zaretskii In-Reply-To: Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. X-Mailman-Approved-At: Mon, 15 Oct 2007 21:39:45 -0400 Cc: Alex Riesen , make-w32@gnu.org, Johannes.Schindelin@gmx.de, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 00:45:07 -0000 Responding only to those portions where I think Windows experience and a Windows perspective would be helpful... On Mon, 15 Oct 2007, Eli Zaretskii wrote: > > - no proper filename semantics (case-insensitivity and stupid rules for > > allowed characters in filenames, like ":" in filenames in > > cross-platform projects) > > There's a flag on Windows to open files case-sensitively, if you need > that. In any case, I don't see how this can be of any real relevance > to porting GIT. As for ":" in file names, simply don't use it, like > you don't use white space or characters below 32 decimal: it's > inconvenient, even if it's allowed. I believe the hassle is that readdir doesn't necessarily report a README in a directory which is supposed to have a README, when it has a readme instead. I think we want O(n) comparison of sorted lists, which doesn't work if equivalent names don't sort the same. > > - no acceptable level of performance in filesystem and VFS (readdir, > > stat, open and read/write are annoyingly slow) > > With what libraries? Native `stat' and `readdir' are quite fast. > Perhaps you mean the ported glibc (libgw32c), where `readdir' is > indeed painfully slow, but then you don't need to use it. We want getting stat info, using readdir to figure out what files exist, for 106083 files in 1603 directories with a hot cache to take under 1s; otherwise "git status" takes a noticeable amount of time with a medium-big project, and we want people to be able to get info on what's changed effectively instantly. My impression is that Windows' native stat and readdir are plenty fast for what normal Windows programs want, but we actually expect reasonable performance on an unreasonably-big metadata-heavy input. AFAICT, nothing but Linux is optimized for this, but we're used to being able to find out if there's any change to a large directory structure in practically no time. On the other hand, we really just want to beat users' expectations for this operation, not our own expectations, so this may only be a problem for people benchmarking Windows git against Linux git. > > - no real "mmap" (which kills perfomance and complicates code) > > You only need mmap because you are accustomed to use it on GNU/Linux. I believe the need here is quick setup and fast access to sparse portions of several 100M files. It's hard to beat a page fault for read speed. We also expect to be able to make a sequence of file system operations such that programs starting at any time see the same database as the files containing the database get restructured. My impression is that this is very hard or impossible with Windows, and also that it doesn't matter for Windows users, because they'll only have one program at a time accessing the repository. A lot of our filesystem demands are about making a wide variety of race conditions give the same result regardless of how the race goes, and we're just being overly careful for a Windows environment (although not necessarily for users with a UNIX background using Windows only because they have to). > > - it has only one argument (limited in size) passed to started > > programs, which means that there is no possible way to safely pass > > file and text arguments on command line (more than one, that is) > > Not enough context, so I cannot talk intelligently about this. Why do > you need interprocess communication in the first place? why not simply > give birth to a subsidiary process and pass it a command line (which > can be up to 32KB)? A unixy pipeline was convenient, given what else we had already written. It's getting converted to single tasks, but it's not a top priority for most developers, since streaming 100M from one program to the next under most of our environments is trivial. -Daniel *This .sig left intentionally blank* From MAILER-DAEMON Tue Oct 16 00:30:18 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ihe4Q-0005T4-GB for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 00:30:18 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ihe4O-0005OQ-HW for make-w32@gnu.org; Tue, 16 Oct 2007 00:30:16 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ihe4O-0005Nc-6a for make-w32@gnu.org; Tue, 16 Oct 2007 00:30:16 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ihe4N-0005NO-TE for make-w32@gnu.org; Tue, 16 Oct 2007 00:30:15 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ihe4N-0001By-Em for make-w32@gnu.org; Tue, 16 Oct 2007 00:30:15 -0400 Received: from HOME-C4E4A596F7 (IGLD-84-229-211-164.inter.net.il [84.229.211.164]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JDA79309 (AUTH halo1); Tue, 16 Oct 2007 06:30:00 +0200 (IST) Date: Tue, 16 Oct 2007 06:30:11 +0200 Message-Id: From: Eli Zaretskii To: Daniel Barkalow In-reply-to: (message from Daniel Barkalow on Mon, 15 Oct 2007 20:45:02 -0400 (EDT)) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: raa.lkml@gmail.com, make-w32@gnu.org, Johannes.Schindelin@gmx.de, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 04:30:16 -0000 > Date: Mon, 15 Oct 2007 20:45:02 -0400 (EDT) > From: Daniel Barkalow > cc: Alex Riesen , Johannes.Schindelin@gmx.de, ae@op5.se, > tsuna@lrde.epita.fr, git@vger.kernel.org, make-w32@gnu.org > > I believe the hassle is that readdir doesn't necessarily report a README in > a directory which is supposed to have a README, when it has a readme > instead. Sorry I'm asking potentially stupid questions out of ignorance: why would you want readdir to return `README' when you have `readme'? > I think we want O(n) comparison of sorted lists, which doesn't > work if equivalent names don't sort the same. You comparison function should be case-insensitive on Windows, or am I missing something? > > > - no acceptable level of performance in filesystem and VFS (readdir, > > > stat, open and read/write are annoyingly slow) > > > > With what libraries? Native `stat' and `readdir' are quite fast. > > Perhaps you mean the ported glibc (libgw32c), where `readdir' is > > indeed painfully slow, but then you don't need to use it. > > We want getting stat info, using readdir to figure out what files exist, > for 106083 files in 1603 directories with a hot cache to take under 1s; > otherwise "git status" takes a noticeable amount of time with a medium-big > project, and we want people to be able to get info on what's changed > effectively instantly. My impression is that Windows' native stat and > readdir are plenty fast for what normal Windows programs want, but we > actually expect reasonable performance on an unreasonably-big > metadata-heavy input. If that's the issue, then it's not a good idea to call `stat' and `readdir' on Windows at all. `stat' is a single system call on Posix systems, while on Windows it usually needs to go out of its way calling half a dozen system services to gather the `struct stat' info. You need to call something like FindFirstFile, which can do the job of `stat' and `readdir' together (and of `fnmatch', if you need to filter only some files) in one go. I don't know whether this will scan 100K files under one second (maybe I will try it one of these days), but it will definitely be faster than `readdir'+`stat' by maybe as much as an order of magnitude. > > > - no real "mmap" (which kills perfomance and complicates code) > > > > You only need mmap because you are accustomed to use it on GNU/Linux. > > I believe the need here is quick setup and fast access to sparse portions > of several 100M files. It's hard to beat a page fault for read speed. If you need memory-mapped files, they are available on Windows. I thought the original comment about `mmap' was because it was used to allocate memory, not read files into memory. > We also expect to be able to make a sequence of file system operations > such that programs starting at any time see the same database as the files > containing the database get restructured. Sorry, I don't understand this; please tell more about the operations, ``the same database'' issue (what database?) and what do you mean by ``the files containing the database get restructured''. > A unixy pipeline was convenient Windows supports pipelines with almost 100% the same functionality as Posix. Again, perhaps I'm missing something. From MAILER-DAEMON Tue Oct 16 01:29:19 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhezW-00037m-Tp for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 01:29:18 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ihelh-0005Of-HY for make-w32@gnu.org; Tue, 16 Oct 2007 01:15:01 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ihelh-0005OX-4q for make-w32@gnu.org; Tue, 16 Oct 2007 01:15:01 -0400 Received: from mail.op5.se ([193.201.96.20]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ihelg-0008Or-Ht; Tue, 16 Oct 2007 01:15:00 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.op5.se (Postfix) with ESMTP id B26191730744; Tue, 16 Oct 2007 07:14:59 +0200 (CEST) X-Virus-Scanned: amavisd-new at X-Spam-Score: -2.499 Received: from mail.op5.se ([127.0.0.1]) by localhost (mail.op5.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id N6KVrnSzKRKd; Tue, 16 Oct 2007 07:14:58 +0200 (CEST) Received: from nox.op5.se (unknown [172.27.77.30]) by mail.op5.se (Postfix) with ESMTP id 14AD11730739; Tue, 16 Oct 2007 07:14:57 +0200 (CEST) Message-ID: <471448D0.6080200@op5.se> Date: Tue, 16 Oct 2007 07:14:56 +0200 From: Andreas Ericsson User-Agent: Thunderbird 2.0.0.5 (X11/20070727) MIME-Version: 1.0 To: Eli Zaretskii References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) X-Mailman-Approved-At: Tue, 16 Oct 2007 01:29:17 -0400 Cc: Daniel Barkalow , make-w32@gnu.org, Johannes.Schindelin@gmx.de, raa.lkml@gmail.com, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 05:15:02 -0000 Eli Zaretskii wrote: >> Date: Mon, 15 Oct 2007 20:45:02 -0400 (EDT) >> From: Daniel Barkalow >> cc: Alex Riesen , Johannes.Schindelin@gmx.de, ae@op5.se, >> tsuna@lrde.epita.fr, git@vger.kernel.org, make-w32@gnu.org >> >> I believe the hassle is that readdir doesn't necessarily report a README in >> a directory which is supposed to have a README, when it has a readme >> instead. > > Sorry I'm asking potentially stupid questions out of ignorance: why > would you want readdir to return `README' when you have `readme'? > Because it might have been checked in as README, and since git is case sensitive that is what it'll think should be there when it reads the directories. If it's not, users get to see removed: README untracked: readme and there's really no easy way out of this one, since users on a case- sensitive filesystem might be involved in this project too, so it could be an intentional rename, but we don't know for sure. Just clobbering the in-git file is wrong, but overwriting a file on disk is wrong too. git tries hard to not ever lose any data for the user. > >>>> - no acceptable level of performance in filesystem and VFS (readdir, >>>> stat, open and read/write are annoyingly slow) >>> With what libraries? Native `stat' and `readdir' are quite fast. >>> Perhaps you mean the ported glibc (libgw32c), where `readdir' is >>> indeed painfully slow, but then you don't need to use it. >> We want getting stat info, using readdir to figure out what files exist, >> for 106083 files in 1603 directories with a hot cache to take under 1s; >> otherwise "git status" takes a noticeable amount of time with a medium-big >> project, and we want people to be able to get info on what's changed >> effectively instantly. My impression is that Windows' native stat and >> readdir are plenty fast for what normal Windows programs want, but we >> actually expect reasonable performance on an unreasonably-big >> metadata-heavy input. > > If that's the issue, then it's not a good idea to call `stat' and > `readdir' on Windows at all. `stat' is a single system call on Posix > systems, while on Windows it usually needs to go out of its way > calling half a dozen system services to gather the `struct stat' info. > You need to call something like FindFirstFile, which can do the job of > `stat' and `readdir' together (and of `fnmatch', if you need to filter > only some files) in one go. I don't know whether this will scan 100K > files under one second (maybe I will try it one of these days), but it > will definitely be faster than `readdir'+`stat' by maybe as much as an > order of magnitude. > To be honest though, there are so many places which do the readdir+stat that I don't think it'd be worth factoring it out, especially since it *works* on windows. It's just slow, and only slow compared to various unices. I *think* (correct me if I'm wrong) that git is still faster than a whole bunch of other scm's on windows, but to one who's used to its performance on Linux that waiting several seconds to scan 10k files just feels wrong. >> We also expect to be able to make a sequence of file system operations >> such that programs starting at any time see the same database as the files >> containing the database get restructured. > > Sorry, I don't understand this; please tell more about the operations, > ``the same database'' issue (what database?) The object database, located under .git/objects. > and what do you mean by > ``the files containing the database get restructured''. > /* I'm on a limb here. Nicolas Pitre knows the git packfile format, so * perhaps he'll be kind enough to correct me if I'm wrong */ The mmap() stuff is primarily convenient when reading huge packfiles. As far as I understand it, they're ordered by some sort of delta similarity score, so mmap()'ing 100MiB or so of a certain packfile will most likely mean we have a couple of thousand "connected" revisions in memory. That database gets sort of restructured as the memory-chunk that's mmap()'ed get moved to read in the next couple of thousand revisions. In all honesty, this doesn't matter much for already fully packed projects unless they're significantly larger than the Linux kernel, since git is so amazingly good at compressing large repos to a small size. Linux is ~180 MiB fully packed, and most developer's systems could just read() that entire packfile into memory without much problem. But then again, no-one's ever had problems supporting the "normal" cases. -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231 From MAILER-DAEMON Tue Oct 16 02:05:57 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhfYy-0005tY-Uj for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 02:05:56 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhfYx-0005rc-4t for make-w32@gnu.org; Tue, 16 Oct 2007 02:05:55 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhfYv-0005pe-6e for make-w32@gnu.org; Tue, 16 Oct 2007 02:05:54 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhfYv-0005pX-0H for make-w32@gnu.org; Tue, 16 Oct 2007 02:05:53 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhfYu-0008Te-KF for make-w32@gnu.org; Tue, 16 Oct 2007 02:05:52 -0400 Received: from localhost ([127.0.0.1] helo=lola.goethe.zz) by fencepost.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhfYt-0007FP-Pr; Tue, 16 Oct 2007 02:05:51 -0400 Received: by lola.goethe.zz (Postfix, from userid 1002) id 15EE01C4D4B3; Tue, 16 Oct 2007 08:06:48 +0200 (CEST) To: Eli Zaretskii References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> From: David Kastrup Date: Tue, 16 Oct 2007 08:06:48 +0200 In-Reply-To: (Eli Zaretskii's message of "Tue\, 16 Oct 2007 06\:30\:11 +0200") Message-ID: <85ejfvh9tz.fsf@lola.goethe.zz> User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: raa.lkml@gmail.com, Daniel Barkalow , make-w32@gnu.org, Johannes.Schindelin@gmx.de, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 06:05:55 -0000 Eli Zaretskii writes: >> Date: Mon, 15 Oct 2007 20:45:02 -0400 (EDT) >> From: Daniel Barkalow >> cc: Alex Riesen , Johannes.Schindelin@gmx.de, ae@op5= .se,=20 >> tsuna@lrde.epita.fr, git@vger.kernel.org, make-w32@gnu.org >>=20 >> I believe the hassle is that readdir doesn't necessarily report a README= in=20 >> a directory which is supposed to have a README, when it has a readme=20 >> instead. > > Sorry I'm asking potentially stupid questions out of ignorance: why > would you want readdir to return `README' when you have `readme'? > >> I think we want O(n) comparison of sorted lists, which doesn't=20 >> work if equivalent names don't sort the same. > > You comparison function should be case-insensitive on Windows, or am > I missing something? Well, are "I" and "i" the same letters? What about "=C4=B0" and "i"? Or "I" and "=C4=B1"? What about Greek where uppercasing loses accents (actually not unusual in literate French, either). And what about German =C3=9F and SS/SZ? "case-insensitive" is a simple word, but the devil is in the details, and that means basically requiring a system-provided sorting function. And actually the _killer_ detail here is that git _must_ have the same sorting order on every platform, since the order of files in a directory tree affects its SHA-1 sum. So a system-dependent sorting order breaks git interoperability. --=20 David Kastrup, Kriemhildstr. 15, 44793 Bochum From MAILER-DAEMON Tue Oct 16 02:25:25 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ihfrp-0006Zb-B2 for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 02:25:25 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ihfro-0006ZW-4m for make-w32@gnu.org; Tue, 16 Oct 2007 02:25:24 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ihfrl-0006ZK-Om for make-w32@gnu.org; Tue, 16 Oct 2007 02:25:22 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ihfrl-0006ZH-Jm for make-w32@gnu.org; Tue, 16 Oct 2007 02:25:21 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ihfrl-0003Be-BP for make-w32@gnu.org; Tue, 16 Oct 2007 02:25:21 -0400 Received: from eliz by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1Ihfrl-0007w1-3I; Tue, 16 Oct 2007 02:25:21 -0400 From: Eli Zaretskii To: Andreas Ericsson In-reply-to: <471448D0.6080200@op5.se> (message from Andreas Ericsson on Tue, 16 Oct 2007 07:14:56 +0200) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <471448D0.6080200@op5.se> Message-Id: Date: Tue, 16 Oct 2007 02:25:21 -0400 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: barkalow@iabervon.org, make-w32@gnu.org, Johannes.Schindelin@gmx.de, raa.lkml@gmail.com, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 06:25:24 -0000 > Date: Tue, 16 Oct 2007 07:14:56 +0200 > From: Andreas Ericsson > CC: Daniel Barkalow , raa.lkml@gmail.com, > Johannes.Schindelin@gmx.de, tsuna@lrde.epita.fr, git@vger.kernel.org, > make-w32@gnu.org > > > Sorry I'm asking potentially stupid questions out of ignorance: why > > would you want readdir to return `README' when you have `readme'? > > > > Because it might have been checked in as README, and since git is case > sensitive that is what it'll think should be there when it reads the > directories. If it's not, users get to see > > removed: README > untracked: readme This is a non-issue, then: Windows filesystems are case-preserving, so if `README' became `readme', someone deliberately renamed it, in which case it's okay for git to react as above. > could be an intentional rename, but we don't know for sure. It _must_ have been an intentional rename. While years ago there used to be old DOS programs that could cause such a rename as a side effect of modifying a file, that time is long gone. There's no longer a need to cater to such programs, as even DOS programs can support case-preserving APIs on Windows. > To be honest though, there are so many places which do the readdir+stat > that I don't think it'd be worth factoring it out Something for Windows users to decide, I guess. It's not hard to refactor this, it just needs a motivated volunteer. > especially since it > *works* on windows. It's just slow, and only slow compared to various > unices. I think only the Linux filesystem is as fast as you say. But I may be wrong (did someone compare with *BSD, say?). > I *think* (correct me if I'm wrong) that git is still faster > than a whole bunch of other scm's on windows, but to one who's used to > its performance on Linux that waiting several seconds to scan 10k files > just feels wrong. Unless that 10K is a typo and you really meant 100K, I don't think 10K files should take several seconds to scan on Windows. I just tried "find -print" on a directory with 32K files in 4K subdirectories, and it took 8 sec elapsed with a hot cache. So 10K files should take at most 2 seconds, even without optimizing file traversal code. Doing the same with native Windows system calls ("dir /s") brings that down to 4 seconds for 32K files. On the other hand, what packages have 100K files? If there's only one -- the Linux kernel -- then I think this kind of performance is for all practical purposes unimportant on Windows, because while it is reasonable to assume that someone would like to use git on Windows, assuming that someone will develop the Linux kernel on Windows is -- how should I put it -- _really_ far-fetched ;-) As for speed of file ops ``just feeling wrong'': it's not limited to git in any way. You will see the same with "tar -x", with "find" and even with "cp -r", when you compare Linux filesystems, especially on a fast 64-bit machine, with comparable Windows operations. A Windows user who occasionally works on GNU/Linux already knows that, so seeing the same in git will not come as a surprise. Again, I wonder how this compares with other free OSes, like FreeBSD (unless they use the same filesystem), and with proprietary Unices, like AIX and Solaris. From MAILER-DAEMON Tue Oct 16 02:36:52 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ihg2u-0005tc-0n for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 02:36:52 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhfQA-00017B-Mo for make-w32@gnu.org; Tue, 16 Oct 2007 01:56:50 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhfQA-00016r-23 for make-w32@gnu.org; Tue, 16 Oct 2007 01:56:50 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhfQ9-00016o-Sj for make-w32@gnu.org; Tue, 16 Oct 2007 01:56:49 -0400 Received: from iabervon.org ([66.92.72.58]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhfQ8-0006v0-PT for make-w32@gnu.org; Tue, 16 Oct 2007 01:56:49 -0400 Received: (qmail 15014 invoked by uid 1000); 16 Oct 2007 05:56:46 -0000 Received: from localhost (sendmail-bs@127.0.0.1) by localhost with SMTP; 16 Oct 2007 05:56:46 -0000 Date: Tue, 16 Oct 2007 01:56:46 -0400 (EDT) From: Daniel Barkalow To: Eli Zaretskii In-Reply-To: Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. X-Mailman-Approved-At: Tue, 16 Oct 2007 02:36:50 -0400 Cc: raa.lkml@gmail.com, make-w32@gnu.org, Johannes.Schindelin@gmx.de, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 05:56:51 -0000 On Tue, 16 Oct 2007, Eli Zaretskii wrote: > > Date: Mon, 15 Oct 2007 20:45:02 -0400 (EDT) > > From: Daniel Barkalow > > cc: Alex Riesen , Johannes.Schindelin@gmx.de, ae@op5.se, > > tsuna@lrde.epita.fr, git@vger.kernel.org, make-w32@gnu.org > > > > I believe the hassle is that readdir doesn't necessarily report a README in > > a directory which is supposed to have a README, when it has a readme > > instead. > > Sorry I'm asking potentially stupid questions out of ignorance: why > would you want readdir to return `README' when you have `readme'? Say the project upstream has the file being "README", but, for some reason, it has ended up checked out as "readme" in your directory. Since your filesystem is case insensitive, it's supposed to be the same file, but when git goes through the list of files in the directory, it sees "readme", and there's nothing between reachable.h and read-cache.c in the list of tracked files. We've got a sorted list of filenames we're tracking along with their most-recently-seen content, and we want to merge the results of readdir with them, and this is obviously more straightforward if the filename that's the match for "README" is provided byte-for-byte the same, and therefore sorts the same. > > I think we want O(n) comparison of sorted lists, which doesn't > > work if equivalent names don't sort the same. > > You comparison function should be case-insensitive on Windows, or am I > missing something? We want both lists sorted, so that we can step through the pair together and always reach matches together. This requires that the equivalent names sort together, as well as comparing equal. > > > > - no acceptable level of performance in filesystem and VFS (readdir, > > > > stat, open and read/write are annoyingly slow) > > > > > > With what libraries? Native `stat' and `readdir' are quite fast. > > > Perhaps you mean the ported glibc (libgw32c), where `readdir' is > > > indeed painfully slow, but then you don't need to use it. > > > > We want getting stat info, using readdir to figure out what files exist, > > for 106083 files in 1603 directories with a hot cache to take under 1s; > > otherwise "git status" takes a noticeable amount of time with a medium-big > > project, and we want people to be able to get info on what's changed > > effectively instantly. My impression is that Windows' native stat and > > readdir are plenty fast for what normal Windows programs want, but we > > actually expect reasonable performance on an unreasonably-big > > metadata-heavy input. > > If that's the issue, then it's not a good idea to call `stat' and > `readdir' on Windows at all. `stat' is a single system call on Posix > systems, while on Windows it usually needs to go out of its way > calling half a dozen system services to gather the `struct stat' info. > You need to call something like FindFirstFile, which can do the job of > `stat' and `readdir' together (and of `fnmatch', if you need to filter > only some files) in one go. I don't know whether this will scan 100K > files under one second (maybe I will try it one of these days), but it > will definitely be faster than `readdir'+`stat' by maybe as much as an > order of magnitude. Ah, that's helpful. We don't actually care too much about the particular info in stat; we just want to know quickly if the file has changed, so we can hash only the ones that have been touched and get the actual content changes. > > > > - no real "mmap" (which kills perfomance and complicates code) > > > > > > You only need mmap because you are accustomed to use it on GNU/Linux. > > > > I believe the need here is quick setup and fast access to sparse portions > > of several 100M files. It's hard to beat a page fault for read speed. > > If you need memory-mapped files, they are available on Windows. I > thought the original comment about `mmap' was because it was used to > allocate memory, not read files into memory. No, we get our memory with malloc like normal people. The mmap is because we want to feed files and parts of files to zlib, and mmap makes that easy. > > We also expect to be able to make a sequence of file system operations > > such that programs starting at any time see the same database as the files > > containing the database get restructured. > > Sorry, I don't understand this; please tell more about the operations, > ``the same database'' issue (what database?) and what do you mean by > ``the files containing the database get restructured''. Git is built around a database of objects, which includes "blobs" (file content), "trees" (directory structure), "commits" (history linkage), and "tags" (additional annotations). Each of these objects gets hashed, and is referenced by hash. So we need to be able to get the object with a given hash quickly, and write an object and take its hash (ideally, stream the write and find out the hash at the end, with the database key set at that point). Also, this database should be compressed effectively, because it ought to compress really well, since a lot of the blobs and trees are only slightly different from other blobs or trees (by whatever changes were made between that revision and other revisions). The current implementation of the persistant storage of this database is a bit complicated, with the goal being that creating objects is really fast, and looking up objects doesn't degrade too quickly, and there are optimization operations available that take some time and speed up future lookups and reduce the storage overhead (especially so that data can be transferred efficiently). The tricky thing is that, while the optimization process is running, other programs may be reading the database, so (1) the files that are no longer needed, because better-optimized versions are in place, may be open in another task, and (2) complete and correct new files have to appear and be such that pre-existing tasks will find them before old files can be removed. The optimization creates "pack files" and "pack indices", where the pack file has a lot of objects with delta compression between them and zlib compression of them, and the index files tell where everything in the pack file is. So we mmap the index files to search through, and mmap portions of the pack files to get the data out of, and we may be using them as they're replaced with more comprehensive pack files by another task. Now, it's entirely possible that a completely different database implementation would be better on Windows, but our current one does a lot of creating files under different names, moving them to names where they'll be seen (since this is atomic under POSIX, and partial files are never seen by other tasks). Also, once we have new files in place, we unlink the files that they replace, so that new tasks will use the new ones and tasks that already have old ones open can still get the data out of them. Also, the files generally get mmaped, > > A unixy pipeline was convenient > > Windows supports pipelines with almost 100% the same functionality as > Posix. Again, perhaps I'm missing something. I'm probably the one missing something here; I don't really know anything about Windows, and I only know what code other people have had problems porting. Mostly what we use for IPC is pipelines, so, if they work well, I don't know what the problem is. -Daniel *This .sig left intentionally blank* From MAILER-DAEMON Tue Oct 16 03:29:11 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhgrX-0006Pi-0M for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 03:29:11 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhgrU-0006N4-P4 for make-w32@gnu.org; Tue, 16 Oct 2007 03:29:08 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhgrR-0006JK-At for make-w32@gnu.org; Tue, 16 Oct 2007 03:29:06 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhgrQ-0006J3-Th for make-w32@gnu.org; Tue, 16 Oct 2007 03:29:04 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhgrQ-0005Mg-K9 for make-w32@gnu.org; Tue, 16 Oct 2007 03:29:04 -0400 Received: from eliz by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1Ihgfs-0004DL-S5; Tue, 16 Oct 2007 03:17:08 -0400 From: Eli Zaretskii To: Johannes Sixt In-reply-to: <47145D6D.80001@viscovery.net> (message from Johannes Sixt on Tue, 16 Oct 2007 08:42:53 +0200) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <47145D6D.80001@viscovery.net> Message-Id: Date: Tue, 16 Oct 2007 03:17:08 -0400 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: raa.lkml@gmail.com, barkalow@iabervon.org, make-w32@gnu.org, Johannes.Schindelin@gmx.de, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 07:29:09 -0000 > Date: Tue, 16 Oct 2007 08:42:53 +0200 > From: Johannes Sixt > Cc: Daniel Barkalow , raa.lkml@gmail.com, > Johannes.Schindelin@gmx.de, ae@op5.se, > Benoit SIGOURE , > "git@vger.kernel.org >> Git Mailing List" , > Make Windows > > Thanks to Marius Storm-Olsen we already have a stat replacement that's twice > as fast as msvcrt's stat. I calls only one API function > (GetFileAttributesEx, but of course I don't know what's going on under its > hood), because we need only a small part of struct stat filled in correctly. Yes, I've seen that. What I'm saying is that you can combine `readdir' with `stat' in one API call (FindFirstFile/FindNextFile), which will both read the directory and return you the attributes you get from `stat'. Think about `readdir' that brings you mode bits and modification time together with the name, as some modern systems do. From MAILER-DAEMON Tue Oct 16 03:29:49 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ihgs9-000713-3W for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 03:29:49 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ihgs6-0006xj-SQ for make-w32@gnu.org; Tue, 16 Oct 2007 03:29:46 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ihgs4-0006vB-J0 for make-w32@gnu.org; Tue, 16 Oct 2007 03:29:45 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ihgs4-0006v8-FY for make-w32@gnu.org; Tue, 16 Oct 2007 03:29:44 -0400 Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ihgs4-0005Zw-5A for make-w32@gnu.org; Tue, 16 Oct 2007 03:29:44 -0400 Received: from eliz by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1IhgT2-0000bg-O6; Tue, 16 Oct 2007 03:03:52 -0400 From: Eli Zaretskii To: Daniel Barkalow In-reply-to: (message from Daniel Barkalow on Tue, 16 Oct 2007 01:56:46 -0400 (EDT)) References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> Message-Id: Date: Tue, 16 Oct 2007 03:03:52 -0400 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: raa.lkml@gmail.com, make-w32@gnu.org, Johannes.Schindelin@gmx.de, ae@op5.se, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 07:29:47 -0000 > Date: Tue, 16 Oct 2007 01:56:46 -0400 (EDT) > From: Daniel Barkalow > cc: raa.lkml@gmail.com, Johannes.Schindelin@gmx.de, ae@op5.se, > tsuna@lrde.epita.fr, git@vger.kernel.org, make-w32@gnu.org > > Ah, that's helpful. We don't actually care too much about the particular > info in stat; we just want to know quickly if the file has changed, so we > can hash only the ones that have been touched and get the actual content > changes. As I wrote in my other message, using native APIs improves performance by at least a factor of two. > The tricky thing is that, while the optimization > process is running, other programs may be reading the database, so (1) the > files that are no longer needed, because better-optimized versions are in > place, may be open in another task Is this because another user might be accessing the database, or are there other popular use cases that cause this? If the former, then this is not terribly important on Windows, since the situation when more than one user is logged and actively works is quite rare, basically limited to some scheduled task (the equivalent of a cron job) running for some user while another one is logged in interactively. This might be different on machines that use Cygwin, though. > Now, it's entirely possible that a completely different database > implementation would be better on Windows, but our current one does a lot > of creating files under different names, moving them to names where > they'll be seen (since this is atomic under POSIX, and partial files are > never seen by other tasks). Also, once we have new files in place, we > unlink the files that they replace, so that new tasks will use the new > ones and tasks that already have old ones open can still get the data out > of them. Also, the files generally get mmaped, Perhaps mmap introduces complications (I simply don't know), but in general, as I show elsewhere in this thread, you can do similar things on Windows, if you use native APIs (as opposed to emulations of Posix, like `open'), although you may need to rename the old file to get it out of the way of the new one with the same name, because otherwise the old file will still be seen, even if deleted, as long as it's open in some process. From MAILER-DAEMON Tue Oct 16 03:54:24 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhhFw-0005TL-N9 for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 03:54:24 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhhFv-0005Qj-60 for make-w32@gnu.org; Tue, 16 Oct 2007 03:54:23 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhhFt-0005Of-Kz for make-w32@gnu.org; Tue, 16 Oct 2007 03:54:22 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhhFq-0005MW-Eo; Tue, 16 Oct 2007 03:54:18 -0400 Received: from cdelbcmx.draeger.com ([192.78.147.18] helo=cdelbcmx1.draeger.com) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhhFp-0002qR-P8; Tue, 16 Oct 2007 03:54:18 -0400 Received: from lx-cluster1.dwhl.de (vpnsupport.draeger.com [160.70.15.190]) by cdelbcmx1.draeger.com (8.13.7/8.13.7) with ESMTP id l9G7s9Gr028578; Tue, 16 Oct 2007 09:54:09 +0200 Received: from CDELBCEXMBX01.corp.draeger.global (cdelbcexmbx01n1.corp.draeger.global [10.55.148.96]) by lx-cluster1.dwhl.de (8.11.6/8.10.1) with ESMTP id l9G7s8v32764; Tue, 16 Oct 2007 09:54:08 +0200 Received: from CDELBCEXMBX02.corp.draeger.global ([10.55.148.137]) by CDELBCEXMBX01.corp.draeger.global with Microsoft SMTPSVC(6.0.3790.1830); Tue, 16 Oct 2007 09:54:08 +0200 X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Date: Tue, 16 Oct 2007 09:54:00 +0200 Message-ID: <8D5B466840C9434EAC32507810C31B07018D88C5@CDELBCEXMBX02.corp.draeger.global> In-Reply-To: <1192482679.8299.200.camel@homebase.localnet> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Switching from CVS to GIT (make under Windows) Thread-Index: AcgPcAky8bcSfDnWTGa8p6Rhr7KekAAV1Iqw References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet><1192479763.8299.192.camel@homebase.localnet><4713CF65.5020502@highlandsun.com> <1192482679.8299.200.camel@homebase.localnet> From: "Leeuwesteijn, Joost" To: , X-OriginalArrivalTime: 16 Oct 2007 07:54:08.0119 (UTC) FILETIME=[BB0E7870:01C80FC9] X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-3.0 (cdelbcmx1.draeger.com [192.78.147.18]); Tue, 16 Oct 2007 09:54:09 +0200 (CEST) Content-Disposition: inline X-Scanned-By: MIMEDefang 2.54 on 192.78.147.18 X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Cc: Howard Chu Subject: RE: Switching from CVS to GIT (make under Windows) X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 07:54:23 -0000 =20=0A= =0A= > -----Original Message-----=0A= > From: make-w32-bounces On Behalf Of Paul Smith=0A= > Sent: maandag 15 oktober 2007 23:11=0A= > To: Howard Chu=0A= > Cc: bug-make@gnu.org; make-w32@gnu.org=0A= > Subject: Re: Switching from CVS to GIT=0A= >=20=0A= > On Mon, 2007-10-15 at 13:36 -0700, Howard Chu wrote:=0A= > > IMO the objections to requiring MSYS/Cygwin on Windows made no sense=0A= > > in this discussion. "Make" is inherently a POSIX command line tool.=0A= > > Anybody using it on Windows needs a POSIX environment=20=0A= > already anyway.=20=0A= >=20=0A= > That is definitely not true. The Windows ports of make are=20=0A= > quite useful=0A= > in native Windows environments, with no hint of POSIX (command line).=0A= > They can use the Windows shell instead of the UNIX shell, etc.=0A= =0A= True.=0A= =20=0A= > Certainly you're not going to be able to run any POSIX-based=20=0A= > makefile on=0A= > a Windows system without a full suite of common tools, but=20=0A= > that doesn't mean it makes no sense in other situations.=0A= =0A= See below.=0A= =0A= > Eli can speak more directly to this, though: I've never actually used=0A= > make in these situations. Cheers!=0A= =0A= We're using GNU make on Windows XP (with GNU make built with the MS=0A= compiler) using cmd.exe as the shell, calling a Windows based=0A= compiler/assembler/linker and other tools during the build.=0A= =0A= Although you -can- use GNU make under Windows perfectly fine without=0A= using MSYS/Cygwin etc. we do use a couple of other GNU/POSIX tools, from=0A= the (pretty much dead?) unx-utils project in our case. Tools like=0A= unx-echo.exe, unx-grep.exe, unx-grep.exe, unx-awk.exe, unx-sed.exe, etc=0A= are simply way too useful. Or rather, the Windows commandline is simply=0A= too limited. For example to implement automatic dependency generation=0A= using the preprocessor output.=0A= =0A= Our compiler suite is only available on the Windows platform but I did=0A= want to implement an automatable and fully controlled build environment=0A= (compared to building from inside an grapical IDE with lots of=0A= checkboxes, etc.). GNU make does the job. I had a quick look at nmake=0A= from Microsoft but GNU make is a lot more powerful in my opinion and it=0A= has a very active mailinglist :-)=0A= =0A= I would prefer building (and developing) on a *nix based platform myself=0A= but since it's not possible in our (embedded software) case, GNU make on=0A= Windows is a good second choice.=0A= =0A= --=0A= Joost Leeuwesteijn=0A= =0A= =0A= =0A= > -----------------=0A= > Paul D. Smith Find some GNU make tips at:=0A= > http://www.gnu.org http://make.mad-scientist.us=0A= > "Please remain calm...I may be mad, but I am a=20=0A= > professional." --Mad Scientist=0A= =0A= =0A= ---=0A= =0A= This communication contains confidential information. If you are not the in= tended recipient please return this email to the sender and delete it from = your records.=0A= =0A= Diese Nachricht enth=E4lt vertrauliche Informationen. Sollten Sie nicht der= beabsichtigte Empf=E4nger dieser E-mail sein, senden Sie bitte diese an de= n Absender zur=FCck und l=F6schen Sie die E-mail aus Ihrem System.=0A= =0A= From MAILER-DAEMON Tue Oct 16 04:57:25 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhiEv-0007vI-7u for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 04:57:25 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ihg8x-0000gE-Qt for make-w32@gnu.org; Tue, 16 Oct 2007 02:43:07 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ihg8w-0000dV-Ds for make-w32@gnu.org; Tue, 16 Oct 2007 02:43:06 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ihg8w-0000dJ-79 for make-w32@gnu.org; Tue, 16 Oct 2007 02:43:06 -0400 Received: from mx20.gnu.org ([199.232.41.8]) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Ihg8r-0006EB-Je; Tue, 16 Oct 2007 02:43:01 -0400 Received: from lilzmailso02.liwest.at ([212.33.55.13]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ihg8o-0005uA-Vf; Tue, 16 Oct 2007 02:42:59 -0400 Received: from cm56-163-160.liwest.at ([86.56.163.160] helo=linz.eudaptics.com) by lilzmailso02.liwest.at with esmtpa (Exim 4.66) (envelope-from ) id 1Ihg8Y-0000US-A4; Tue, 16 Oct 2007 08:42:42 +0200 Received: from [192.168.1.42] (J6T.linz.viscovery [192.168.1.42]) by linz.eudaptics.com (Postfix) with ESMTP id 62F716B7; Tue, 16 Oct 2007 08:42:53 +0200 (CEST) Message-ID: <47145D6D.80001@viscovery.net> Date: Tue, 16 Oct 2007 08:42:53 +0200 From: Johannes Sixt User-Agent: Thunderbird 2.0.0.6 (Windows/20070728) MIME-Version: 1.0 To: Eli Zaretskii References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 1.7 (+) X-detected-kernel: by mx20.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Tue, 16 Oct 2007 04:57:23 -0400 Cc: raa.lkml@gmail.com, Daniel Barkalow , Make Windows , Johannes.Schindelin@gmx.de, ae@op5.se, "git@vger.kernel.org >> Git Mailing List" Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 06:43:08 -0000 Eli Zaretskii schrieb: > If that's the issue, then it's not a good idea to call `stat' and > `readdir' on Windows at all. `stat' is a single system call on Posix > systems, while on Windows it usually needs to go out of its way > calling half a dozen system services to gather the `struct stat' info. Thanks to Marius Storm-Olsen we already have a stat replacement that's twice as fast as msvcrt's stat. I calls only one API function (GetFileAttributesEx, but of course I don't know what's going on under its hood), because we need only a small part of struct stat filled in correctly. -- Hannes From MAILER-DAEMON Tue Oct 16 04:57:26 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhiEv-0007vV-JS for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 04:57:26 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ihgbf-0008Cp-F0 for make-w32@gnu.org; Tue, 16 Oct 2007 03:12:47 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ihgbc-00089w-QI for make-w32@gnu.org; Tue, 16 Oct 2007 03:12:47 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ihgbc-00089o-M8 for make-w32@gnu.org; Tue, 16 Oct 2007 03:12:44 -0400 Received: from mx20.gnu.org ([199.232.41.8]) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhgbX-0002HA-6j; Tue, 16 Oct 2007 03:12:39 -0400 Received: from mailer.zib.de ([130.73.108.11]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhgbW-0003xj-Gh; Tue, 16 Oct 2007 03:12:38 -0400 Received: from mailsrv2.zib.de (sc2.zib.de [130.73.108.31]) by mailer.zib.de (8.13.7+Sun/8.13.7) with ESMTP id l9G7CYNe019145; Tue, 16 Oct 2007 09:12:34 +0200 (CEST) Received: from [192.168.178.21] (brln-4db1b21a.pool.einsundeins.de [77.177.178.26]) (authenticated bits=0) by mailsrv2.zib.de (8.13.4/8.13.4) with ESMTP id l9G7CXxI020452 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Tue, 16 Oct 2007 09:12:34 +0200 (MEST) In-Reply-To: <471448D0.6080200@op5.se> References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <471448D0.6080200@op5.se> Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: <2EA3BEC9-5B13-44D3-B190-CA77499F642C@zib.de> Content-Transfer-Encoding: 7bit From: Steffen Prohaska Date: Tue, 16 Oct 2007 09:14:03 +0200 To: Git Mailing List X-Mailer: Apple Mail (2.752.3) X-detected-kernel: by mx20.gnu.org: Solaris 9 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Tue, 16 Oct 2007 04:57:23 -0400 Cc: Daniel Barkalow , make-w32@gnu.org, Johannes Schindelin , Alex Riesen , Andreas Ericsson Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 07:12:48 -0000 On Oct 16, 2007, at 7:14 AM, Andreas Ericsson wrote: > Eli Zaretskii wrote: >>> Date: Mon, 15 Oct 2007 20:45:02 -0400 (EDT) >>> From: Daniel Barkalow >>> cc: Alex Riesen , Johannes.Schindelin@gmx.de, >>> ae@op5.se, tsuna@lrde.epita.fr, git@vger.kernel.org, make- >>> w32@gnu.org >>> >>> I believe the hassle is that readdir doesn't necessarily report a >>> README in a directory which is supposed to have a README, when it >>> has a readme instead. >> Sorry I'm asking potentially stupid questions out of ignorance: why >> would you want readdir to return `README' when you have `readme'? > > Because it might have been checked in as README, and since git is case > sensitive that is what it'll think should be there when it reads the > directories. If it's not, users get to see > > removed: README > untracked: readme > > and there's really no easy way out of this one, since users on a case- > sensitive filesystem might be involved in this project too, so it > could be an intentional rename, but we don't know for sure. Just > clobbering the in-git file is wrong, but overwriting a file on disk > is wrong too. git tries hard to not ever lose any data for the user. Maybe we need a configuration similar to core.autocrlf (which controls newline conversion) to control filename comparison and normalization? Most obviously for the case (in-)sensitivity on Windows, but I also remember the unicode normalization happening on Mac's HFS filesystem that caused trouble in the past. Steffen From MAILER-DAEMON Tue Oct 16 09:23:10 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhmO5-0007Yl-RS for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 09:23:09 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhlcX-00062y-Ii for make-w32@gnu.org; Tue, 16 Oct 2007 08:34:01 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhlcS-00060j-52 for make-w32@gnu.org; Tue, 16 Oct 2007 08:34:00 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhlcR-00060a-U2 for make-w32@gnu.org; Tue, 16 Oct 2007 08:33:55 -0400 Received: from iabervon.org ([66.92.72.58]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhlcR-0002Xm-CM for make-w32@gnu.org; Tue, 16 Oct 2007 08:33:55 -0400 Received: (qmail 16477 invoked by uid 1000); 16 Oct 2007 07:07:12 -0000 Received: from localhost (sendmail-bs@127.0.0.1) by localhost with SMTP; 16 Oct 2007 07:07:12 -0000 Date: Tue, 16 Oct 2007 03:07:12 -0400 (EDT) From: Daniel Barkalow To: Eli Zaretskii In-Reply-To: Message-ID: References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <471448D0.6080200@op5.se> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. X-Mailman-Approved-At: Tue, 16 Oct 2007 09:23:09 -0400 Cc: raa.lkml@gmail.com, make-w32@gnu.org, Johannes.Schindelin@gmx.de, Andreas Ericsson , git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 12:34:02 -0000 On Tue, 16 Oct 2007, Eli Zaretskii wrote: > > Date: Tue, 16 Oct 2007 07:14:56 +0200 > > From: Andreas Ericsson > > CC: Daniel Barkalow , raa.lkml@gmail.com, > > Johannes.Schindelin@gmx.de, tsuna@lrde.epita.fr, git@vger.kernel.org, > > make-w32@gnu.org > > > > > Sorry I'm asking potentially stupid questions out of ignorance: why > > > would you want readdir to return `README' when you have `readme'? > > > > > > > Because it might have been checked in as README, and since git is case > > sensitive that is what it'll think should be there when it reads the > > directories. If it's not, users get to see > > > > removed: README > > untracked: readme > > This is a non-issue, then: Windows filesystems are case-preserving, so > if `README' became `readme', someone deliberately renamed it, in which > case it's okay for git to react as above. > > > could be an intentional rename, but we don't know for sure. > > It _must_ have been an intentional rename. While years ago there used > to be old DOS programs that could cause such a rename as a side effect > of modifying a file, that time is long gone. There's no longer a need > to cater to such programs, as even DOS programs can support > case-preserving APIs on Windows. I'm partially worried about cases where checking out a "README" fails to replace the name of an existing "readme", or something of that sort. > > To be honest though, there are so many places which do the readdir+stat > > that I don't think it'd be worth factoring it out > > Something for Windows users to decide, I guess. It's not hard to > refactor this, it just needs a motivated volunteer. > > > especially since it > > *works* on windows. It's just slow, and only slow compared to various > > unices. > > I think only the Linux filesystem is as fast as you say. But I may be > wrong (did someone compare with *BSD, say?). I think you're right (nothing else can compete with Linux for doing half a million trivial syscalls), but other unixes aren't terrible, either. IIRC, on OS X, we had problems when we were doing 4 times as many syscalls as necessary, but was fine with that fixed. > > I *think* (correct me if I'm wrong) that git is still faster > > than a whole bunch of other scm's on windows, but to one who's used to > > its performance on Linux that waiting several seconds to scan 10k files > > just feels wrong. > > Unless that 10K is a typo and you really meant 100K, I don't think 10K > files should take several seconds to scan on Windows. I just tried > "find -print" on a directory with 32K files in 4K subdirectories, and > it took 8 sec elapsed with a hot cache. So 10K files should take at > most 2 seconds, even without optimizing file traversal code. Doing > the same with native Windows system calls ("dir /s") brings that down > to 4 seconds for 32K files. > > On the other hand, what packages have 100K files? If there's only one > -- the Linux kernel -- then I think this kind of performance is for > all practical purposes unimportant on Windows, because while it is > reasonable to assume that someone would like to use git on Windows, > assuming that someone will develop the Linux kernel on Windows is -- > how should I put it -- _really_ far-fetched ;-) Actually, there are a number of projects much bigger than the Linux kernel; I think KDE was considering using git, and wanted Windows support, and KDE is insanely huge, mostly as a result of having one big repository for everything. > As for speed of file ops ``just feeling wrong'': it's not limited to > git in any way. You will see the same with "tar -x", with "find" and > even with "cp -r", when you compare Linux filesystems, especially on a > fast 64-bit machine, with comparable Windows operations. A Windows > user who occasionally works on GNU/Linux already knows that, so seeing > the same in git will not come as a surprise. Again, I wonder how this > compares with other free OSes, like FreeBSD (unless they use the same > filesystem), and with proprietary Unices, like AIX and Solaris. For most things, Unix filesystems are fast enough that the bulk of the time is spent elsewhere. "git status" without any changes and a hot cache is unusual in being both a common operation and entirely trivial syscalls if the filesystem makes it efficient. The problem we've had is that Linux users who occasionally work on Windows say git seems impossibly slow on Windows. -Daniel *This .sig left intentionally blank* From MAILER-DAEMON Tue Oct 16 11:47:44 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ihoe0-0000oV-A9 for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 11:47:44 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ihody-0000oD-9V for make-w32@gnu.org; Tue, 16 Oct 2007 11:47:42 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ihodw-0000nh-L0 for make-w32@gnu.org; Tue, 16 Oct 2007 11:47:42 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ihodw-0000ne-Fj for make-w32@gnu.org; Tue, 16 Oct 2007 11:47:40 -0400 Received: from mail.artimi.com ([194.72.81.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ihods-0001Of-Fx; Tue, 16 Oct 2007 11:47:36 -0400 Received: from rainbow ([192.168.8.46]) by mail.artimi.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 16 Oct 2007 16:47:31 +0100 From: "Dave Korn" To: "'Eli Zaretskii'" , "'Andreas Ericsson'" References: <1192293466.17584.95.camel@homebase.localnet><1192381040.4908.57.camel@homebase.localnet><1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr><47125F74.9050600@op5.se><47126957.1020204@op5.se><20071014221446.GC2776@steel.home> <471448D0.6080200@op5.se> Date: Tue, 16 Oct 2007 16:47:31 +0100 Message-ID: <03e101c8100b$de7fa0d0$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_03E2_01C81014.404408D0" X-Mailer: Microsoft Office Outlook 11 In-Reply-To: X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138 Thread-Index: AcgPvVnOJHuvteYkRIu4Ji3H3IqTAAARfc3w X-OriginalArrivalTime: 16 Oct 2007 15:47:34.0194 (UTC) FILETIME=[DE658920:01C8100B] X-detected-kernel: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ Cc: git@vger.kernel.org, barkalow@iabervon.org, raa.lkml@gmail.com, make-w32@gnu.org, Johannes.Schindelin@gmx.de Subject: RE: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 15:47:42 -0000 This is a multi-part message in MIME format. ------=_NextPart_000_03E2_01C81014.404408D0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit On 16 October 2007 07:25, Eli Zaretskii wrote: > On the other hand, what packages have 100K files? If there's only one > -- the Linux kernel -- then I think this kind of performance is for > all practical purposes unimportant on Windows, because while it is > reasonable to assume that someone would like to use git on Windows, > assuming that someone will develop the Linux kernel on Windows is -- > how should I put it -- _really_ far-fetched ;-) Hi there! Did someone call? Cross-development in general isn't what I'd call "far-fetched", and there's no law of cross-development that says the host has to be the same platform as the target. :-)[*] cheers, DaveK [*] - this smiley sponsored by the Department of the Bleedin' Obvious. -- Can't think of a witty .sigline today.... ------=_NextPart_000_03E2_01C81014.404408D0 Content-Type: application/octet-stream; name="developed-on-windows.diff" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="developed-on-windows.diff" Index: firmware_class.c=0A= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=0A= RCS file: = /sources/repository/external_source/linux/linux-2.6.12.2/drivers/base/fir= mware_class.c,v=0A= retrieving revision 1.1=0A= retrieving revision 1.2=0A= diff -p -u -r1.1 -r1.2=0A= --- firmware_class.c 17 Jan 2006 16:49:35 -0000 1.1=0A= +++ firmware_class.c 15 Feb 2006 14:01:29 -0000 1.2=0A= @@ -31,6 +31,7 @@ enum {=0A= };=0A= =0A= static int loading_timeout =3D 10; /* In seconds */=0A= +static char grow_faster =3D 1; /* Boolean */=0A= =0A= /* fw_lock could be moved to 'struct firmware_priv' but since it is just=0A= * guarding for corner cases a global lock should be OK */=0A= @@ -79,6 +80,28 @@ firmware_timeout_store(struct class *cla=0A= =0A= static CLASS_ATTR(timeout, 0644, firmware_timeout_show, = firmware_timeout_store);=0A= =0A= +static ssize_t=0A= +firmware_grow_faster_show(struct class *class, char *buf)=0A= +{=0A= + return sprintf(buf, "%d\n", grow_faster);=0A= +}=0A= +=0A= +/**=0A= + * firmware_grow_faster_store:=0A= + * Description:=0A= + * Sets or clears a flag that causes the reallocate routine to=0A= + * grow the firmware buffer size more or less quickly.=0A= + * =0A= + **/=0A= +static ssize_t=0A= +firmware_grow_faster_store(struct class *class, const char *buf, size_t = count)=0A= +{=0A= + grow_faster =3D simple_strtol(buf, NULL, 10) !=3D 0;=0A= + return count;=0A= +}=0A= +=0A= +static CLASS_ATTR(grow_faster, 0644, firmware_grow_faster_show, = firmware_grow_faster_store);=0A= +=0A= static void fw_class_dev_release(struct class_device *class_dev);=0A= int firmware_class_hotplug(struct class_device *dev, char **envp,=0A= int num_envp, char *buffer, int buffer_size);=0A= @@ -198,18 +221,27 @@ static int=0A= fw_realloc_buffer(struct firmware_priv *fw_priv, int min_size)=0A= {=0A= u8 *new_data;=0A= + int new_size;=0A= =0A= if (min_size <=3D fw_priv->alloc_size)=0A= return 0;=0A= =0A= - new_data =3D vmalloc(fw_priv->alloc_size + PAGE_SIZE);=0A= +#define ONE_MEG (1024 * 1024)=0A= +=0A= + new_size =3D grow_faster =0A= + ? ((fw_priv->alloc_size >=3D ONE_MEG)=0A= + ? (fw_priv->alloc_size + ONE_MEG)=0A= + : ((fw_priv->alloc_size >=3D PAGE_SIZE) ? (fw_priv->alloc_size * = 2) : PAGE_SIZE))=0A= + : (fw_priv->alloc_size + PAGE_SIZE);=0A= + new_data =3D vmalloc (new_size);=0A= if (!new_data) {=0A= - printk(KERN_ERR "%s: unable to alloc buffer\n", __FUNCTION__);=0A= + printk(KERN_ERR "%s: unable to alloc buffer old size %d new size = %d\n",=0A= + __FUNCTION__, fw_priv->alloc_size, new_size);=0A= /* Make sure that we don't keep incomplete data */=0A= fw_load_abort(fw_priv);=0A= return -ENOMEM;=0A= }=0A= - fw_priv->alloc_size +=3D PAGE_SIZE;=0A= + fw_priv->alloc_size =3D new_size;=0A= if (fw_priv->fw->data) {=0A= memcpy(new_data, fw_priv->fw->data, fw_priv->fw->size);=0A= vfree(fw_priv->fw->data);=0A= @@ -249,6 +281,13 @@ firmware_data_write(struct kobject *kobj=0A= goto out;=0A= =0A= memcpy(fw->data + offset, buffer, count);=0A= + /* A successful write should cause us to reset the timeout=0A= + delay, as very large firmware files might take a while to=0A= + send through the sysfs file. We have the fw_lock taken at=0A= + the moment but the timeout function doesn't lock as it only=0A= + has to set a single volatile bit, so we're ok to mod it. */=0A= + if (timer_pending (&fw_priv->timeout))=0A= + mod_timer (&fw_priv->timeout, jiffies + loading_timeout * HZ);=0A= =0A= fw->size =3D max_t(size_t, offset + count, fw->size);=0A= retval =3D count;=0A= @@ -568,6 +607,12 @@ firmware_class_init(void)=0A= __FUNCTION__);=0A= class_unregister(&firmware_class);=0A= }=0A= + error =3D class_create_file(&firmware_class, &class_attr_grow_faster);=0A= + if (error) {=0A= + printk(KERN_ERR "%s: class_create_file failed\n",=0A= + __FUNCTION__);=0A= + class_unregister(&firmware_class);=0A= + }=0A= return error;=0A= =0A= }=0A= ------=_NextPart_000_03E2_01C81014.404408D0-- From MAILER-DAEMON Tue Oct 16 12:13:39 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ihp35-0001n4-NB for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 12:13:39 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ihoum-00016W-KA for make-w32@gnu.org; Tue, 16 Oct 2007 12:05:04 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ihouk-000149-R7 for make-w32@gnu.org; Tue, 16 Oct 2007 12:05:04 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ihouk-00013h-KM for make-w32@gnu.org; Tue, 16 Oct 2007 12:05:02 -0400 Received: from relais.videotron.ca ([24.201.245.36]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ihouh-0005mM-Il; Tue, 16 Oct 2007 12:04:59 -0400 MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: TEXT/PLAIN; charset=US-ASCII Received: from xanadu.home ([74.56.106.175]) by VL-MO-MR002.ip.videotron.ca (Sun Java(tm) System Messaging Server 6.3-0.15 (built Feb 9 2007)) with ESMTP id <0JQ00011RHZ83VE0@VL-MO-MR002.ip.videotron.ca>; Tue, 16 Oct 2007 12:04:21 -0400 (EDT) Date: Tue, 16 Oct 2007 12:04:29 -0400 (EDT) From: Nicolas Pitre X-X-Sender: nico@xanadu.home To: David Brown In-reply-to: <20071016155608.GA10603@old.davidb.org> Message-id: References: <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <471448D0.6080200@op5.se> <20071016155608.GA10603@old.davidb.org> X-detected-kernel: by monty-python.gnu.org: Solaris 10 (beta) X-Mailman-Approved-At: Tue, 16 Oct 2007 12:13:38 -0400 Cc: raa.lkml@gmail.com, barkalow@iabervon.org, make-w32@gnu.org, Johannes.Schindelin@gmx.de, Andreas Ericsson , git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 16:05:05 -0000 On Tue, 16 Oct 2007, David Brown wrote: > On Tue, Oct 16, 2007 at 02:25:21AM -0400, Eli Zaretskii wrote: > > > On the other hand, what packages have 100K files? If there's only one > > -- the Linux kernel -- then I think this kind of performance is for > > all practical purposes unimportant on Windows, because while it is > > reasonable to assume that someone would like to use git on Windows, > > assuming that someone will develop the Linux kernel on Windows is -- > > how should I put it -- _really_ far-fetched ;-) > > Oh, I wish others could think this clearly. Quoting a serious line off of > a task list at an unnamed company: > > - Make Linux kernel compile under windows. > > I don't think it will move past just being a wish list item, but there seem > to be people that think it should be done. Linux is compilable on Windows, and has been for a long time already. With Cygwin it is pretty trivial to do. I prefer native Linux though. Nicolas From MAILER-DAEMON Tue Oct 16 12:13:39 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ihp35-0001n1-Ks for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 12:13:39 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhomR-0003sU-AR for make-w32@gnu.org; Tue, 16 Oct 2007 11:56:27 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhomM-0003pd-1Z for make-w32@gnu.org; Tue, 16 Oct 2007 11:56:26 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhomL-0003pa-Sn for make-w32@gnu.org; Tue, 16 Oct 2007 11:56:21 -0400 Received: from mail.davidb.org ([66.93.32.219]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IhomH-0003fX-NY; Tue, 16 Oct 2007 11:56:18 -0400 Received: from davidb by mail.davidb.org with local (Exim 4.67 #1 (Debian)) id 1Ihom8-0002my-V3; Tue, 16 Oct 2007 08:56:08 -0700 Date: Tue, 16 Oct 2007 08:56:08 -0700 From: David Brown To: Eli Zaretskii Message-ID: <20071016155608.GA10603@old.davidb.org> Mail-Followup-To: Eli Zaretskii , Andreas Ericsson , barkalow@iabervon.org, raa.lkml@gmail.com, Johannes.Schindelin@gmx.de, tsuna@lrde.epita.fr, git@vger.kernel.org, make-w32@gnu.org References: <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <471448D0.6080200@op5.se> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.16 (2007-06-09) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) X-Mailman-Approved-At: Tue, 16 Oct 2007 12:13:37 -0400 Cc: raa.lkml@gmail.com, barkalow@iabervon.org, make-w32@gnu.org, Johannes.Schindelin@gmx.de, Andreas Ericsson , git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 15:56:27 -0000 On Tue, Oct 16, 2007 at 02:25:21AM -0400, Eli Zaretskii wrote: >On the other hand, what packages have 100K files? If there's only one >-- the Linux kernel -- then I think this kind of performance is for >all practical purposes unimportant on Windows, because while it is >reasonable to assume that someone would like to use git on Windows, >assuming that someone will develop the Linux kernel on Windows is -- >how should I put it -- _really_ far-fetched ;-) Oh, I wish others could think this clearly. Quoting a serious line off of a task list at an unnamed company: - Make Linux kernel compile under windows. I don't think it will move past just being a wish list item, but there seem to be people that think it should be done. Admittedly, they don't want developers doing it on windows, but want to integrate kernel building into a windows-heavy build and release process. David From MAILER-DAEMON Tue Oct 16 12:23:27 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhpCZ-0000Lu-6b for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 12:23:27 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhpCX-0000LS-Kn for make-w32@gnu.org; Tue, 16 Oct 2007 12:23:25 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhpCW-0000Ke-03 for make-w32@gnu.org; Tue, 16 Oct 2007 12:23:25 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhpCV-0000KV-OZ for make-w32@gnu.org; Tue, 16 Oct 2007 12:23:23 -0400 Received: from mail.artimi.com ([194.72.81.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhpCK-0001Sf-TX; Tue, 16 Oct 2007 12:23:13 -0400 Received: from rainbow ([192.168.8.46]) by mail.artimi.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 16 Oct 2007 17:23:11 +0100 From: "Dave Korn" To: "'David Brown'" , "'Eli Zaretskii'" References: <47125F74.9050600@op5.se><47126957.1020204@op5.se><20071014221446.GC2776@steel.home> <471448D0.6080200@op5.se> <20071016155608.GA10603@old.davidb.org> Date: Tue, 16 Oct 2007 17:23:11 +0100 Message-ID: <03f401c81010$d8833de0$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <20071016155608.GA10603@old.davidb.org> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138 Thread-Index: AcgQD4artLH4j0p9QxueRGyPsfZN1wAAR3SQ X-OriginalArrivalTime: 16 Oct 2007 16:23:11.0795 (UTC) FILETIME=[D8819030:01C81010] X-detected-kernel: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ Cc: raa.lkml@gmail.com, barkalow@iabervon.org, make-w32@gnu.org, Johannes.Schindelin@gmx.de, 'Andreas Ericsson' , git@vger.kernel.org Subject: RE: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 16:23:26 -0000 On 16 October 2007 16:56, David Brown wrote: > On Tue, Oct 16, 2007 at 02:25:21AM -0400, Eli Zaretskii wrote: > >> On the other hand, what packages have 100K files? If there's only one >> -- the Linux kernel -- then I think this kind of performance is for >> all practical purposes unimportant on Windows, because while it is >> reasonable to assume that someone would like to use git on Windows, >> assuming that someone will develop the Linux kernel on Windows is -- >> how should I put it -- _really_ far-fetched ;-) > > Oh, I wish others could think this clearly. Quoting a serious line off of > a task list at an unnamed company: > > - Make Linux kernel compile under windows. > > I don't think it will move past just being a wish list item, but there seem > to be people that think it should be done. > > Admittedly, they don't want developers doing it on windows, but want to > integrate kernel building into a windows-heavy build and release process. Do that kind of thing here all the time, hence my previous post. Apart from the netfilter stuff with the filenames-that-match-in-all-but-case, no real problems, took me a couple of hours one afternoon. Cygwin is a good match for linux dev work. cheers, DaveK -- Can't think of a witty .sigline today.... From MAILER-DAEMON Tue Oct 16 14:06:39 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhqoR-00034R-3I for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 14:06:39 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhqoP-000342-68 for make-w32@gnu.org; Tue, 16 Oct 2007 14:06:37 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IhqoN-00033J-OC for make-w32@gnu.org; Tue, 16 Oct 2007 14:06:36 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhqoN-00033F-L1 for make-w32@gnu.org; Tue, 16 Oct 2007 14:06:35 -0400 Received: from pool-70-20-17-24.bstnma.fios.verizon.net ([70.20.17.24] helo=cgf.cx) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhqoL-0006C6-A2; Tue, 16 Oct 2007 14:06:33 -0400 Received: from ednor.cgf.cx (ednor.casa.cgf.cx [192.168.187.5]) by cgf.cx (Postfix) with ESMTP id DF6A713C305; Tue, 16 Oct 2007 14:06:32 -0400 (EDT) Received: by ednor.cgf.cx (Postfix, from userid 201) id DBEBB2B353; Tue, 16 Oct 2007 14:06:32 -0400 (EDT) Date: Tue, 16 Oct 2007 14:06:32 -0400 From: Christopher Faylor To: 'Andreas Ericsson' , barkalow@iabervon.org, raa.lkml@gmail.com, make-w32@gnu.org, git@vger.kernel.org, 'Eli Zaretskii' , Dave Korn , Johannes.Schindelin@gmx.de, 'David Brown' Message-ID: <20071016180632.GA24953@ednor.casa.cgf.cx> References: <20071016155608.GA10603@old.davidb.org> <03f401c81010$d8833de0$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <03f401c81010$d8833de0$2e08a8c0@CAM.ARTIMI.COM> User-Agent: Mutt/1.5.16 (2007-06-09) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 1) Cc: Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 18:06:37 -0000 On Tue, Oct 16, 2007 at 05:23:11PM +0100, Dave Korn wrote: >On 16 October 2007 16:56, David Brown wrote: > >> On Tue, Oct 16, 2007 at 02:25:21AM -0400, Eli Zaretskii wrote: >> >>> On the other hand, what packages have 100K files? If there's only one >>> -- the Linux kernel -- then I think this kind of performance is for >>> all practical purposes unimportant on Windows, because while it is >>> reasonable to assume that someone would like to use git on Windows, >>> assuming that someone will develop the Linux kernel on Windows is -- >>> how should I put it -- _really_ far-fetched ;-) >> >> Oh, I wish others could think this clearly. Quoting a serious line off of >> a task list at an unnamed company: >> >> - Make Linux kernel compile under windows. >> >> I don't think it will move past just being a wish list item, but there seem >> to be people that think it should be done. >> >> Admittedly, they don't want developers doing it on windows, but want to >> integrate kernel building into a windows-heavy build and release process. > > Do that kind of thing here all the time, hence my previous post. Apart from >the netfilter stuff with the filenames-that-match-in-all-but-case, no real >problems, took me a couple of hours one afternoon. Ditto. Coincidentially enough this is the reason I wrote managed mode for cygwin's mount. But, we're pretty far off-topic aren't we? cgf From MAILER-DAEMON Tue Oct 16 15:46:29 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IhsN3-0008Qg-9r for mharc-make-w32@gnu.org; Tue, 16 Oct 2007 15:46:29 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IhplN-000574-Tz for make-w32@gnu.org; Tue, 16 Oct 2007 12:59:26 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IhplM-00056K-Pw for make-w32@gnu.org; Tue, 16 Oct 2007 12:59:24 -0400 Received: from mail.op5.se ([193.201.96.20]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IhplM-0000jf-3E; Tue, 16 Oct 2007 12:59:24 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.op5.se (Postfix) with ESMTP id 2061517306FB; Tue, 16 Oct 2007 18:59:31 +0200 (CEST) X-Virus-Scanned: amavisd-new at X-Spam-Score: -2.499 Received: from mail.op5.se ([127.0.0.1]) by localhost (mail.op5.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id je79t6FUrr7d; Tue, 16 Oct 2007 18:59:30 +0200 (CEST) Received: from nox.op5.se (unknown [172.27.77.30]) by mail.op5.se (Postfix) with ESMTP id 1E3D817306C4; Tue, 16 Oct 2007 18:59:30 +0200 (CEST) Message-ID: <4714EDE7.3010407@op5.se> Date: Tue, 16 Oct 2007 18:59:19 +0200 From: Andreas Ericsson User-Agent: Thunderbird 2.0.0.5 (X11/20070727) MIME-Version: 1.0 To: Eli Zaretskii References: <1192293466.17584.95.camel@homebase.localnet> <1192381040.4908.57.camel@homebase.localnet> <1773C6F0-87BE-4F3C-B68A-171E1F32E242@lrde.epita.fr> <47125F74.9050600@op5.se> <47126957.1020204@op5.se> <20071014221446.GC2776@steel.home> <471448D0.6080200@op5.se> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) X-Mailman-Approved-At: Tue, 16 Oct 2007 15:46:27 -0400 Cc: barkalow@iabervon.org, make-w32@gnu.org, Johannes.Schindelin@gmx.de, raa.lkml@gmail.com, git@vger.kernel.org Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Oct 2007 16:59:26 -0000 Eli Zaretskii wrote: >> From: Andreas Ericsson > >> I *think* (correct me if I'm wrong) that git is still faster >> than a whole bunch of other scm's on windows, but to one who's used to >> its performance on Linux that waiting several seconds to scan 10k files >> just feels wrong. > > Unless that 10K is a typo and you really meant 100K, I don't think 10K > files should take several seconds to scan on Windows. I just tried > "find -print" on a directory with 32K files in 4K subdirectories, and > it took 8 sec elapsed with a hot cache. So 10K files should take at > most 2 seconds, even without optimizing file traversal code. Doing > the same with native Windows system calls ("dir /s") brings that down > to 4 seconds for 32K files. > It was a typo. Thanks for correcting me. > On the other hand, what packages have 100K files? If there's only one > -- the Linux kernel -- then I think this kind of performance is for > all practical purposes unimportant on Windows But it's most definitely not. The *huge* projects that have looked at git have sometimes turned it down simply because they're either cross- platform (Mozilla) or they have translators that use windows exclusively (KDE and Mozilla, just to mention two). Both Mozilla and KDE repos are *much* larger than the Linux repo. -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231 From MAILER-DAEMON Thu Oct 18 08:00:37 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IiU3I-0004M9-Ub for mharc-make-w32@gnu.org; Thu, 18 Oct 2007 08:00:36 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IiOd3-0004cG-Dl for make-w32@gnu.org; Thu, 18 Oct 2007 02:13:09 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IiOd3-0004ad-08 for make-w32@gnu.org; Thu, 18 Oct 2007 02:13:09 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IiOd0-0004Vf-Cz; Thu, 18 Oct 2007 02:13:06 -0400 Received: from smtp3-g19.free.fr ([212.27.42.29]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IiOcx-0001zH-De; Thu, 18 Oct 2007 02:13:03 -0400 Received: from smtp3-g19.free.fr (localhost.localdomain [127.0.0.1]) by smtp3-g19.free.fr (Postfix) with ESMTP id BCE3917B556; Thu, 18 Oct 2007 08:13:02 +0200 (CEST) Received: from mx.meyering.net (mx.meyering.net [82.230.74.64]) by smtp3-g19.free.fr (Postfix) with ESMTP id A9E3417B535; Thu, 18 Oct 2007 08:13:02 +0200 (CEST) Received: by rho.meyering.net (Acme Bit-Twister, from userid 1000) id 4667334924; Thu, 18 Oct 2007 08:13:02 +0200 (CEST) From: Jim Meyering To: psmith@gnu.org In-Reply-To: <1192293466.17584.95.camel@homebase.localnet> (Paul Smith's message of "Sat, 13 Oct 2007 12:37:46 -0400") References: <1192293466.17584.95.camel@homebase.localnet> Date: Thu, 18 Oct 2007 08:13:02 +0200 Message-ID: <87abqhvtld.fsf@rho.meyering.net> Lines: 14 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) X-Mailman-Approved-At: Thu, 18 Oct 2007 08:00:36 -0400 Cc: Make Windows , bug-make Subject: Re: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 Oct 2007 06:13:09 -0000 Paul Smith wrote: > I'm considering switching from CVS to another form of SCM. Currently, ... > It seems like GIT is where the mindshare is these days, plus a number of > the other autotools projects have already migrated (or are in the middle > of migrating) to GIT, so that's what I'd go with. ... Congratulations! :-) > I don't really know what the current state-of-the-art is WRT GIT on > non-POSIX systems, so... please give me your opinions on this change. I heard it was usable months ago, but less efficient than on Unix-based systems. From MAILER-DAEMON Thu Oct 18 09:33:03 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IiVUl-0004lI-PK for mharc-make-w32@gnu.org; Thu, 18 Oct 2007 09:33:03 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IiVUj-0004jk-QF for make-w32@gnu.org; Thu, 18 Oct 2007 09:33:01 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IiVUh-0004hF-JF for make-w32@gnu.org; Thu, 18 Oct 2007 09:33:00 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IiVUc-0004bU-E3; Thu, 18 Oct 2007 09:32:54 -0400 Received: from mail.artimi.com ([194.72.81.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IiVUT-00021y-Rc; Thu, 18 Oct 2007 09:32:46 -0400 Received: from rainbow ([192.168.8.46]) by mail.artimi.com with Microsoft SMTPSVC(6.0.3790.3959); Thu, 18 Oct 2007 14:32:43 +0100 From: "Dave Korn" To: "'Jim Meyering'" , References: <1192293466.17584.95.camel@homebase.localnet> <87abqhvtld.fsf@rho.meyering.net> Date: Thu, 18 Oct 2007 14:32:44 +0100 Message-ID: <053f01c8118b$5d203fa0$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <87abqhvtld.fsf@rho.meyering.net> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138 Thread-Index: AcgRfoS0bZBFxr1ZQWKyCP7jpthcpwABAZWg X-OriginalArrivalTime: 18 Oct 2007 13:32:43.0536 (UTC) FILETIME=[5CD09900:01C8118B] X-detected-kernel: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ Cc: 'Make Windows' , 'bug-make' Subject: RE: Switching from CVS to GIT X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 Oct 2007 13:33:02 -0000 On 18 October 2007 07:13, Jim Meyering wrote: > Paul Smith wrote: >> I'm considering switching from CVS to another form of SCM. Currently, ... >> It seems like GIT is where the mindshare is these days, plus a number of >> the other autotools projects have already migrated (or are in the middle >> of migrating) to GIT, so that's what I'd go with. > ... > Congratulations! :-) > >> I don't really know what the current state-of-the-art is WRT GIT on >> non-POSIX systems, so... please give me your opinions on this change. > > I heard it was usable months ago, but less efficient than > on Unix-based systems. http://cygwin.com/acronyms/#YSHFRTT! cheers, DaveK -- Can't think of a witty .sigline today.... From MAILER-DAEMON Fri Oct 19 06:28:28 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Iip5g-0001Xb-2Y for mharc-make-w32@gnu.org; Fri, 19 Oct 2007 06:28:28 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IigJD-00028H-2M for make-w32@gnu.org; Thu, 18 Oct 2007 21:05:51 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IigJB-00027X-8b for make-w32@gnu.org; Thu, 18 Oct 2007 21:05:50 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IigJB-00027S-3K for make-w32@gnu.org; Thu, 18 Oct 2007 21:05:49 -0400 Received: from cantvi.canterbury.ac.nz ([132.181.2.61]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IigJA-0001rd-EW for make-w32@gnu.org; Thu, 18 Oct 2007 21:05:48 -0400 Received: from CONVERSION-DAEMON.it.canterbury.ac.nz by it.canterbury.ac.nz (PMDF V6.3-x13 #31493) id <01MMPKDZFXXCA4NKNU@it.canterbury.ac.nz> for make-w32@gnu.org; Fri, 19 Oct 2007 14:05:35 +1300 (NEW ZEALAND DAYLIGHT TIME) Received: from CLAUDE.elec.canterbury.ac.nz (claude.elec.canterbury.ac.nz [132.181.54.133]) by it.canterbury.ac.nz (PMDF V6.3-x13 #31493) with ESMTP id <01MMPKDTFSZ2A4NMHB@it.canterbury.ac.nz> for make-w32@gnu.org; Fri, 19 Oct 2007 14:05:23 +1300 (NEW ZEALAND DAYLIGHT TIME) Received: from raith2112 (raith2112.elec.canterbury.ac.nz [132.181.52.132]) by CLAUDE.elec.canterbury.ac.nz with SMTP (Microsoft Exchange Internet Mail Service Version 5.5.2653.13) id R8903CD8; Fri, 19 Oct 2007 14:05:23 +1300 Date: Fri, 19 Oct 2007 14:05:23 +1300 From: Gary Turner To: make-w32@gnu.org Message-id: <17e301c811ec$20a8b320$8434b584@elec.canterbury.ac.nz> MIME-version: 1.0 X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2800.1896 X-Mailer: Microsoft Outlook Express 6.00.2800.1807 Content-type: multipart/alternative; boundary="Boundary_(ID_nUL2+dbUZJzTTI8CfIeVfw)" X-Priority: 3 X-MSMail-priority: Normal X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. X-Mailman-Approved-At: Fri, 19 Oct 2007 06:28:27 -0400 Subject: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Oct 2007 01:05:51 -0000 This is a multi-part message in MIME format. --Boundary_(ID_nUL2+dbUZJzTTI8CfIeVfw) Content-type: text/plain; charset="Windows-1252" Content-transfer-encoding: quoted-printable I've used make on windows for quite a while - I use it for all sorts of = non-compilation tasks, and my makefiles tend to occasionally use = dos-type commands - e.g if exist ... It all worked perfectly until I installed a compiler that put a sh shell = on my path. Since then all my makefiles are broken. Make appears to insist on using the sh shell buried on my path rather = than cmd.exe=20 I've tried explicitly putting SHELL =3D cmd.exe in my makefiles - but = that didn't seem to work. Putting SHELL =3D c:\winnt\system32\cmd.exe = seems to sort-of work, but then all sorts of other errors come up. Is there a simple way (other than changing my path before running make) = to keep all my makefiles that worked perfectly well before working?= --Boundary_(ID_nUL2+dbUZJzTTI8CfIeVfw) Content-type: text/html; charset="Windows-1252" Content-transfer-encoding: quoted-printable
I've used make on windows for quite a while - I = use it=20 for all sorts of non-compilation tasks, and my makefiles tend to=20 occasionally use dos-type commands - e.g if exist ...
 
It all worked perfectly until I installed a compiler = that put=20 a sh shell on my path. Since then all my makefiles are=20 broken.
Make appears to insist on using the sh shell buried = on my path=20 rather than cmd.exe
I've tried explicitly putting SHELL =3D cmd.exe in = my makefiles=20 - but that didn't seem to work. Putting SHELL =3D = c:\winnt\system32\cmd.exe seems=20 to sort-of work, but then all sorts of other errors come = up.
 
Is there a simple way (other than changing my path = before=20 running make) to keep all my makefiles that worked perfectly well before = working?
--Boundary_(ID_nUL2+dbUZJzTTI8CfIeVfw)-- From MAILER-DAEMON Fri Oct 19 07:28:40 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Iiq1w-0000lO-KO for mharc-make-w32@gnu.org; Fri, 19 Oct 2007 07:28:40 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Iiq1t-0000kD-1X for make-w32@gnu.org; Fri, 19 Oct 2007 07:28:37 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Iiq1r-0000k1-5e for make-w32@gnu.org; Fri, 19 Oct 2007 07:28:36 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Iiq1r-0000jy-2O for make-w32@gnu.org; Fri, 19 Oct 2007 07:28:35 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Iiq1q-0005pb-8L for make-w32@gnu.org; Fri, 19 Oct 2007 07:28:34 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l9JBSVkL015688 for ; Fri, 19 Oct 2007 07:28:31 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l9JBSVRE015686 for make-w32@gnu.org; Fri, 19 Oct 2007 07:28:31 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from 155.70.141.45 ([155.70.141.45]) by mail.progw.org (Horde MIME library) with HTTP; Fri, 19 Oct 2007 07:28:31 -0400 Message-ID: <20071019072831.2sdy47v9girk00w0@mail.progw.org> X-Priority: 3 (Normal) Date: Fri, 19 Oct 2007 07:28:31 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <17e301c811ec$20a8b320$8434b584@elec.canterbury.ac.nz> In-Reply-To: <17e301c811ec$20a8b320$8434b584@elec.canterbury.ac.nz> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Oct 2007 11:28:37 -0000 Quoting Gary Turner : > > It all worked perfectly until I installed a compiler that put a sh > shell on my path. Since then all my makefiles are broken. Bad business. Is there a reason the compiler needs the PATH set? > Make appears to insist on using the sh shell buried on my path rather > than cmd.exe > I've tried explicitly putting SHELL = cmd.exe in my makefiles - but > that didn't seem to work. Putting SHELL = c:\winnt\system32\cmd.exe > seems to sort-of work, but then all sorts of other errors come up. > Eli, I thought this was supposed to work? > Is there a simple way (other than changing my path before running > make) to keep all my makefiles that worked perfectly well before > working? Modify the source and rebuild make? Create a make.bat file to modify the PATH and execute make.exe with the parameters passed to the make.bat file? The .bat is found before .exe so executing with ``make -f mymakefile'' still works as expected. Earnie From MAILER-DAEMON Fri Oct 19 07:33:38 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Iiq6k-0003la-Au for mharc-make-w32@gnu.org; Fri, 19 Oct 2007 07:33:38 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Iiq6i-0003hO-MF for make-w32@gnu.org; Fri, 19 Oct 2007 07:33:36 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Iiq6h-0003fJ-N3 for make-w32@gnu.org; Fri, 19 Oct 2007 07:33:36 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Iiq6h-0003f7-Jr for make-w32@gnu.org; Fri, 19 Oct 2007 07:33:35 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Iiq6h-0007Jj-6W for make-w32@gnu.org; Fri, 19 Oct 2007 07:33:35 -0400 Received: from HOME-C4E4A596F7 ([81.5.32.69]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JDW22346 (AUTH halo1); Fri, 19 Oct 2007 13:33:07 +0200 (IST) Date: Fri, 19 Oct 2007 13:33:20 +0200 Message-Id: From: Eli Zaretskii To: Gary Turner In-reply-to: <17e301c811ec$20a8b320$8434b584@elec.canterbury.ac.nz> (message from Gary Turner on Fri, 19 Oct 2007 14:05:23 +1300) References: <17e301c811ec$20a8b320$8434b584@elec.canterbury.ac.nz> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Oct 2007 11:33:37 -0000 > Date: Fri, 19 Oct 2007 14:05:23 +1300 > From: Gary Turner > > It all worked perfectly until I installed a compiler that put a sh shell > on my path. Since then all my makefiles are broken. If your makefiles use features specific to cmd.exe, and don't specify SHELL = cmd.exe, then it's expected that they will become broken, because the Windows port of Make uses sh.exe by default if it can find it along your PATH. > I've tried explicitly putting SHELL = cmd.exe in my makefiles - but > that didn't seem to work. Putting SHELL = c:\winnt\system32\cmd.exe > seems to sort-of work, but then all sorts of other errors come up. My crystal ball says you are using Make 3.80 or older. Those versions didn't support cmd.exe well enough. Please try upgrading to version 3.81, where these problems should be gone. If you see these problems with Make 3.81, please show a short self-contained makefile which doesn't work if you put "SHELL = cmd.exe" in it, and also show all the error messages you see on your system with such a makefile. From MAILER-DAEMON Fri Oct 19 07:54:56 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IiqRM-0002WB-Oe for mharc-make-w32@gnu.org; Fri, 19 Oct 2007 07:54:56 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IiqRL-0002TB-1C for make-w32@gnu.org; Fri, 19 Oct 2007 07:54:55 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IiqRJ-0002Qe-IG for make-w32@gnu.org; Fri, 19 Oct 2007 07:54:54 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IiqRJ-0002QT-8E for make-w32@gnu.org; Fri, 19 Oct 2007 07:54:53 -0400 Received: from cdelbcmx.draeger.com ([192.78.147.18] helo=cdelbcmx1.draeger.com) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IiqRI-0006QR-Ey for make-w32@gnu.org; Fri, 19 Oct 2007 07:54:52 -0400 Received: from lx-cluster1.dwhl.de (dhcp.de.draeger.com [160.70.15.190]) by cdelbcmx1.draeger.com (8.13.7/8.13.7) with ESMTP id l9JBsm32009562 for ; Fri, 19 Oct 2007 13:54:48 +0200 Received: from CDELBCEXMBX01.corp.draeger.global (cdelbcexmbx01n2.corp.draeger.global [10.55.148.97]) by lx-cluster1.dwhl.de (8.11.6/8.10.1) with ESMTP id l9JBslv24937 for ; Fri, 19 Oct 2007 13:54:47 +0200 Received: from CDELBCEXMBX02.corp.draeger.global ([10.55.148.137]) by CDELBCEXMBX01.corp.draeger.global with Microsoft SMTPSVC(6.0.3790.1830); Fri, 19 Oct 2007 13:54:47 +0200 Content-class: urn:content-classes:message Date: Fri, 19 Oct 2007 13:54:46 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Message-ID: <8D5B466840C9434EAC32507810C31B070195CB96@CDELBCEXMBX02.corp.draeger.global> In-Reply-To: <20071019072831.2sdy47v9girk00w0@mail.progw.org> X-MimeOLE: Produced By Microsoft Exchange V6.5 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Make on XP - shell selection? Thread-Index: AcgSQzfJu38cEzNsS3Ozv+ACylnqqAAAu32g References: <17e301c811ec$20a8b320$8434b584@elec.canterbury.ac.nz> <20071019072831.2sdy47v9girk00w0@mail.progw.org> From: "Leeuwesteijn, Joost" To: X-OriginalArrivalTime: 19 Oct 2007 11:54:47.0583 (UTC) FILETIME=[D8E312F0:01C81246] X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-3.0 (cdelbcmx1.draeger.com [192.78.147.18]); Fri, 19 Oct 2007 13:54:48 +0200 (CEST) Content-Disposition: inline X-Scanned-By: MIMEDefang 2.54 on 192.78.147.18 X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Subject: RE: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Oct 2007 11:54:55 -0000 =20=0A= =0A= > -----Original Message-----=0A= > From: make-w32-bounces On Behalf Of Earnie Boyd=0A= > Quoting Gary Turner :=0A= > > It all worked perfectly until I installed a compiler that put a sh=20= =0A= > > shell on my path. Since then all my makefiles are broken.=0A= > Bad business. Is there a reason the compiler needs the PATH set?=0A= =0A= Our build environment explicitly clears the PATH and other important=0A= environment variables. All tools have an explicit relative directory=0A= path in front of them. That way you know for sure that the build=0A= envirnoment -always- uses the compilers, tools, source files, etc. that=0A= _you_ want and the world never changes under your feet, often=0A= unexpectedly :-)=0A= =0A= Kind regards,=0A= Joost Leeuwesteijn=0A= =0A= =0A= ---=0A= =0A= This communication contains confidential information. If you are not the in= tended recipient please return this email to the sender and delete it from = your records.=0A= =0A= Diese Nachricht enth=E4lt vertrauliche Informationen. Sollten Sie nicht der= beabsichtigte Empf=E4nger dieser E-mail sein, senden Sie bitte diese an de= n Absender zur=FCck und l=F6schen Sie die E-mail aus Ihrem System.=0A= =0A= From MAILER-DAEMON Fri Oct 19 08:09:07 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Iiqf5-0001op-1b for mharc-make-w32@gnu.org; Fri, 19 Oct 2007 08:09:07 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Iiqf3-0001oT-Iw for make-w32@gnu.org; Fri, 19 Oct 2007 08:09:05 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Iiqf2-0001oE-T8 for make-w32@gnu.org; Fri, 19 Oct 2007 08:09:05 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Iiqf2-0001o3-Pp for make-w32@gnu.org; Fri, 19 Oct 2007 08:09:04 -0400 Received: from nitzan.inter.net.il ([213.8.233.22]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Iiqf2-0002au-C2 for make-w32@gnu.org; Fri, 19 Oct 2007 08:09:04 -0400 Received: from HOME-C4E4A596F7 ([81.5.32.69]) by nitzan.inter.net.il (MOS 3.7.3a-GA) with ESMTP id IBU65157 (AUTH halo1); Fri, 19 Oct 2007 14:06:24 +0200 (IST) Date: Fri, 19 Oct 2007 14:09:03 +0200 Message-Id: From: Eli Zaretskii To: Earnie Boyd In-reply-to: <20071019072831.2sdy47v9girk00w0@mail.progw.org> (message from Earnie Boyd on Fri, 19 Oct 2007 07:28:31 -0400) References: <17e301c811ec$20a8b320$8434b584@elec.canterbury.ac.nz> <20071019072831.2sdy47v9girk00w0@mail.progw.org> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Oct 2007 12:09:05 -0000 > Date: Fri, 19 Oct 2007 07:28:31 -0400 > From: Earnie Boyd > > > Make appears to insist on using the sh shell buried on my path rather > > than cmd.exe > > I've tried explicitly putting SHELL = cmd.exe in my makefiles - but > > that didn't seem to work. Putting SHELL = c:\winnt\system32\cmd.exe > > seems to sort-of work, but then all sorts of other errors come up. > > > > Eli, I thought this was supposed to work? It does, in Make 3.81. I suspect the OP uses an older version. From MAILER-DAEMON Fri Oct 19 14:36:30 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Iiwhy-0005ii-6z for mharc-make-w32@gnu.org; Fri, 19 Oct 2007 14:36:30 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Iiw6M-0006xY-DG for make-w32@gnu.org; Fri, 19 Oct 2007 13:57:38 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Iiw6K-0006vR-1e for make-w32@gnu.org; Fri, 19 Oct 2007 13:57:37 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Iiw6J-0006v8-Om for make-w32@gnu.org; Fri, 19 Oct 2007 13:57:35 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Iiw6J-00063M-Af for make-w32@gnu.org; Fri, 19 Oct 2007 13:57:35 -0400 Received: (qmail invoked by alias); 19 Oct 2007 17:57:32 -0000 Received: from dialin-212-144-219-238.pools.arcor-ip.net (EHLO j4f3n1) [212.144.219.238] by mail.gmx.net (mp005) with SMTP; 19 Oct 2007 19:57:32 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX1/KVaRAW7DKce/MKY3jT+lLVL/G9aQvQWveLjEcHp 5Qx2a2aFWdAM4H Message-ID: <00c501c81279$731d4520$eedb90d4@j4f3n1> From: "grischka" To: Date: Fri, 19 Oct 2007 19:55:54 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) X-Mailman-Approved-At: Fri, 19 Oct 2007 14:36:28 -0400 Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Oct 2007 17:57:38 -0000 Gary Turner wrote: > It all worked perfectly until I installed a compiler that put a sh > shell on my path. Since then all my makefiles are broken. It is one of gmake's undocumented non-features with SHELL on windows. I don't know who benefits from it but so far nobody dared to document it, either. Maybe an experimental non-feature ;) Certainly it conflicts with the general rule that for makefile portability reasons the SHELL to be used shall not depend on individual environment settings. --- grischka From MAILER-DAEMON Fri Oct 19 14:53:54 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Iiwyo-0001nn-FG for mharc-make-w32@gnu.org; Fri, 19 Oct 2007 14:53:54 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Iiwym-0001mk-Sa for make-w32@gnu.org; Fri, 19 Oct 2007 14:53:52 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Iiwyl-0001lw-4s for make-w32@gnu.org; Fri, 19 Oct 2007 14:53:52 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Iiwyk-0001lp-Se for make-w32@gnu.org; Fri, 19 Oct 2007 14:53:50 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Iiwyj-00037f-JK for make-w32@gnu.org; Fri, 19 Oct 2007 14:53:50 -0400 Received: from HOME-C4E4A596F7 (IGLD-84-228-47-160.inter.net.il [84.228.47.160]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JDX46863 (AUTH halo1); Fri, 19 Oct 2007 20:53:17 +0200 (IST) Date: Fri, 19 Oct 2007 20:53:30 +0200 Message-Id: From: Eli Zaretskii To: "grischka" In-reply-to: <00c501c81279$731d4520$eedb90d4@j4f3n1> (grishka@gmx.de) References: <00c501c81279$731d4520$eedb90d4@j4f3n1> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: g.turner@paradise.net.nz, make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Oct 2007 18:53:53 -0000 > From: "grischka" > Date: Fri, 19 Oct 2007 19:55:54 +0200 > Cc: make-w32@gnu.org > > It is one of gmake's undocumented non-features with SHELL on > windows. I always wonder why people feel a need to post such derogatory comments. Is there some kind of satisfaction in it? > I don't know who benefits from it but so far nobody dared to > document it, either. I'm not sure it should be documented: the Windows port just behaves the same as the Unix original. Here's the relevant fragment executed by Make on Unix (job.c, around line 2100): # ifdef __EMX__ ... # else shell = getenv ("SHELL"); # endif if (shell == 0) shell = default_shell; and default_shell is "/bin/sh" on Unix, see line 74 in the same file. The same is done around line 2355 in job.c: if (shell == 0) shell = default_shell; Granted, the code in the Windows port that does the equivalent is more complicated, but the net effect, as far as user is concerned, is the same: sh.exe is used if it is available. > Certainly it conflicts with the general rule that for makefile > portability reasons the SHELL to be used shall not depend on > individual environment settings. The OP's report was not about SHELL in the environment, it was about setting SHELL in the Makefile. Certainly, you won't claim that Make ignores _that_ on Unix, would you? And if by ``individual environment settings'' you mean the value of PATH, then I don't see how Make can do better, since, unlike on Posix platforms, there's no "/bin" directory on your garden-variety Windows box. So it looks along PATH, which is a reasonable thing to do, IMO. From MAILER-DAEMON Fri Oct 19 17:52:33 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Iizlg-00078X-S5 for mharc-make-w32@gnu.org; Fri, 19 Oct 2007 17:52:32 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Iizlf-00077x-AR for make-w32@gnu.org; Fri, 19 Oct 2007 17:52:31 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Iizle-00077k-Ol for make-w32@gnu.org; Fri, 19 Oct 2007 17:52:31 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Iizle-00077h-MD for make-w32@gnu.org; Fri, 19 Oct 2007 17:52:30 -0400 Received: from rgminet01.oracle.com ([148.87.113.118]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Iizle-0005Aj-3v for make-w32@gnu.org; Fri, 19 Oct 2007 17:52:30 -0400 Received: from rgmgw2.us.oracle.com (rgmgw2.us.oracle.com [138.1.186.111]) by rgminet01.oracle.com (Switch-3.2.4/Switch-3.1.6) with ESMTP id l9JLqKsu004734 for ; Fri, 19 Oct 2007 15:52:20 -0600 Received: from acsmt350.oracle.com (acsmt350.oracle.com [141.146.40.150]) by rgmgw2.us.oracle.com (Switch-3.2.4/Switch-3.2.4) with ESMTP id l9I3Ljw7013087 for ; Fri, 19 Oct 2007 15:52:20 -0600 Received: from dhcp-amer-whq-csvpn-gw3-141-144-81-57.vpn.oracle.com by acsmt350.oracle.com with ESMTP id 3307636081192830684; Fri, 19 Oct 2007 14:51:24 -0700 Message-ID: <471926DB.7090709@oracle.com> Date: Fri, 19 Oct 2007 14:51:23 -0700 From: Tom Honermann User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206) X-Accept-Language: en-us, en MIME-Version: 1.0 CC: make-w32@gnu.org References: <00c501c81279$731d4520$eedb90d4@j4f3n1> In-Reply-To: Content-Type: multipart/alternative; boundary="------------040707020809060205000505" X-Brightmail-Tracker: AAAAAQAAAAI= X-Brightmail-Tracker: AAAAAQAAAAI= X-Whitelist: TRUE X-Whitelist: TRUE X-detected-kernel: by monty-python.gnu.org: Linux 2.4-2.6 Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Oct 2007 21:52:31 -0000 This is a multi-part message in MIME format. --------------040707020809060205000505 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Eli Zaretskii wrote: >>I don't know who benefits from it but so far nobody dared to >>document it, either. >> >> > >I'm not sure it should be documented: the Windows port just behaves >the same as the Unix original. Here's the relevant fragment executed >by Make on Unix (job.c, around line 2100): > ># ifdef __EMX__ > ... ># else > shell = getenv ("SHELL"); ># endif > if (shell == 0) > shell = default_shell; > >and default_shell is "/bin/sh" on Unix, see line 74 in the same file. > >The same is done around line 2355 in job.c: > > if (shell == 0) > shell = default_shell; > >Granted, the code in the Windows port that does the equivalent is more >complicated, but the net effect, as far as user is concerned, is the >same: sh.exe is used if it is available. > > I think there is a difference in behavior here. On a UNIX system if '/bin/sh' were to be missing, Make would still attempt to exec '/bin/sh' and then would report the error. However, On Windows, Make has a fallback plan: It execs 'cmd.exe' instead. I'm sure some will object to this, but perhaps it would make sense for Make to issue an error on Windows if an 'sh.exe' cannot be found and therefore require a SHELL assignment in order to use 'cmd.exe'. This would keep Makefiles portable in the sense that it removes the environmental uncertainty caused by the addition or removal of a directory containing an 'sh.exe' from one's PATH. Makefiles that use 'cmd' syntax would therefore require a SHELL assignment just like Makefiles using 'perl' syntax require a SHELL assignment to 'perl(.exe)' > > >>Certainly it conflicts with the general rule that for makefile >>portability reasons the SHELL to be used shall not depend on >>individual environment settings. >> >> > >The OP's report was not about SHELL in the environment, it was about >setting SHELL in the Makefile. Certainly, you won't claim that Make >ignores _that_ on Unix, would you? > >And if by ``individual environment settings'' you mean the value of >PATH, then I don't see how Make can do better, since, unlike on Posix >platforms, there's no "/bin" directory on your garden-variety Windows >box. So it looks along PATH, which is a reasonable thing to do, IMO. > > Absolutely agreed that searching along PATH makes sense on Windows here. If we wanted to be pedantic, Make could do this on UNIX as well. However, doing so would generally be considered a security issue since a rogue 'sh' could be inserted in a directory in one's PATH without them realizing it. If we really wanted to make the behaivors the same without compromising secutiry, we could look for the correct shell by first trying '/bin/sh' (%SystemDrive%\bin\sh.exe on Windows), and if that fails, then look for an 'sh' ('sh.exe' on Windows) in PATH. > >_______________________________________________ >Make-w32 mailing list >Make-w32@gnu.org >http://lists.gnu.org/mailman/listinfo/make-w32 > > --------------040707020809060205000505 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Eli Zaretskii wrote:
I don't know who benefits from it but so far nobody dared to
document it, either.
    

I'm not sure it should be documented: the Windows port just behaves
the same as the Unix original.  Here's the relevant fragment executed
by Make on Unix (job.c, around line 2100):

# ifdef __EMX__
	...
# else
	shell = getenv ("SHELL");
# endif
	if (shell == 0)
	  shell = default_shell;

and default_shell is "/bin/sh" on Unix, see line 74 in the same file.

The same is done around line 2355 in job.c:

  if (shell == 0)
    shell = default_shell;

Granted, the code in the Windows port that does the equivalent is more
complicated, but the net effect, as far as user is concerned, is the
same: sh.exe is used if it is available.
  
I think there is a difference in behavior here.  On a UNIX system if '/bin/sh' were to be missing,
Make would still attempt to exec '/bin/sh' and then would report the error.  However, On Windows,
Make has a fallback plan:  It execs 'cmd.exe' instead.  I'm sure some will object to this, but perhaps
it would make sense for Make to issue an error on Windows if an 'sh.exe' cannot be found and
therefore require a SHELL assignment in order to use 'cmd.exe'.  This would keep Makefiles
portable in the sense that it removes the environmental uncertainty caused by the addition or removal
of a directory containing an 'sh.exe' from one's PATH.  Makefiles that use 'cmd' syntax would
therefore require a SHELL assignment just like Makefiles using 'perl' syntax require a SHELL
assignment to 'perl(.exe)'
  
Certainly it conflicts with the general rule that for makefile 
portability reasons the SHELL to be used shall not depend on 
individual environment settings.
    

The OP's report was not about SHELL in the environment, it was about
setting SHELL in the Makefile.  Certainly, you won't claim that Make
ignores _that_ on Unix, would you?

And if by ``individual environment settings'' you mean the value of
PATH, then I don't see how Make can do better, since, unlike on Posix
platforms, there's no "/bin" directory on your garden-variety Windows
box.  So it looks along PATH, which is a reasonable thing to do, IMO.
  
Absolutely agreed that searching along PATH makes sense on Windows here.  If we wanted
to be pedantic, Make could do this on UNIX as well.  However, doing so would generally be
considered a security issue since a rogue 'sh' could be inserted in a directory in one's PATH
without them realizing it.  If we really wanted to make the behaivors the same without
compromising secutiry, we could look for the correct shell by first trying '/bin/sh'
(%SystemDrive%\bin\sh.exe on Windows), and if that fails, then look for an 'sh'
('sh.exe' on Windows) in PATH.

_______________________________________________
Make-w32 mailing list
Make-w32@gnu.org
http://lists.gnu.org/mailman/listinfo/make-w32
  

--------------040707020809060205000505-- From MAILER-DAEMON Sat Oct 20 06:47:51 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IjBrz-00077M-8x for mharc-make-w32@gnu.org; Sat, 20 Oct 2007 06:47:51 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IjBrx-00077G-J3 for make-w32@gnu.org; Sat, 20 Oct 2007 06:47:49 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IjBru-000773-Ln for make-w32@gnu.org; Sat, 20 Oct 2007 06:47:48 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IjBru-000770-FM for make-w32@gnu.org; Sat, 20 Oct 2007 06:47:46 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IjBru-0005Gs-4R for make-w32@gnu.org; Sat, 20 Oct 2007 06:47:46 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-206-221.inter.net.il [80.230.206.221]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DXF28937 (AUTH halo1); Sat, 20 Oct 2007 12:47:38 +0200 (IST) Date: Sat, 20 Oct 2007 12:47:38 +0200 Message-Id: From: Eli Zaretskii To: Tom Honermann In-reply-to: <471926DB.7090709@oracle.com> (message from Tom Honermann on Fri, 19 Oct 2007 14:51:23 -0700) References: <00c501c81279$731d4520$eedb90d4@j4f3n1> <471926DB.7090709@oracle.com> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 20 Oct 2007 10:47:49 -0000 > Date: Fri, 19 Oct 2007 14:51:23 -0700 > From: Tom Honermann > CC: make-w32@gnu.org > > I think there is a difference in behavior here. On a UNIX system if > '/bin/sh' were to be missing, Make would still attempt to exec > '/bin/sh' and then would report the error. However, On Windows, > Make has a fallback plan: It execs 'cmd.exe' instead. Actually, what Make does in this case is this: If the program is found along PATH, it is invoked directly (no need for any shell at all); otherwise, if the program name is one of the built-in commands, or if the command line includes redirection or other shell-specific features, and no sh.exe is available, Make generates a batch file and invokes it. Batch files are by default invoked through cmd.exe, but that's the OS feature; Make has no explicit knowledge about that. > I'm sure some will object to this, but perhaps it would make sense > for Make to issue an error on Windows if an 'sh.exe' cannot be found > and therefore require a SHELL assignment in order to use 'cmd.exe'. I'm not sure this is a good idea, as it would be a nuisance for those who use GNU Make only on Windows, and don't care about any such portability: they would see this warning time and again. Maybe this would be appropriate under some pedantic-style command-line switch, or some new --debug flag, but not as default. Really, the Windows port tries to be conforming where it makes sense, given its popular use cases, and deviates where necessary. Granted, that requires some deviant, sometimes undocumented behavior, but I think on balance those subtle aspects are few and most of the time result in expected behavior. > Absolutely agreed that searching along PATH makes sense on Windows > here. If we wanted to be pedantic, Make could do this on UNIX as > well. However, doing so would generally be considered a security > issue since a rogue 'sh' could be inserted in a directory in one's > PATH without them realizing it. Also, this would be against Posix specifications for Make, I think. > If we really wanted to make the behaivors the same without > compromising secutiry, we could look for the correct shell by first > trying '/bin/sh' (%SystemDrive%\bin\sh.exe on Windows), and if that > fails, then look for an 'sh' ('sh.exe' on Windows) in PATH. There's much more to security on Windows than a potentially rogue sh.exe. There's the whole bunch of file security features on NTFS filesystems, complete with ACLs and stuff, that Make doesn't currently support (because we use the native Windows version of `stat' that doesn't consider file security attributes). I don't think we should consider isolated issues such as bad sh.exe before we have reasonably full support for file security in general. From MAILER-DAEMON Sat Oct 20 11:56:05 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IjGgH-0002Uj-Nk for mharc-make-w32@gnu.org; Sat, 20 Oct 2007 11:56:05 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IjFxN-0005LJ-ED for make-w32@gnu.org; Sat, 20 Oct 2007 11:09:41 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IjFxM-0005KV-3y for make-w32@gnu.org; Sat, 20 Oct 2007 11:09:40 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IjFxL-0005Iw-VW for make-w32@gnu.org; Sat, 20 Oct 2007 11:09:40 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IjFxB-0005wO-8F for make-w32@gnu.org; Sat, 20 Oct 2007 11:09:31 -0400 Received: (qmail invoked by alias); 20 Oct 2007 15:09:26 -0000 Received: from dialin-212-144-026-003.pools.arcor-ip.net (EHLO j4f3n1) [212.144.26.3] by mail.gmx.net (mp058) with SMTP; 20 Oct 2007 17:09:26 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX186XIUXvYw63NVkIuXstXVD2txY7j9TYw9LAxjr9k zlMQANdly1lO9v Message-ID: <00c201c8132b$21fcdb80$031a90d4@j4f3n1> From: "grischka" To: "Eli Zaretskii" Date: Sat, 20 Oct 2007 17:08:38 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 1) X-Mailman-Approved-At: Sat, 20 Oct 2007 11:56:04 -0400 Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 20 Oct 2007 15:09:41 -0000 Eli Zaretskii wrote: > I always wonder why people feel a need to post such derogatory > comments. Is there some kind of satisfaction in it? What do you expect? That is the nature of feedback. If it's all well it mostly wont happen. > I'm not sure it should be documented: the Windows port just behaves > the same as the Unix original. Whereas I'm not shure anyone even knows how exactly SHELL behaves on windows. > Granted, the code in the Windows port that does the equivalent is more > complicated, but the net effect, as far as user is concerned, is the > same: sh.exe is used if it is available. Net effects are pointless if they miss the inner logic that the user can understand and build on such logic with own creativity. For example: $ type makefile SHELL = test.bat all : ; @echo "$(SHELL)" $ gmake "c:/tools/test.bat" Obviously gmake resolves "test.bat" from my PATH which is wrong in so far as no variable is supposed to change the value on its own. Someone might want do: ifeq "$(SHELL)" "test.bat" Then, although SHELL now prints as "c:/tools/test.bat", gmake still uses "cmd.exe" to run the 'echo' command. Unless someone happens to have "sh.exe" in the PATH, in which case it uses actually "test.bat" as shell. That is obscure. And unneccessary, even on windows. > > Certainly it conflicts with the general rule that for makefile > > portability reasons the SHELL to be used shall not depend on > > individual environment settings. > The OP's report was not about SHELL in the environment, it was about > setting SHELL in the Makefile. Certainly, you won't claim that Make > ignores _that_ on Unix, would you? No, did I? > And if by ``individual environment settings'' you mean the value of > PATH, Yes, that is what I mean ... > then I don't see how Make can do better, since, unlike on Posix > platforms, there's no "/bin" directory on your garden-variety Windows > box. So it looks along PATH, which is a reasonable thing to do, IMO. Not really. If it's only to find "sh(.exe)" in the PATH instead of in "/bin" then it suffices to strip "/bin/" because then the OS can find it on it's own. Which makes sense of course, no matter. --- grischka From MAILER-DAEMON Sat Oct 20 14:27:51 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IjJ39-0005I0-AW for mharc-make-w32@gnu.org; Sat, 20 Oct 2007 14:27:51 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IjJ38-0005Hm-7m for make-w32@gnu.org; Sat, 20 Oct 2007 14:27:50 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IjJ37-0005HX-Ad for make-w32@gnu.org; Sat, 20 Oct 2007 14:27:49 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IjJ37-0005HR-6a for make-w32@gnu.org; Sat, 20 Oct 2007 14:27:49 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IjJ36-0005Ue-P3 for make-w32@gnu.org; Sat, 20 Oct 2007 14:27:48 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-211-79.inter.net.il [80.230.211.79]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JEB20591 (AUTH halo1); Sat, 20 Oct 2007 20:27:34 +0200 (IST) Date: Sat, 20 Oct 2007 20:27:46 +0200 Message-Id: From: Eli Zaretskii To: "grischka" In-reply-to: <00c201c8132b$21fcdb80$031a90d4@j4f3n1> (grishka@gmx.de) References: <00c201c8132b$21fcdb80$031a90d4@j4f3n1> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 20 Oct 2007 18:27:50 -0000 > From: "grischka" > Cc: > Date: Sat, 20 Oct 2007 17:08:38 +0200 > > $ type makefile > SHELL = test.bat > all : ; @echo "$(SHELL)" > > $ gmake > "c:/tools/test.bat" > > Obviously gmake resolves "test.bat" from my PATH which is wrong in > so far as no variable is supposed to change the value on its own. Please suggest another way, if you can. Whenever Make wants to use the shell, it does this: shell = allocated_variable_expand_for_file ("$(SHELL)", file); That is, it simply looks at its database of variables, and extracts the value from there. Unless we store there the full absolute file name of the shell's executable when we see its definition, how will we make sure Make uses that executable when the time comes to invoke commands? > Then, although SHELL now prints as "c:/tools/test.bat", gmake still > uses "cmd.exe" to run the 'echo' command. Yes, values of SHELL other than the standard ones are not yet supported in the Windows port. Patches to support that are welcome. > Unless someone happens to have "sh.exe" in the PATH, in which case > it uses actually "test.bat" as shell. These are marginal case, IMO, but I'm open to suggestions for a better way. > > then I don't see how Make can do better, since, unlike on Posix > > platforms, there's no "/bin" directory on your garden-variety Windows > > box. So it looks along PATH, which is a reasonable thing to do, IMO. > > Not really. If it's only to find "sh(.exe)" in the PATH instead of in > "/bin" then it suffices to strip "/bin/" because then the OS can find > it on it's own. Which makes sense of course, no matter. It's not only for /bin/sh, it's for any program mentioned in SHELL. And please don't forget that Windows doesn't look only along PATH when it tries to find sh.exe, so doing what you suggest would introduce another subtlety. From MAILER-DAEMON Sun Oct 21 10:07:25 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IjbSf-00070v-1t for mharc-make-w32@gnu.org; Sun, 21 Oct 2007 10:07:25 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IjZub-00087X-5U for make-w32@gnu.org; Sun, 21 Oct 2007 08:28:09 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IjZuZ-00085H-8y for make-w32@gnu.org; Sun, 21 Oct 2007 08:28:08 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IjZuZ-000850-0U for make-w32@gnu.org; Sun, 21 Oct 2007 08:28:07 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IjZuY-0005Ll-Db for make-w32@gnu.org; Sun, 21 Oct 2007 08:28:06 -0400 Received: (qmail invoked by alias); 21 Oct 2007 12:28:04 -0000 Received: from dialin-212-144-010-184.pools.arcor-ip.net (EHLO j4f3n1) [212.144.10.184] by mail.gmx.net (mp033) with SMTP; 21 Oct 2007 14:28:04 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX18Y1bg9wzYYDSQgn2A+SEgtBlhrYersbTf6YgMRW5 BoJ35coZhQT8QD Message-ID: <002b01c813dd$c035a360$b80a90d4@j4f3n1> From: "grischka" To: "Eli Zaretskii" Date: Sun, 21 Oct 2007 14:25:14 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Sun, 21 Oct 2007 10:07:23 -0400 Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 21 Oct 2007 12:28:09 -0000 > > $ type makefile > > SHELL = test.bat > > all : ; @echo "$(SHELL)" > > > > $ gmake > > "c:/tools/test.bat" > > > > Obviously gmake resolves "test.bat" from my PATH which is wrong in > > so far as no variable is supposed to change the value on its own. > > Please suggest another way, if you can. Whenever Make wants to use > the shell, it does this: > > shell = allocated_variable_expand_for_file ("$(SHELL)", file); > > That is, it simply looks at its database of variables, and extracts > the value from there. Unless we store there the full absolute file > name of the shell's executable when we see its definition, how will we > make sure Make uses that executable when the time comes to invoke > commands? I don't see the problem. If make needs to examine or adjust the shell filename for technical reasons then it much better does that with the expanded result of SHELL. It can look for it in the PATH if neccessary, and decide from the filename whether it is comspec or sh-like or non-standard. Basically, in job.c:construct_command_argv: shell = allocated_variable_expand_for_file ("$(SHELL)", file); #ifdef WINDOWS32 w32_adjust_shell_and_set_mode_flags (&shell); #endif Then SHELL can be a normal variable again except that it is initialized at startup to some default. Just the same as with the unixy port. We can initialize SHELL either fixed to COMSPEC, or fixed to "sh", optionally from the environment (SHELL or MAKESHELL), or based on PATH search as currently (which I think is evil, though). As 'default shell' on windows is a political question, I can only vote. I think a good compromise is COMSPEC as default, and MAKESHELL from the environment if set. It means dependency on environment too, but at least if you set it you know you have set it, and it does not change if you change PATH. So there is less surprise. As sh is not available by default on windows systems I think it is reasonable that someone who knows where to find and how to use a native "sh" port, also should not have problems to set MAKESHELL once. (we don't talk about cygwin/msys here, these toolchains configure for a unixy make that uses sh by default anyway) --- grischka From MAILER-DAEMON Sun Oct 21 14:22:37 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IjfRc-0006LM-Tp for mharc-make-w32@gnu.org; Sun, 21 Oct 2007 14:22:36 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IjfRb-0006IB-K6 for make-w32@gnu.org; Sun, 21 Oct 2007 14:22:35 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IjfRZ-0006Dp-KJ for make-w32@gnu.org; Sun, 21 Oct 2007 14:22:34 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IjfRZ-0006DQ-Fw for make-w32@gnu.org; Sun, 21 Oct 2007 14:22:33 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IjfRY-0001PS-TL for make-w32@gnu.org; Sun, 21 Oct 2007 14:22:33 -0400 Received: from HOME-C4E4A596F7 (IGLD-83-130-198-249.inter.net.il [83.130.198.249]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DXM39484 (AUTH halo1); Sun, 21 Oct 2007 20:22:30 +0200 (IST) Date: Sun, 21 Oct 2007 20:22:27 +0200 Message-Id: From: Eli Zaretskii To: "grischka" In-reply-to: <002b01c813dd$c035a360$b80a90d4@j4f3n1> (grishka@gmx.de) References: <002b01c813dd$c035a360$b80a90d4@j4f3n1> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 21 Oct 2007 18:22:35 -0000 > From: "grischka" > Cc: > Date: Sun, 21 Oct 2007 14:25:14 +0200 > > > Please suggest another way, if you can. Whenever Make wants to use > > the shell, it does this: > > > > shell = allocated_variable_expand_for_file ("$(SHELL)", file); > > > > That is, it simply looks at its database of variables, and extracts > > the value from there. Unless we store there the full absolute file > > name of the shell's executable when we see its definition, how will we > > make sure Make uses that executable when the time comes to invoke > > commands? > > I don't see the problem. If make needs to examine or adjust the shell > filename for technical reasons then it much better does that with the > expanded result of SHELL. It can look for it in the PATH if neccessary, > and decide from the filename whether it is comspec or sh-like or > non-standard. > > Basically, in job.c:construct_command_argv: > > shell = allocated_variable_expand_for_file ("$(SHELL)", file); > #ifdef WINDOWS32 > w32_adjust_shell_and_set_mode_flags (&shell); > #endif I'm not sure I follow: are you suggesting to write a function named w32_adjust_shell_and_set_mode_flags that would search for SHELL along PATH, like find_and_set_default_shell does now? That'd be a terrible cycle killer, because this function would be called on each command invocation. Or am I missing something? From MAILER-DAEMON Mon Oct 22 00:56:29 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IjpL3-0007hN-86 for mharc-make-w32@gnu.org; Mon, 22 Oct 2007 00:56:29 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IjpL0-0007f3-Og for make-w32@gnu.org; Mon, 22 Oct 2007 00:56:26 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IjpKx-0007cH-S3 for make-w32@gnu.org; Mon, 22 Oct 2007 00:56:25 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IjpKx-0007bx-Db for make-w32@gnu.org; Mon, 22 Oct 2007 00:56:23 -0400 Received: from py-out-1112.google.com ([64.233.166.182]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IjpKx-0001iU-15 for make-w32@gnu.org; Mon, 22 Oct 2007 00:56:23 -0400 Received: by py-out-1112.google.com with SMTP id a73so2607151pye for ; Sun, 21 Oct 2007 21:56:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=swSSuLW3va90kTcX2w07VxCbFRLzTPgLUcFFbJcq2aM=; b=fOt8KiFNMs+JJNCVwIDHJxlLPn9n7tZvjkr6IVsHcx8t25mJt0D6/kAAPqFQimBiy7FfRrcluWSAUeonlLLZr8S0yHn2qj9vp4Mw/dCkHJfYWu3M5Ho5lTHn0I0Q57jrwpNcyua1K2FBfMhWynJlsXyTaiFFbeqxwXBfHJ2MOQw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=haJ8eCoHyg32c3lGGoXKLtiIQ8VDtPiQW+MBopVlpjx+5hrAVT/BaKQMrxyaEvGYIIaDloulN3QkFQseI1iYrGxyc0bLoX8AUNfcSl0TXf4kthhkCpASCXtSTcVM9Ykj8gEo9Sp2fsO4ZZi6TeOUkwhAdSpslDviI36Dx8avd2s= Received: by 10.65.155.19 with SMTP id h19mr8648632qbo.1193028981357; Sun, 21 Oct 2007 21:56:21 -0700 (PDT) Received: by 10.65.200.10 with HTTP; Sun, 21 Oct 2007 21:56:21 -0700 (PDT) Message-ID: <8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> Date: Mon, 22 Oct 2007 12:56:21 +0800 From: "Yongwei Wu" To: grischka In-Reply-To: <002b01c813dd$c035a360$b80a90d4@j4f3n1> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <002b01c813dd$c035a360$b80a90d4@j4f3n1> X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Oct 2007 04:56:27 -0000 On 21/10/2007, grischka wrote: > We can initialize SHELL either fixed to COMSPEC, or fixed to "sh", > optionally from the environment (SHELL or MAKESHELL), or based on PATH > search as currently (which I think is evil, though). > > As 'default shell' on windows is a political question, I can only > vote. I think a good compromise is COMSPEC as default, and MAKESHELL > from the environment if set. It means dependency on environment too, > but at least if you set it you know you have set it, and it does not > change if you change PATH. So there is less surprise. I like this idea: mysteriously changing the behaviour of a Makefile because of a sh.exe somewhere in the path was a surprise to me. If one does want sh, set SHELL or MAKESHELL. If neither of them is present, COMSPEC is a good guess. Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Mon Oct 22 07:37:26 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ijvb4-0000oH-Gk for mharc-make-w32@gnu.org; Mon, 22 Oct 2007 07:37:26 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ijvb2-0000li-Ne for make-w32@gnu.org; Mon, 22 Oct 2007 07:37:24 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ijvay-0000dj-VA for make-w32@gnu.org; Mon, 22 Oct 2007 07:37:22 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ijvay-0000dG-On for make-w32@gnu.org; Mon, 22 Oct 2007 07:37:20 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Ijvay-0007uo-A6 for make-w32@gnu.org; Mon, 22 Oct 2007 07:37:20 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l9MBbGZX026392 for ; Mon, 22 Oct 2007 07:37:16 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l9MBbG5U026383 for make-w32@gnu.org; Mon, 22 Oct 2007 07:37:16 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from 155.70.141.45 ([155.70.141.45]) by mail.progw.org (Horde MIME library) with HTTP; Mon, 22 Oct 2007 07:37:15 -0400 Message-ID: <20071022073715.hjenslrj23ccsgws@mail.progw.org> X-Priority: 3 (Normal) Date: Mon, 22 Oct 2007 07:37:15 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <002b01c813dd$c035a360$b80a90d4@j4f3n1> <8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> In-Reply-To: <8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Oct 2007 11:37:25 -0000 Quoting Yongwei Wu : > On 21/10/2007, grischka wrote: >> We can initialize SHELL either fixed to COMSPEC, or fixed to "sh", >> optionally from the environment (SHELL or MAKESHELL), or based on PATH >> search as currently (which I think is evil, though). >> >> As 'default shell' on windows is a political question, I can only >> vote. I think a good compromise is COMSPEC as default, and MAKESHELL >> from the environment if set. It means dependency on environment too, >> but at least if you set it you know you have set it, and it does not >> change if you change PATH. So there is less surprise. > > I like this idea: mysteriously changing the behaviour of a Makefile > because of a sh.exe somewhere in the path was a surprise to me. If > one does want sh, set SHELL or MAKESHELL. If neither of them is > present, COMSPEC is a good guess. > I agree that COMSPEC is the Windows equivalent to SHELL. I disagree with the introduction of MAKESHELL but do agree that SHELL should have precedence over COMSPEC. Earnie From MAILER-DAEMON Mon Oct 22 16:05:06 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ik3WM-0006iA-HM for mharc-make-w32@gnu.org; Mon, 22 Oct 2007 16:05:06 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ijyo2-0000cE-RW for make-w32@gnu.org; Mon, 22 Oct 2007 11:03:02 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ijyo0-0000Yq-EM for make-w32@gnu.org; Mon, 22 Oct 2007 11:03:01 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ijyo0-0000Yb-0b for make-w32@gnu.org; Mon, 22 Oct 2007 11:03:00 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Ijynz-0008Jn-De for make-w32@gnu.org; Mon, 22 Oct 2007 11:02:59 -0400 Received: (qmail invoked by alias); 22 Oct 2007 15:02:56 -0000 Received: from dialin-145-254-069-215.pools.arcor-ip.net (EHLO j4f3n1) [145.254.69.215] by mail.gmx.net (mp024) with SMTP; 22 Oct 2007 17:02:56 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX18+DWti/08+pQSNuNRwR4CzvQkIT/x/meCRPVgNt9 rjrF99Am6+IFxX Message-ID: <005701c814bc$8c3eeb40$d745fe91@j4f3n1> From: "grischka" To: "Eli Zaretskii" References: <002b01c813dd$c035a360$b80a90d4@j4f3n1> <8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> Date: Mon, 22 Oct 2007 17:00:48 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Mon, 22 Oct 2007 16:05:04 -0400 Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Oct 2007 15:03:03 -0000 Eli Zaretskii wrote: > I'm not sure I follow: are you suggesting to write a function named > w32_adjust_shell_and_set_mode_flags Yes, a function that operates on the expanded string of SHELL when it's about to be used. > that would search for SHELL along > PATH, like find_and_set_default_shell does now? What exactly it does we can fill in when we have it. If it only sets unixy_mode or batch_mode, it should already work for 99%. > That'd be a terrible > cycle killer, because this function would be called on each command > invocation. But no. Compared to what it takes the OS to spawn (and run!) a process, one path search more or less wont make even the slightest difference. --- grischka From MAILER-DAEMON Mon Oct 22 16:54:36 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ik4IG-0005kZ-07 for mharc-make-w32@gnu.org; Mon, 22 Oct 2007 16:54:36 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ik4ID-0005kS-UF for make-w32@gnu.org; Mon, 22 Oct 2007 16:54:33 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ik4IB-0005kE-HL for make-w32@gnu.org; Mon, 22 Oct 2007 16:54:32 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ik4IB-0005kA-Ai for make-w32@gnu.org; Mon, 22 Oct 2007 16:54:31 -0400 Received: from heller.inter.net.il ([213.8.233.23]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ik4IA-0002Ya-Ts for make-w32@gnu.org; Mon, 22 Oct 2007 16:54:31 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-163-251.inter.net.il [80.230.163.251]) by heller.inter.net.il (MOS 3.7.3a-GA) with ESMTP id DXT54139 (AUTH halo1); Mon, 22 Oct 2007 22:54:26 +0200 (IST) Date: Mon, 22 Oct 2007 22:54:27 +0200 Message-Id: From: Eli Zaretskii To: "Yongwei Wu" In-reply-to: <8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> (wuyongwei@gmail.com) References: <002b01c813dd$c035a360$b80a90d4@j4f3n1> <8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: grishka@gmx.de, make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Oct 2007 20:54:34 -0000 > Date: Mon, 22 Oct 2007 12:56:21 +0800 > From: "Yongwei Wu" > Cc: "Eli Zaretskii" , make-w32@gnu.org > > On 21/10/2007, grischka wrote: > > We can initialize SHELL either fixed to COMSPEC, or fixed to "sh", > > optionally from the environment (SHELL or MAKESHELL), or based on PATH > > search as currently (which I think is evil, though). > > > > As 'default shell' on windows is a political question, I can only > > vote. I think a good compromise is COMSPEC as default, and MAKESHELL > > from the environment if set. It means dependency on environment too, > > but at least if you set it you know you have set it, and it does not > > change if you change PATH. So there is less surprise. > > I like this idea: mysteriously changing the behaviour of a Makefile > because of a sh.exe somewhere in the path was a surprise to me. If > one does want sh, set SHELL or MAKESHELL. If neither of them is > present, COMSPEC is a good guess. Sorry, guys, I'm not going to change behavior that was introduced 5 years ago, just because it doesn't TRT in some marginal cases. Such a change runs a risk of breaking many more Makefiles for many more users. From MAILER-DAEMON Mon Oct 22 17:06:18 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ik4Ta-0002IJ-8L for mharc-make-w32@gnu.org; Mon, 22 Oct 2007 17:06:18 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ik4TY-0002Hi-Sl for make-w32@gnu.org; Mon, 22 Oct 2007 17:06:16 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ik4TX-0002Gx-9d for make-w32@gnu.org; Mon, 22 Oct 2007 17:06:16 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ik4TW-0002Go-V2 for make-w32@gnu.org; Mon, 22 Oct 2007 17:06:15 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ik4TW-0006fe-2S for make-w32@gnu.org; Mon, 22 Oct 2007 17:06:14 -0400 Received: from HOME-C4E4A596F7 (IGLD-80-230-163-251.inter.net.il [80.230.163.251]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JEO65362 (AUTH halo1); Mon, 22 Oct 2007 23:05:59 +0200 (IST) Date: Mon, 22 Oct 2007 23:06:11 +0200 Message-Id: From: Eli Zaretskii To: "grischka" In-reply-to: <005701c814bc$8c3eeb40$d745fe91@j4f3n1> (grishka@gmx.de) References: <002b01c813dd$c035a360$b80a90d4@j4f3n1> <8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> <005701c814bc$8c3eeb40$d745fe91@j4f3n1> X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Oct 2007 21:06:17 -0000 > From: "grischka" > Cc: > Date: Mon, 22 Oct 2007 17:00:48 +0200 > > > That'd be a terrible > > cycle killer, because this function would be called on each command > > invocation. > > But no. Compared to what it takes the OS to spawn (and run!) a process, > one path search more or less wont make even the slightest difference. How long is your Path? On a typical Windows machine, it tends to be quite long, what with all kinds of packages that add to it at will. It's nothing as short as "/usr/bin:/usr/local/bin" on Unix. No, sorry, I cannot accept a solution that searches PATH before each command. Perhaps we should introduce a new interface to the stored variables, which would store a canonicalized (a.k.a. absolute) file name (computed only once) for variables, like SHELL, that point to file names. Then those parts of the code that need SHELL for running programs could access that canonicalized file name instead of the value of SHELL instead. From MAILER-DAEMON Tue Oct 23 05:21:33 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IkFx7-00051L-Ma for mharc-make-w32@gnu.org; Tue, 23 Oct 2007 05:21:33 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IkFx6-0004yl-8F for make-w32@gnu.org; Tue, 23 Oct 2007 05:21:32 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IkFx5-0004wT-7p for make-w32@gnu.org; Tue, 23 Oct 2007 05:21:31 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IkFx4-0004w0-QG for make-w32@gnu.org; Tue, 23 Oct 2007 05:21:30 -0400 Received: from mail.artimi.com ([194.72.81.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IkFwz-00082O-8x; Tue, 23 Oct 2007 05:21:25 -0400 Received: from rainbow ([192.168.8.46]) by mail.artimi.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 23 Oct 2007 10:21:23 +0100 From: "Dave Korn" To: "'grischka'" , "'Eli Zaretskii'" References: <002b01c813dd$c035a360$b80a90d4@j4f3n1><8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> <005701c814bc$8c3eeb40$d745fe91@j4f3n1> Date: Tue, 23 Oct 2007 10:21:23 +0100 Message-ID: <01a201c81556$147b3a10$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <005701c814bc$8c3eeb40$d745fe91@j4f3n1> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198 Thread-Index: AcgU5ulYkqc/n73+SHSQOrX2y5ahtQAbnswA X-OriginalArrivalTime: 23 Oct 2007 09:21:23.0336 (UTC) FILETIME=[14617080:01C81556] X-detected-kernel: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ Cc: make-w32@gnu.org Subject: RE: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Oct 2007 09:21:32 -0000 On 22 October 2007 16:01, grischka wrote: > Eli Zaretskii wrote: >> I'm not sure I follow: are you suggesting to write a function named >> w32_adjust_shell_and_set_mode_flags > > Yes, a function that operates on the expanded string of SHELL > when it's about to be used. > >> that would search for SHELL along >> PATH, like find_and_set_default_shell does now? > > What exactly it does we can fill in when we have it. Ummm, that doesn't really sound like a well thought through plan to me. > If it only > sets unixy_mode or batch_mode, it should already work for 99%. > >> That'd be a terrible >> cycle killer, because this function would be called on each command >> invocation. > > But no. Compared to what it takes the OS to spawn (and run!) a process, > one path search more or less wont make even the slightest difference. Well, this is something that is easily amenable to testing and measurement. It would be pretty trival to add a call to a path search (even one that is just trivially performed and the results thrown away; it'd still prove the point) controlled by an option switch and time a few big complex builds both with and without. cheers, DaveK -- Can't think of a witty .sigline today.... From MAILER-DAEMON Tue Oct 23 08:24:22 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IkIo1-0001na-Sx for mharc-make-w32@gnu.org; Tue, 23 Oct 2007 08:24:21 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IkInz-0001mO-Nd for make-w32@gnu.org; Tue, 23 Oct 2007 08:24:19 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IkIny-0001lh-JW for make-w32@gnu.org; Tue, 23 Oct 2007 08:24:19 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IkIny-0001lY-Ay for make-w32@gnu.org; Tue, 23 Oct 2007 08:24:18 -0400 Received: from mx20.gnu.org ([199.232.41.8]) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IkInt-000079-Gn; Tue, 23 Oct 2007 08:24:13 -0400 Received: from 2.139.39-62.rev.gaoland.net ([62.39.139.2] helo=kualalumpur.lrde.epita.fr) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IkENM-0002P0-Ma; Tue, 23 Oct 2007 03:40:33 -0400 Received: from quanta.tsunanet.net ([82.229.223.213]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1IkEMr-0003sW-1v; Tue, 23 Oct 2007 09:40:01 +0200 In-Reply-To: References: <002b01c813dd$c035a360$b80a90d4@j4f3n1> <8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> <005701c814bc$8c3eeb40$d745fe91@j4f3n1> Mime-Version: 1.0 (Apple Message framework v752.3) Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="Apple-Mail-25-69630123" Message-Id: <193513F7-35EF-4830-B051-46EB0587A005@lrde.epita.fr> Content-Transfer-Encoding: 7bit From: Benoit SIGOURE Date: Tue, 23 Oct 2007 09:39:54 +0200 To: Eli Zaretskii X-Pgp-Agent: GPGMail 1.1.2 (Tiger) X-Mailer: Apple Mail (2.752.3) X-detected-kernel: by mx20.gnu.org: Linux 2.6 (newer, 3) X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: grischka , make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Oct 2007 12:24:20 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --Apple-Mail-25-69630123 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed On Oct 22, 2007, at 11:06 PM, Eli Zaretskii wrote: >>> That'd be a terrible >>> cycle killer, because this function would be called on each command >>> invocation. >> >> But no. Compared to what it takes the OS to spawn (and run!) a >> process, >> one path search more or less wont make even the slightest difference. > > How long is your Path? On a typical Windows machine, it tends to be > quite long, what with all kinds of packages that add to it at will. > It's nothing as short as "/usr/bin:/usr/local/bin" on Unix. AFAIR, in this talk http://archive.fosdem.org/2007/schedule/events/ profiling_desktop_apps they show how they discovered that Gnome applications had a bottleneck in the code that ... loads the Gnome icons. They had a huge list of paths to search and it *considerably* increased the application start-up time. So yes, I wouldn't be surprised if doing one PATH search per command would considerably slow down `make'. -- Benoit Sigoure aka Tsuna EPITA Research and Development Laboratory --Apple-Mail-25-69630123 content-type: application/pgp-signature; x-mac-type=70674453; name=PGP.sig content-description: This is a digitally signed message part content-disposition: inline; filename=PGP.sig content-transfer-encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (Darwin) iD8DBQFHHaVLwwE67wC8PUkRAo4yAJ4thnSqz2GByDSda9OWFGZFXN2QAwCeLmMf x9cT89CVK33VSVAHhcZ4C1Y= =6vRn -----END PGP SIGNATURE----- --Apple-Mail-25-69630123-- From MAILER-DAEMON Tue Oct 23 23:58:48 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IkXOK-0006g0-1N for mharc-make-w32@gnu.org; Tue, 23 Oct 2007 23:58:48 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IkTMo-0003os-JJ for make-w32@gnu.org; Tue, 23 Oct 2007 19:40:58 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IkTMl-0003oP-4R for make-w32@gnu.org; Tue, 23 Oct 2007 19:40:57 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IkTMl-0003oM-1n for make-w32@gnu.org; Tue, 23 Oct 2007 19:40:55 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IkTMk-0007Mw-K6 for make-w32@gnu.org; Tue, 23 Oct 2007 19:40:54 -0400 Received: (qmail invoked by alias); 23 Oct 2007 23:40:52 -0000 Received: from dialin-145-254-068-018.pools.arcor-ip.net (EHLO j4f3n1) [145.254.68.18] by mail.gmx.net (mp048) with SMTP; 24 Oct 2007 01:40:52 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX1/WUD8xMzPWCIFA1Sqk5r+ybuXZHgm6hhQlngfXwm RceR+fCMyS09J8 Message-ID: <018601c815ce$0a9a74c0$1244fe91@j4f3n1> From: "grischka" To: "Eli Zaretskii" Date: Wed, 24 Oct 2007 01:30:39 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Tue, 23 Oct 2007 23:58:46 -0400 Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Oct 2007 23:40:59 -0000 Eli Zaretskii wrote: > > > That'd be a terrible > > > cycle killer, because this function would be called on each command > > > invocation. > > > > But no. Compared to what it takes the OS to spawn (and run!) a process, > > one path search more or less wont make even the slightest difference. > > How long is your Path? On a typical Windows machine, it tends to be > quite long, what with all kinds of packages that add to it at will. > It's nothing as short as "/usr/bin:/usr/local/bin" on Unix. How long is my Path? ~200 bytes, 12 folders. > No, sorry, I cannot accept a solution that searches PATH before each > command. Perhaps we should introduce a new interface to the stored > variables, which would store a canonicalized (a.k.a. absolute) file > name (computed only once) for variables, like SHELL, that point to > file names. Then those parts of the code that need SHELL for running > programs could access that canonicalized file name instead of the > value of SHELL instead. Just to make shure I understand this: From a solution that is not even there you assume performance problems without any evidence, but have no idea either what to do with such problem in case it happens, nontheless suggest to transform this non-idea into a generic new interface for all variables "like SHELL"? Please explain. --- grischka From MAILER-DAEMON Tue Oct 23 23:58:48 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IkXOK-0006gD-8u for mharc-make-w32@gnu.org; Tue, 23 Oct 2007 23:58:48 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IkTMo-0003p4-Tk for make-w32@gnu.org; Tue, 23 Oct 2007 19:40:58 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IkTMl-0003oX-OW for make-w32@gnu.org; Tue, 23 Oct 2007 19:40:58 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IkTMl-0003oU-Jc for make-w32@gnu.org; Tue, 23 Oct 2007 19:40:55 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IkTMl-0007NL-7q for make-w32@gnu.org; Tue, 23 Oct 2007 19:40:55 -0400 Received: (qmail invoked by alias); 23 Oct 2007 23:40:53 -0000 Received: from dialin-145-254-068-018.pools.arcor-ip.net (EHLO j4f3n1) [145.254.68.18] by mail.gmx.net (mp048) with SMTP; 24 Oct 2007 01:40:53 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX19T3ZlN6O9TiUmo3+lKpKQV1l1S8D1NtxLTEkbixJ zsitU4ac5hjWJW Message-ID: <018701c815ce$0b94b340$1244fe91@j4f3n1> From: "grischka" To: "Dave Korn" References: <002b01c813dd$c035a360$b80a90d4@j4f3n1><8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> <005701c814bc$8c3eeb40$d745fe91@j4f3n1> <01a201c81556$147b3a10$2e08a8c0@CAM.ARTIMI.COM> Date: Wed, 24 Oct 2007 01:38:56 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Tue, 23 Oct 2007 23:58:46 -0400 Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Oct 2007 23:40:59 -0000 From: "Dave Korn" > Ummm, that doesn't really sound like a well thought through plan > to me. That only means it can still happen. > Well, this is something that is easily amenable to testing and measurement. > It would be pretty trival to add a call to a path search (even one that is > just trivially performed and the results thrown away; it'd still prove the > point) controlled by an option switch and time a few big complex builds both > with and without. Measurement may be trival, interpretation of the result often not quite. Here is something to think about: I tested with an up-to-date project. It has 20 subprojects, that means the top makefile runs 20 commands that are all sub-makes. The sub-makes mostly report 'nothing to do', except two that run two sub-makes each again. The timings are from hot cache. make CVS as is : 7.09 seconds make CVS with per command path search : 2.81 seconds Surprised? --- grischka From MAILER-DAEMON Wed Oct 24 07:34:55 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IkeVj-0004rM-M0 for mharc-make-w32@gnu.org; Wed, 24 Oct 2007 07:34:55 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IkeVi-0004q7-LM for make-w32@gnu.org; Wed, 24 Oct 2007 07:34:54 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IkeVg-0004nB-Jc for make-w32@gnu.org; Wed, 24 Oct 2007 07:34:53 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IkeVg-0004n2-Cw for make-w32@gnu.org; Wed, 24 Oct 2007 07:34:52 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1IkeVg-0000Jj-2J for make-w32@gnu.org; Wed, 24 Oct 2007 07:34:52 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l9OBYn70014283 for ; Wed, 24 Oct 2007 07:34:49 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l9OBYncx014280 for make-w32@gnu.org; Wed, 24 Oct 2007 07:34:49 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from 155.70.141.45 ([155.70.141.45]) by mail.progw.org (Horde MIME library) with HTTP; Wed, 24 Oct 2007 07:34:49 -0400 Message-ID: <20071024073449.gfkvba76peo0s4kc@mail.progw.org> X-Priority: 3 (Normal) Date: Wed, 24 Oct 2007 07:34:49 -0400 From: Earnie Boyd To: make-w32@gnu.org References: <002b01c813dd$c035a360$b80a90d4@j4f3n1><8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> <005701c814bc$8c3eeb40$d745fe91@j4f3n1> <01a201c81556$147b3a10$2e08a8c0@CAM.ARTIMI.COM> <018701c815ce$0b94b340$1244fe91@j4f3n1> In-Reply-To: <018701c815ce$0b94b340$1244fe91@j4f3n1> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 24 Oct 2007 11:34:55 -0000 Quoting grischka : > > make CVS as is : > 7.09 seconds > > make CVS with per command path search : > 2.81 seconds > > Surprised? > No, you didn't reboot first. Earnie From MAILER-DAEMON Wed Oct 24 07:50:30 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ikeko-0001hP-BP for mharc-make-w32@gnu.org; Wed, 24 Oct 2007 07:50:30 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ikekl-0001fx-Qc for make-w32@gnu.org; Wed, 24 Oct 2007 07:50:27 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ikekk-0001e2-18 for make-w32@gnu.org; Wed, 24 Oct 2007 07:50:27 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ikekj-0001dr-QR for make-w32@gnu.org; Wed, 24 Oct 2007 07:50:25 -0400 Received: from mail.artimi.com ([194.72.81.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ikekj-0004r1-AK for make-w32@gnu.org; Wed, 24 Oct 2007 07:50:25 -0400 Received: from rainbow ([192.168.8.46]) by mail.artimi.com with Microsoft SMTPSVC(6.0.3790.3959); Wed, 24 Oct 2007 12:50:21 +0100 From: "Dave Korn" To: "'grischka'" References: <002b01c813dd$c035a360$b80a90d4@j4f3n1><8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> <005701c814bc$8c3eeb40$d745fe91@j4f3n1> <01a201c81556$147b3a10$2e08a8c0@CAM.ARTIMI.COM> <018701c815ce$0b94b340$1244fe91@j4f3n1> Date: Wed, 24 Oct 2007 12:50:21 +0100 Message-ID: <025801c81634$0e74df70$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <018701c815ce$0b94b340$1244fe91@j4f3n1> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198 Thread-Index: AcgVzigV1zSj2K0AT2mzVdD513oLTAAZQj6g X-OriginalArrivalTime: 24 Oct 2007 11:50:21.0797 (UTC) FILETIME=[0E881950:01C81634] X-detected-kernel: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ Cc: make-w32@gnu.org Subject: RE: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 24 Oct 2007 11:50:28 -0000 On 24 October 2007 00:39, grischka wrote: > From: "Dave Korn" > >> Ummm, that doesn't really sound like a well thought through plan >> to me. > > That only means it can still happen. Yes, but it suggests something about /how/ it should happen: it should be designed and spec'd before it is implemented. That's just elementary good practice. It's not like "adding a function" is such a complex change that it's worth doing as a separate step before we have any idea what that function is supposed to actually do. >> Well, this is something that is easily amenable to testing and >> measurement. It would be pretty trival to add a call to a path search >> (even one that is just trivially performed and the results thrown away; >> it'd still prove the point) controlled by an option switch and time a few >> big complex builds both with and without. > > Measurement may be trival, interpretation of the result often > not quite. Here is something to think about: > > I tested with an up-to-date project. It has 20 subprojects, > that means the top makefile runs 20 commands that are all > sub-makes. The sub-makes mostly report 'nothing to do', except > two that run two sub-makes each again. The timings are from > hot cache. > > make CVS as is : > 7.09 seconds > > make CVS with per command path search : > 2.81 seconds > > Surprised? Why should I be? It's a blatant stitch-up. You haven't adequately described the situation, you haven't told us what your code is doing differently in any detail, so I don't see what I could base any expectation *on*. Look, just to prove the point with an exaggerated example, here's what I got when *I* added a patch to make CVS to do a per command path search - repeated a thousand times for each invocation: make CVS as is : 7.09 seconds make CVS with per command path search x 1000 : 0.07 seconds Of course, I did conveniently forget to mention the changed behaviour, like the way it now prints out "SEGV" and doesn't actually build anything, but hey: two can play at that game! cheers, DaveK -- Can't think of a witty .sigline today.... From MAILER-DAEMON Thu Oct 25 17:01:54 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Il9py-0006mE-IY for mharc-make-w32@gnu.org; Thu, 25 Oct 2007 17:01:54 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Il9px-0006kw-Jl for make-w32@gnu.org; Thu, 25 Oct 2007 17:01:53 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Il9pt-0006jG-SV for make-w32@gnu.org; Thu, 25 Oct 2007 17:01:53 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Il9pt-0006j6-OW for make-w32@gnu.org; Thu, 25 Oct 2007 17:01:49 -0400 Received: from progw.com ([66.197.22.147]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Il9pr-0002D1-Pt for make-w32@gnu.org; Thu, 25 Oct 2007 17:01:49 -0400 Received: from progw.com (progw.com [127.0.0.1]) by progw.com (8.12.11.20060308/8.12.11) with ESMTP id l9PL1bHN014270; Thu, 25 Oct 2007 17:01:37 -0400 Received: (from apache@localhost) by progw.com (8.12.11.20060308/8.12.11/Submit) id l9PL1aEG014259; Thu, 25 Oct 2007 17:01:36 -0400 X-Authentication-Warning: progw.com: apache set sender to earnie@users.sourceforge.net using -f Received: from d47-69-130-138.nap.wideopenwest.com (d47-69-130-138.nap.wideopenwest.com [69.47.138.130]) by mail.progw.org (Horde MIME library) with HTTP; Thu, 25 Oct 2007 17:01:36 -0400 Message-ID: <20071025170136.wm9bmc08m1pcgog8@mail.progw.org> X-Priority: 3 (Normal) Date: Thu, 25 Oct 2007 17:01:36 -0400 From: Earnie Boyd To: grischka References: <07a401c8173f$bd99a240$981a90d4@j4f3n1> In-Reply-To: <07a401c8173f$bd99a240$981a90d4@j4f3n1> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: 7bit User-Agent: Internet Messaging Program (IMP) H3 (4.0.4) X-Mailer: Horde/IMP 3.0.9 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Oct 2007 21:01:53 -0000 Quoting grischka : > Earnie Boyd wrote: > >> > make CVS as is : >> > 7.09 seconds >> > >> > make CVS with per command path search : >> > 2.81 seconds >> > >> > Surprised? >> >> No, you didn't reboot first. >> >> Earnie > > Is this serious or a joke? > If serious: No, both from cache. No disk activity involved. Yes, I mean that you didn't boot first. There are caches that you don't consider. Each test needs to be started from a freshly booted computer for any timed test involving paths. Earnie From MAILER-DAEMON Thu Oct 25 17:21:51 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IlA9G-0006tH-MN for mharc-make-w32@gnu.org; Thu, 25 Oct 2007 17:21:51 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Il3dL-0004r3-Bu for make-w32@gnu.org; Thu, 25 Oct 2007 10:24:27 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Il3dJ-0004qe-3B for make-w32@gnu.org; Thu, 25 Oct 2007 10:24:26 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Il3dI-0004qb-T1 for make-w32@gnu.org; Thu, 25 Oct 2007 10:24:24 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Il3dI-0007OR-79 for make-w32@gnu.org; Thu, 25 Oct 2007 10:24:24 -0400 Received: (qmail invoked by alias); 25 Oct 2007 14:24:21 -0000 Received: from dialin-212-144-026-152.pools.arcor-ip.net (EHLO j4f3n1) [212.144.26.152] by mail.gmx.net (mp016) with SMTP; 25 Oct 2007 16:24:21 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX18ONdgwuLUOAfVnWTQwWuPM029Xnr8w/YzKIshb6X TclisQSCgF9d4u Message-ID: <077a01c81712$a4651fc0$981a90d4@j4f3n1> From: "grischka" To: "Dave Korn" References: <002b01c813dd$c035a360$b80a90d4@j4f3n1><8eeef57f0710212156p521dc65dr380bd3648e7a73a@mail.gmail.com> <005701c814bc$8c3eeb40$d745fe91@j4f3n1> <01a201c81556$147b3a10$2e08a8c0@CAM.ARTIMI.COM> <018701c815ce$0b94b340$1244fe91@j4f3n1> <025801c81634$0e74df70$2e08a8c0@CAM.ARTIMI.COM> Date: Thu, 25 Oct 2007 16:22:44 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Thu, 25 Oct 2007 17:21:49 -0400 Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Oct 2007 14:24:27 -0000 > > From: "Dave Korn" > > > >> Ummm, that doesn't really sound like a well thought through plan > >> to me. > > > > That only means it can still happen. > > Yes, but it suggests something about /how/ it should happen: it should be > designed and spec'd before it is implemented. That's just elementary good > practice. Yeah, but how things *should* happen doesn't mean that this is how things *happen*. (-> elementary existing practice) > It's not like "adding a function" is such a complex change that > it's worth doing as a separate step before we have any idea what that function > is supposed to actually do. What the function is supposed to do is sufficiently clear from the name, and what it potentially could do is clear from its placement and the parameters that it takes. It's not a complex change, yes, but it's worth doing. > > Surprised? > > Why should I be? It's a blatant stitch-up. You haven't adequately > described the situation, you haven't told us what your code is doing > differently in any detail, so I don't see what I could base any expectation > *on*. The situation was described and we knew what we wanted to test. Shure, the result is unexpected, but that happens. My interpretation is simply that first we have already at least 2 path searches per command (grep "_fullpath"). It's difficult to say under what circumstances these are run now, but certainly they are unneccessary. Anyway, one more or less should really make no difference, so what really seems to count here is getting rid of the initial path search (grep "find_and_set_default_shell"). It is some crafted piece of code and must be really slooow, seen the results. Seen the test description, the conclusion is not so far away, no? http://lists.gnu.org/archive/html/make-w32/2007-10/msg00183.html --- grischka From MAILER-DAEMON Thu Oct 25 17:21:52 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IlA9H-0006tY-KF for mharc-make-w32@gnu.org; Thu, 25 Oct 2007 17:21:51 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Il8fk-0006AZ-NS for make-w32@gnu.org; Thu, 25 Oct 2007 15:47:16 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Il8fj-0006AL-Sn for make-w32@gnu.org; Thu, 25 Oct 2007 15:47:16 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Il8fj-0006AH-DQ for make-w32@gnu.org; Thu, 25 Oct 2007 15:47:15 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Il8fi-0002RN-MH for make-w32@gnu.org; Thu, 25 Oct 2007 15:47:15 -0400 Received: (qmail invoked by alias); 25 Oct 2007 19:47:13 -0000 Received: from dialin-212-144-026-008.pools.arcor-ip.net (EHLO j4f3n1) [212.144.26.8] by mail.gmx.net (mp024) with SMTP; 25 Oct 2007 21:47:13 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX1/SJ0pUVIbSK+rQ3vySan3G2oFk31DrerAVPNJDoc yLQi17jJKqIwPl Message-ID: <07a401c8173f$bd99a240$981a90d4@j4f3n1> From: "grischka" To: Date: Thu, 25 Oct 2007 21:45:25 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Thu, 25 Oct 2007 17:21:49 -0400 Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Oct 2007 19:47:17 -0000 Earnie Boyd wrote: > > make CVS as is : > > 7.09 seconds > > > > make CVS with per command path search : > > 2.81 seconds > > > > Surprised? > > No, you didn't reboot first. > > Earnie Is this serious or a joke? If serious: No, both from cache. No disk activity involved. If a joke, I'll think about it later. --- grischka From MAILER-DAEMON Fri Oct 26 03:46:07 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IlJtO-0000dY-P2 for mharc-make-w32@gnu.org; Fri, 26 Oct 2007 03:46:06 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IlJtN-0000aj-3w for make-w32@gnu.org; Fri, 26 Oct 2007 03:46:05 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IlJtK-0000Tu-62 for make-w32@gnu.org; Fri, 26 Oct 2007 03:46:04 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IlJtK-0000TF-1v for make-w32@gnu.org; Fri, 26 Oct 2007 03:46:02 -0400 Received: from py-out-1112.google.com ([64.233.166.183]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IlJtJ-0005ku-PB for make-w32@gnu.org; Fri, 26 Oct 2007 03:46:01 -0400 Received: by py-out-1112.google.com with SMTP id a73so1364271pye for ; Fri, 26 Oct 2007 00:45:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=RyVq9W7a3qD/y7PzABF2jyXbJGtNaFLIckl/6gwTGGk=; b=uJuv8Do8qCW6YOyhmxDoIpZSPWFMGb06xibmAnUb7/IYwPXzEj6J049HC9ttfjmiZLmyzCfKCe3J/oJbmg+jbYhiplBLQC3gE7qMsdcvVYSp1m05CB4SgI0I4CedgKJ14GmmL4+jJVya2bYftvl/+hoOFDSSplozqiMyZw0uH3s= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=rA5+4MlIHOLGhTonI2x0v9cA4LRdrIzYfy/F2ck6CM8Lcb8d/XbORazpHmRNKHM66BY8AGKNMuJ/FaU3/wNLsfdhJ9ALJJj1YJsEud42oB6mUbV4TUvEw+q6ACwavdo+ZyHuT61jI5Kfe/yrR18A5wiiIaYkz3vpRw4fZy7NtPU= Received: by 10.64.181.12 with SMTP id d12mr5893617qbf.1193384759396; Fri, 26 Oct 2007 00:45:59 -0700 (PDT) Received: by 10.65.139.3 with HTTP; Fri, 26 Oct 2007 00:45:59 -0700 (PDT) Message-ID: <8eeef57f0710260045s18fb5ff0mf68682252ffcbd50@mail.gmail.com> Date: Fri, 26 Oct 2007 15:45:59 +0800 From: "Yongwei Wu" To: "Earnie Boyd" In-Reply-To: <20071025170136.wm9bmc08m1pcgog8@mail.progw.org> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <07a401c8173f$bd99a240$981a90d4@j4f3n1> <20071025170136.wm9bmc08m1pcgog8@mail.progw.org> X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) Cc: grischka , make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Oct 2007 07:46:05 -0000 On 26/10/2007, Earnie Boyd wrote: > Quoting grischka : > > > Earnie Boyd wrote: > > > >> > make CVS as is : > >> > 7.09 seconds > >> > > >> > make CVS with per command path search : > >> > 2.81 seconds > >> > > >> > Surprised? > >> > >> No, you didn't reboot first. > >> > >> Earnie > > > > Is this serious or a joke? > > If serious: No, both from cache. No disk activity involved. > > Yes, I mean that you didn't boot first. There are caches that you > don't consider. Each test needs to be started from a freshly booted > computer for any timed test involving paths. However, the fully-cached results make sense too, since it is often the case with smaller projects. It would be interesting to see fresh-after-reboot results too, though I do not expect to see vastly different results. Best regards, Yongwei -- Wu Yongwei URL: http://wyw.dcweb.cn/ From MAILER-DAEMON Fri Oct 26 04:45:56 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IlKpI-0004AS-Ci for mharc-make-w32@gnu.org; Fri, 26 Oct 2007 04:45:56 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IlBbH-0003Sp-TQ for make-w32@gnu.org; Thu, 25 Oct 2007 18:54:52 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IlBbF-0003RY-HM for make-w32@gnu.org; Thu, 25 Oct 2007 18:54:51 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IlBbF-0003RH-9v for make-w32@gnu.org; Thu, 25 Oct 2007 18:54:49 -0400 Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1IlBbD-0007ky-6O for make-w32@gnu.org; Thu, 25 Oct 2007 18:54:49 -0400 Received: (qmail invoked by alias); 25 Oct 2007 22:54:12 -0000 Received: from dialin-212-144-026-086.pools.arcor-ip.net (EHLO j4f3n1) [212.144.26.86] by mail.gmx.net (mp027) with SMTP; 26 Oct 2007 00:54:12 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX18n+jkug3YnMst/boHktjvAtdTr/BQJtsIKJxzOFi PP8GDY5gbvyH2q Message-ID: <004d01c81759$e01a3040$561a90d4@j4f3n1> From: "grischka" To: "Earnie Boyd" References: <07a401c8173f$bd99a240$981a90d4@j4f3n1> <20071025170136.wm9bmc08m1pcgog8@mail.progw.org> Date: Fri, 26 Oct 2007 00:53:15 +0200 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_0044_01C8176A.97295620" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Fri, 26 Oct 2007 04:45:53 -0400 Cc: make-w32@gnu.org Subject: Re: Make on XP - shell selection? X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Oct 2007 22:54:52 -0000 This is a multi-part message in MIME format. ------=_NextPart_000_0044_01C8176A.97295620 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Earnie Boyd wrote: > Yes, I mean that you didn't boot first. There are caches that you > don't consider. Each test needs to be started from a freshly booted > computer for any timed test involving paths. > > Earnie Umm, might depend what scenario one wants to test. Normally, I don't reboot my computer each time to compile just a few new lines. But okay. Here we go: - Compile gmake from current cvs source - Reboot - Wait one minute. - 3 mouseclicks to make test project (up-to-date) 9.07 sec - 1 mouseclick to make one more time 6.97 sec - Apply "path-search-per-command" patch to gmake source and recompile - Reboot - Wait one minute. - 3 mouseclicks to make test project (up-to-date) 4.94 sec - 1 mouseclick to make one more time 2.69 sec Thats all I can do. Everything to test yourself attached. Use on your own risk. Enjoy. --- grischka ------=_NextPart_000_0044_01C8176A.97295620 Content-Type: application/octet-stream; name="make-shell1.zip" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="make-shell1.zip" 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 ------=_NextPart_000_0044_01C8176A.97295620-- From MAILER-DAEMON Sat Oct 27 11:48:30 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Ilntm-0006nF-GD for mharc-make-w32@gnu.org; Sat, 27 Oct 2007 11:48:30 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Ilntk-0006lQ-Np for make-w32@gnu.org; Sat, 27 Oct 2007 11:48:28 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Ilnti-0006iN-8C for make-w32@gnu.org; Sat, 27 Oct 2007 11:48:27 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ilnti-0006iK-39 for make-w32@gnu.org; Sat, 27 Oct 2007 11:48:26 -0400 Received: from nf-out-0910.google.com ([64.233.182.189]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Ilnth-0004Jy-Iz for make-w32@gnu.org; Sat, 27 Oct 2007 11:48:25 -0400 Received: by nf-out-0910.google.com with SMTP id f5so1099207nfh for ; Sat, 27 Oct 2007 08:48:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:mime-version:content-type; bh=reOTBan/GxkFuMazlNg7qPcurtuGCNitkbOMCE0tpDA=; b=cbAHthtpf95lzF6PuirL/JKbOObPN38EDk/C3pPxWKw6clrnVvsppAxw5uJFNwNVVV0bpSCRaTh6jwtG9uqN7AGHEKs0r7iN3969TeKkZeoYZImc06nIca9Q8Fhwq5OGNmg5Ah2SdbIztg0IbZnvufzWze9ZgLvjktqiu2svuKk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:mime-version:content-type; b=O4VFOWaJKJK/kKS6XwZYnZZYX+2Q7Gfm4eLZf3gKHxNuBYIaj43dVp/f+/rBQlBCAp+TznTW9hhNQ5J3B8WAD46N1Xh7nQQV5vzp7QRg4xTU+j7+Us5GzIc+9mWpPSn1gNoUJ/OVrNWDSi2R+VtyZrRJ+2a023gxPOTuWO39DBw= Received: by 10.86.60.7 with SMTP id i7mr3188266fga.1193500104179; Sat, 27 Oct 2007 08:48:24 -0700 (PDT) Received: by 10.86.73.5 with HTTP; Sat, 27 Oct 2007 08:48:24 -0700 (PDT) Message-ID: Date: Sat, 27 Oct 2007 22:48:24 +0700 From: "Nguyen Thai Ngoc Duy" To: make-w32@gnu.org MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_8172_2793000.1193500104169" X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) Subject: Help on Windows pipe processing X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 27 Oct 2007 15:48:28 -0000 ------=_Part_8172_2793000.1193500104169 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline Hi, Let me introduce a bit. I'm working on porting busybox's ash shell to Windows as part of an attempt to bring Git to Windows without MSYS or Cygwin dependency. I knew from Git mailing list you guys were Windows FLOSS experts. So please help this poor FLOSS developer :-) I concern about Windows pipe behavior. I make a pipe to connect two programs together. The first program feeds the second one. Things worked fine until I found that if the second one dies soon, the first one won't notice and keep feeding the pipe until it blocks itself. I attach three programs to demonstrate that. a.c is the feeder. b.c is the consumer (it actually does not consume anything, just dies out). c.c is the one that connects a and b together. You run c.exe, then look at file "o" or process list. In a perfect world, a.exe should exit and we should get 999 in "o". Did I make anything wrong? -- Duy ------=_Part_8172_2793000.1193500104169 Content-Type: text/x-csrc; name=a.c Content-Transfer-Encoding: base64 X-Attachment-Id: f_f8ab1uuj Content-Disposition: attachment; filename=a.c I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbWFpbihpbnQgYXJnYyxjaGFyICoqYXJndikKewoJaW50 IGk7CglGSUxFICpmcCA9IGZvcGVuKCJvIiwgInciKTsKCWZwcmludGYoZnAsICIlMDh4ICUwOHhc biIsIChpbnQpX2dldF9vc2ZoYW5kbGUoMCksKGludClfZ2V0X29zZmhhbmRsZSgxKSk7Cglmb3Ig KGkgPSAwO2kgPCAxMDAwO2kgKyspIHsKCQlwcmludGYoIiUwMTBkXG4iLGkpOwoJCWZwcmludGYo ZnAsIiVkXG4iLGkpOwoJCWZmbHVzaChmcCk7Cgl9Cn0K ------=_Part_8172_2793000.1193500104169 Content-Type: text/x-csrc; name=b.c Content-Transfer-Encoding: base64 X-Attachment-Id: f_f8ab24mb Content-Disposition: attachment; filename=b.c I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbWFpbihpbnQgYXJnYyxjaGFyKiphcmd2KQp7CglGSUxF ICpmcCA9IGZvcGVuKCJvMiIsInciKTsKCWZwcmludGYoZnAsICIlMDh4ICUwOHhcbiIsIChpbnQp X2dldF9vc2ZoYW5kbGUoMCksKGludClfZ2V0X29zZmhhbmRsZSgxKSk7CgljbG9zZSgwKTsKfQo= ------=_Part_8172_2793000.1193500104169 Content-Type: text/x-csrc; name=c.c Content-Transfer-Encoding: base64 X-Attachment-Id: f_f8ab28oz Content-Disposition: attachment; filename=c.c I2luY2x1ZGUgPHdpbmRvd3MuaD4KI2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxwcm9jZXNz Lmg+CgppbnQgbWFpbihpbnQgYXJnYyxjaGFyICoqYXJndikKewoJaW50IGZkOwoJaW50IHBpcFsy XTsKCV9waXBlKHBpcCwgMCwgMCk7CgoJZmQgPSBkdXAoMSk7CglkdXAyKHBpcFsxXSwgMSk7Cglz cGF3bmwoX1BfTk9XQUlULCAiYS5leGUiLCAiYS5leGUiLCBOVUxMKTsKCWNsb3NlKDEpOwoJZHVw MihmZCwgMSk7CgljbG9zZShmZCk7CgoJZmQgPSBkdXAoMCk7CglkdXAyKHBpcFswXSwgMCk7Cglz cGF3bmwoX1BfTk9XQUlULCAiYi5leGUiLCAiYi5leGUiLCBOVUxMKTsKCWNsb3NlKDApOwoJZHVw MihmZCwgMCk7CgljbG9zZShmZCk7Cn0K ------=_Part_8172_2793000.1193500104169-- From MAILER-DAEMON Sat Oct 27 18:38:46 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1IluIo-0007ko-AC for mharc-make-w32@gnu.org; Sat, 27 Oct 2007 18:38:46 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IluIm-0007iT-PY for make-w32@gnu.org; Sat, 27 Oct 2007 18:38:44 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IluIk-0007eR-6e for make-w32@gnu.org; Sat, 27 Oct 2007 18:38:43 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IluIk-0007eK-2z for make-w32@gnu.org; Sat, 27 Oct 2007 18:38:42 -0400 Received: from romy.inter.net.il ([213.8.233.24]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IluIj-0000d5-Rf for make-w32@gnu.org; Sat, 27 Oct 2007 18:38:42 -0400 Received: from HOME-C4E4A596F7 (IGLD-83-130-246-94.inter.net.il [83.130.246.94]) by romy.inter.net.il (MOS 3.7.3-GA) with ESMTP id JFT48327 (AUTH halo1); Sun, 28 Oct 2007 00:38:25 +0200 (IST) Date: Sun, 28 Oct 2007 00:38:37 +0200 Message-Id: From: Eli Zaretskii To: "Nguyen Thai Ngoc Duy" In-reply-to: (pclouds@gmail.com) References: X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.7-5.2 (or MacOS X 10.2-10.4) (2) Cc: make-w32@gnu.org Subject: Re: Help on Windows pipe processing X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Eli Zaretskii List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 27 Oct 2007 22:38:45 -0000 > Date: Sat, 27 Oct 2007 22:48:24 +0700 > From: "Nguyen Thai Ngoc Duy" > > Did I make anything wrong? You didn't use the O_NOINHERIT flag in the _pipe call, and I think you should close the original descriptor _before_ you spawn the child, not after. See the examples at http://msdn2.microsoft.com/en-us/library/edze9h7e(VS.80).aspx Btw, are you sure that using the default I/O mode in the pipe is a good idea? Wouldn't O_BINARY be better? HTH From MAILER-DAEMON Sun Oct 28 02:28:25 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Im1dI-0007uO-QH for mharc-make-w32@gnu.org; Sun, 28 Oct 2007 02:28:24 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Im1dH-0007u6-9x for make-w32@gnu.org; Sun, 28 Oct 2007 02:28:23 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Im1dG-0007tu-Pe for make-w32@gnu.org; Sun, 28 Oct 2007 02:28:22 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Im1dG-0007tr-Az for make-w32@gnu.org; Sun, 28 Oct 2007 02:28:22 -0400 Received: from fk-out-0910.google.com ([209.85.128.184]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Im1dG-00009u-5t for make-w32@gnu.org; Sun, 28 Oct 2007 02:28:22 -0400 Received: by fk-out-0910.google.com with SMTP id 19so1598809fkr for ; Sat, 27 Oct 2007 23:28:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=T4H9gtpqc7DwKVKqGUV1Q9qVyvIe/JvFQTLfRu8cP4o=; b=p53aWKTtsmcnZfVYbudn7whE61NUyGwtwmFmWLF6NUDKZDRA0ER9DhRW1BvlrHeJ6k1j7hmMqprb9pGnvBMilSxBpI9JE3rk0bv6jqNO41vleWVoEFHSBqIOOU9SMSxoGfmv0ykPNG8SucrYgn+XAB/LaiZURqxvAKzJJaOtqoU= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=VqQR80FhX1g4nRyUmpcALQ/1PL1Z+vqTkzVSRRRnNJQBZLsY+hvRw7AIV7goaVEHn2grzAId6UqZpemKS5IUYxGbYHejG/L6WQ6tqZPATU5masCrjGPfba2DQW7KJv//H3bYPyc7DLevOiLIunm2Xv4/TPSuDP0tLKJzqrm82Jo= Received: by 10.86.78.4 with SMTP id a4mr3691705fgb.1193552901147; Sat, 27 Oct 2007 23:28:21 -0700 (PDT) Received: by 10.86.73.5 with HTTP; Sat, 27 Oct 2007 23:28:21 -0700 (PDT) Message-ID: Date: Sun, 28 Oct 2007 13:28:21 +0700 From: "Nguyen Thai Ngoc Duy" To: "Eli Zaretskii" In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 2) Cc: make-w32@gnu.org Subject: Re: Help on Windows pipe processing X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Oct 2007 06:28:23 -0000 On 10/28/07, Eli Zaretskii wrote: > > Date: Sat, 27 Oct 2007 22:48:24 +0700 > > From: "Nguyen Thai Ngoc Duy" > > > > Did I make anything wrong? > > You didn't use the O_NOINHERIT flag in the _pipe call, and I think you > should close the original descriptor _before_ you spawn the child, not > after. See the examples at > > http://msdn2.microsoft.com/en-us/library/edze9h7e(VS.80).aspx > Thank you! It works well with O_NOINHERIT. I recall I used to have it but dropped for some reasons :-/ > Btw, are you sure that using the default I/O mode in the pipe is a > good idea? Wouldn't O_BINARY be better? Yes. I set _CRT_fmode to _O_BINARY, so _O_BINARY should be default for all operations? (It's in ash source, not in the example sources) > HTH > -- Duy From MAILER-DAEMON Tue Oct 30 02:30:20 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1ImkcF-00034B-TX for mharc-make-w32@gnu.org; Tue, 30 Oct 2007 02:30:19 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1ImkcD-00032O-N6 for make-w32@gnu.org; Tue, 30 Oct 2007 02:30:17 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1ImkcB-0002zP-Oc for make-w32@gnu.org; Tue, 30 Oct 2007 02:30:15 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Imkc9-0002yw-KB for make-w32@gnu.org; Tue, 30 Oct 2007 02:30:13 -0400 Received: from vsnlchnsym02.vsnlxchange.com ([59.163.96.4]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Imkc8-0006BG-8D for make-w32@gnu.org; Tue, 30 Oct 2007 02:30:13 -0400 Received: from vsnlchnsym02.vsnlxchange.com (unknown [127.0.0.1]) by vsnlchnsym02.vsnlxchange.com (Symantec Mail Security) with ESMTP id AA93352009B for ; Tue, 30 Oct 2007 12:00:08 +0530 (IST) X-AuditID: 0a480a09-aa33abb000007c77-62-4726cf70935a From: "gkishan" To: Date: Tue, 30 Oct 2007 12:02:12 +0530 Message-ID: <000901c81abe$9bd64b40$59053c0a@telxsi.com> MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_NextPart_000_000A_01C81AEC.B58E8740" X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook CWS, Build 9.0.2416 (9.0.2911.0) importance: Normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138 X-OriginalArrivalTime: 30 Oct 2007 06:30:08.0311 (UTC) FILETIME=[50E14C70:01C81ABE] X-Brightmail-Tracker: AAAAAA== X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Subject: Reg: fork_helper: ResumeThread failed, rc = 2 X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: gkishan@tataelxsi.co.in List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Oct 2007 06:30:18 -0000 This is a multi-part message in MIME format. ------=_NextPart_000_000A_01C81AEC.B58E8740 Content-Type: multipart/alternative; boundary="----=_NextPart_001_000B_01C81AEC.B58E8740" ------=_NextPart_001_000B_01C81AEC.B58E8740 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Hi All, I am facing this problem while using gmake. I need some help to resolve this problem. Thanks & Regards, Kishan (7169). Product Design and Services Bangalore-560 048 (India) Tel: +91 80 2297 9123 Mob: +91 97403 66558 E-mail: gkishan@tataelxsi.co.in The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments contained in it. Contact your Administrator for further information. ------=_NextPart_001_000B_01C81AEC.B58E8740 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi All,
I am facing this problem while using gmake.
I need some help to resolve this problem.
 

 Thanks & Regards,

 Kishan (7169).
 Product Design= and Services

 Bangalore-560 048 (India)=
 
Tel: +91 80 2297 9123
 
Mob: +91 97403 66558
 
E-mail: gkishan@tataelxsi.co.in

 

The information contained in this electronic message and= any attachments to this message are intended for the exclusive use of the a= ddressee(s) and may contain proprietary, confidential or privileged informat= ion. If you are not the intended recipient, you should not disseminate, dist= ribute or copy this e-mail. Please notify the sender immediately and destroy= all copies of this message and any attachments contained in it.=0A= =0A= Contact your Administrator for further information.

------=_NextPart_001_000B_01C81AEC.B58E8740-- ------=_NextPart_000_000A_01C81AEC.B58E8740 Content-Type: image/jpeg; name="image001.jpg" Content-Transfer-Encoding: base64 Content-ID: <161442906@30102007-0af1> /9j/4AAQSkZJRgABAQEAYABgAAD/7QWiUGhvdG9zaG9wIDMuMAA4QklNBCUAAAAAABAAAAAAAAAA AAAAAAAAAAAAOEJJTQPtAAAAAAAQAGAAAAABAAEAYAAAAAEAAThCSU0EJgAAAAAADgAAAAAAAAAA AAA/gAAAOEJJTQQNAAAAAAAEAAAAHjhCSU0EGQAAAAAABAAAAB44QklNA/MAAAAAAAkAAAAAAAAA AAEAOEJJTQQKAAAAAAABAAA4QklNJxAAAAAAAAoAAQAAAAAAAAABOEJJTQP1AAAAAABIAC9mZgAB AGxmZgAGAAAAAAABAC9mZgABAKGZmgAGAAAAAAABADIAAAABAFoAAAAGAAAAAAABADUAAAABAC0A AAAGAAAAAAABOEJJTQP4AAAAAABwAAD/////////////////////////////A+gAAAAA//////// /////////////////////wPoAAAAAP////////////////////////////8D6AAAAAD///////// ////////////////////A+gAADhCSU0ECAAAAAAAEAAAAAEAAAJAAAACQAAAAAA4QklNBB4AAAAA AAQAAAAAOEJJTQQaAAAAAANJAAAABgAAAAAAAAAAAAAAeAAAAREAAAAKAFQAYQB0AGEAXwBlAGwA eABzAGkAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAREAAAB4AAAAAAAAAAAAAAAA AAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAEAAAAAAABudWxsAAAAAgAAAAZib3VuZHNPYmpj AAAAAQAAAAAAAFJjdDEAAAAEAAAAAFRvcCBsb25nAAAAAAAAAABMZWZ0bG9uZwAAAAAAAAAAQnRv bWxvbmcAAAB4AAAAAFJnaHRsb25nAAABEQAAAAZzbGljZXNWbExzAAAAAU9iamMAAAABAAAAAAAF c2xpY2UAAAASAAAAB3NsaWNlSURsb25nAAAAAAAAAAdncm91cElEbG9uZwAAAAAAAAAGb3JpZ2lu ZW51bQAAAAxFU2xpY2VPcmlnaW4AAAANYXV0b0dlbmVyYXRlZAAAAABUeXBlZW51bQAAAApFU2xp Y2VUeXBlAAAAAEltZyAAAAAGYm91bmRzT2JqYwAAAAEAAAAAAABSY3QxAAAABAAAAABUb3AgbG9u ZwAAAAAAAAAATGVmdGxvbmcAAAAAAAAAAEJ0b21sb25nAAAAeAAAAABSZ2h0bG9uZwAAAREAAAAD dXJsVEVYVAAAAAEAAAAAAABudWxsVEVYVAAAAAEAAAAAAABNc2dlVEVYVAAAAAEAAAAAAAZhbHRU YWdURVhUAAAAAQAAAAAADmNlbGxUZXh0SXNIVE1MYm9vbAEAAAAIY2VsbFRleHRURVhUAAAAAQAA AAAACWhvcnpBbGlnbmVudW0AAAAPRVNsaWNlSG9yekFsaWduAAAAB2RlZmF1bHQAAAAJdmVydEFs aWduZW51bQAAAA9FU2xpY2VWZXJ0QWxpZ24AAAAHZGVmYXVsdAAAAAtiZ0NvbG9yVHlwZWVudW0A AAARRVNsaWNlQkdDb2xvclR5cGUAAAAATm9uZQAAAAl0b3BPdXRzZXRsb25nAAAAAAAAAApsZWZ0 T3V0c2V0bG9uZwAAAAAAAAAMYm90dG9tT3V0c2V0bG9uZwAAAAAAAAALcmlnaHRPdXRzZXRsb25n AAAAAAA4QklNBBEAAAAAAAEBADhCSU0EFAAAAAAABAAAAAE4QklNBCEAAAAAAFUAAAABAQAAAA8A QQBkAG8AYgBlACAAUABoAG8AdABvAHMAaABvAHAAAAATAEEAZABvAGIAZQAgAFAAaABvAHQAbwBz AGgAbwBwACAANwAuADAAAAABADhCSU0EBgAAAAAABwAIAAEAAQEA/+EAzEV4aWYAAElJKgAIAAAA BwASAQMAAQAAAAEAAAAaAQUAAQAAAGIAAAAbAQUAAQAAAGoAAAAoAQMAAQAAAAIAAAAxAQIAFAAA AHIAAAAyAQIAFAAAAIYAAABphwQAAQAAAJoAAAAAAAAAYAAAAAEAAABgAAAAAQAAAEFkb2JlIFBo b3Rvc2hvcCA3LjAAMjAwNzowNjowMyAxMzozOTowMAADAAGgAwABAAAA/////wKgBAABAAAAEQEA AAOgBAABAAAAeAAAAAAAAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwg JC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIy MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAA/ALYDASIAAhEB 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 ------=_NextPart_000_000A_01C81AEC.B58E8740-- From MAILER-DAEMON Tue Oct 30 07:10:25 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1ImozJ-0002YM-5l for mharc-make-w32@gnu.org; Tue, 30 Oct 2007 07:10:25 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1ImozH-0002WN-6a for make-w32@gnu.org; Tue, 30 Oct 2007 07:10:23 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1ImozG-0002Vv-Kk for make-w32@gnu.org; Tue, 30 Oct 2007 07:10:22 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ImozG-0002Vs-HN for make-w32@gnu.org; Tue, 30 Oct 2007 07:10:22 -0400 Received: from vsnlchnsym01.vsnlxchange.com ([59.163.96.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1ImozG-0000gp-2i for make-w32@gnu.org; Tue, 30 Oct 2007 07:10:22 -0400 Received: from vsnlchnsym01.vsnlxchange.com (unknown [127.0.0.1]) by vsnlchnsym01.vsnlxchange.com (Symantec Mail Security) with ESMTP id DE4FF5200A1 for ; Tue, 30 Oct 2007 16:40:17 +0530 (IST) X-AuditID: 0a480a07-abefabb00000799f-2d-4727111989bc From: "gkishan" To: Date: Tue, 30 Oct 2007 16:42:22 +0530 Message-ID: <000401c81ae5$bf041d50$59053c0a@telxsi.com> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_000_0005_01C81B13.D8BC5950" X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook CWS, Build 9.0.2416 (9.0.2911.0) Importance: Normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3138 X-OriginalArrivalTime: 30 Oct 2007 11:10:17.0590 (UTC) FILETIME=[73FDB960:01C81AE5] X-Brightmail-Tracker: AAAAAA== X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) Subject: Reg: fork_helper: ResumeThread failed, rc = 2 X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: gkishan@tataelxsi.co.in List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Oct 2007 11:10:23 -0000 This is a multi-part message in MIME format. ------=_NextPart_000_0005_01C81B13.D8BC5950 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Hi all, I am facing the following error while compiling my project using gmake. fork_helper: ResumeThread failed, rc = 2 fork_helper: ResumeThread failed, rc = 2 fork_helper: ResumeThread failed, rc = 2 fork_helper: ResumeThread failed, rc = 2 gcco: vfork: No more processes gmake: *** [sfonts.rdo] Error 1 the version of gmake is GNU Make version 3.79.1, by Richard Stallman and Roland McGrath. Built for Windows32 Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. My computer configuration is dell make p4 dual core processor (1.66Ghz & 512MB RAM) Can anyone help me in this regard. Thanks & Regards, Kishan (Tata Elxsi) The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments contained in it. Contact your Administrator for further information. ------=_NextPart_000_0005_01C81B13.D8BC5950 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Hi all,
 
I am facing the following error while compiling my project using gmake.
 
fork_helper: ResumeThread failed, rc =3D 2
fork_helper: ResumeThread failed, rc =3D 2
fork_helper: ResumeThread= failed, rc =3D 2
fork_helper: ResumeThread failed, rc =3D 2
gcco: vfor= k: No more processes
gmake: *** [sfonts.rdo] Error 1
 
the version of gmake is
 
GNU Make version 3.79.1, by Richard Stallman and Roland McGrath.
Built for Windows32
Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,= 2000
        Free Software Foundation,= Inc.
This is free software; see the source for copying conditions.
The= re is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR= PURPOSE.
 
My computer configuration is dell make p4 dual core processor (1.66Ghz & 51= 2MB RAM)
 
Can anyone help me in this regard.

 Thanks & Regards,

 Kishan 

(Tata Elxsi)
 

The info= rmation contained in this electronic message and any attachments to this mes= sage are intended for the exclusive use of the addressee(s) and may contain= proprietary, confidential or privileged information. If you are not the int= ended recipient, you should not disseminate, distribute or copy this e-mail.= Please notify the sender immediately and destroy all copies of this message= and any attachments contained in it.=0A= =0A= Contact your Administrator for further information.

------=_NextPart_000_0005_01C81B13.D8BC5950-- From MAILER-DAEMON Tue Oct 30 07:15:44 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Imp4S-0000KE-Mf for mharc-make-w32@gnu.org; Tue, 30 Oct 2007 07:15:44 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Imp4R-0000Jg-JN for make-w32@gnu.org; Tue, 30 Oct 2007 07:15:43 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Imp4Q-0000IQ-1E for make-w32@gnu.org; Tue, 30 Oct 2007 07:15:43 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Imp4P-0000IL-Qv for make-w32@gnu.org; Tue, 30 Oct 2007 07:15:41 -0400 Received: from 2.139.39-62.rev.gaoland.net ([62.39.139.2] helo=kualalumpur.lrde.epita.fr) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Imp4P-0002bo-Q3 for make-w32@gnu.org; Tue, 30 Oct 2007 07:15:42 -0400 Received: from tsunaxbook.lrde.epita.fr ([192.168.101.162]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1Imp4M-0004Lq-DI; Tue, 30 Oct 2007 12:15:38 +0100 In-Reply-To: <000401c81ae5$bf041d50$59053c0a@telxsi.com> References: <000401c81ae5$bf041d50$59053c0a@telxsi.com> Mime-Version: 1.0 (Apple Message framework v752.3) X-Priority: 3 (Normal) Content-Type: multipart/signed; protocol="application/pgp-signature"; micalg=pgp-sha1; boundary="Apple-Mail-13-687368575" Message-Id: <56F5A0FD-0907-4392-9FFC-F7082180C667@lrde.epita.fr> Content-Transfer-Encoding: 7bit From: Benoit SIGOURE Date: Tue, 30 Oct 2007 12:15:33 +0100 To: gkishan@tataelxsi.co.in X-Pgp-Agent: GPGMail 1.1.2 (Tiger) X-Mailer: Apple Mail (2.752.3) X-detected-kernel: by monty-python.gnu.org: Linux 2.6 (newer, 3) Cc: make-w32@gnu.org Subject: Re: Reg: fork_helper: ResumeThread failed, rc = 2 X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Oct 2007 11:15:43 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --Apple-Mail-13-687368575 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed On Oct 30, 2007, at 12:12 PM, gkishan wrote: > Hi all, Hi, > > I am facing the following error while compiling my project using > gmake. > > fork_helper: ResumeThread failed, rc = 2 > fork_helper: ResumeThread failed, rc = 2 > fork_helper: ResumeThread failed, rc = 2 > fork_helper: ResumeThread failed, rc = 2 > gcco: vfork: No more processes > gmake: *** [sfonts.rdo] Error 1 > > the version of gmake is > > GNU Make version 3.79.1, by Richard Stallman and Roland McGrath. Could you try again with the latest version of GNU Make? http://ftp.gnu.org/pub/gnu/make/make-3.81.tar.gz > Built for Windows32 > Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000 > Free Software Foundation, Inc. > This is free software; see the source for copying conditions. > There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A > PARTICULAR PURPOSE. > > My computer configuration is dell make p4 dual core processor > (1.66Ghz & 512MB RAM) Cheers, -- Benoit Sigoure aka Tsuna EPITA Research and Development Laboratory --Apple-Mail-13-687368575 content-type: application/pgp-signature; x-mac-type=70674453; name=PGP.sig content-description: This is a digitally signed message part content-disposition: inline; filename=PGP.sig content-transfer-encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (Darwin) iD8DBQFHJxJVwwE67wC8PUkRAkGxAJ44l23wG6Vit+EX3jKAULoBhYIzaACggOso geGdtPDXXpU2aW+XEqbj2YM= =oYMl -----END PGP SIGNATURE----- --Apple-Mail-13-687368575-- From MAILER-DAEMON Tue Oct 30 07:52:11 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Impdj-0002Tg-7r for mharc-make-w32@gnu.org; Tue, 30 Oct 2007 07:52:11 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Impdh-0002Rw-D1 for make-w32@gnu.org; Tue, 30 Oct 2007 07:52:09 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Impde-0002Ou-Qo for make-w32@gnu.org; Tue, 30 Oct 2007 07:52:08 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Impde-0002OZ-6S for make-w32@gnu.org; Tue, 30 Oct 2007 07:52:06 -0400 Received: from mail.artimi.com ([194.72.81.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Impde-00050s-A9 for make-w32@gnu.org; Tue, 30 Oct 2007 07:52:06 -0400 Received: from rainbow ([192.168.8.46] RDNS failed) by mail.artimi.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 30 Oct 2007 11:52:00 +0000 From: "Dave Korn" To: , References: <000401c81ae5$bf041d50$59053c0a@telxsi.com> Date: Tue, 30 Oct 2007 11:51:58 -0000 Message-ID: <011e01c81aeb$481bd740$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <000401c81ae5$bf041d50$59053c0a@telxsi.com> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198 Thread-Index: Acga5XyUiynigW6aR1OqijjtYw3SzAABYm+g X-OriginalArrivalTime: 30 Oct 2007 11:52:00.0871 (UTC) FILETIME=[48101770:01C81AEB] X-detected-kernel: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ Cc: Subject: RE: fork_helper: ResumeThread failed, rc = 2 X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Oct 2007 11:52:09 -0000 On 30 October 2007 11:12, gkishan wrote: > Hi all, > > I am facing the following error while compiling my project using gmake. > > fork_helper: ResumeThread failed, rc = 2 > fork_helper: ResumeThread failed, rc = 2 > fork_helper: ResumeThread failed, rc = 2 > fork_helper: ResumeThread failed, rc = 2 I believe this implies that you're running an old version of cygwin. Probably you're using some embedded toolchain that supplies cygwin-based gcc/gdb/binutils? If so, please run cygcheck -s -v -r > cygcheck.out and attach the generated file "cygcheck.out" with your next post to the list; that will let us see if there are problems in your cygwin configuration. cheers, DaveK -- Can't think of a witty .sigline today.... From MAILER-DAEMON Tue Oct 30 08:25:27 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Imq9v-0001bX-Ct for mharc-make-w32@gnu.org; Tue, 30 Oct 2007 08:25:27 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Imq9t-0001ai-Mk for make-w32@gnu.org; Tue, 30 Oct 2007 08:25:25 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Imq9t-0001aV-7j for make-w32@gnu.org; Tue, 30 Oct 2007 08:25:25 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Imq9t-0001aS-1P for make-w32@gnu.org; Tue, 30 Oct 2007 08:25:25 -0400 Received: from mail.artimi.com ([194.72.81.2]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Imq9s-0006Qb-Kc for make-w32@gnu.org; Tue, 30 Oct 2007 08:25:24 -0400 Received: from rainbow ([192.168.8.46]) by mail.artimi.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 30 Oct 2007 12:25:23 +0000 From: "Dave Korn" To: , References: <011e01c81aeb$481bd740$2e08a8c0@CAM.ARTIMI.COM> <000b01c81aef$50d918d0$59053c0a@telxsi.com> Date: Tue, 30 Oct 2007 12:25:23 -0000 Message-ID: <012201c81aef$f1badb80$2e08a8c0@CAM.ARTIMI.COM> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <000b01c81aef$50d918d0$59053c0a@telxsi.com> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198 Thread-Index: Acga7wfGaC3N1q/xSBOHox3fXMUsMQAAFi/w X-OriginalArrivalTime: 30 Oct 2007 12:25:23.0422 (UTC) FILETIME=[F1AD1FE0:01C81AEF] X-detected-kernel: by monty-python.gnu.org: Windows 2000 SP4, XP SP1+ Cc: Subject: RE: fork_helper: ResumeThread failed, rc = 2 X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Oct 2007 12:25:25 -0000 On 30 October 2007 12:21, gkishan wrote: > Hi, > Thanks for the reply but i am running on Win-xp not linux environment. Yes, I understand; cygwin is a toolkit that provides a linux-like environment on windows. The message about "fork_helper" is an error from the cygwin DLL which contains the runtime support. > What should i do to for the windows-xp sp2 environment. Exactly what I said: > please run > > cygcheck -s -v -r > cygcheck.out > > and attach the generated file "cygcheck.out" with your next post to the > list. cheers, DaveK -- Can't think of a witty .sigline today.... From MAILER-DAEMON Tue Oct 30 08:41:22 2007 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1ImqPJ-0002jw-PT for mharc-make-w32@gnu.org; Tue, 30 Oct 2007 08:41:21 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1ImqPG-0002fw-EH for make-w32@gnu.org; Tue, 30 Oct 2007 08:41:18 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1ImqPC-0002ca-Lv for make-w32@gnu.org; Tue, 30 Oct 2007 08:41:17 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ImqPC-0002bC-Dy for make-w32@gnu.org; Tue, 30 Oct 2007 08:41:14 -0400 Received: from smtp02.lnh.mail.rcn.net ([207.172.157.102]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1ImqPA-0002ka-Ko for make-w32@gnu.org; Tue, 30 Oct 2007 08:41:12 -0400 Received: from mr02.lnh.mail.rcn.net ([207.172.157.22]) by smtp02.lnh.mail.rcn.net with ESMTP; 30 Oct 2007 08:41:11 -0400 Received: from smtp01.lnh.mail.rcn.net (smtp01.lnh.mail.rcn.net [207.172.4.11]) by mr02.lnh.mail.rcn.net (MOS 3.8.3-GA) with ESMTP id NYQ86293; Tue, 30 Oct 2007 08:41:11 -0400 (EDT) Received: from 65-78-30-67.c3-0.lex-ubr3.sbo-lex.ma.cable.rcn.com (HELO homebase.localnet) ([65.78.30.67]) by smtp01.lnh.mail.rcn.net with ESMTP; 30 Oct 2007 07:41:09 -0500 Received: from psmith by homebase.localnet with local (Exim 4.67) (envelope-from ) id 1ImqP3-0000TL-AO; Tue, 30 Oct 2007 08:41:05 -0400 From: Paul Smith To: gkishan@tataelxsi.co.in In-Reply-To: <000401c81ae5$bf041d50$59053c0a@telxsi.com> References: <000401c81ae5$bf041d50$59053c0a@telxsi.com> Content-Type: text/plain Content-Transfer-Encoding: 7bit Organization: GNU's Not UNIX! Date: Tue, 30 Oct 2007 08:41:04 -0400 Message-Id: <1193748064.5412.83.camel@homebase.localnet> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 X-Junkmail-Status: score=10/50, host=mr02.lnh.mail.rcn.net X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A090206.472725A1.010C,ss=1,fgs=0, ip=207.172.4.11, so=2006-12-09 10:45:40, dmn=5.4.3/2007-09-06 X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. Cc: make-w32@gnu.org Subject: Re: Reg: fork_helper: ResumeThread failed, rc = 2 X-BeenThere: make-w32@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: psmith@gnu.org List-Id: Discussion of Windows-specific issues with GNU make List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Oct 2007 12:41:19 -0000 On Tue, 2007-10-30 at 16:42 +0530, gkishan wrote: > fork_helper: ResumeThread failed, rc = 2 > fork_helper: ResumeThread failed, rc = 2 > fork_helper: ResumeThread failed, rc = 2 > fork_helper: ResumeThread failed, rc = 2 > gcco: vfork: No more processes > gmake: *** [sfonts.rdo] Error 1 Just to be clear, it's not GNU make that's failing here. Your makefile is invoking the command "gcco" (it looks like) and that command is what's printing this error message. You might have better luck asking about this on a mailing list or support group dedicated to this program rather than GNU make. Or, as others have suggested, on the list for Cygwin users. -- ------------------------------------------------------------------------------- Paul D. Smith Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.us "Please remain calm...I may be mad, but I am a professional." --Mad Scientist