unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#30350: Build breakage of master on MacOS 10.13
       [not found] ` <CAArVCkQGLMbK=peLAdX1N7bozc2hFg7iQdaUaW2ZnEUeSjcc7A@mail.gmail.com>
@ 2018-02-06 15:27   ` Mikhail Gusarov
  2018-02-06 17:40     ` John Wiegley
                       ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Mikhail Gusarov @ 2018-02-06 15:27 UTC (permalink / raw)
  To: Philipp Stephani; +Cc: 30350

[-- Attachment #1: Type: text/plain, Size: 690 bytes --]

Hi.

On Tue, 6 Feb 2018, at 09:08, Philipp Stephani wrote:
>> I see a breakage of Emacs build on master under MacOS 10.13. Build
>> stops with the following message:>> 
>> org/org-timer.el:39:1:Error: Searching for program: Is a directory,
>> /bin/zsh>> 
>> The file in question is not a directory:
>> 
>> % ls -l /bin/zsh
>> 404K -rwxr-xr-x 1 root wheel 596K
> This is https://debbugs.gnu.org/cgi/bugreport.cgi?bug=30350.

Yes, it is. I can't find the relevant sources right away, but opening a
file inside a file is a syntax for opening  resource forks under OS X,
so `/foo/bar/baz/.` is a "directory" of resource forks there. This
syntax is not likely to go away anytime soon.
Mikhail.


[-- Attachment #2: Type: text/html, Size: 1378 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#30350: Build breakage of master on MacOS 10.13
  2018-02-06 15:27   ` bug#30350: Build breakage of master on MacOS 10.13 Mikhail Gusarov
@ 2018-02-06 17:40     ` John Wiegley
  2018-02-06 21:26       ` Mikhail Gusarov
  2018-02-06 18:56     ` Alan Third
  2018-02-06 21:14     ` Philipp Stephani
  2 siblings, 1 reply; 9+ messages in thread
From: John Wiegley @ 2018-02-06 17:40 UTC (permalink / raw)
  To: Mikhail Gusarov; +Cc: 30350, Philipp Stephani

>>>>> "MG" == Mikhail Gusarov <dottedmag@dottedmag.net> writes:

MG>         org/org-timer.el:39:1:Error: Searching for program: Is a
MG> directory, /bin/zsh

MG>         The file in question is not a directory:

MG> Yes, it is. I can't find the relevant sources right away, but opening a
MG> file inside a file is a syntax for opening resource forks under OS X, so
MG> `/foo/bar/baz/.` is a "directory" of resource forks there. This syntax is
MG> not likely to go away anytime soon.

Mikhail, are you saying that "/bin/zsh", where /bin/zsh is a file, should
report as a directory on OS X? I think I've misunderstood your comment.

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#30350: Build breakage of master on MacOS 10.13
  2018-02-06 15:27   ` bug#30350: Build breakage of master on MacOS 10.13 Mikhail Gusarov
  2018-02-06 17:40     ` John Wiegley
@ 2018-02-06 18:56     ` Alan Third
  2018-02-06 21:15       ` Philipp Stephani
  2018-02-06 21:14     ` Philipp Stephani
  2 siblings, 1 reply; 9+ messages in thread
From: Alan Third @ 2018-02-06 18:56 UTC (permalink / raw)
  To: Mikhail Gusarov; +Cc: 30350, Philipp Stephani, Paul Eggert

On Tue, Feb 06, 2018 at 04:27:40PM +0100, Mikhail Gusarov wrote:
> Yes, it is. I can't find the relevant sources right away, but opening a
> file inside a file is a syntax for opening  resource forks under OS X,
> so `/foo/bar/baz/.` is a "directory" of resource forks there. This
> syntax is not likely to go away anytime soon.

Hmm, perhaps this method of checking for a directory just won’t ever
work reliably on macOS then.
-- 
Alan Third





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#30350: Build breakage of master on MacOS 10.13
  2018-02-06 15:27   ` bug#30350: Build breakage of master on MacOS 10.13 Mikhail Gusarov
  2018-02-06 17:40     ` John Wiegley
  2018-02-06 18:56     ` Alan Third
@ 2018-02-06 21:14     ` Philipp Stephani
  2 siblings, 0 replies; 9+ messages in thread
From: Philipp Stephani @ 2018-02-06 21:14 UTC (permalink / raw)
  To: Mikhail Gusarov; +Cc: 30350

[-- Attachment #1: Type: text/plain, Size: 1054 bytes --]

Mikhail Gusarov <dottedmag@dottedmag.net> schrieb am Di., 6. Feb. 2018 um
16:28 Uhr:

> Hi.
>
> On Tue, 6 Feb 2018, at 09:08, Philipp Stephani wrote:
>
> I see a breakage of Emacs build on master under MacOS 10.13. Build stops
> with the following message:
>
> org/org-timer.el:39:1:Error: Searching for program: Is a directory,
> /bin/zsh
>
> The file in question is not a directory:
>
> % ls -l /bin/zsh
> 404K -rwxr-xr-x 1 root wheel 596K
>
> This is https://debbugs.gnu.org/cgi/bugreport.cgi?bug=30350.
>
>
> Yes, it is. I can't find the relevant sources right away, but opening a
> file inside a file is a syntax for opening resource forks under OS X, so
> `/foo/bar/baz/.` is a "directory" of resource forks there. This syntax is
> not likely to go away anytime soon.
>
>
It's true that you can access the forks in a pseudo-directory
/foo/bar/baz/..namedforks/, but faccessat still seems to work correctly
even for files containing resource forks, at least on my system. That is,
the POSIX API doesn't actually treat /foo/bar/baz/. as a directory.

[-- Attachment #2: Type: text/html, Size: 1919 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#30350: Build breakage of master on MacOS 10.13
  2018-02-06 18:56     ` Alan Third
@ 2018-02-06 21:15       ` Philipp Stephani
  0 siblings, 0 replies; 9+ messages in thread
From: Philipp Stephani @ 2018-02-06 21:15 UTC (permalink / raw)
  To: Alan Third; +Cc: 30350, Paul Eggert, Mikhail Gusarov

[-- Attachment #1: Type: text/plain, Size: 686 bytes --]

Alan Third <alan@idiocy.org> schrieb am Di., 6. Feb. 2018 um 19:56 Uhr:

> On Tue, Feb 06, 2018 at 04:27:40PM +0100, Mikhail Gusarov wrote:
> > Yes, it is. I can't find the relevant sources right away, but opening a
> > file inside a file is a syntax for opening  resource forks under OS X,
> > so `/foo/bar/baz/.` is a "directory" of resource forks there. This
> > syntax is not likely to go away anytime soon.
>
> Hmm, perhaps this method of checking for a directory just won’t ever
> work reliably on macOS then.
>
>
But it works reliable in all isolated test cases that I've tried. Only the
combination with call-process seems to cause issues for some weird reason.

[-- Attachment #2: Type: text/html, Size: 999 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#30350: Build breakage of master on MacOS 10.13
  2018-02-06 17:40     ` John Wiegley
@ 2018-02-06 21:26       ` Mikhail Gusarov
  2018-02-06 21:29         ` Philipp Stephani
  2018-02-06 21:30         ` Mikhail Gusarov
  0 siblings, 2 replies; 9+ messages in thread
From: Mikhail Gusarov @ 2018-02-06 21:26 UTC (permalink / raw)
  To: John Wiegley; +Cc: 30350, Philipp Stephani

Hi John,

On Tue, 6 Feb 2018, at 18:40, John Wiegley wrote:

> Mikhail, are you saying that "/bin/zsh", where /bin/zsh is a file, should
> report as a directory on OS X? I think I've misunderstood your comment.

I'm saying that on OS X stat'ing /bin/zsh and /bin/zsh/ (or /bin/zsh/.) gives different results:

% stat /bin/zsh
16777220 721698 -rwxr-xr-x 1 root wheel 0 610288 "Feb  6 22:24:24 2018" "Sep 21 06:35:23 2017" "Nov  6 13:34:29 2017" "Sep 21 06:35:23 2017" 4194304 808 0x80020 /bin/zsh
% stat /bin/zsh/.
stat: /bin/zsh/.: stat: Not a directory
% stat /bin/zsh/
stat: /bin/zsh/: stat: Not a directory
%





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#30350: Build breakage of master on MacOS 10.13
  2018-02-06 21:26       ` Mikhail Gusarov
