From debbugs-submit-bounces@debbugs.gnu.org Thu May 28 08:56:29 2015 Received: (at submit) by debbugs.gnu.org; 28 May 2015 12:56:29 +0000 Received: from localhost ([127.0.0.1]:59078 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YxxMK-00047w-3C for submit@debbugs.gnu.org; Thu, 28 May 2015 08:56:29 -0400 Received: from eggs.gnu.org ([208.118.235.92]:33511) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YxxMG-00047i-7P for submit@debbugs.gnu.org; Thu, 28 May 2015 08:56:25 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YxxM6-0001XS-An for submit@debbugs.gnu.org; Thu, 28 May 2015 08:56:18 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:44561) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YxxM6-0001XB-8V for submit@debbugs.gnu.org; Thu, 28 May 2015 08:56:14 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47001) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YxxM4-0005zP-VR for bug-gnu-emacs@gnu.org; Thu, 28 May 2015 08:56:14 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YxxM1-0001SN-MC for bug-gnu-emacs@gnu.org; Thu, 28 May 2015 08:56:12 -0400 Received: from smtp202.alice.it ([82.57.200.98]:65390) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YxxM1-0001Pq-BF for bug-gnu-emacs@gnu.org; Thu, 28 May 2015 08:56:09 -0400 Received: from [192.168.1.100] (87.16.29.141) by smtp202.alice.it (8.6.060.43) (authenticated as angelo.graziosi@alice.it) id 5483247E129B3A43 for bug-gnu-emacs@gnu.org; Thu, 28 May 2015 14:56:01 +0200 Message-ID: <55671056.9030604@alice.it> Date: Thu, 28 May 2015 14:55:50 +0200 From: Angelo Graziosi User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: bug-gnu-emacs@gnu.org Subject: Build failure [MSYS2/MINGW64, OSX] Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) The build I tried with current master failed. This occurs in the nextstep build on OSX and also in the MSYS2/MINGW64 on Windows. The same master builds fine in the GTK build on GNU/Linux (but here there are other issues; see bug #20677). The failure looks the same. On OSX: [...] GEN dirent.h GEN fcntl.h /Applications/Xcode.app/Contents/Developer/usr/bin/make all-am CC acl-errno-valid.o CC acl-internal.o CC get-permissions.o CC set-permissions.o set-permissions.c:569:20: warning: incompatible pointer to integer conversion passing 'acl_t' (aka 'struct _acl *') to parameter of type 'int' [-Wint-conversion] acl = acl_init (acl); ^~~ /usr/include/sys/acl.h:149:27: note: passing argument to parameter 'count' here extern acl_t acl_init(int count); ^ set-permissions.c:585:26: error: use of undeclared identifier 'acl' ret = acl_set_fd (desc, acl); ^ set-permissions.c:587:47: error: use of undeclared identifier 'acl' ret = acl_set_file (name, ACL_TYPE_EXTENDED, acl); ^ set-permissions.c:590:27: error: use of undeclared identifier 'saved_errno' if (! acl_errno_valid (saved_errno) && ! acl_extended_nontrivial (acl)) ^ set-permissions.c:590:70: error: use of undeclared identifier 'acl' if (! acl_errno_valid (saved_errno) && ! acl_extended_nontrivial (acl)) ^ 1 warning and 4 errors generated. make[2]: *** [set-permissions.o] Error 1 make[1]: *** [all] Error 2 make: *** [lib] Error 2 make: *** Waiting for unfinished jobs.... /Applications/Xcode.app/Contents/Developer/usr/bin/make -C doc/emacs info GEN ../../info/emacs.info /Applications/Xcode.app/Contents/Developer/usr/bin/make -C doc/misc info GEN ../../info/ada-mode.info GEN ../../info/auth.info GEN ../../info/autotype.info [...] GEN ../../info/widget.info GEN ../../info/wisent.info GEN ../../info/woman.info GEN ../../info/efaq-w32.info On Windows (MSYS2/MINGW64): [...] CC acl-errno-valid.o CC acl-internal.o CCLD cmdproxy.exe CC get-permissions.o CCLD ddeclient.exe CC set-permissions.o set-permissions.c: In function 'set_acls': set-permissions.c:496:7: error: #error Must have acl_delete_def_file (see POSIX 1003.1e draft 17). # error Must have acl_delete_def_file (see POSIX 1003.1e draft 17). ^ set-permissions.c:534:7: warning: implicit declaration of function 'acl_delete_def_file' [-Wimplicit-function-declaration] ret = acl_delete_def_file (name); ^ Makefile:1627: set di istruzioni per l'obiettivo "set-permissions.o" non riuscito make[2]: *** [set-permissions.o] Errore 1 [...] CC set-permissions.o set-permissions.c: In function 'set_acls': set-permissions.c:496:7: error: #error Must have acl_delete_def_file (see POSIX 1003.1e draft 17). # error Must have acl_delete_def_file (see POSIX 1003.1e draft 17). ^ set-permissions.c:534:7: warning: implicit declaration of function 'acl_delete_def_file' [-Wimplicit-function-declaration] ret = acl_delete_def_file (name); ^ Makefile:1627: set di istruzioni per l'obiettivo "set-permissions.o" non riuscito [...] To build I used the same emacs-master.tar.gz file from git repo. I did successful builds with master more o less 10 days ago. Ciao, Angelo. From debbugs-submit-bounces@debbugs.gnu.org Thu May 28 13:47:31 2015 Received: (at 20681-done) by debbugs.gnu.org; 28 May 2015 17:47:31 +0000 Received: from localhost ([127.0.0.1]:59754 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Yy1tz-0002xU-0b for submit@debbugs.gnu.org; Thu, 28 May 2015 13:47:31 -0400 Received: from mtaout22.012.net.il ([80.179.55.172]:64008) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Yy1tw-0002x9-0L for 20681-done@debbugs.gnu.org; Thu, 28 May 2015 13:47:29 -0400 Received: from conversion-daemon.a-mtaout22.012.net.il by a-mtaout22.012.net.il (HyperSendmail v2007.08) id <0NP200F00MFTTU00@a-mtaout22.012.net.il> for 20681-done@debbugs.gnu.org; Thu, 28 May 2015 20:47:20 +0300 (IDT) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout22.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NP200F4IMQWHI90@a-mtaout22.012.net.il>; Thu, 28 May 2015 20:47:20 +0300 (IDT) Date: Thu, 28 May 2015 20:47:14 +0300 From: Eli Zaretskii Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] In-reply-to: <55671056.9030604@alice.it> X-012-Sender: halo1@inter.net.il To: Angelo Graziosi Message-id: <83oal4wq59.fsf@gnu.org> References: <55671056.9030604@alice.it> X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 20681-done Cc: 20681-done@debbugs.gnu.org, Paul Eggert X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) > Date: Thu, 28 May 2015 14:55:50 +0200 > From: Angelo Graziosi > > The build I tried with current master failed. This occurs in the > nextstep build on OSX and also in the MSYS2/MINGW64 on Windows. The same > master builds fine in the GTK build on GNU/Linux (but here there are > other issues; see bug #20677). > > The failure looks the same. > > On OSX: > > [...] > GEN dirent.h > GEN fcntl.h > /Applications/Xcode.app/Contents/Developer/usr/bin/make all-am > CC acl-errno-valid.o > CC acl-internal.o > CC get-permissions.o > CC set-permissions.o > set-permissions.c:569:20: warning: incompatible pointer to integer > conversion passing 'acl_t' (aka 'struct _acl *') to parameter of type > 'int' [-Wint-conversion] > acl = acl_init (acl); > ^~~ > /usr/include/sys/acl.h:149:27: note: passing argument to parameter > 'count' here > extern acl_t acl_init(int count); > ^ > set-permissions.c:585:26: error: use of undeclared identifier 'acl' > ret = acl_set_fd (desc, acl); > ^ > set-permissions.c:587:47: error: use of undeclared identifier 'acl' > ret = acl_set_file (name, ACL_TYPE_EXTENDED, acl); > ^ > set-permissions.c:590:27: error: use of undeclared identifier 'saved_errno' > if (! acl_errno_valid (saved_errno) && ! > acl_extended_nontrivial (acl)) > ^ > set-permissions.c:590:70: error: use of undeclared identifier 'acl' > if (! acl_errno_valid (saved_errno) && ! > acl_extended_nontrivial (acl)) > > ^ > 1 warning and 4 errors generated. > make[2]: *** [set-permissions.o] Error 1 Should be fixed now. (set-permissions.c cannot be compiled on MinGW, and is unnecessary there, so I removed it from the build.) P.S. Thanks to Paul who made this fix easy by merging the gnulib changes in nt/gnulib.mk. From debbugs-submit-bounces@debbugs.gnu.org Fri May 29 08:27:45 2015 Received: (at 20681-done) by debbugs.gnu.org; 29 May 2015 12:27:45 +0000 Received: from localhost ([127.0.0.1]:60094 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyJO4-0004tS-2j for submit@debbugs.gnu.org; Fri, 29 May 2015 08:27:44 -0400 Received: from smtp201.alice.it ([82.57.200.97]:53099) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyJNz-0004t5-Lj for 20681-done@debbugs.gnu.org; Fri, 29 May 2015 08:27:41 -0400 Received: from [192.168.1.100] (87.16.29.141) by smtp201.alice.it (8.6.060.43) (authenticated as angelo.graziosi@alice.it) id 555620A901543E12; Fri, 29 May 2015 14:27:24 +0200 Message-ID: <55685B1B.1040507@alice.it> Date: Fri, 29 May 2015 14:27:07 +0200 From: Angelo Graziosi User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Eli Zaretskii Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> In-Reply-To: <83oal4wq59.fsf@gnu.org> Content-Type: text/plain; charset=iso-8859-15; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 20681-done Cc: 20681-done@debbugs.gnu.org, Paul Eggert X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) Il 28/05/2015 19:47, Eli Zaretskii ha scritto: >> Date: Thu, 28 May 2015 14:55:50 +0200 >> From: Angelo Graziosi >> >> The build I tried with current master failed. This occurs in the >> nextstep build on OSX and also in the MSYS2/MINGW64 on Windows. The same >> master builds fine in the GTK build on GNU/Linux (but here there are >> other issues; see bug #20677). >> >> The failure looks the same. >> >> On OSX: >> >> [...] >> GEN dirent.h >> GEN fcntl.h >> /Applications/Xcode.app/Contents/Developer/usr/bin/make all-am >> CC acl-errno-valid.o >> CC acl-internal.o >> CC get-permissions.o >> CC set-permissions.o >> set-permissions.c:569:20: warning: incompatible pointer to integer >> conversion passing 'acl_t' (aka 'struct _acl *') to parameter of type >> 'int' [-Wint-conversion] >> acl = acl_init (acl); >> ^~~ >> /usr/include/sys/acl.h:149:27: note: passing argument to parameter >> 'count' here >> extern acl_t acl_init(int count); >> ^ >> set-permissions.c:585:26: error: use of undeclared identifier 'acl' >> ret = acl_set_fd (desc, acl); >> ^ >> set-permissions.c:587:47: error: use of undeclared identifier 'acl' >> ret = acl_set_file (name, ACL_TYPE_EXTENDED, acl); >> ^ >> set-permissions.c:590:27: error: use of undeclared identifier 'saved_errno' >> if (! acl_errno_valid (saved_errno) && ! >> acl_extended_nontrivial (acl)) >> ^ >> set-permissions.c:590:70: error: use of undeclared identifier 'acl' >> if (! acl_errno_valid (saved_errno) && ! >> acl_extended_nontrivial (acl)) >> >> ^ >> 1 warning and 4 errors generated. >> make[2]: *** [set-permissions.o] Error 1 > > Should be fixed now. (set-permissions.c cannot be compiled on MinGW, > and is unnecessary there, so I removed it from the build.) This bug has been closed... but.. > P.S. Thanks to Paul who made this fix easy by merging the gnulib > changes in nt/gnulib.mk. current master still fails to build on OSX. Same error.. Ciao, Angelo. From debbugs-submit-bounces@debbugs.gnu.org Fri May 29 12:56:35 2015 Received: (at 20681) by debbugs.gnu.org; 29 May 2015 16:56:35 +0000 Received: from localhost ([127.0.0.1]:60803 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyNaE-0003NF-Q8 for submit@debbugs.gnu.org; Fri, 29 May 2015 12:56:35 -0400 Received: from smtp.cs.ucla.edu ([131.179.128.62]:34610) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyNaD-0003N3-9p for 20681@debbugs.gnu.org; Fri, 29 May 2015 12:56:33 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id C9A6839E801B; Fri, 29 May 2015 09:56:27 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KFd0037n1K1H; Fri, 29 May 2015 09:56:25 -0700 (PDT) Received: from Penguin.CS.UCLA.EDU (Penguin.CS.UCLA.EDU [131.179.64.200]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id 65F7539E801A; Fri, 29 May 2015 09:56:25 -0700 (PDT) Message-ID: <55689A39.7080804@cs.ucla.edu> Date: Fri, 29 May 2015 09:56:25 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Andreas Gruenbacher Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> In-Reply-To: <55685B1B.1040507@alice.it> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 20681 Cc: Eli Zaretskii , 20681@debbugs.gnu.org, Angelo Graziosi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) On 05/29/2015 05:27 AM, Angelo Graziosi wrote: > current master still fails to build on OSX. Same error.. > Andreas, this build failure in GNU Emacs appears to be due to the recent changes to the ACL code in Gnulib. Can you please take a look at it soon? See: http://bugs.gnu.org/20681 To build the latest version of GNU Emacs on OS X, you can do something like this: git clone git://git.savannah.gnu.org/emacs.git cd emacs ./autogen.sh ./configure --with-ns make From unknown Fri Jun 20 20:07:42 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: Did not alter fixed versions and reopened. Date: Fri, 29 May 2015 16:58:01 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # Did not alter fixed versions and reopened. thanks # This fakemail brought to you by your local debbugs # administrator From debbugs-submit-bounces@debbugs.gnu.org Fri May 29 15:06:38 2015 Received: (at 20681) by debbugs.gnu.org; 29 May 2015 19:06:38 +0000 Received: from localhost ([127.0.0.1]:60851 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyPc5-0007yN-E8 for submit@debbugs.gnu.org; Fri, 29 May 2015 15:06:37 -0400 Received: from mail-wi0-f179.google.com ([209.85.212.179]:34253) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyPc2-0007y6-Gw for 20681@debbugs.gnu.org; Fri, 29 May 2015 15:06:35 -0400 Received: by wicmc15 with SMTP id mc15so23879626wic.1 for <20681@debbugs.gnu.org>; Fri, 29 May 2015 12:06:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:date:message-id:in-reply-to:references; bh=6fPZgTkmdlfjy3IIgtxWbIPQ+7jMeQH82UsJ+NshdAg=; b=gPxMWi7VP4iGcPl52SZR7f9I5RZYeubA7ZBqw7oXLY/aWAKXNmE+XN1HBkOa1R7pTM m1vbK7tehWsM3CG1D3ZXDyqBcu9zUJRRNCSIuGlVRLHmvF9rLo2sTN3OUfwpZqFLcJgt RCDRZPi+lMy2L1Q8T7mhnx0aqnG4A4UkWtfhaWT9IPLtbm/RqMDpcAGZLpIblma5TfKw ZKCkGoqziKyIWoVey9Jk+8L4MLOp0bZG2NHOKHfEATcViA6x4DeW+eaEBd5YpG38Tzoa +hUD4NiSLFtszhWLBiGgpNRny86GZzIIAj1tWM1xq8F62ZUoJZ0X5HYp5/ipQTkQdxsc V/5g== X-Received: by 10.180.95.40 with SMTP id dh8mr9254403wib.35.1432926388937; Fri, 29 May 2015 12:06:28 -0700 (PDT) Received: from nuc.home.com (80-110-112-232.cgn.dynamic.surfer.at. [80.110.112.232]) by mx.google.com with ESMTPSA id gs7sm4362411wib.10.2015.05.29.12.06.27 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 29 May 2015 12:06:28 -0700 (PDT) From: Andreas Gruenbacher To: bug-gnulib@gnu.org, 20681@debbugs.gnu.org Subject: [PATCH] acl-permissions: Fix build on Mac OS X and older AIX (Bug#20681) Date: Fri, 29 May 2015 21:06:08 +0200 Message-Id: <1432926368-5092-1-git-send-email-andreas.gruenbacher@gmail.com> X-Mailer: git-send-email 2.4.0 In-Reply-To: <55689A39.7080804@cs.ucla.edu> References: <55689A39.7080804@cs.ucla.edu> X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 20681 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) * lib/set-permissions.c (set_acls): Fix more errors introduced in the acl module rewrite. --- ChangeLog | 4 ++++ lib/set-permissions.c | 13 +++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index fb8b446..a44510a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2015-05-29 Andreas Gruenbacher + acl-permissions: Fix build on Mac OS X and older AIX (Bug#20681) + * lib/set-permissions.c (set_acls): Fix more errors introduced in the acl + module rewrite. + acl-permissions: Fix build on Solaris and Cygwin Reported by Tom G. Christensen : * lib/set-permissions.c (set_acls): The count, entries, ace_count, and diff --git a/lib/set-permissions.c b/lib/set-permissions.c index db3696c..ba291f3 100644 --- a/lib/set-permissions.c +++ b/lib/set-permissions.c @@ -566,7 +566,7 @@ set_acls (struct permission_context *ctx, const char *name, int desc, { acl_free (acl); - acl = acl_init (acl); + acl = acl_init (0); if (acl) { if (HAVE_ACL_SET_FD && desc != -1) @@ -582,12 +582,13 @@ set_acls (struct permission_context *ctx, const char *name, int desc, else { if (HAVE_ACL_SET_FD && desc != -1) - ret = acl_set_fd (desc, acl); + ret = acl_set_fd (desc, ctx->acl); else - ret = acl_set_file (name, ACL_TYPE_EXTENDED, acl); + ret = acl_set_file (name, ACL_TYPE_EXTENDED, ctx->acl); if (ret != 0) { - if (! acl_errno_valid (saved_errno) && ! acl_extended_nontrivial (acl)) + if (! acl_errno_valid (errno) + && ! acl_extended_nontrivial (ctx->acl)) ret = 0; } } @@ -696,9 +697,9 @@ set_acls (struct permission_context *ctx, const char *name, int desc, if (ret == 0 && ctx->have_u) { if (desc != -1) - ret = fchacl (desc, &u.a, u.a.acl_len); + ret = fchacl (desc, &ctx->u.a, ctx->u.a.acl_len); else - ret = chacl (name, &u.a, u.a.acl_len); + ret = chacl (name, &ctx->u.a, ctx->u.a.acl_len); if (ret < 0) { if (errno == ENOSYS && from_mode) -- 2.4.0 From debbugs-submit-bounces@debbugs.gnu.org Fri May 29 15:09:23 2015 Received: (at 20681) by debbugs.gnu.org; 29 May 2015 19:09:23 +0000 Received: from localhost ([127.0.0.1]:60855 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyPel-00082S-AG for submit@debbugs.gnu.org; Fri, 29 May 2015 15:09:23 -0400 Received: from mail-oi0-f46.google.com ([209.85.218.46]:34716) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyPej-00082F-PY for 20681@debbugs.gnu.org; Fri, 29 May 2015 15:09:22 -0400 Received: by oifu123 with SMTP id u123so63685771oif.1 for <20681@debbugs.gnu.org>; Fri, 29 May 2015 12:09:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=ls0AhjIA3cdbg3DxM5lkXot77Sh1hMQhLf0kSXupyXk=; b=qZN2duKckBZbRiikCBVXMSDv4G1bBc8KvtGgan2AqeHHy94WDAXSM0oXhUODfzbVsY 2OdfOqBzNCSSstRdKwALfDNLhuYoC0D+Dx5mF2yvw7bjLwkx6aICl04u1eVIzs8pea+t 4BdZ0fgJ2rlfvdQArFnB8Lmw9ZgrVISnx7j6OqQ9+yOrF1QtMuGVTFViDBkuam/1U6LI zuMfAS5vsumEB8Kp3PEs0i6fxIqiBJlVAYbRO7W0gB+H/Bxe8F5Wx9ky4E2Youu4LAis zW4AsALCxDFERSRLn7pvpP2bLj2C3ZtQ2SeoJkV1T1Uotth41bfb1tBooeFb3l7RxADc S+rQ== MIME-Version: 1.0 X-Received: by 10.60.101.195 with SMTP id fi3mr4861663oeb.65.1432926556204; Fri, 29 May 2015 12:09:16 -0700 (PDT) Received: by 10.182.143.72 with HTTP; Fri, 29 May 2015 12:09:16 -0700 (PDT) In-Reply-To: <55689A39.7080804@cs.ucla.edu> References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> Date: Fri, 29 May 2015 21:09:16 +0200 Message-ID: Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] From: =?UTF-8?Q?Andreas_Gr=C3=BCnbacher?= To: Paul Eggert Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 20681 Cc: Eli Zaretskii , 20681@debbugs.gnu.org, Angelo Graziosi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) 2015-05-29 18:56 GMT+02:00 Paul Eggert : > Andreas, this build failure in GNU Emacs appears to be due to the recent > changes to the ACL code in Gnulib. Can you please take a look at it soon? I hope that's all fixed now. Thanks, Andreas From debbugs-submit-bounces@debbugs.gnu.org Fri May 29 15:45:23 2015 Received: (at 20681-done) by debbugs.gnu.org; 29 May 2015 19:45:23 +0000 Received: from localhost ([127.0.0.1]:60864 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyQDa-0000VC-TI for submit@debbugs.gnu.org; Fri, 29 May 2015 15:45:23 -0400 Received: from smtp.cs.ucla.edu ([131.179.128.62]:41721) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyQDX-0000Ux-Lk for 20681-done@debbugs.gnu.org; Fri, 29 May 2015 15:45:20 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id 794F139E801B; Fri, 29 May 2015 12:45:13 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ZZ3rHas+eJnt; Fri, 29 May 2015 12:45:12 -0700 (PDT) Received: from Penguin.CS.UCLA.EDU (Penguin.CS.UCLA.EDU [131.179.64.200]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id 9192C39E801A; Fri, 29 May 2015 12:45:12 -0700 (PDT) Message-ID: <5568C1C8.2090406@cs.ucla.edu> Date: Fri, 29 May 2015 12:45:12 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: =?UTF-8?B?QW5kcmVhcyBHcsO8bmJhY2hlcg==?= Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 20681-done Cc: Eli Zaretskii , 20681-done@debbugs.gnu.org, Angelo Graziosi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) On 05/29/2015 12:09 PM, Andreas Grünbacher wrote: > 2015-05-29 18:56 GMT+02:00 Paul Eggert : >> Andreas, this build failure in GNU Emacs appears to be due to the recent >> changes to the ACL code in Gnulib. Can you please take a look at it soon? > I hope that's all fixed now. > > Thanks, > Andreas Thanks for the quick fix. I merged this into the Emacs master as commit and am marking this bug as done again. From the Emacs point of view this should also fix build problems on Solaris and Cygwin. From debbugs-submit-bounces@debbugs.gnu.org Fri May 29 15:57:04 2015 Received: (at 20681-done) by debbugs.gnu.org; 29 May 2015 19:57:04 +0000 Received: from localhost ([127.0.0.1]:60872 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyQOu-0000mb-9D for submit@debbugs.gnu.org; Fri, 29 May 2015 15:57:04 -0400 Received: from mail-qc0-f178.google.com ([209.85.216.178]:33930) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyQOs-0000m4-Cw for 20681-done@debbugs.gnu.org; Fri, 29 May 2015 15:57:02 -0400 Received: by qcbhb1 with SMTP id hb1so30443824qcb.1 for <20681-done@debbugs.gnu.org>; Fri, 29 May 2015 12:56:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=references:from:to:cc:subject:in-reply-to:date:message-id :mime-version:content-type; bh=ahyHHS3nXX1YfH9uidLAYpqRh+ul/X3QdkbkgngRb18=; b=qkk2BUKVrG2Ntkxk/sgvTDjt2FkDynyP4+2Bx6cI7W90IbdYoBgxrAPZKD0mNwty/j 4pssHvebaY+paFfPVTQ9H7QJrvFQpMqWVDEV6Kti7X0/qlTuWAMJ2QNXXeTHUWRnk+LI 9JVT6vgm2Eg/tbyQv41QgzX858S1YX3jK6rnT0bzNC+6CHOSOeKZFVGDF6oTnR6zzKkk 3Np+//UleT1Zdoz+lHmzVo42/u1hOEnkNf1+u2QTMeRrpz5oBaWVwPPiDulTNY5p7UOw VWhXOi5bOYPSvzZFkNKZP8tTtPzpx/tLRVqhbuhLzs6wClAKoTspjot6o6dH4LVGFtl5 sQjA== X-Received: by 10.140.106.101 with SMTP id d92mr11326834qgf.70.1432929416531; Fri, 29 May 2015 12:56:56 -0700 (PDT) Received: from NAND-LT ([47.19.134.82]) by mx.google.com with ESMTPSA id m65sm3130760qhb.27.2015.05.29.12.56.55 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 29 May 2015 12:56:56 -0700 (PDT) References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> From: Nick Andryshak To: Paul Eggert Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] In-reply-to: <5568C1C8.2090406@cs.ucla.edu> Date: Fri, 29 May 2015 15:56:54 -0400 Message-ID: MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 20681-done Cc: Andreas =?utf-8?Q?Gr=C3=BCnbacher?= , 20681-done@debbugs.gnu.org, Angelo Graziosi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) > Thanks for the quick fix. I merged this into the Emacs master as > commit and am marking this bug as done again. From the Emacs point of > view this should also fix build problems on Solaris and Cygwin. Thanks Paul and Andreas, this does indeed fix the build problem on Cygwin. - Nick From debbugs-submit-bounces@debbugs.gnu.org Fri May 29 15:57:56 2015 Received: (at 20681-done) by debbugs.gnu.org; 29 May 2015 19:57:56 +0000 Received: from localhost ([127.0.0.1]:60875 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyQPj-0000ni-Iv for submit@debbugs.gnu.org; Fri, 29 May 2015 15:57:55 -0400 Received: from mail-ob0-f182.google.com ([209.85.214.182]:34312) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyQPh-0000nU-5n for 20681-done@debbugs.gnu.org; Fri, 29 May 2015 15:57:53 -0400 Received: by obew15 with SMTP id w15so65804806obe.1 for <20681-done@debbugs.gnu.org>; Fri, 29 May 2015 12:57:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=ilg41VD4WgSRvvP8vjcYXN8C+2hf3CO7Zawve2gEQ94=; b=gPoa1vAGgUInGEdF2MZ6bFQgjrhOXZBtw5Jo93UliK+5d1RsCvKeG5cnd6XCxQCOCC r8AQ77dkbwufdoXZAKiD+sU/4M4t3FIXRieqC5bgrRguzbN9wmDSTQtUU/YCJGRjU8sB I8wR6iR8nCnhkuST1uycUeZ+NXOPN2USpyNf8uhMnP9tzdGRaDh1Ulghq7Ksb2zFDtUO qu/MBd0H/ZEfuUgqpocJ8ut0Gj+tlaarpvqOPcv/BrxHmEWE/CZD9lmVRmmb9y5sW7qz jN3RDg97XG6ddvhMC/by9RexwX7HPM6wKTE3Ue7jsh3QCW3D4YEsddXm9s5OrHUXXUBZ fp8w== MIME-Version: 1.0 X-Received: by 10.202.226.80 with SMTP id z77mr8143639oig.64.1432929467519; Fri, 29 May 2015 12:57:47 -0700 (PDT) Received: by 10.182.143.72 with HTTP; Fri, 29 May 2015 12:57:47 -0700 (PDT) In-Reply-To: References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> Date: Fri, 29 May 2015 21:57:47 +0200 Message-ID: Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] From: =?UTF-8?Q?Andreas_Gr=C3=BCnbacher?= To: Nick Andryshak Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 20681-done Cc: 20681-done@debbugs.gnu.org, Paul Eggert , Angelo Graziosi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) 2015-05-29 21:56 GMT+02:00 Nick Andryshak : > Thanks Paul and Andreas, this does indeed fix the build problem on > Cygwin. Great, thanks. Andreas From debbugs-submit-bounces@debbugs.gnu.org Fri May 29 17:49:14 2015 Received: (at 20681-done) by debbugs.gnu.org; 29 May 2015 21:49:14 +0000 Received: from localhost ([127.0.0.1]:60897 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyS9R-0003Ry-Ir for submit@debbugs.gnu.org; Fri, 29 May 2015 17:49:13 -0400 Received: from smtp201.alice.it ([82.57.200.97]:27661) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyS9O-0003Ri-An for 20681-done@debbugs.gnu.org; Fri, 29 May 2015 17:49:11 -0400 Received: from [192.168.1.100] (87.16.29.141) by smtp201.alice.it (8.6.060.43) (authenticated as angelo.graziosi@alice.it) id 555620A901661875; Fri, 29 May 2015 23:49:03 +0200 Message-ID: <5568DECC.70005@alice.it> Date: Fri, 29 May 2015 23:49:00 +0200 From: Angelo Graziosi User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Paul Eggert , =?UTF-8?B?QW5kcmVhcyBHcsO8bmJhY2hlcg==?= Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> In-Reply-To: <5568C1C8.2090406@cs.ucla.edu> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 20681-done Cc: Eli Zaretskii , 20681-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) Il 29/05/2015 21:45, Paul Eggert ha scritto: > On 05/29/2015 12:09 PM, Andreas Grünbacher wrote: >> 2015-05-29 18:56 GMT+02:00 Paul Eggert : >>> Andreas, this build failure in GNU Emacs appears to be due to the recent >>> changes to the ACL code in Gnulib. Can you please take a look at it >>> soon? >> I hope that's all fixed now. >> >> Thanks, >> Andreas > > Thanks for the quick fix. I merged this into the Emacs master as > commit and am marking this bug as done again. From the Emacs point of > view this should also fix build problems on Solaris and Cygwin. The build seems to be fixed also on OSX. Thanks a lot! Ciao, Angelo. From debbugs-submit-bounces@debbugs.gnu.org Fri May 29 18:43:03 2015 Received: (at control) by debbugs.gnu.org; 29 May 2015 22:43:04 +0000 Received: from localhost ([127.0.0.1]:60916 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YySzX-0004if-Gr for submit@debbugs.gnu.org; Fri, 29 May 2015 18:43:03 -0400 Received: from fencepost.gnu.org ([208.118.235.10]:55991 ident=Debian-exim) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YySzU-0004iF-U2 for control@debbugs.gnu.org; Fri, 29 May 2015 18:43:01 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1YySzU-0003Bd-GJ for control@debbugs.gnu.org; Fri, 29 May 2015 18:43:00 -0400 Date: Fri, 29 May 2015 18:43:00 -0400 Message-Id: Subject: control message for bug 20692 To: X-Mailer: mail (GNU Mailutils 2.1) From: Glenn Morris X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) forcemerge 20681 20692 From debbugs-submit-bounces@debbugs.gnu.org Sat May 30 06:22:20 2015 Received: (at 20681) by debbugs.gnu.org; 30 May 2015 10:22:21 +0000 Received: from localhost ([127.0.0.1]:32912 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyduG-000616-7Y for submit@debbugs.gnu.org; Sat, 30 May 2015 06:22:20 -0400 Received: from mtaout22.012.net.il ([80.179.55.172]:44730) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyduD-00060p-7t for 20681@debbugs.gnu.org; Sat, 30 May 2015 06:22:18 -0400 Received: from conversion-daemon.a-mtaout22.012.net.il by a-mtaout22.012.net.il (HyperSendmail v2007.08) id <0NP500800RF3SL00@a-mtaout22.012.net.il> for 20681@debbugs.gnu.org; Sat, 30 May 2015 13:22:10 +0300 (IDT) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout22.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NP5008LBRGXMM40@a-mtaout22.012.net.il>; Sat, 30 May 2015 13:22:09 +0300 (IDT) Date: Sat, 30 May 2015 13:22:07 +0300 From: Eli Zaretskii Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] In-reply-to: X-012-Sender: halo1@inter.net.il To: Andreas =?utf-8?Q?Gr=C3=BCnbacher?= Message-id: <83siaeuzzk.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-transfer-encoding: 8BIT References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 20681 Cc: 20681@debbugs.gnu.org, eggert@cs.ucla.edu, nandryshak@gmail.com, angelo.graziosi@alice.it X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) > Date: Fri, 29 May 2015 21:57:47 +0200 > From: Andreas Grünbacher > Cc: 20681-done@debbugs.gnu.org, Paul Eggert , > Angelo Graziosi > > 2015-05-29 21:56 GMT+02:00 Nick Andryshak : > > Thanks Paul and Andreas, this does indeed fix the build problem on > > Cygwin. > > Great, thanks. Not sure if that code is supposed to be compatible with MinGW, but if it is, there's still a problem, since set-permissions.c won't compile: set-permissions.c: In function 'set_acls': set-permissions.c:496:7: error: #error Must have acl_delete_def_file (see POSIX 1003.1e draft 17). # error Must have acl_delete_def_file (see POSIX 1003.1e draft 17). ^ set-permissions.c:534:7: warning: implicit declaration of function 'acl_delete_def_file' [-Wimplicit-function-declaration] ret = acl_delete_def_file (name); ^ Makefile:1563: recipe for target `set-permissions.o' failed It's not a problem for Emacs, since the MinGW build doesn't compile that file, but it means that other projects using gnulib might not build on MinGW. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Sat May 30 08:03:01 2015 Received: (at 20681) by debbugs.gnu.org; 30 May 2015 12:03:01 +0000 Received: from localhost ([127.0.0.1]:32922 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyfTg-0001Pg-CH for submit@debbugs.gnu.org; Sat, 30 May 2015 08:03:01 -0400 Received: from mail-ob0-f178.google.com ([209.85.214.178]:36611) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YyfTd-0001PQ-Ok for 20681@debbugs.gnu.org; Sat, 30 May 2015 08:02:58 -0400 Received: by obbea2 with SMTP id ea2so74945111obb.3 for <20681@debbugs.gnu.org>; Sat, 30 May 2015 05:02:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=FA7B0yplglbqGvgUJGkjwRXS56mLVI7q958K4zUbJJo=; b=09myeMvZRO6V12mCpG0Qwh5YCvSQuShHn/s27/JWQVcdE4gmIQmZTGyNVo260ZfVJ6 QyIfWz9td03TC6BSZSpMyf9ZKCcHJWvUNApyz0T5w/dccJn6G1KxsCSfd5+KOwfFTw/Q mErPEUYR2IwN0wWkmszZ1GcMalKXDbC0HQqdf2zBeHnCtMpiPk2zmF6GyMXAIzUm6Xbm HfL+49bqXNu2AzIBX7zaluY+ni08Guo9krtCsN1V2hvlhFF6nI4jhxUm3OdFacY8eUsV HMLp/dyLDb63HMDte17GJeiNMi0rVm4gnw68FdyH+an50Ra9q/FXZJGixsNAsE3pdeHD K28w== MIME-Version: 1.0 X-Received: by 10.202.198.151 with SMTP id w145mr10347541oif.72.1432987371984; Sat, 30 May 2015 05:02:51 -0700 (PDT) Received: by 10.182.143.72 with HTTP; Sat, 30 May 2015 05:02:51 -0700 (PDT) In-Reply-To: <83siaeuzzk.fsf@gnu.org> References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> <83siaeuzzk.fsf@gnu.org> Date: Sat, 30 May 2015 14:02:51 +0200 Message-ID: Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] From: =?UTF-8?Q?Andreas_Gr=C3=BCnbacher?= To: Eli Zaretskii Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 20681 Cc: 20681@debbugs.gnu.org, Paul Eggert , Nick Andryshak , Angelo Graziosi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Eli, 2015-05-30 12:22 GMT+02:00 Eli Zaretskii : > Not sure if that code is supposed to be compatible with MinGW, but if > it is, there's still a problem, since set-permissions.c won't compile: it doesn't seem like that part of the code has changed, but I may have overlooked something. Could you check if coreutils from https://github.com/andreas-gruenbacher/coreutils, master branch, builds on MinGW? (The upstream version of coreutils doesn't use the latest version of gnulib yet, but this version does.) If that fails, what config.h do you get there, and does it differ from the config you get with git://git.savannah.gnu.org/coreutils.git? Do the Savannah coreutils build? Thanks, Andreas From debbugs-submit-bounces@debbugs.gnu.org Sat May 30 08:10:41 2015 Received: (at 20681) by debbugs.gnu.org; 30 May 2015 12:10:41 +0000 Received: from localhost ([127.0.0.1]:32944 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Yyfb6-0001bq-UC for submit@debbugs.gnu.org; Sat, 30 May 2015 08:10:41 -0400 Received: from mtaout26.012.net.il ([80.179.55.182]:55259) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Yyfb3-0001bZ-A8 for 20681@debbugs.gnu.org; Sat, 30 May 2015 08:10:38 -0400 Received: from conversion-daemon.mtaout26.012.net.il by mtaout26.012.net.il (HyperSendmail v2007.08) id <0NP500700W8Y1J00@mtaout26.012.net.il> for 20681@debbugs.gnu.org; Sat, 30 May 2015 15:12:27 +0300 (IDT) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by mtaout26.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NP500OHQWKQR870@mtaout26.012.net.il>; Sat, 30 May 2015 15:12:26 +0300 (IDT) Date: Sat, 30 May 2015 15:10:29 +0300 From: Eli Zaretskii Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] In-reply-to: X-012-Sender: halo1@inter.net.il To: Andreas =?utf-8?Q?Gr=C3=BCnbacher?= Message-id: <83lhg6uuyy.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-transfer-encoding: 8BIT References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> <83siaeuzzk.fsf@gnu.org> X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 20681 Cc: 20681@debbugs.gnu.org, eggert@cs.ucla.edu, nandryshak@gmail.com, angelo.graziosi@alice.it X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) > Date: Sat, 30 May 2015 14:02:51 +0200 > From: Andreas Grünbacher > Cc: Nick Andryshak , 20681@debbugs.gnu.org, > Paul Eggert , Angelo Graziosi > > Could you check if coreutils from > https://github.com/andreas-gruenbacher/coreutils, > master branch, builds on MinGW? (The upstream version of coreutils doesn't use > the latest version of gnulib yet, but this version does.) Coreutils doesn't build with MinGW for ages, so this is not a good method of investigating the issue, IMO. > If that fails, what config.h do you get there, and does it differ from > the config you get with > git://git.savannah.gnu.org/coreutils.git? Do the Savannah coreutils build? Please tell what do you want to see in confg.h, specifically. I can force the Emacs development head to compile set-permissions.c, so perhaps Emacs's config.h will do. From debbugs-submit-bounces@debbugs.gnu.org Sat May 30 09:06:24 2015 Received: (at 20681) by debbugs.gnu.org; 30 May 2015 13:06:24 +0000 Received: from localhost ([127.0.0.1]:32971 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YygT1-0002wR-Mk for submit@debbugs.gnu.org; Sat, 30 May 2015 09:06:23 -0400 Received: from mail-ob0-f170.google.com ([209.85.214.170]:32776) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YygT0-0002wE-I1 for 20681@debbugs.gnu.org; Sat, 30 May 2015 09:06:22 -0400 Received: by obbnx5 with SMTP id nx5so75340456obb.0 for <20681@debbugs.gnu.org>; Sat, 30 May 2015 06:06:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=9ODuj3jm8fZE8HDW1L+4MFAOI+eWvkMku/wb5jPi/Bo=; b=oUVtnH4mxjVLF3F5NL6bCI05Sq1VTfpAiZ/B3AoW8T5ooBTqCzit+1s8eSO2SgcyTJ jkvYkAtDuwoA/tSfYESob8bYgEUqYV6bAB0OIUrHkLdfowTqVBqnAipyrbUaF0My1YZY ZJusWLPKFWHrxSv99ODoLJHjTvNCE1F1YZiQLHhEa8f8aGyfn7jlBX5GWaIlrmFgQMbl cPTarIGU6s6rLp8woSJMzvi39Eo6p7gVggrU0WWLIUn4XjuYlcITV8xu+JD5ppnxUyW7 /nwcaf+KPXUrZbCB/8QIxeSlTTz16v3wIiuUTi7qevdEokEcuQ7aEWkJw8A20y1B4L7T 5erw== MIME-Version: 1.0 X-Received: by 10.202.88.66 with SMTP id m63mr10412532oib.47.1432991176882; Sat, 30 May 2015 06:06:16 -0700 (PDT) Received: by 10.182.143.72 with HTTP; Sat, 30 May 2015 06:06:16 -0700 (PDT) In-Reply-To: <83lhg6uuyy.fsf@gnu.org> References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> <83siaeuzzk.fsf@gnu.org> <83lhg6uuyy.fsf@gnu.org> Date: Sat, 30 May 2015 15:06:16 +0200 Message-ID: Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] From: =?UTF-8?Q?Andreas_Gr=C3=BCnbacher?= To: Eli Zaretskii Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 20681 Cc: 20681@debbugs.gnu.org, Paul Eggert , Nick Andryshak , Angelo Graziosi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) 2015-05-30 14:10 GMT+02:00 Eli Zaretskii : > Please tell what do you want to see in confg.h, specifically. I can > force the Emacs development head to compile set-permissions.c, so > perhaps Emacs's config.h will do. It may. I have no idea what kind of acl functionality emacs on MinGW should have though. What did it do before? Is the build failure new or did it already exist before the acl rewrite? Which acl related symbols do you have in config.h? If it has acl_get_file and acl_set_file, where can I find documentation about what those functions do on MinGW? Thanks, Andreas From debbugs-submit-bounces@debbugs.gnu.org Sun May 31 10:29:40 2015 Received: (at 20681) by debbugs.gnu.org; 31 May 2015 14:29:40 +0000 Received: from localhost ([127.0.0.1]:35006 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Yz4F9-00060R-Nz for submit@debbugs.gnu.org; Sun, 31 May 2015 10:29:40 -0400 Received: from mtaout25.012.net.il ([80.179.55.181]:50100) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Yz4F5-00060B-2B for 20681@debbugs.gnu.org; Sun, 31 May 2015 10:29:36 -0400 Received: from conversion-daemon.mtaout25.012.net.il by mtaout25.012.net.il (HyperSendmail v2007.08) id <0NP700K00XDO6V00@mtaout25.012.net.il> for 20681@debbugs.gnu.org; Sun, 31 May 2015 17:25:20 +0300 (IDT) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by mtaout25.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NP700G5ZXE72R40@mtaout25.012.net.il>; Sun, 31 May 2015 17:25:20 +0300 (IDT) Date: Sun, 31 May 2015 17:29:19 +0300 From: Eli Zaretskii Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] In-reply-to: X-012-Sender: halo1@inter.net.il To: Andreas =?utf-8?Q?Gr=C3=BCnbacher?= Message-id: <83oal0u8g0.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-transfer-encoding: 8BIT References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> <83siaeuzzk.fsf@gnu.org> <83lhg6uuyy.fsf@gnu.org> X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 20681 Cc: 20681@debbugs.gnu.org, eggert@cs.ucla.edu, nandryshak@gmail.com, angelo.graziosi@alice.it X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) > Date: Sat, 30 May 2015 15:06:16 +0200 > From: Andreas Grünbacher > Cc: Nick Andryshak , 20681@debbugs.gnu.org, > Paul Eggert , Angelo Graziosi > > > Please tell what do you want to see in confg.h, specifically. I can > > force the Emacs development head to compile set-permissions.c, so > > perhaps Emacs's config.h will do. > > It may. I have no idea what kind of acl functionality emacs on MinGW > should have though. Emacs built with MinGW has the same functionality on Windows as Emacs does on Posix hosts: get a file's ACL as a text string, set a file's ACL from text string description, and copy ACL from one file to another. The relevant functions, acl_get_file, acl_set_file, acl_to_text, acl_from_text, and acl_free are implemented as part of Emacs. > What did it do before? The only ACL-related function that Emacs on Windows was using from Gnulib was acl_errno_valid. All the rest were implemented in the Emacs sources. IOW, the Gnulib ACL functions were almost completely unused in the MinGW build. However, they did compile, which allowed us to keep the Gnulib configuration very similar to what was used on Posix hosts. Which is why I'm not sure it is worth your while to do more than you've already done, unless you do want to make sure the code at least compiles as it did before. With that caveat, I answer below your questions, regardless. > Is the build failure new or did it already exist before the acl > rewrite? It is new. Before the rewrite, the file qcopy-acl.c would compile with MinGW, although the function qcopy_acl was not called in the MinGW build, and so qcopy-acl.o was not linked into the binary. But it would at least compile. After the rewrite, qcopy-acl.c is just a thin wrapper around get-permissions.c and set-permissions.c. The former still compiles with MinGW, but the latter doesn't. The reason is this cpp conditional: # ifndef HAVE_ACL_DELETE_DEF_FILE # error Must have acl_delete_def_file (see POSIX 1003.1e draft 17). # endif I don't understand why the code requires acl_delete_def_file where it previously did not: it's not like setting permissions will absolutely not work if there is no such function. E.g., why not do something like the following instead: # ifndef HAVE_ACL_DELETE_DEF_FILE ret = -1; errno = ENOSYS; # else ret = acl_delete_def_file (name); # endif More generally, copying ACLs from one file to another does not need any analysis of what's in the ACLs being copied: it could simply treat the ACLs as an opaque object, something whose structure and semantics are known only to the innards of acl_get_file and acl_set_file. So building qcopy_acl on top of get_permissions and set_permissions, which are more flexible, and do require that knowledge, is IMO fundamentally wrong, as it makes much harder to port this simple and important Gnulib function to other platforms. After all, copying ACLs from one file to another is much more frequent and important an operation than setting ACLs from user-specified arguments. What's more, the assumption that if acl_get_file and acl_set_file are available, then so should be acl_delete_def_file is yet another obstacle, IMO gratuitous one. > Which acl related symbols do you have in config.h? HAVE_ACL_FREE HAVE_ACL_FROM_TEXT HAVE_ACL_GET_FILE HAVE_ACL_SET_FILE HAVE_SYS_ACL_H USE_ACL > If it has acl_get_file and acl_set_file, where can I find > documentation about what those functions do on MinGW? They do what you'd expect, but support only ACL_TYPE_ACCESS. They know about ACL_TYPE_DEFAULT, but always return EINVAL for it, since it's next to impossible (and not recommended) to have a directory on Windows which has no default ACLs associated with it. You can see their sources in src/w32.c in the Emacs repository. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Sun May 31 15:18:46 2015 Received: (at 20681) by debbugs.gnu.org; 31 May 2015 19:18:46 +0000 Received: from localhost ([127.0.0.1]:35109 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Yz8kv-0005du-J5 for submit@debbugs.gnu.org; Sun, 31 May 2015 15:18:46 -0400 Received: from mail-oi0-f43.google.com ([209.85.218.43]:35178) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Yz8kt-0005de-1Q for 20681@debbugs.gnu.org; Sun, 31 May 2015 15:18:44 -0400 Received: by oihd6 with SMTP id d6so88093523oih.2 for <20681@debbugs.gnu.org>; Sun, 31 May 2015 12:18:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=zG9I9WqTTyOzg4sST5uFumNtKkwxq3/r1NUydxDNaFY=; b=IAha9llNkhkgezSdjWlMxPoHnBPXall9ishlq8dFJEjLt9+pOq/1B1lMVjXcqv4LZA ZnKGXmNH3On37noqToKyqZmlCiBC6hsfl0XmVQZBr8tcFa45Wgs46TKBL4JAX0bIHD2Z 1xG+DrQmYEAyTm0ikDbl+FUgOabYbdv7hdRIQDeyIM67ZXaMkf6w+kGjQlKglj0gg5Vw Al4S579Q/G6hbau8wvKn2amQyAiRV8sVp6CA4SBZ/XTBDk886RsKXaqps0JOLdn3wI0Y 98xq57jLZmqundk2NhvCHokPkwCmgiOF2nx53LlhwAHhGHIg66ngYAuZeKj+mIKNC6wE 5amA== MIME-Version: 1.0 X-Received: by 10.202.84.143 with SMTP id i137mr14334549oib.114.1433099917369; Sun, 31 May 2015 12:18:37 -0700 (PDT) Received: by 10.182.143.72 with HTTP; Sun, 31 May 2015 12:18:37 -0700 (PDT) In-Reply-To: <83oal0u8g0.fsf@gnu.org> References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> <83siaeuzzk.fsf@gnu.org> <83lhg6uuyy.fsf@gnu.org> <83oal0u8g0.fsf@gnu.org> Date: Sun, 31 May 2015 21:18:37 +0200 Message-ID: Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] From: =?UTF-8?Q?Andreas_Gr=C3=BCnbacher?= To: Eli Zaretskii Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 20681 Cc: 20681@debbugs.gnu.org, Paul Eggert , Nick Andryshak , Angelo Graziosi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Eli, 2015-05-31 16:29 GMT+02:00 Eli Zaretskii : >> Date: Sat, 30 May 2015 15:06:16 +0200 >> From: Andreas Gr=C3=BCnbacher >> Cc: Nick Andryshak , 20681@debbugs.gnu.org, >> Paul Eggert , Angelo Graziosi >> >> > Please tell what do you want to see in confg.h, specifically. I can >> > force the Emacs development head to compile set-permissions.c, so >> > perhaps Emacs's config.h will do. >> >> It may. I have no idea what kind of acl functionality emacs on MinGW >> should have though. > > Emacs built with MinGW has the same functionality on Windows as Emacs > does on Posix hosts: get a file's ACL as a text string, set a file's > ACL from text string description, and copy ACL from one file to > another. > > The relevant functions, acl_get_file, acl_set_file, acl_to_text, > acl_from_text, and acl_free are implemented as part of Emacs. So those are the functions that gnulib is seeing? If so, then emacs could provide acl_delete_def_file as well, and everything will be fine again. But shouldn't Windows ACL support be added to get_permissions() and set_permissions() proper instead of emulating Windows ACL support through the POSIX draft ACL interface? The _to_text() and _from_text() functions could be modified to take a struct permission_context argument; they could be moved into gnulib or remain part of emacs. As a side effect of that, cp in coreutils would then also do the right thin= g on Windows (if someone made coreutils build there again). >> What did it do before? > > The only ACL-related function that Emacs on Windows was using from > Gnulib was acl_errno_valid. All the rest were implemented in the > Emacs sources. > > IOW, the Gnulib ACL functions were almost completely unused in the > MinGW build. However, they did compile, which allowed us to keep the > Gnulib configuration very similar to what was used on Posix hosts. > Which is why I'm not sure it is worth your while to do more than > you've already done, unless you do want to make sure the code at least > compiles as it did before. > > With that caveat, I answer below your questions, regardless. > >> Is the build failure new or did it already exist before the acl >> rewrite? > > It is new. Before the rewrite, the file qcopy-acl.c would compile > with MinGW, although the function qcopy_acl was not called in the > MinGW build, and so qcopy-acl.o was not linked into the binary. But > it would at least compile. > > After the rewrite, qcopy-acl.c is just a thin wrapper around > get-permissions.c and set-permissions.c. The former still compiles > with MinGW, but the latter doesn't. The reason is this cpp > conditional: > > # ifndef HAVE_ACL_DELETE_DEF_FILE > # error Must have acl_delete_def_file (see POSIX 1003.1e draft 17). > # endif > > I don't understand why the code requires acl_delete_def_file where it > previously did not: it's not like setting permissions will absolutely > not work if there is no such function. I see now what has changed: qcopy_acl didn't call acl_delete_def_file before but it should have for directories. (The sibling function qset_acl did call acl_delete_def_file even before the rewrite.) > E.g., why not do something like the following instead: > > # ifndef HAVE_ACL_DELETE_DEF_FILE > ret =3D -1; > errno =3D ENOSYS; > # else > ret =3D acl_delete_def_file (name); > > # endif Nope, the call is really needed. > More generally, copying ACLs from one file to another does not need > any analysis of what's in the ACLs being copied: it could simply treat > the ACLs as an opaque object, something whose structure and semantics > are known only to the innards of acl_get_file and acl_set_file. So > building qcopy_acl on top of get_permissions and set_permissions, > which are more flexible, and do require that knowledge, is IMO > fundamentally wrong, as it makes much harder to port this simple and > important Gnulib function to other platforms. I disagree. Have a look at struct permission_context; acl_get_file() and acl_set_file() is part of the POSIX draft ACL API but other platforms have totally different data structures and interfaces. Windows ACLs should be implemented as another kind of ACLs, not disguised as POSIX ACLs. > After all, copying ACLs from one file to another is much more frequent > and important an operation than setting ACLs from user-specified > arguments. Probably, yes. > What's more, the assumption that if acl_get_file and acl_set_file are > available, then so should be acl_delete_def_file is yet another > obstacle, IMO gratuitous one. No, acl_get_file, acl_set_file, and acl_delete_def_file are all part of the POSIX ACL API, and acl_delete_def_file is needed for directories. >> Which acl related symbols do you have in config.h? > > HAVE_ACL_FREE > HAVE_ACL_FROM_TEXT > HAVE_ACL_GET_FILE > HAVE_ACL_SET_FILE > HAVE_SYS_ACL_H > USE_ACL > >> If it has acl_get_file and acl_set_file, where can I find >> documentation about what those functions do on MinGW? > > They do what you'd expect, but support only ACL_TYPE_ACCESS. They > know about ACL_TYPE_DEFAULT, but always return EINVAL for it, since > it's next to impossible (and not recommended) to have a directory on > Windows which has no default ACLs associated with it. > > You can see their sources in src/w32.c in the Emacs repository. That's just wrong. Windows ACLs can contain effective as well as inheritabl= e permissions; the split between types as with POSIX ACLs doesn't exist. Thanks, Andreas From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 01 11:05:34 2015 Received: (at 20681) by debbugs.gnu.org; 1 Jun 2015 15:05:34 +0000 Received: from localhost ([127.0.0.1]:36296 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YzRHR-0001nv-KP for submit@debbugs.gnu.org; Mon, 01 Jun 2015 11:05:34 -0400 Received: from mtaout22.012.net.il ([80.179.55.172]:54082) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YzRHM-0001nL-4S for 20681@debbugs.gnu.org; Mon, 01 Jun 2015 11:05:29 -0400 Received: from conversion-daemon.a-mtaout22.012.net.il by a-mtaout22.012.net.il (HyperSendmail v2007.08) id <0NP900B00TUT3W00@a-mtaout22.012.net.il> for 20681@debbugs.gnu.org; Mon, 01 Jun 2015 18:05:21 +0300 (IDT) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout22.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NP900AP0TWWRO90@a-mtaout22.012.net.il>; Mon, 01 Jun 2015 18:05:21 +0300 (IDT) Date: Mon, 01 Jun 2015 18:05:07 +0300 From: Eli Zaretskii Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] In-reply-to: X-012-Sender: halo1@inter.net.il To: Andreas =?utf-8?Q?Gr=C3=BCnbacher?= Message-id: <834mmrtqos.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-transfer-encoding: 8BIT References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> <83siaeuzzk.fsf@gnu.org> <83lhg6uuyy.fsf@gnu.org> <83oal0u8g0.fsf@gnu.org> X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 20681 Cc: 20681@debbugs.gnu.org, eggert@cs.ucla.edu, nandryshak@gmail.com, angelo.graziosi@alice.it X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) > Date: Sun, 31 May 2015 21:18:37 +0200 > From: Andreas Grünbacher > Cc: Nick Andryshak , 20681@debbugs.gnu.org, > Paul Eggert , Angelo Graziosi > > > Emacs built with MinGW has the same functionality on Windows as Emacs > > does on Posix hosts: get a file's ACL as a text string, set a file's > > ACL from text string description, and copy ACL from one file to > > another. > > > > The relevant functions, acl_get_file, acl_set_file, acl_to_text, > > acl_from_text, and acl_free are implemented as part of Emacs. > > So those are the functions that gnulib is seeing? If so, then emacs > could provide > acl_delete_def_file as well, and everything will be fine again. Everything is fine already: I removed set-permissions.c from the MinGW build. While acl_delete_def_file could be added, it would be a stub that always fails, so I see no point in doing that, as long as Gnulib ACL code is effectively ignored on Windows. > But shouldn't Windows ACL support be added to get_permissions() and > set_permissions() proper instead of emulating Windows ACL support through > the POSIX draft ACL interface? The _to_text() and _from_text() functions > could be modified to take a struct permission_context argument; they could > be moved into gnulib or remain part of emacs. What would be the benefit of doing that, though? You will see in the Emacs sources that currently acl_to_text produces the Windows-specific SDDL string representation of the file's DACL security descriptor; making that Posix-compliant in order for those functions to be able to work with the likes of acl_from_mode is an extremely non-trivial and thankless job. > As a side effect of that, cp in coreutils would then also do the right thing on > Windows (if someone made coreutils build there again). If cp just copies the ACLs, it doesn't need all this machinery. It just need to handle ACLs as an opaque object understood only by acl_get_file and acl_set_file. > > E.g., why not do something like the following instead: > > > > # ifndef HAVE_ACL_DELETE_DEF_FILE > > ret = -1; > > errno = ENOSYS; > > # else > > ret = acl_delete_def_file (name); > > > > # endif > > Nope, the call is really needed. I believe you, but I still don't understand why this couldn't support systems that don't have the notion of default ACL, or don't need to remove it when the file in question is actually a directory. You might have in mind Posix platforms that adhere to the relevant Posix draft, in which case it's exactly my point: this code makes it harder for non-Posix platforms to support these routines when it's easy to emulate acl_get_file and acl_set_file, but supporting addition or removal of the default ACL is hard or ineffective/pointless. > > More generally, copying ACLs from one file to another does not need > > any analysis of what's in the ACLs being copied: it could simply treat > > the ACLs as an opaque object, something whose structure and semantics > > are known only to the innards of acl_get_file and acl_set_file. So > > building qcopy_acl on top of get_permissions and set_permissions, > > which are more flexible, and do require that knowledge, is IMO > > fundamentally wrong, as it makes much harder to port this simple and > > important Gnulib function to other platforms. > > I disagree. Have a look at struct permission_context; acl_get_file() and > acl_set_file() is part of the POSIX draft ACL API but other platforms > have totally different data structures and interfaces. Windows ACLs > should be implemented as another kind of ACLs, not disguised as > POSIX ACLs. See above: doing so is of course possible, but it's a lot of hassle for very little, if any, benefits. It is very easy to provide on MS-Windows the minimum emulation of Posix interfaces that allows to (a) copy ACLs from one file to another and (b) convert ACLs to and from text representation for human consumption or for logging. That's all Emacs needs, and that's all most other programs will ever need. Adding anything else to the soup raises the bar much higher, because the semantics of Windows ACLs is very different. For starters, where Posix platforms have 3 rwx access bits, on Windows there are 7 standard access rights; mapping those 7 to the 3 Posix bits will at best seriously limit what Windows programs can do with ACLs. And then there are the issues with the ordering of ACEs in an ACL, with implicit access rights via group membership, etc. etc. So I think the depth of compliance which is expected by set-permissions.c is too much for Windows, way beyond the proverbial 80-20 point. There's also the minor (but important for Emacs) point of supporting file names with characters outside of the current system codepage, which Gnulib can only provide in UTF-8 locales, something that doesn't exist on Windows. > > After all, copying ACLs from one file to another is much more frequent > > and important an operation than setting ACLs from user-specified > > arguments. > > Probably, yes. > > > What's more, the assumption that if acl_get_file and acl_set_file are > > available, then so should be acl_delete_def_file is yet another > > obstacle, IMO gratuitous one. > > No, acl_get_file, acl_set_file, and acl_delete_def_file are all part of the > POSIX ACL API, and acl_delete_def_file is needed for directories. For Posix platforms, yes. I was thinking about non-Posix ones, where there's no such necessary linkage. > >> If it has acl_get_file and acl_set_file, where can I find > >> documentation about what those functions do on MinGW? > > > > They do what you'd expect, but support only ACL_TYPE_ACCESS. They > > know about ACL_TYPE_DEFAULT, but always return EINVAL for it, since > > it's next to impossible (and not recommended) to have a directory on > > Windows which has no default ACLs associated with it. > > > > You can see their sources in src/w32.c in the Emacs repository. > > That's just wrong. Windows ACLs can contain effective as well as inheritable > permissions; the split between types as with POSIX ACLs doesn't exist. Not sure what you are saying here: which part of what I wrote is "wrong", exactly? If what you mean is that ACL_TYPE_ACCESS could or should include the inheritance flags, then that's what is currently implemented in Emacs, but reporting or adding/removing those flags is not supported. IMO, a general-purpose program such as Emacs should not futz with the inheritance flags in Windows ACLs, because doing so makes it very easy to inadvertently make directories and files inaccessible or exempt from important operations like system-wide backup. Fortunately, Emacs doesn't need these capabilities, at least not explicitly on the acl_get_file and acl_set_file level. Once again, please don't take the above as some objection to your work, or request to make any changes for MinGW. They are just observations of a bystander at this point. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 01 12:18:52 2015 Received: (at 20681) by debbugs.gnu.org; 1 Jun 2015 16:18:52 +0000 Received: from localhost ([127.0.0.1]:36332 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YzSQN-0003Xl-Dx for submit@debbugs.gnu.org; Mon, 01 Jun 2015 12:18:52 -0400 Received: from mail-ob0-f182.google.com ([209.85.214.182]:35373) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YzSQL-0003XY-A7 for 20681@debbugs.gnu.org; Mon, 01 Jun 2015 12:18:50 -0400 Received: by obcnx10 with SMTP id nx10so101905672obc.2 for <20681@debbugs.gnu.org>; Mon, 01 Jun 2015 09:18:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=+uBuhIlBQq9o/pEmHL6CW63uZ/vmnZdROn2rCkyoY84=; b=bENKALnXEz5Es+NoFt/ubpmiTdHmwh+KYYdiUebbnalG7PpLWbS9To7b0SGrpQrJHh VAPQlfHa05h4ZGN0mXDei4kauOnKtVu7jghc0m6z0CBjemYcpv8kdCyUdG4sjb72sKu9 WLuHtWdfEYQKa8wX2gtYWS35uJwNgmKnjSUFzBCI2uURAa7FBrqMGN9CBXcWuzxS54ok 9dLvD8DGhQNppkpzRRIonMnZFJLvbdfIwuwM38xA+eUTsA1BRwO37W/f82HZsGwOphkh eAVKQ06N27vQ+DNf+jQ9TyA4b/Z6495RSqZMnQaz8PW8mBgt23qkUYUimnmR5uK8DoA+ bRPQ== MIME-Version: 1.0 X-Received: by 10.60.80.229 with SMTP id u5mr19030434oex.27.1433175523446; Mon, 01 Jun 2015 09:18:43 -0700 (PDT) Received: by 10.182.143.72 with HTTP; Mon, 1 Jun 2015 09:18:43 -0700 (PDT) In-Reply-To: <834mmrtqos.fsf@gnu.org> References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> <83siaeuzzk.fsf@gnu.org> <83lhg6uuyy.fsf@gnu.org> <83oal0u8g0.fsf@gnu.org> <834mmrtqos.fsf@gnu.org> Date: Mon, 1 Jun 2015 18:18:43 +0200 Message-ID: Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] From: =?UTF-8?Q?Andreas_Gr=C3=BCnbacher?= To: Eli Zaretskii Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 20681 Cc: 20681@debbugs.gnu.org, Paul Eggert , Nick Andryshak , Angelo Graziosi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) 2015-06-01 17:05 GMT+02:00 Eli Zaretskii : >> But shouldn't Windows ACL support be added to get_permissions() and >> set_permissions() proper instead of emulating Windows ACL support through >> the POSIX draft ACL interface? The _to_text() and _from_text() functions >> could be modified to take a struct permission_context argument; they could >> be moved into gnulib or remain part of emacs. > > What would be the benefit of doing that, though? You will see in the > Emacs sources that currently acl_to_text produces the Windows-specific > SDDL string representation of the file's DACL security descriptor; > making that Posix-compliant in order for those functions to be able to > work with the likes of acl_from_mode is an extremely non-trivial and > thankless job. You would add a Windows ACL to struct permission_context, add support for it to get_permissions and set_permissions, and add permission_context_from_text() and permission_context_to_text() functions. The _from_text and _to_text functions could initially only support POSIX and Windows ACLs, which would be what emacs supports today; support for other kinds of ACLs could be added later at any point. As a result, emacs would grow better acl support over time, and so would the other packages using get_permissions and set_permissions. >> As a side effect of that, cp in coreutils would then also do the right thing on >> Windows (if someone made coreutils build there again). > > If cp just copies the ACLs, it doesn't need all this machinery. It > just need to handle ACLs as an opaque object understood only by > acl_get_file and acl_set_file. There's a bit more to copying acls if you want to copy between file systems which support different kinds of acls (or no acls) in a reasonable way. The cp utility is dealing with this kind of problem, and I can't think of a lot of reason why that logic shouldn't be shared with emacs. >> Nope, the call is really needed. > > I believe you, but I still don't understand why this couldn't support > systems that don't have the notion of default ACL, or don't need to > remove it when the file in question is actually a directory. > > You might have in mind Posix platforms that adhere to the relevant > Posix draft, in which case it's exactly my point: this code makes it > harder for non-Posix platforms to support these routines when it's > easy to emulate acl_get_file and acl_set_file, but supporting addition > or removal of the default ACL is hard or ineffective/pointless. I'm talking *exactly* about systems which don't have POSIX ACLs. It doesn't make a whole lot of sense to emulate Windows as POSIX ACLs, and it makes no sense to emulate them as ACL_TYPE_ACCESS. If you emulate POSIX ACLs, then you need to emulate both ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT, or ACL_TYPE_EXTENDED instead of ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT. But even that isn't really all that useful; there is no reason why Windows ACLs can't be implemented as a new kind instead of forcing them through a POSIX-y interface. >> > More generally, copying ACLs from one file to another does not need >> > any analysis of what's in the ACLs being copied: it could simply treat >> > the ACLs as an opaque object, something whose structure and semantics >> > are known only to the innards of acl_get_file and acl_set_file. So >> > building qcopy_acl on top of get_permissions and set_permissions, >> > which are more flexible, and do require that knowledge, is IMO >> > fundamentally wrong, as it makes much harder to port this simple and >> > important Gnulib function to other platforms. >> >> I disagree. Have a look at struct permission_context; acl_get_file() and >> acl_set_file() is part of the POSIX draft ACL API but other platforms >> have totally different data structures and interfaces. Windows ACLs >> should be implemented as another kind of ACLs, not disguised as >> POSIX ACLs. > > See above: doing so is of course possible, but it's a lot of hassle > for very little, if any, benefits. It is very easy to provide on > MS-Windows the minimum emulation of Posix interfaces that allows to > (a) copy ACLs from one file to another and (b) convert ACLs to and > from text representation for human consumption or for logging. That's > all Emacs needs, and that's all most other programs will ever need. > Adding anything else to the soup raises the bar much higher, because > the semantics of Windows ACLs is very different. For starters, where > Posix platforms have 3 rwx access bits, on Windows there are 7 > standard access rights; mapping those 7 to the 3 Posix bits will at > best seriously limit what Windows programs can do with ACLs. And then > there are the issues with the ordering of ACEs in an ACL, with > implicit access rights via group membership, etc. etc. > > So I think the depth of compliance which is expected by > set-permissions.c is too much for Windows, way beyond the proverbial > 80-20 point. Adding Windows ACL support to get_permissions and set_permissions really doesn't take a whole lot more than copying the code from emacs into gnulib and testing the result. It's really not such a big deal. > There's also the minor (but important for Emacs) point of supporting > file names with characters outside of the current system codepage, > which Gnulib can only provide in UTF-8 locales, something that doesn't > exist on Windows. This has nothing to do with get_permissions and set_permissions. >> >> If it has acl_get_file and acl_set_file, where can I find >> >> documentation about what those functions do on MinGW? >> > >> > They do what you'd expect, but support only ACL_TYPE_ACCESS. They >> > know about ACL_TYPE_DEFAULT, but always return EINVAL for it, since >> > it's next to impossible (and not recommended) to have a directory on >> > Windows which has no default ACLs associated with it. >> > >> > You can see their sources in src/w32.c in the Emacs repository. >> >> That's just wrong. Windows ACLs can contain effective as well as inheritable >> permissions; the split between types as with POSIX ACLs doesn't exist. > > Not sure what you are saying here: which part of what I wrote is > "wrong", exactly? > > If what you mean is that ACL_TYPE_ACCESS could or should include the > inheritance flags, then that's what is currently implemented in Emacs, > but reporting or adding/removing those flags is not supported. The whole point of splitting POSIX ACLs into the two types ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT is to get rid of inheritance flags in ACLs. Having inheritance flags in ACL_TYPE_ACCESS or ACL_TYPE_DEFAULT is totally wrong. Windows doesn't have this split, and neither does ACL_TYPE_EXTENDED. Andreas From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 01 13:40:00 2015 Received: (at 20681) by debbugs.gnu.org; 1 Jun 2015 17:40:00 +0000 Received: from localhost ([127.0.0.1]:36367 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YzTgt-0005Q1-B5 for submit@debbugs.gnu.org; Mon, 01 Jun 2015 13:39:59 -0400 Received: from mtaout25.012.net.il ([80.179.55.181]:50601) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YzTgp-0005Pl-Pm for 20681@debbugs.gnu.org; Mon, 01 Jun 2015 13:39:57 -0400 Received: from conversion-daemon.mtaout25.012.net.il by mtaout25.012.net.il (HyperSendmail v2007.08) id <0NPA00H000FB0600@mtaout25.012.net.il> for 20681@debbugs.gnu.org; Mon, 01 Jun 2015 20:35:40 +0300 (IDT) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by mtaout25.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NPA00FUW0VG0O40@mtaout25.012.net.il>; Mon, 01 Jun 2015 20:35:40 +0300 (IDT) Date: Mon, 01 Jun 2015 20:39:35 +0300 From: Eli Zaretskii Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] In-reply-to: X-012-Sender: halo1@inter.net.il To: Andreas =?utf-8?Q?Gr=C3=BCnbacher?= Message-id: <83vbf7s4yw.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-transfer-encoding: 8BIT References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> <83siaeuzzk.fsf@gnu.org> <83lhg6uuyy.fsf@gnu.org> <83oal0u8g0.fsf@gnu.org> <834mmrtqos.fsf@gnu.org> X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 20681 Cc: 20681@debbugs.gnu.org, eggert@cs.ucla.edu, nandryshak@gmail.com, angelo.graziosi@alice.it X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) > Date: Mon, 1 Jun 2015 18:18:43 +0200 > From: Andreas Grünbacher > Cc: Nick Andryshak , 20681@debbugs.gnu.org, > Paul Eggert , Angelo Graziosi > > 2015-06-01 17:05 GMT+02:00 Eli Zaretskii : > >> But shouldn't Windows ACL support be added to get_permissions() and > >> set_permissions() proper instead of emulating Windows ACL support through > >> the POSIX draft ACL interface? The _to_text() and _from_text() functions > >> could be modified to take a struct permission_context argument; they could > >> be moved into gnulib or remain part of emacs. > > > > What would be the benefit of doing that, though? You will see in the > > Emacs sources that currently acl_to_text produces the Windows-specific > > SDDL string representation of the file's DACL security descriptor; > > making that Posix-compliant in order for those functions to be able to > > work with the likes of acl_from_mode is an extremely non-trivial and > > thankless job. > > You would add a Windows ACL to struct permission_context, add support for > it to get_permissions and set_permissions, and add > permission_context_from_text() and permission_context_to_text() functions. > > The _from_text and _to_text functions could initially only support POSIX and > Windows ACLs, which would be what emacs supports today; support > for other kinds of ACLs could be added later at any point. > > As a result, emacs would grow better acl support over time, and so would > the other packages using get_permissions and set_permissions. Like I said: a lot of work for too little a gain. I'm not volunteering, sorry. Emacs already has ACL support that is good enough for me. > >> As a side effect of that, cp in coreutils would then also do the right thing on > >> Windows (if someone made coreutils build there again). > > > > If cp just copies the ACLs, it doesn't need all this machinery. It > > just need to handle ACLs as an opaque object understood only by > > acl_get_file and acl_set_file. > > There's a bit more to copying acls if you want to copy between file > systems which > support different kinds of acls (or no acls) in a reasonable way. That problem doesn't exist on Windows, as ACLs are mapped to the same representation, no matter what the underlying filesystem. > It doesn't make a whole lot of sense to emulate Windows as POSIX > ACLs, and it makes no sense to emulate them as ACL_TYPE_ACCESS. It made a lot of sense to me at the time. Emacs (and other programs I'm interested in) comes from the Posix world, so its "mindset" is that of a Posix program. And the Posix APIs for manipulating ACLs are simple and well documented, so emulating them was easy. As for ACL_TYPE_ACCESS, since Emacs uses only one type of ACLs, it doesn't matter for an emulation how that type is identified. It's just a symbol. > > So I think the depth of compliance which is expected by > > set-permissions.c is too much for Windows, way beyond the proverbial > > 80-20 point. > > Adding Windows ACL support to get_permissions and set_permissions > really doesn't take a whole lot more than copying the code from emacs into > gnulib and testing the result. It's really not such a big deal. ??? If it were true, set-permissions.c would compile on Windows. It doesn't. So there's more to this job than just copying the code. > > There's also the minor (but important for Emacs) point of supporting > > file names with characters outside of the current system codepage, > > which Gnulib can only provide in UTF-8 locales, something that doesn't > > exist on Windows. > > This has nothing to do with get_permissions and set_permissions. It's a reason not to use Gnulib for any file-related operations in Emacs on Windows, because Emacs on Windows uses Unicode APIs to access files by their names. From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 01 14:41:12 2015 Received: (at 20681) by debbugs.gnu.org; 1 Jun 2015 18:41:12 +0000 Received: from localhost ([127.0.0.1]:36386 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YzUe8-0006r9-4f for submit@debbugs.gnu.org; Mon, 01 Jun 2015 14:41:12 -0400 Received: from mail-oi0-f45.google.com ([209.85.218.45]:35944) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YzUe5-0006qs-0B for 20681@debbugs.gnu.org; Mon, 01 Jun 2015 14:41:09 -0400 Received: by oihb142 with SMTP id b142so108256787oih.3 for <20681@debbugs.gnu.org>; Mon, 01 Jun 2015 11:41:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=qNkG1r59hnoPlZNAg+uqs++gjO+6qkY46ctOfO0+8/M=; b=RruktHQ7+UU2rkF25pJ5915+uAA37P12Qys49R6SKHM8WfrCoA5xuCVFW1cc7e2ili 3LZpeZfMi0tL2oCZUNoDDbA3t61/ruwCd2yN71pUtfFHisJymWzlhrchXT0Yo+A5OncZ z1g+q47W28lgmHoreCRlBBZ6WQsbPKWWgxBmKqDZA50hQqYgTpDeLPt/cAOcoaYuROdK 1uMgo9MeR1tk171zv1E8mDyTqgoSj9P9SsO+4uR06LE1jr2WZh1ULlw+/jK8IPkluhVv 86WMpIm77K3y2rWy8BlOE57MJkhheAl5jERdF4ziNP1uVUrOchqaXxaHAOXc4T8Zj7Bn /Zgw== MIME-Version: 1.0 X-Received: by 10.182.40.165 with SMTP id y5mr19436901obk.21.1433184063089; Mon, 01 Jun 2015 11:41:03 -0700 (PDT) Received: by 10.182.143.72 with HTTP; Mon, 1 Jun 2015 11:41:02 -0700 (PDT) In-Reply-To: <83vbf7s4yw.fsf@gnu.org> References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> <83siaeuzzk.fsf@gnu.org> <83lhg6uuyy.fsf@gnu.org> <83oal0u8g0.fsf@gnu.org> <834mmrtqos.fsf@gnu.org> <83vbf7s4yw.fsf@gnu.org> Date: Mon, 1 Jun 2015 20:41:02 +0200 Message-ID: Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] From: =?UTF-8?Q?Andreas_Gr=C3=BCnbacher?= To: Eli Zaretskii Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 20681 Cc: 20681@debbugs.gnu.org, Paul Eggert , Nick Andryshak , Angelo Graziosi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) 2015-06-01 19:39 GMT+02:00 Eli Zaretskii : > ??? If it were true, set-permissions.c would compile on Windows. It > doesn't. I've already explained, at length, why it currently doesn't compile, and at least three ways of how it could be fixed. > So there's more to this job than just copying the code. Yes, adding some #ifdefs and autoconf checks, that kind of thing. That's not so hard. >> > There's also the minor (but important for Emacs) point of supporting >> > file names with characters outside of the current system codepage, >> > which Gnulib can only provide in UTF-8 locales, something that doesn't >> > exist on Windows. >> >> This has nothing to do with get_permissions and set_permissions. > > It's a reason not to use Gnulib for any file-related operations in > Emacs on Windows, because Emacs on Windows uses Unicode APIs to access > files by their names. So it's okay to have this function in emacs: src/w32.c:acl_get_file (const char *fname, acl_type_t type) but the same interface in gnulib wouldn't be okay? Right ... I'll stop this discussion now, you're just not making sense. Andreas From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 01 15:02:20 2015 Received: (at 20681) by debbugs.gnu.org; 1 Jun 2015 19:02:20 +0000 Received: from localhost ([127.0.0.1]:36399 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YzUyZ-0007MO-76 for submit@debbugs.gnu.org; Mon, 01 Jun 2015 15:02:20 -0400 Received: from mtaout22.012.net.il ([80.179.55.172]:61341) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YzUyW-0007M8-0h for 20681@debbugs.gnu.org; Mon, 01 Jun 2015 15:02:17 -0400 Received: from conversion-daemon.a-mtaout22.012.net.il by a-mtaout22.012.net.il (HyperSendmail v2007.08) id <0NPA00C004UDQ200@a-mtaout22.012.net.il> for 20681@debbugs.gnu.org; Mon, 01 Jun 2015 22:02:09 +0300 (IDT) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout22.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NPA00CKF4VKES90@a-mtaout22.012.net.il>; Mon, 01 Jun 2015 22:02:09 +0300 (IDT) Date: Mon, 01 Jun 2015 22:01:55 +0300 From: Eli Zaretskii Subject: Re: bug#20681: Build failure [MSYS2/MINGW64, OSX] In-reply-to: X-012-Sender: halo1@inter.net.il To: Andreas =?utf-8?Q?Gr=C3=BCnbacher?= Message-id: <83r3pvs15o.fsf@gnu.org> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-transfer-encoding: 8BIT References: <55671056.9030604@alice.it> <83oal4wq59.fsf@gnu.org> <55685B1B.1040507@alice.it> <55689A39.7080804@cs.ucla.edu> <5568C1C8.2090406@cs.ucla.edu> <83siaeuzzk.fsf@gnu.org> <83lhg6uuyy.fsf@gnu.org> <83oal0u8g0.fsf@gnu.org> <834mmrtqos.fsf@gnu.org> <83vbf7s4yw.fsf@gnu.org> X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 20681 Cc: 20681@debbugs.gnu.org, eggert@cs.ucla.edu, nandryshak@gmail.com, angelo.graziosi@alice.it X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Eli Zaretskii List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) > Date: Mon, 1 Jun 2015 20:41:02 +0200 > From: Andreas Grünbacher > Cc: Nick Andryshak , 20681@debbugs.gnu.org, > Paul Eggert , Angelo Graziosi > > 2015-06-01 19:39 GMT+02:00 Eli Zaretskii : > > ??? If it were true, set-permissions.c would compile on Windows. It > > doesn't. > > I've already explained, at length, why it currently doesn't compile, and > at least three ways of how it could be fixed. > > > So there's more to this job than just copying the code. > > Yes, adding some #ifdefs and autoconf checks, that kind of thing. > That's not so hard. You have just explained at length why using emulation of Posix ACL APIs would be wrong on Windows, so I assumed that copying the Emacs implementation with minimal changes into Gnulib must also be wrong in your opinion. > >> > There's also the minor (but important for Emacs) point of supporting > >> > file names with characters outside of the current system codepage, > >> > which Gnulib can only provide in UTF-8 locales, something that doesn't > >> > exist on Windows. > >> > >> This has nothing to do with get_permissions and set_permissions. > > > > It's a reason not to use Gnulib for any file-related operations in > > Emacs on Windows, because Emacs on Windows uses Unicode APIs to access > > files by their names. > > So it's okay to have this function in emacs: > > src/w32.c:acl_get_file (const char *fname, acl_type_t type) > > but the same interface in gnulib wouldn't be okay? Right ... Emacs on Windows pretends to live in a UTF-8 locale, so file names are encoded in UTF-8 before they are passed to functions like acl_get_file; then acl_get_file and other such functions convert the file names to UTF-16 before calling Windows Unicode APIs. This works well for Emacs, but Gnulib is not just for Emacs, it is used by many other projects that build out of the box with MinGW. Most, if not all, of those projects do NOT pass UTF-8 file names to library functions, and many of them don't even have facilities that exist in Emacs to encode file names before calling library functions -- they simply pass C char * strings to them, which will only work on Windows if those strings are encoded in the current system codepage. Therefore, functions that assume UTF-8 encoded file name CANNOT be added to Gnulib, as they will break every project except Emacs. Gnulib on Windows _requires_ file names in the system codepage, which is no longer acceptable for Emacs, because Emacs has broken out of this limitation several releases ago, and it can now visit files whose names are not limited to system codepage. > I'll stop this discussion now, you're just not making sense. Maybe you should study the subject more deeply, before passing such judgments. From unknown Fri Jun 20 20:07:42 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Tue, 30 Jun 2015 11:24:07 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator