Subject: Re: bug#49271: 28.0.50: native-comp: Signing macOS self-contained .app bundle fails due to new *.eln location

From: Alan Third <[email-masked]>
Date: Wed, 30 Jun 2021 13:52:57 +0100

On Wed, Jun 30, 2021 at 01:39:10PM +0100, Jim Myhrberg wrote:
> On Wed, Jun 30, 2021 at 1:20 PM Eli Zaretskii <[email-masked]> wrote:
> 
> > The *.eln files are shared libraries.  What is the canonical place to
> > install shared libraries specific to an application?
> 
> This page indicates that "Contents/Frameworks" is the place for shared
> libraries: https://wiki.lazarus.freepascal.org/Application_Bundle
> 
> I just poked around the internals of a bunch of Apple's apps and a few
> third party apps, and it looks like "Contents/Frameworks" is where
> they're storing *.dylib files among other things. So it might be the
> sensible place for shared libraries. However, the same "two dots in
> folder name" issue applies with codesign there too, so to use it we'd
> need to drop the emacs version (28.0.50) from all folder paths.

I just found this page which explains the deal with the dots in
directory names:

https://developer.apple.com/library/archive/technotes/tn2206/_index.html

search for "period".

It also explains why you need to put code in certain directories. I
don't know why that page has been so hard to find.

Anyway, I guess we do need to change the install location so it
doesn't have the dots. It shouldn't really matter for the application
bundle since you can't have multiple versions of Emacs installed in
one bundle (without some hardcore messing around like the
emacsformacosx.com builds).
-- 
Alan Third