emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: master fails to build on FreeBSD when ACL support is on


From: Eli Zaretskii
Subject: Re: master fails to build on FreeBSD when ACL support is on
Date: Fri, 19 Jan 2018 20:45:04 +0200

> From: Stefan Monnier <address@hidden>
> Date: Fri, 19 Jan 2018 11:38:56 -0500
> 
> > -                        (make-temp-file (file-name-nondirectory 
> > target-file)))
> > +                        ;; If target-file is relative and includes
> > +                        ;; leading directories, make-temp-file will
> > +                        ;; assume those leading directories exist
> > +                        ;; under temporary-file-directory, which might
> > +                        ;; not be true.  So strip leading directories
> > +                        ;; from relative file names before calling
> > +                        ;; make-temp-file.
> > +                        (if (file-name-absolute-p target-file)
> > +                            (make-temp-file target-file)
> > +                          (make-temp-file
> > +                           (file-name-nondirectory target-file))))
> 
> Hmm.. the comment here doesn't explain the (file-name-absolute-p
> target-file) test, and the commit message

It doesn't?

> +                        ;; If target-file is relative and includes
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^

> IIUC the core of the problem has to do with different ACLs in /tmp and
> the final destination of the .elc file, but it seems like this problem
> should apply regardless of whether that final destination is specified
> as a relative or an absolute file name, right?

Yes, the change doesn't fix the ACL problem on FreeBSD, it just allows
Emacs to be built on that system.  I don't know enough about FreeBSD
ACLs to fix the general problem, and such a solution wouldn't be
appropriate for the release branch anyway.

> So maybe rather than (file-name-absolute-p target-file) we should check
> something related to ACLs, or (eq system-type 'feebsd-foo)?

No, the change in bytecomp.el is a step in the right direction anyway,
as it's closer to what the code did before my previous change (which
uncovered the FreeBSD problem).

> Or maybe we should just never use /tmp and just go with
> 
>     (make-temp-file (expand-file-name target-file))
> 
> ?

Why is that better?

Once again, the general ACL problem on FreeBSD needs to be
investigated and solved, perhaps by declaring that system unfit for
using ACLs (if worse comes to worst).  Any other "solution" is just a
workaround, so they all just side-step the issue.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]