Subject: bug#50818: 28.0.50; .eln files need to be executable on Cygwin

From: Ken Brown <[email-masked]>
Date: Sun, 26 Sep 2021 12:57:24 -0400

On 9/26/2021 12:04 PM, Eli Zaretskii wrote:
>> From: Ken Brown <[email-masked]>
>> Date: Sun, 26 Sep 2021 11:03:53 -0400
>>
>> An installed emacs built with native compilation won't start on Cygwin because
>> the executable permissions have been removed from the .eln files.  This is done
>> in the install-eln target of the top-level Makefile.in, which installs the .eln
>> files with 644 permissions even though they were created with executable
>> permissions.
> 
> Is what we do different from any other package the installs DLLs?

Yes.  DLLs are always installed with 755 permissions.  Packages that install 
DLLs typically use libtool, which just does the right thing.  I can't recall 
offhand seeing a hand-written Makefile rule for installing a DLL, but I assume 
it would use INSTALL or INSTALL_PROGRAM rather than INSTALL_DATA.  It seems 
strange to me to see INSTALL_DATA used for installing a library, but I'm not 
really familiar with what's typically done on GNU/Linux, for example
>> Would it hurt anything on other platforms if the .eln files were installed with
>> 755 permissions?  If so, I can submit a patch that does this just on Cygwin.
> 
> Please define a new INSTALL_ELN macro for that purpose.

OK.  But I'd like to hear first (maybe from Andrea?) whether there's a reason 
for this to be Cygwin-specific, and whether INSTALL_DATA is in fact typically 
used for installing libraries on other platforms.

Ken