|(require setup/setup)||package: base|
(setup [ #:file file #:collections collections #:pkgs pkgs #:planet-specs planet-specs #:make-user? make-user? #:avoid-main? avoid-main? #:make-docs? make-docs? #:make-doc-index? make-doc-index? #:force-user-docs? force-user-docs? #:check-pkg-deps? check-pkg-deps? #:fix-pkg-deps? fix-pkg-deps? #:unused-pkg-deps? unused-pkg-deps? #:clean? clean? #:tidy? tidy? #:recompile-only? recompile-only? #:jobs jobs #:fail-fast? fail-fast? #:get-target-dir get-target-dir]) → boolean? file : (or/c #f path-string?) = #f collections : (or/c #f (listof (listof path-string?))) = #f pkgs : (or/c #f (listof string?)) = #f
(or/c #f (listof (list/c string? string? exact-nonnegative-integer? exact-nonnegative-integer?))) = #f make-user? : any/c = #t avoid-main? : any/c = #f make-docs? : any/c = #t make-doc-index? : any/c = #f force-user-docs? : any/c = #f check-pkg-deps? : any/c = #f fix-pkg-deps? : any/c = #f unused-pkg-deps? : any/c = #f clean? : any/c = #f tidy? : any/c = #f recompile-only? : any/c = #f jobs : exact-nonnegative-integer? = #f fail-fast? : any/c = #f get-target-dir : (or/c #f (-> path-string?)) = #f
if not #f, installs file as a ".plt" archive.
if not #f, constrains setup to the named collections (along with pkgs and planet-specs, if any)
if not #f, constrains setup to the named packages (along with collections and planet-specs, if any)
if not #f, constrains setup to the named PLaneT packages (along with collections and pkgs, if any)
if #f, disables any user-specific setup actions
if true, avoids setup actions that affect the main installation, as opposed to user directories
if #f, disables any documentation-specific setup actions
if true, builds documentation index collections in addition to collections, assuming that documentation is built
if true, then when building documentation, creates a user-specific documentation entry point even if it has the same content as the installation
if true, enables package-dependency checking even when collections, pkgs, or planet-specs is non-#f.
if true, implies check-pkg-deps? and attempts to automatically correct discovered package-dependency problems
if true, implies check-pkg-deps? and also reports dependencies that appear to be unused
if true, enables cleaning mode instead of setup mode
if true, enables global tidying of documentation and metadata indexes even when collections or planet-specs is non-#f
if true, disallows compilation from source, allowing only timestamp adjustments and recompilation from machine-independent form
if not #f, determines the maximum number of parallel tasks used for setup
if true, breaks the current thread as soon as an error is discovered
if not #f, treated as a value for current-target-directory-getter
The result is #t if raco setup completes without error, #f otherwise.
Instead of using PLT_COMPILED_FILE_CHECK, setup is sensitive to the use-compiled-file-check parameter.
Changed in version 6.1 of package base: Added the fail-fast? argument.
Changed in version 6.1.1: Added the force-user-docs? argument.
Changed in version 18.104.22.168: Added the check-pkg-deps?, fix-pkg-deps? , and unused-pkg-deps? arguments.
Changed in version 22.214.171.124: Added the recompile-only? argument.
|(require setup/setup-unit)||package: compiler-lib|
The setup/setup-unit library provides raco setup in unit form. The associated setup/option-sig and setup/option-unit libraries provides the interface for setting options for the run of raco setup.
Link the options and setup units so that your option-setting code is initialized between them, e.g.:
(compound-unit ... (link ... [((OPTIONS : setup-option^)) setup:option@] [() my-init-options@ OPTIONS] [() setup@ OPTIONS ...]) ...)
and exports nothing. Invoking setup@ starts the setup process.
|(require setup/option-unit)||package: compiler-lib|
|(require setup/option-sig)||package: compiler-lib|
setup-option^ : signature
The prefix used when printing status messages. The default is "raco setup".
→ (or/c #f (listof (and/c path? relative-path?))) (setup-compiled-file-paths paths) → void? paths : (or/c #f (listof (and/c path? relative-path?)))If not #f, supplies a value like the one for use-compiled-file-paths to control operations such as cleaning, where use-compiled-file-paths may have been set to null to avoid loading bytecode.
Added in version 1.7 of package compiler-lib.If on, prints messages from make to stderr. The default is #f.If on, verbose make. The default is #f.If on, verbose compiler. The default is #f.If on, delete ".zo" and ".so"/".dll"/".dylib" files in the specified collections. The default is #f.If a path is given, use a ".zo" compiler other than plain compile, and build to (build-path "compiled" (compile-mode)). The default is #f.If on, compile ".zo". The default is #t.If on, update "info-domain/compiled/cache.rkt" for each collection path. The default is #t.If on, make collection "info.rkt"-specified launchers and man pages. The default is #t.If on, install collection "info.rkt"-specified libraries. The default is #t.If on, build documentation. The default is #t.If on, build the user-specific collection tree. The default is #t.If on, build the planet cache. The default is #t.If on, avoid building bytecode in the main installation tree when building other bytecode (e.g., in a user-specific collection). The default is #f.If on, remove metadata cache information and documentation for non-existent collections (to clean up after removal) even when specific-collections or specific-planet-dirs is non-'() or make-only is true. The default is #f.If on, call collection "info.rkt"-specified setup code. The default is #t.If on, call collection "info.rkt"-specified post-install code. The default is #t.If on, in the event of an error, prints a summary error and waits for stdin input before terminating. The default is #f.
(parallel-workers num) → void? num : exact-nonnegative-integer?Determines the number of places to use for compiling bytecode and for building the documentation. The default is (min (processor-count) 8).If on, breaks the original thread as soon as an error is discovered. The default is #f.
Added in version 1.2 of package compiler-lib.If on, ignore version and already-installed errors when unpacking a ".plt" archive. The default is #f.
(specific-collections colls) → void? colls : (listof (listof path-string?))A list of collections to set up; the empty list means set-up all collections if the archives list and specific-planet-dirs is also '(). The default is '().
(listof (list/c string? string? exact-nonnegative-integer? exact-nonnegative-integer?)) (specific-planet-dirs dir) → void?
(listof (list/c string? string? exact-nonnegative-integer? exact-nonnegative-integer?))A list of planet package version specs to set up; the empty list means to set-up all planet collections if the archives list and specific-collections is also '(). The default is '().If true, set up no collections if specific-collections and specific-planet-dirs are both '().A list of ".plt" archives to unpack; any collections specified by the archives are set-up in addition to the collections listed in specific-collections. The default is null.If on, when archives has a non-empty list of packages, if any documentation is built, then suitable documentation start pages, search pages, and master index pages are rebuilt. The default is #t.
(current-target-directory-getter thunk) → void? thunk : (-> path-string?)A thunk that returns the target directory for unpacking a relative ".plt" archive; when unpacking an archive, either this or the procedure in current-target-plt-directory-getter will be called. The default is current-directory.
(path-string? path-string? (listof path-string?) . -> . path-string?) (current-target-plt-directory-getter proc) → void?
(path-string? path-string? (listof path-string?) . -> . path-string?)A procedure that takes a preferred path, a path to the parent of the main "collects" directory, and a list of path choices; it returns a path for a "plt-relative" install; when unpacking an archive, either this or the procedure in current-target-directory-getter will be called, and in the former case, this procedure may be called multiple times. The default is (lambda (preferred main-parent-dir choices) preferred).
When running setup via racket, supply the -N raco to ensure that command-line arguments are parsed the same way as for raco setup, as opposed to a legacy command-line mode.