Ricardo Wurmus <[email protected]> skribis: > Since there is no install phase in the Makefile I had to write a > replacement to copy all tools from the build bin/ directory to the > output /bin/ directory. I don't know if it is better to explicitly list > the tools to copy or if this should rather be done with a glob pattern.
Is a glob pattern really needed, or is it that bin/* must be copied? If the latter, you could use ‘scandir’ to obtain the list of files in that directory, or (find-files "build/bin" ".*") where the 2nd argument is a regexp, not a glob pattern. > Another source of ugliness in the recipe is the > patch-makefile-SHELL-definition phase which is really just > patch-makefile-SHELL but working on ":=" definitions rather than > "=" assignments. Augmenting patch-makefile-SHELL to handle definitions > as well would result in a cleaner package recipe. Yeah; let’s fix that in core-updates. > + (alist-cons-after > + 'unpack 'patch-makefile-SHELL-definition > + (lambda _ Please align ‘(lambda’ with ‘'unpack’. > + (define (find-shell name) > + (let ((shell > + (search-path (search-path-as-string->list (getenv > "PATH")) > + name))) > + (unless shell > + (format (current-error-port) > + "patch-makefile-SHELL: warning: no binary > for shell `~a' found in $PATH~%" > + name)) > + shell)) ‘find-shell’ is not needed: just use the procedure called ‘which’. Could you send an updated patch? Thanks, Ludo’.
