mirror of
https://github.com/jimeh/build-emacs-for-macos.git
synced 2026-02-19 13:06:38 +00:00
fix(native_comp): skip symlink creation for recent builds which do not need symlinks
Recent builds places the native-lisp cache folder within Contents/Resources on macOS, and correctly deals with finding them. This means the Contents/lisp and Contents/native-lisp symlinks are no longer needed. Hence we skip their creation altogether if we find any Contents/Resources/native-lisp/**/*.eln files.
This commit is contained in:
@@ -339,13 +339,20 @@ class Build
|
||||
def symlink_internals(app)
|
||||
return unless options[:native_comp]
|
||||
|
||||
info 'Creating symlinks within Emacs.app needed for native-comp'
|
||||
|
||||
FileUtils.cd(File.join(app, 'Contents')) do
|
||||
# Skip creation of symlinks if *.eln files are located under
|
||||
# Resources/native-lisp. Emacs is capable of finding lisp sources and
|
||||
# *.eln cache files without symlinks.
|
||||
return if Dir['Resources/native-lisp/**/*.eln'].any?
|
||||
|
||||
info 'Creating symlinks within Emacs.app needed for native-comp'
|
||||
|
||||
FileUtils.ln_s('Resources/lisp', 'lisp') unless File.exist?('lisp')
|
||||
|
||||
source = Dir['MacOS/libexec/emacs/**/eln-cache',
|
||||
'MacOS/lib/emacs/**/native-lisp'].first
|
||||
err 'Failed to find native-lisp cache directory for symlink creation.'
|
||||
|
||||
target = File.basename(source)
|
||||
FileUtils.ln_s(source, target) unless File.exist?(target)
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user