From b7908e97a11cfc9be84d3698bb8fa867acb33a2a Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Tue, 19 May 2020 09:59:46 -0600 Subject: [PATCH] cs makefile: refine handling of file permissions On a second look, 6d06086dad unnecessarily duplicates work already don by `copy-file` in most cases. For the case where `copy-file` was not used, there was code to explicitly set an executable bit, but the new approach is better and should be used just there. --- racket/src/cs/c/embed-boot.rkt | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/racket/src/cs/c/embed-boot.rkt b/racket/src/cs/c/embed-boot.rkt index 08afc002e4..468a8f0960 100644 --- a/racket/src/cs/c/embed-boot.rkt +++ b/racket/src/cs/c/embed-boot.rkt @@ -82,16 +82,10 @@ (add-racket-section use-src-file dest-file #".rackboot" (lambda (pos) (values data 'any1 'any2)))) - (define (ensure-executable dest-file) - (let* ([perms1 (file-or-directory-permissions dest-file 'bits)] - [perms2 (bitwise-ior user-read-bit user-write-bit user-execute-bit - perms1)]) - (unless (equal? perms1 perms2) - (file-or-directory-permissions dest-file perms2)))) (cond [start-pos ;; Success as ELF - (ensure-executable dest-file) + (file-or-directory-permissions dest-file (file-or-directory-permissions use-src-file 'bits)) (cond [expect-elf? ;; Find ".rackboot" at run time: @@ -101,7 +95,6 @@ [else ;; Not ELF; just append to the end (copy-file use-src-file dest-file #t) - (ensure-executable dest-file) (define pos (file-size dest-file)) (call-with-output-file* dest-file @@ -134,6 +127,4 @@ (copy-file (car alt) (cdr alt) #t) (write-offsets (cdr alt)))]) - (file-or-directory-permissions dest-file (file-or-directory-permissions use-src-file 'bits)) - (clean-src)))