@ 2018-02-06 21:29         ` Philipp Stephani
  2018-02-06 21:31           ` Mikhail Gusarov
  2018-02-06 21:30         ` Mikhail Gusarov
  1 sibling, 1 reply; 9+ messages in thread
From: Philipp Stephani @ 2018-02-06 21:29 UTC (permalink / raw)
  To: Mikhail Gusarov; +Cc: 30350, John Wiegley

[-- Attachment #1: Type: text/plain, Size: 891 bytes --]

Mikhail Gusarov <dottedmag@dottedmag.net> schrieb am Di., 6. Feb. 2018 um
22:26 Uhr:

> Hi John,
>
> On Tue, 6 Feb 2018, at 18:40, John Wiegley wrote:
>
> > Mikhail, are you saying that "/bin/zsh", where /bin/zsh is a file, should
> > report as a directory on OS X? I think I've misunderstood your comment.
>
> I'm saying that on OS X stat'ing /bin/zsh and /bin/zsh/ (or /bin/zsh/.)
> gives different results:
>
> % stat /bin/zsh
> 16777220 721698 -rwxr-xr-x 1 root wheel 0 610288 <06102%2088> "Feb  6
> 22:24:24 2018" "Sep 21 06:35:23 2017" "Nov  6 13:34:29 2017" "Sep 21
> 06:35:23 2017" 4194304 808 0x80020 /bin/zsh
> % stat /bin/zsh/.
> stat: /bin/zsh/.: stat: Not a directory
> % stat /bin/zsh/
> stat: /bin/zsh/: stat: Not a directory
> %
>

That's the behavior required by POSIX, and Linux behaves in exactly the
same way, so it's not something where we'd need to special-case macOS.

[-- Attachment #2: Type: text/html, Size: 1343 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#30350: Build breakage of master on MacOS 10.13
  2018-02-06 21:26       ` Mikhail Gusarov
  2018-02-06 21:29         ` Philipp Stephani
@ 2018-02-06 21:30         ` Mikhail Gusarov
  1 sibling, 0 replies; 9+ messages in thread
From: Mikhail Gusarov @ 2018-02-06 21:30 UTC (permalink / raw)
  To: John Wiegley; +Cc: 30350, Philipp Stephani

On Tue, 6 Feb 2018, at 22:26, Mikhail Gusarov wrote:

> I'm saying that on OS X stat'ing /bin/zsh and /bin/zsh/ (or /bin/zsh/.) 
> gives different results:

And here is a test program and its output:

#include <sys/stat.h>
#include <errno.h>
#include <stdio.h>

static void teststat(const char *filename)
{
    struct stat st;
    errno = 0;
    int res = stat(filename, &st);
    printf("%s stat->%d errno->%d\n", filename, res, errno);
}

int main()
{
    teststat("/bin/zsh");
    teststat("/bin/zsh/");
    teststat("/bin/zsh/.");
    return 0;
}

% ./a
/bin/zsh stat->0 errno->0
/bin/zsh/ stat->-1 errno->20
/bin/zsh/. stat->-1 errno->20
%

errno 20 is ENOTDIR.





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#30350: Build breakage of master on MacOS 10.13
  2018-02-06 21:29         ` Philipp Stephani
@ 2018-02-06 21:31           ` Mikhail Gusarov
  0 siblings, 0 replies; 9+ messages in thread
From: Mikhail Gusarov @ 2018-02-06 21:31 UTC (permalink / raw)
  To: Philipp Stephani; +Cc: 30350, John Wiegley

[-- Attachment #1: Type: text/plain, Size: 714 bytes --]


On Tue, 6 Feb 2018, at 22:29, Philipp Stephani wrote:
>  I'm saying that on OS X stat'ing /bin/zsh and /bin/zsh/ (or
>  /bin/zsh/.) gives different results:>> 
>>  % stat /bin/zsh
>>  16777220 721698 -rwxr-xr-x 1 root wheel 0 610288[1] "Feb  6 22:24:24
>>  2018" "Sep 21 06:35:23 2017" "Nov  6 13:34:29 2017" "Sep 21 06:35:23
>>  2017" 4194304 808 0x80020 /bin/zsh>>  % stat /bin/zsh/.
>>  stat: /bin/zsh/.: stat: Not a directory
>>  % stat /bin/zsh/
>>  stat: /bin/zsh/: stat: Not a directory
>>  %
> 
> That's the behavior required by POSIX, and Linux behaves in
> exactly the same way, so it's not something where we'd need to special-
> case macOS.
Ah, ignore me then, please :)


Links:

  1. tel:06102%2088

[-- Attachment #2: Type: text/html, Size: 1400 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2018-02-06 21:31 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1517898686.4008581.1260933984.39AA3653@webmail.messagingengine.com>
     [not found] ` <CAArVCkQGLMbK=peLAdX1N7bozc2hFg7iQdaUaW2ZnEUeSjcc7A@mail.gmail.com>
2018-02-06 15:27   ` bug#30350: Build breakage of master on MacOS 10.13 Mikhail Gusarov
2018-02-06 17:40     ` John Wiegley
2018-02-06 21:26       ` Mikhail Gusarov
2018-02-06 21:29         ` Philipp Stephani
2018-02-06 21:31           ` Mikhail Gusarov
2018-02-06 21:30         ` Mikhail Gusarov
2018-02-06 18:56     ` Alan Third
2018-02-06 21:15       ` Philipp Stephani
2018-02-06 21:14     ` Philipp Stephani

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).