make: fix bootstrap for native libraries
Restore (but in a hopefully better way) a step that installs native libraries before trying a full `raco setup`, since the libraries may be needed for the setup proces --- especially on Windows.
This commit is contained in:
parent
6f09e7c619
commit
9beca2bdee
7
Makefile
7
Makefile
|
@ -52,18 +52,21 @@ LIBSETUP = -N raco -l- raco setup
|
|||
INSTALL_PKGS_ARGS = $(JOB_OPTIONS) \
|
||||
--skip-installed --scope installation --deps search-auto \
|
||||
$(REQUIRED_PKGS) $(PKGS)
|
||||
ALL_PLT_SETUP_OPTIONS = $(JOB_OPTIONS) $(PLT_SETUP_OPTIONS)
|
||||
|
||||
plain-in-place:
|
||||
$(MAKE) base
|
||||
$(MAKE) pkgs-catalog
|
||||
$(PLAIN_RACO) pkg install --no-setup $(INSTALL_PKGS_ARGS)
|
||||
$(PLAIN_RACO) setup $(JOB_OPTIONS)
|
||||
$(PLAIN_RACO) setup --only-foreign-libs $(ALL_PLT_SETUP_OPTIONS)
|
||||
$(PLAIN_RACO) setup $(ALL_PLT_SETUP_OPTIONS)
|
||||
|
||||
win32-in-place:
|
||||
$(MAKE) win32-base
|
||||
$(MAKE) win32-pkgs-catalog
|
||||
$(WIN32_PLAIN_RACO) pkg install --no-setup $(INSTALL_PKGS_ARGS)
|
||||
$(WIN32_PLAIN_RACO) setup $(JOB_OPTIONS)
|
||||
$(WIN32_PLAIN_RACO) setup --only-foreign-libs $(ALL_PLT_SETUP_OPTIONS)
|
||||
$(WIN32_PLAIN_RACO) setup $(ALL_PLT_SETUP_OPTIONS)
|
||||
|
||||
# ------------------------------------------------------------
|
||||
# Unix-style build (Unix and Mac OS X, only)
|
||||
|
|
|
@ -153,6 +153,11 @@ flags:
|
|||
libraries (as specified in @filepath{info.rkt}; see
|
||||
@secref["setup-info"]).}
|
||||
|
||||
@item{@DFlag{only-foreign-libs} --- disable actions other than
|
||||
installing foreign libraries; equivalent to @Flag{nxiIdD}, except
|
||||
that @DFlag{only-foreign-libs} doesn't reject (redundant)
|
||||
specification of those individual flags.}
|
||||
|
||||
@item{@DFlag{no-install} or @Flag{i} --- refrain from running
|
||||
pre-install actions (as specified in @filepath{info.rkt} files; see
|
||||
@secref["setup-info"]).}
|
||||
|
@ -282,7 +287,8 @@ collections during an install:
|
|||
@history[#:changed "6.1" @elem{Added the @DFlag{pkgs},
|
||||
@DFlag{check-pkg-deps}, and
|
||||
@DFlag{fail-fast} flags.}
|
||||
#:changed "6.1.1" @elem{Added the @DFlag{force-user-docs} flag.}]
|
||||
#:changed "6.1.1" @elem{Added the @DFlag{force-user-docs} flag.}
|
||||
#:changed "6.1.1.6" @elem{Added the @DFlag{only-foreign-libs} flag.}]
|
||||
|
||||
@; ------------------------------------------------------------------------
|
||||
|
||||
|
|
|
@ -26,6 +26,16 @@
|
|||
(set! x-flags (append (reverse l) x-flags)))
|
||||
|
||||
(define-values (short-name long-name raco?) (get-names))
|
||||
|
||||
(define disable-action-flags
|
||||
'((make-zo #f)
|
||||
(call-install #f)
|
||||
(call-post-install #f)
|
||||
(make-launchers #f)
|
||||
(make-info-domain #f)
|
||||
(make-docs #f)
|
||||
(check-dependencies #f)
|
||||
(make-foreign-libs #f)))
|
||||
|
||||
;; Beware of the poor-man's duplicate of this command-line specification
|
||||
;; in "main.rkt"!
|
||||
|
@ -61,15 +71,8 @@
|
|||
" ------------------------------ tasks ------------------------------ "
|
||||
#:once-each
|
||||
[("-c" "--clean") "Delete existing compiled files; implies -nxiIFDK"
|
||||
(add-flags '((clean #t)
|
||||
(make-zo #f)
|
||||
(call-install #f)
|
||||
(call-post-install #f)
|
||||
(make-launchers #f)
|
||||
(make-info-domain #f)
|
||||
(make-docs #f)
|
||||
(check-dependencies #f)
|
||||
(make-foreign-libs #f)))]
|
||||
(add-flags (append '((clean #t))
|
||||
disable-action-flags))]
|
||||
[("-n" "--no-zo") "Do not create \".zo\" files"
|
||||
(add-flags '((make-zo #f)))]
|
||||
[("--trust-zos") "Trust existing \".zo\"s (use only with prepackaged \".zo\"s)"
|
||||
|
@ -78,6 +81,10 @@
|
|||
(add-flags '((make-launchers #f)))]
|
||||
[("-F" "--no-foreign-libs") "Do not install foreign libraries"
|
||||
(add-flags '((make-foreign-libs #f)))]
|
||||
[("--only-foreign-libs") "Disable actions except installing foreign libraries"
|
||||
(add-flags (for/list ([fl (in-list disable-action-flags)]
|
||||
#:unless (eq? (car fl) 'make-foreign-libs))
|
||||
fl))]
|
||||
[("-i" "--no-install") "Do not call collection-specific pre-installers"
|
||||
(add-flags '((call-install #f)))]
|
||||
[("-I" "--no-post-install") "Do not call collection-specific post-installers"
|
||||
|
|
Loading…
Reference in New Issue
Block a user