From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 4294381DD7 for ; Fri, 11 Nov 2016 03:24:16 -0800 (PST) Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id B82075455D; Fri, 11 Nov 2016 11:24:19 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-116-102.phx2.redhat.com [10.3.116.102]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id uABBOI7J001967; Fri, 11 Nov 2016 06:24:18 -0500 To: Evan Lloyd , "edk2-devel (edk2-devel@lists.01.org)" References: Cc: Leif Lindholm , "liming.gao@intel.com" From: Laszlo Ersek Message-ID: <8f47b193-8855-8a0c-5e97-9eb9373d6d66@redhat.com> Date: Fri, 11 Nov 2016 12:24:17 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: X-Scanned-By: MIMEDefang 2.68 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]); Fri, 11 Nov 2016 11:24:19 +0000 (UTC) Subject: Re: File mode problem on Github edk2-BaseTools-win32 X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Nov 2016 11:24:16 -0000 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit On 11/11/16 12:05, Evan Lloyd wrote: > There is a minor, but annoying, problem with file modes on the Github edk2-BaseTools-win32 repository. > Git maintains a limited internal record of the Unix style file modes. > edk2-BaseTools-win32 currently causes Git to set the file's modes to 660. > So, after a checkout or pull of master, the builds fail because the files do not have Windows' "Read & Execute" permission. > This is simple to fix, but one has to remember (or, ofttimes, get reminded) to do it every time there is an update. > > Liming, > Because this is purely a permission problem in the Git repository, and .exe files are not amenable to patching, They are -- I think if you change the file mode bits, git will see that, and will create a patch that has no content hunks, just the file mode changes. For example, in the BaseTools/Conf/ directory, we happen have two template files that have gratuitous execute permissions. If I remove those permissions, "git diff" shows > diff --git a/BaseTools/Conf/build_rule.template b/BaseTools/Conf/build_rule.template > old mode 100755 > new mode 100644 > diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template > old mode 100755 > new mode 100644 The same should be possible on Windows too. (You just need the inverse operation right now, chmod +x.) (The above patch is one I could submit genuinely, but I'm too lazy. :)) > I have raised a pull request on https://github.com/tianocore/edk2-BaseTools-win32/pulls > This is only a minor thing, but I would deem it a great favour were you to accept the pull request. > It has me tearing my hair out, and I have little enough to begin with. :-{ It is fine to send pull requests, but: - they should be mailed to the list (not opened on github), - the patches have to be reviewed first, anyway. (Speaking about the edk2 repo at least -- I realize this is a different repo.) Thanks Laszlo