From 939faa93460d39be55018c7c38fa8401144b4f51 Mon Sep 17 00:00:00 2001 From: felix Date: Sun, 28 May 2017 23:17:22 +0200 Subject: [PATCH] chicken-install: allow to override host-bindir/-sharedir/-incdir by setting env var CHICKEN_INSTALL_PREFIX --- egg-compile.scm | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/egg-compile.scm b/egg-compile.scm index 7ba5f76..d1b08f8 100644 --- a/egg-compile.scm +++ b/egg-compile.scm @@ -47,6 +47,13 @@ ;;; some utilities +(define override-prefix + (let ((prefix (get-environment-variable "CHICKEN_INSTALL_PREFIX"))) + (lambda (dir default) + (if prefix + (string-append prefix dir) + default)))) + (define (object-extension platform) (case platform ((unix) +unix-object-extension+) @@ -177,7 +184,7 @@ (let* ((dest (or dest (if (eq? mode 'target) default-sharedir ; XXX wrong! - host-sharedir))) + (override-prefix "/share" host-sharedir)))) (dest (normalize-pathname (conc dest "/")))) (addfiles (map (cut conc dest <>) files))) (set! data @@ -203,7 +210,7 @@ (let* ((dest (or dest (if (eq? mode 'target) default-incdir ; XXX wrong! - host-incdir))) + (override-prefix "/include" host-incdir)))) (dest (normalize-pathname (conc dest "/")))) (addfiles (map (cut conc dest <>) files))) (set! cinc @@ -218,7 +225,7 @@ (let* ((dest (or dest (if (eq? mode 'target) default-sharedir ; XXX wrong! - host-sharedir))) + (override-prefix "/share" host-sharedir)))) (dest (normalize-pathname (conc dest "/")))) (addfiles (map (cut conc dest <>) files))) (set! scminc @@ -237,7 +244,7 @@ (for-each compile-extension/program (cddr info)) (let ((dest (if (eq? mode 'target) default-bindir ; XXX wrong! - host-bindir)) + (override-prefix "/bin" host-bindir))) ;; Respect install-name if specified (rtarget (or oname target))) (addfiles (list (conc dest "/" rtarget exeext))) @@ -606,7 +613,9 @@ (ext (executable-extension platform)) (sname (prefix srcdir name)) (out (quotearg (target-file (conc sname ext) mode))) - (dest (if (eq? mode 'target) default-bindir host-bindir)) + (dest (if (eq? mode 'target) + default-bindir + (override-prefix "/bin" host-bindir))) (dfile (quotearg (slashify dest platform))) (ddir (shell-variable "DESTDIR" platform)) (destf (quotearg (slashify (conc dest "/" output-file ext) @@ -622,7 +631,7 @@ (mkdir (mkdir-command platform)) (dest (or destination (if (eq? mode 'target) default-sharedir - host-sharedir))) + (override-prefix "/share" host-sharedir)))) (dfile (quotearg (slashify dest platform))) (ddir (shell-variable "DESTDIR" platform))) (print "\n" mkdir " " ddir dfile) @@ -635,7 +644,7 @@ (mkdir (mkdir-command platform)) (dest (or destination (if (eq? mode 'target) default-incdir - host-incdir))) + (override-prefix "/include" host-incdir)))) (dfile (quotearg (slashify dest platform))) (ddir (shell-variable "DESTDIR" platform))) (print "\n" mkdir " " ddir dfile) -- 1.7.9.5