Chez Scheme: parallel garbage collection
All allocation is now thread-local, which recovers a small bit of performance that was lost when adding thread-local allocation alongside global allocation. Parallelism uses thread contexts created by Chez Scheme threads (which correspond to Racket places and future-running threads), but it creates its own OS-level threads to perform collection. The number of collection-helper threads is limited to the number of active Chez Scheme threads. Only the main "sweep" pass runs in parallel --- that is, after roots have been traversed, and before weak references and finalization are handled --- but that's the bulk of collection work. Also, memory-accounting collections always run as single-threaded.
This commit is contained in:
parent
78fedb3b24
commit
8305e5eaef
17
.makefile
17
.makefile
|
@ -72,6 +72,9 @@ VM = cs
|
||||||
# Target selector: `minimal` or `skip`
|
# Target selector: `minimal` or `skip`
|
||||||
INITIAL_SETUP_MODE = minimal
|
INITIAL_SETUP_MODE = minimal
|
||||||
|
|
||||||
|
# Target selector: `` or `-as-is`
|
||||||
|
AS_IS=
|
||||||
|
|
||||||
in-place:
|
in-place:
|
||||||
if [ "$(CPUS)" = "" ] ; \
|
if [ "$(CPUS)" = "" ] ; \
|
||||||
then $(MAKE) plain-in-place ; \
|
then $(MAKE) plain-in-place ; \
|
||||||
|
@ -118,8 +121,8 @@ plain-in-place-setup:
|
||||||
|
|
||||||
as-is:
|
as-is:
|
||||||
if [ "$(CPUS)" = "" ] ; \
|
if [ "$(CPUS)" = "" ] ; \
|
||||||
then $(MAKE) plain-as-is ; \
|
then $(MAKE) plain-as-is AS_IS="-as-is" ; \
|
||||||
else $(MAKE) -j $(CPUS) plain-as-is JOB_OPTIONS="-j $(CPUS)" ; fi
|
else $(MAKE) -j $(CPUS) plain-as-is JOB_OPTIONS="-j $(CPUS)" AS_IS="-as-is" ; fi
|
||||||
|
|
||||||
plain-as-is:
|
plain-as-is:
|
||||||
$(MAKE) plain-base
|
$(MAKE) plain-base
|
||||||
|
@ -335,7 +338,7 @@ RACKET_FOR_BOOTFILES = $(RACKET)
|
||||||
RACKET_FOR_BUILD = $(RACKET)
|
RACKET_FOR_BUILD = $(RACKET)
|
||||||
|
|
||||||
# This branch name changes each time the pb boot files are updated:
|
# This branch name changes each time the pb boot files are updated:
|
||||||
PB_BRANCH == circa-7.8.0.10-2
|
PB_BRANCH == circa-7.8.0.10-6
|
||||||
PB_REPO == https://github.com/racket/pb
|
PB_REPO == https://github.com/racket/pb
|
||||||
|
|
||||||
# Alternative source for Chez Scheme boot files, normally set by
|
# Alternative source for Chez Scheme boot files, normally set by
|
||||||
|
@ -392,7 +395,7 @@ win-cs-in-place-setup:
|
||||||
$(MAKE) plain-in-place-setup PLAIN_RACKET=racket\racket$(RACKETCS_SUFFIX)
|
$(MAKE) plain-in-place-setup PLAIN_RACKET=racket\racket$(RACKETCS_SUFFIX)
|
||||||
|
|
||||||
cs-base:
|
cs-base:
|
||||||
$(MAKE) maybe-fetch-pb
|
$(MAKE) maybe-fetch-pb$(AS_IS)
|
||||||
if [ "$(RACKETCS_SUFFIX)" = "" ] ; \
|
if [ "$(RACKETCS_SUFFIX)" = "" ] ; \
|
||||||
then $(MAKE) cs-configure MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --enable-csdefault" ; \
|
then $(MAKE) cs-configure MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --enable-csdefault" ; \
|
||||||
else $(MAKE) cs-configure MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --disable-csdefault" ; fi
|
else $(MAKE) cs-configure MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --disable-csdefault" ; fi
|
||||||
|
@ -418,9 +421,6 @@ cs-minimal-in-place-after-base-cross:
|
||||||
$(MAKE) plain-minimal-in-place-after-base PLAIN_RACKET="$(RACKET_FOR_BUILD)" PLT_SETUP_OPTIONS="--no-pkg-deps $(PLT_SETUP_OPTIONS)"
|
$(MAKE) plain-minimal-in-place-after-base PLAIN_RACKET="$(RACKET_FOR_BUILD)" PLT_SETUP_OPTIONS="--no-pkg-deps $(PLT_SETUP_OPTIONS)"
|
||||||
|
|
||||||
|
|
||||||
no-fetch-pb:
|
|
||||||
echo done
|
|
||||||
|
|
||||||
fetch-pb:
|
fetch-pb:
|
||||||
if [ "$(EXTRA_REPOS_BASE)" = "" ] ; \
|
if [ "$(EXTRA_REPOS_BASE)" = "" ] ; \
|
||||||
then $(MAKE) fetch-pb-from ; \
|
then $(MAKE) fetch-pb-from ; \
|
||||||
|
@ -430,6 +430,9 @@ maybe-fetch-pb:
|
||||||
if [ "$(RACKET_FOR_BOOTFILES)" = "" ] ; \
|
if [ "$(RACKET_FOR_BOOTFILES)" = "" ] ; \
|
||||||
then $(MAKE) fetch-pb ; fi
|
then $(MAKE) fetch-pb ; fi
|
||||||
|
|
||||||
|
maybe-fetch-pb-as-is:
|
||||||
|
echo done
|
||||||
|
|
||||||
PB_DIR == racket/src/ChezScheme/boot/pb
|
PB_DIR == racket/src/ChezScheme/boot/pb
|
||||||
|
|
||||||
fetch-pb-from:
|
fetch-pb-from:
|
||||||
|
|
104
Makefile
104
Makefile
|
@ -1,6 +1,7 @@
|
||||||
# Generated from ".makefile"
|
# Generated from ".makefile"
|
||||||
# Target values for VM: ("cs" "bc")
|
# Target values for VM: ("cs" "bc")
|
||||||
# Target values for INITIAL_SETUP_MODE: ("minimal" "skip")
|
# Target values for INITIAL_SETUP_MODE: ("minimal" "skip")
|
||||||
|
# Target values for AS_IS: ("" "-as-is")
|
||||||
# Target values for CS_CROSS_SUFFIX: ("-cross" "")
|
# Target values for CS_CROSS_SUFFIX: ("-cross" "")
|
||||||
# Target values for NEXT_TARGET: ("plain-server" "plain-client-from-site" "plain-installers-from-built" "plain-site-from-installers" "plain-snapshot-at-site")
|
# Target values for NEXT_TARGET: ("plain-server" "plain-client-from-site" "plain-installers-from-built" "plain-site-from-installers" "plain-snapshot-at-site")
|
||||||
# Target values for CLIENT_BASE: ("base" "cs-base" "bc-base")
|
# Target values for CLIENT_BASE: ("base" "cs-base" "bc-base")
|
||||||
|
@ -18,6 +19,7 @@ PLT_SETUP_OPTIONS =
|
||||||
CPUS =
|
CPUS =
|
||||||
VM = cs
|
VM = cs
|
||||||
INITIAL_SETUP_MODE = minimal
|
INITIAL_SETUP_MODE = minimal
|
||||||
|
AS_IS=
|
||||||
ALL_PKG_UPDATE_OPTIONS = --all --auto --no-setup --scope installation $(PKG_UPDATE_OPTIONS)
|
ALL_PKG_UPDATE_OPTIONS = --all --auto --no-setup --scope installation $(PKG_UPDATE_OPTIONS)
|
||||||
ALL_PKG_INSTALL_OPTIONS = $(JOB_OPTIONS) --no-setup --pkgs --skip-installed --scope installation --deps search-auto $(REQUIRED_PKGS) $(PKGS)
|
ALL_PKG_INSTALL_OPTIONS = $(JOB_OPTIONS) --no-setup --pkgs --skip-installed --scope installation --deps search-auto $(REQUIRED_PKGS) $(PKGS)
|
||||||
ALL_PLT_SETUP_OPTIONS = $(JOB_OPTIONS) $(PLT_SETUP_OPTIONS)
|
ALL_PLT_SETUP_OPTIONS = $(JOB_OPTIONS) $(PLT_SETUP_OPTIONS)
|
||||||
|
@ -45,7 +47,7 @@ RACKETCS_SUFFIX =
|
||||||
RACKET =
|
RACKET =
|
||||||
RACKET_FOR_BOOTFILES = $(RACKET)
|
RACKET_FOR_BOOTFILES = $(RACKET)
|
||||||
RACKET_FOR_BUILD = $(RACKET)
|
RACKET_FOR_BUILD = $(RACKET)
|
||||||
PB_BRANCH = circa-7.8.0.10-2
|
PB_BRANCH = circa-7.8.0.10-6
|
||||||
PB_REPO = https://github.com/racket/pb
|
PB_REPO = https://github.com/racket/pb
|
||||||
EXTRA_REPOS_BASE =
|
EXTRA_REPOS_BASE =
|
||||||
CS_CROSS_SUFFIX =
|
CS_CROSS_SUFFIX =
|
||||||
|
@ -133,14 +135,14 @@ DRIVE_DESCRIBE =
|
||||||
DRIVE_CMD_q = -l- distro-build/drive-clients $(DRIVE_DESCRIBE) $(RELEASE_MODE) $(VERSIONLESS_MODE) $(SOURCE_MODE) $(CLEAN_MODE) $(SERVER_COMPILE_MACHINE) "$(CONFIG)" "$(CONFIG_MODE)" $(SERVER) $(SERVER_PORT) "$(SERVER_HOSTS)" "$(PKGS)" "$(DOC_SEARCH)" "$(DIST_NAME)" $(DIST_BASE) $(DIST_DIR)
|
DRIVE_CMD_q = -l- distro-build/drive-clients $(DRIVE_DESCRIBE) $(RELEASE_MODE) $(VERSIONLESS_MODE) $(SOURCE_MODE) $(CLEAN_MODE) $(SERVER_COMPILE_MACHINE) "$(CONFIG)" "$(CONFIG_MODE)" $(SERVER) $(SERVER_PORT) "$(SERVER_HOSTS)" "$(PKGS)" "$(DOC_SEARCH)" "$(DIST_NAME)" $(DIST_BASE) $(DIST_DIR)
|
||||||
DOC_CATALOGS = build/built/catalog build/native/catalog
|
DOC_CATALOGS = build/built/catalog build/native/catalog
|
||||||
main:
|
main:
|
||||||
$(MAKE) in-place CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)"
|
$(MAKE) in-place AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)"
|
||||||
win:
|
win:
|
||||||
$(MAKE) win-in-place DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
$(MAKE) win-in-place DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
||||||
in-place:
|
in-place:
|
||||||
if [ "$(CPUS)" = "" ] ; then $(MAKE) plain-in-place CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)" ; else $(MAKE) -j $(CPUS) plain-in-place JOB_OPTIONS="-j $(CPUS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)" ; fi
|
if [ "$(CPUS)" = "" ] ; then $(MAKE) plain-in-place AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)" ; else $(MAKE) -j $(CPUS) plain-in-place JOB_OPTIONS="-j $(CPUS)" AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)" ; fi
|
||||||
plain-in-place:
|
plain-in-place:
|
||||||
$(MAKE) base-config
|
$(MAKE) base-config
|
||||||
$(MAKE) $(VM)-$(INITIAL_SETUP_MODE)-in-place CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) $(VM)-$(INITIAL_SETUP_MODE)-in-place AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
$(MAKE) $(VM)-in-place-setup IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
$(MAKE) $(VM)-in-place-setup IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
||||||
win-in-place:
|
win-in-place:
|
||||||
$(MAKE) win-base-config
|
$(MAKE) win-base-config
|
||||||
|
@ -154,18 +156,18 @@ plain-minimal-in-place-after-base:
|
||||||
plain-in-place-setup:
|
plain-in-place-setup:
|
||||||
$(PLAIN_RACKET) $(SETUP_MACHINE_FLAGS) -G racket/etc -X racket/collects -N raco -l- raco setup $(JOB_OPTIONS) $(PLT_SETUP_OPTIONS) $(IN_PLACE_SETUP_OPTIONS)
|
$(PLAIN_RACKET) $(SETUP_MACHINE_FLAGS) -G racket/etc -X racket/collects -N raco -l- raco setup $(JOB_OPTIONS) $(PLT_SETUP_OPTIONS) $(IN_PLACE_SETUP_OPTIONS)
|
||||||
as-is:
|
as-is:
|
||||||
if [ "$(CPUS)" = "" ] ; then $(MAKE) plain-as-is CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)" ; else $(MAKE) -j $(CPUS) plain-as-is JOB_OPTIONS="-j $(CPUS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)" ; fi
|
if [ "$(CPUS)" = "" ] ; then $(MAKE) plain-as-is AS_IS="-as-is" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)" ; else $(MAKE) -j $(CPUS) plain-as-is JOB_OPTIONS="-j $(CPUS)" AS_IS="-as-is" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)" ; fi
|
||||||
plain-as-is:
|
plain-as-is:
|
||||||
$(MAKE) plain-base CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)"
|
$(MAKE) plain-base AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)"
|
||||||
$(MAKE) $(VM)-in-place-setup IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
$(MAKE) $(VM)-in-place-setup IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
||||||
win-as-is:
|
win-as-is:
|
||||||
$(MAKE) win-base DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" VM="$(VM)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
$(MAKE) win-base DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" VM="$(VM)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
||||||
$(MAKE) win-$(VM)-in-place-setup IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
$(MAKE) win-$(VM)-in-place-setup IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
||||||
unix-style:
|
unix-style:
|
||||||
if [ "$(CPUS)" = "" ] ; then $(MAKE) plain-unix-style CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DESTDIR="$(DESTDIR)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PREFIX="$(PREFIX)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)" ; else $(MAKE) -j $(CPUS) plain-unix-style JOB_OPTIONS="-j $(CPUS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DESTDIR="$(DESTDIR)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PREFIX="$(PREFIX)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)" ; fi
|
if [ "$(CPUS)" = "" ] ; then $(MAKE) plain-unix-style AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DESTDIR="$(DESTDIR)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PREFIX="$(PREFIX)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)" ; else $(MAKE) -j $(CPUS) plain-unix-style JOB_OPTIONS="-j $(CPUS)" AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DESTDIR="$(DESTDIR)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PREFIX="$(PREFIX)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" VM="$(VM)" ; fi
|
||||||
plain-unix-style:
|
plain-unix-style:
|
||||||
if [ "$(PREFIX)" = "" ] ; then $(MAKE) error-need-prefix ; fi
|
if [ "$(PREFIX)" = "" ] ; then $(MAKE) error-need-prefix ; fi
|
||||||
$(MAKE) $(VM)-base MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --prefix=$(PREFIX) --enable-macprefix" CONFIG_IN_PLACE_ARGS="" SELF_ROOT_CONFIG_FLAG="-Z" SKIP_DESTDIR_FIX="skip" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
$(MAKE) $(VM)-base MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --prefix=$(PREFIX) --enable-macprefix" CONFIG_IN_PLACE_ARGS="" SELF_ROOT_CONFIG_FLAG="-Z" SKIP_DESTDIR_FIX="skip" AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
||||||
$(MAKE) set-src-catalog DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DESTDIR="$(DESTDIR)" PREFIX="$(PREFIX)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) set-src-catalog DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DESTDIR="$(DESTDIR)" PREFIX="$(PREFIX)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
$(MAKE) local-catalog DESTDIR="$(DESTDIR)" PREFIX="$(PREFIX)"
|
$(MAKE) local-catalog DESTDIR="$(DESTDIR)" PREFIX="$(PREFIX)"
|
||||||
"$(DESTDIR)$(PREFIX)/bin/raco" pkg install $(JOB_OPTIONS) --catalog build/local/catalog --auto -i $(REQUIRED_PKGS) $(PKGS)
|
"$(DESTDIR)$(PREFIX)/bin/raco" pkg install $(JOB_OPTIONS) --catalog build/local/catalog --auto -i $(REQUIRED_PKGS) $(PKGS)
|
||||||
|
@ -181,10 +183,10 @@ local-catalog:
|
||||||
set-src-catalog:
|
set-src-catalog:
|
||||||
if [ ! "$(SRC_CATALOG)" = "$(DEFAULT_SRC_CATALOG)" ] ; then "$(DESTDIR)$(PREFIX)/bin/raco" pkg config -i --set catalogs "$(SRC_CATALOG)" ""; fi
|
if [ ! "$(SRC_CATALOG)" = "$(DEFAULT_SRC_CATALOG)" ] ; then "$(DESTDIR)$(PREFIX)/bin/raco" pkg config -i --set catalogs "$(SRC_CATALOG)" ""; fi
|
||||||
base:
|
base:
|
||||||
if [ "$(CPUS)" = "" ] ; then $(MAKE) plain-base CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)" ; else $(MAKE) -j $(CPUS) plain-base JOB_OPTIONS="-j $(CPUS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)" ; fi
|
if [ "$(CPUS)" = "" ] ; then $(MAKE) plain-base AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)" ; else $(MAKE) -j $(CPUS) plain-base JOB_OPTIONS="-j $(CPUS)" AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)" ; fi
|
||||||
plain-base:
|
plain-base:
|
||||||
$(MAKE) base-config
|
$(MAKE) base-config
|
||||||
$(MAKE) $(VM)-base CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
$(MAKE) $(VM)-base AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
||||||
win-base:
|
win-base:
|
||||||
$(MAKE) win-base-config
|
$(MAKE) win-base-config
|
||||||
$(MAKE) win-$(VM)-base DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
$(MAKE) win-$(VM)-base DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
||||||
|
@ -195,11 +197,11 @@ win-base-config:
|
||||||
IF NOT EXIST build\config cmd /c mkdir build\config
|
IF NOT EXIST build\config cmd /c mkdir build\config
|
||||||
cmd /c echo #hash((links-search-files . ())) > build\config\config.rktd
|
cmd /c echo #hash((links-search-files . ())) > build\config\config.rktd
|
||||||
bc:
|
bc:
|
||||||
$(MAKE) bc-in-place CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) bc-in-place AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
win-bc:
|
win-bc:
|
||||||
$(MAKE) win-bc-in-place DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
$(MAKE) win-bc-in-place DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
||||||
bc-in-place:
|
bc-in-place:
|
||||||
$(MAKE) in-place VM=bc CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) in-place VM=bc AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
win-bc-in-place:
|
win-bc-in-place:
|
||||||
$(MAKE) win-in-place VM=bc DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
$(MAKE) win-in-place VM=bc DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
||||||
bc-as-is:
|
bc-as-is:
|
||||||
|
@ -207,7 +209,7 @@ bc-as-is:
|
||||||
win-bc-as-is:
|
win-bc-as-is:
|
||||||
$(MAKE) win-as-is VM=bc DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
$(MAKE) win-as-is VM=bc DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
||||||
bc-unix-style:
|
bc-unix-style:
|
||||||
$(MAKE) unix-style VM=bc CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DESTDIR="$(DESTDIR)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PREFIX="$(PREFIX)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) unix-style VM=bc AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DESTDIR="$(DESTDIR)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PREFIX="$(PREFIX)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
bc-minimal-in-place:
|
bc-minimal-in-place:
|
||||||
$(MAKE) bc-base CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
$(MAKE) bc-base CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
||||||
$(MAKE) plain-minimal-in-place-after-base PLAIN_RACKET=racket/bin/racket$(RACKETBC_SUFFIX) DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) plain-minimal-in-place-after-base PLAIN_RACKET=racket/bin/racket$(RACKETBC_SUFFIX) DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
|
@ -252,11 +254,11 @@ racket/src/build/cross/bc/Makefile: racket/src/bc/configure racket/src/cfg-bc ra
|
||||||
native-for-cross:
|
native-for-cross:
|
||||||
$(MAKE) native-bc-for-cross MORE_CROSS_CONFIGURE_ARGS="$(MORE_CROSS_CONFIGURE_ARGS)"
|
$(MAKE) native-bc-for-cross MORE_CROSS_CONFIGURE_ARGS="$(MORE_CROSS_CONFIGURE_ARGS)"
|
||||||
cs:
|
cs:
|
||||||
$(MAKE) cs-in-place CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) cs-in-place AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
win-cs:
|
win-cs:
|
||||||
$(MAKE) win-cs-in-place DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
$(MAKE) win-cs-in-place DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
||||||
cs-in-place:
|
cs-in-place:
|
||||||
$(MAKE) in-place VM=cs CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) in-place VM=cs AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
win-cs-in-place:
|
win-cs-in-place:
|
||||||
$(MAKE) win-in-place VM=cs DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
$(MAKE) win-in-place VM=cs DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
||||||
cs-as-is:
|
cs-as-is:
|
||||||
|
@ -264,15 +266,15 @@ cs-as-is:
|
||||||
win-cs-as-is:
|
win-cs-as-is:
|
||||||
$(MAKE) win-as-is VM=cs DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
$(MAKE) win-as-is VM=cs DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
||||||
cs-unix-style:
|
cs-unix-style:
|
||||||
$(MAKE) unix-style VM=cs CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DESTDIR="$(DESTDIR)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PREFIX="$(PREFIX)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) unix-style VM=cs AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DESTDIR="$(DESTDIR)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PREFIX="$(PREFIX)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
cs-minimal-in-place:
|
cs-minimal-in-place:
|
||||||
$(MAKE) cs-base CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
$(MAKE) cs-base AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
||||||
$(MAKE) cs-minimal-in-place-after-base$(CS_CROSS_SUFFIX) DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) cs-minimal-in-place-after-base$(CS_CROSS_SUFFIX) DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
win-cs-minimal-in-place:
|
win-cs-minimal-in-place:
|
||||||
$(MAKE) win-cs-base DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)"
|
$(MAKE) win-cs-base DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)"
|
||||||
$(MAKE) plain-minimal-in-place-after-base PLAIN_RACKET=racket\racket$(RACKETCS_SUFFIX) DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) plain-minimal-in-place-after-base PLAIN_RACKET=racket\racket$(RACKETCS_SUFFIX) DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
cs-skip-in-place:
|
cs-skip-in-place:
|
||||||
$(MAKE) cs-base CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
$(MAKE) cs-base AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
||||||
win-cs-skip-in-place:
|
win-cs-skip-in-place:
|
||||||
$(MAKE) win-cs-base DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)"
|
$(MAKE) win-cs-base DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)"
|
||||||
cs-in-place-setup:
|
cs-in-place-setup:
|
||||||
|
@ -280,7 +282,7 @@ cs-in-place-setup:
|
||||||
win-cs-in-place-setup:
|
win-cs-in-place-setup:
|
||||||
$(MAKE) plain-in-place-setup PLAIN_RACKET=racket\racket$(RACKETCS_SUFFIX) IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
$(MAKE) plain-in-place-setup PLAIN_RACKET=racket\racket$(RACKETCS_SUFFIX) IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
||||||
cs-base:
|
cs-base:
|
||||||
$(MAKE) maybe-fetch-pb EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)"
|
$(MAKE) maybe-fetch-pb$(AS_IS) EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)"
|
||||||
if [ "$(RACKETCS_SUFFIX)" = "" ] ; then $(MAKE) cs-configure MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --enable-csdefault" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" ; else $(MAKE) cs-configure MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --disable-csdefault" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" ; fi
|
if [ "$(RACKETCS_SUFFIX)" = "" ] ; then $(MAKE) cs-configure MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --enable-csdefault" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" ; else $(MAKE) cs-configure MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --disable-csdefault" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" ; fi
|
||||||
cd racket/src/build/cs/c && $(MAKE) CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)"
|
cd racket/src/build/cs/c && $(MAKE) CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)"
|
||||||
$(MAKE) base-config
|
$(MAKE) base-config
|
||||||
|
@ -296,22 +298,22 @@ cs-minimal-in-place-after-base:
|
||||||
$(MAKE) plain-minimal-in-place-after-base PLAIN_RACKET=racket/bin/racket$(RACKETCS_SUFFIX) DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) plain-minimal-in-place-after-base PLAIN_RACKET=racket/bin/racket$(RACKETCS_SUFFIX) DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
cs-minimal-in-place-after-base-cross:
|
cs-minimal-in-place-after-base-cross:
|
||||||
$(MAKE) plain-minimal-in-place-after-base PLAIN_RACKET="$(RACKET_FOR_BUILD)" PLT_SETUP_OPTIONS="--no-pkg-deps $(PLT_SETUP_OPTIONS)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) plain-minimal-in-place-after-base PLAIN_RACKET="$(RACKET_FOR_BUILD)" PLT_SETUP_OPTIONS="--no-pkg-deps $(PLT_SETUP_OPTIONS)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" REQUIRED_PKGS="$(REQUIRED_PKGS)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
no-fetch-pb:
|
|
||||||
echo done
|
|
||||||
fetch-pb:
|
fetch-pb:
|
||||||
if [ "$(EXTRA_REPOS_BASE)" = "" ] ; then $(MAKE) fetch-pb-from ; else $(MAKE) fetch-pb-from PB_REPO="$(EXTRA_REPOS_BASE)pb/.git" ; fi
|
if [ "$(EXTRA_REPOS_BASE)" = "" ] ; then $(MAKE) fetch-pb-from ; else $(MAKE) fetch-pb-from PB_REPO="$(EXTRA_REPOS_BASE)pb/.git" ; fi
|
||||||
maybe-fetch-pb:
|
maybe-fetch-pb:
|
||||||
if [ "$(RACKET_FOR_BOOTFILES)" = "" ] ; then $(MAKE) fetch-pb EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" ; fi
|
if [ "$(RACKET_FOR_BOOTFILES)" = "" ] ; then $(MAKE) fetch-pb EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" ; fi
|
||||||
|
maybe-fetch-pb-as-is:
|
||||||
|
echo done
|
||||||
fetch-pb-from:
|
fetch-pb-from:
|
||||||
mkdir -p racket/src/ChezScheme/boot
|
mkdir -p racket/src/ChezScheme/boot
|
||||||
if [ ! -d racket/src/ChezScheme/boot/pb ] ; then git clone -q -b circa-7.8.0.10-2 https://github.com/racket/pb racket/src/ChezScheme/boot/pb ; else cd racket/src/ChezScheme/boot/pb && git fetch -q origin circa-7.8.0.10-2:remotes/origin/circa-7.8.0.10-2 ; fi
|
if [ ! -d racket/src/ChezScheme/boot/pb ] ; then git clone -q -b circa-7.8.0.10-6 https://github.com/racket/pb racket/src/ChezScheme/boot/pb ; else cd racket/src/ChezScheme/boot/pb && git fetch -q origin circa-7.8.0.10-6:remotes/origin/circa-7.8.0.10-6 ; fi
|
||||||
cd racket/src/ChezScheme/boot/pb && git checkout -q circa-7.8.0.10-2
|
cd racket/src/ChezScheme/boot/pb && git checkout -q circa-7.8.0.10-6
|
||||||
pb-stage:
|
pb-stage:
|
||||||
cd racket/src/ChezScheme/boot/pb && git branch circa-7.8.0.10-2
|
cd racket/src/ChezScheme/boot/pb && git branch circa-7.8.0.10-6
|
||||||
cd racket/src/ChezScheme/boot/pb && git checkout circa-7.8.0.10-2
|
cd racket/src/ChezScheme/boot/pb && git checkout circa-7.8.0.10-6
|
||||||
cd racket/src/ChezScheme/boot/pb && git add . && git commit --amend -m "new build"
|
cd racket/src/ChezScheme/boot/pb && git add . && git commit --amend -m "new build"
|
||||||
pb-push:
|
pb-push:
|
||||||
cd racket/src/ChezScheme/boot/pb && git push -u origin circa-7.8.0.10-2
|
cd racket/src/ChezScheme/boot/pb && git push -u origin circa-7.8.0.10-6
|
||||||
win-cs-base:
|
win-cs-base:
|
||||||
IF "$(RACKET_FOR_BUILD)" == "" $(MAKE) win-bc-then-cs-base SETUP_BOOT_MODE=--boot WIN32_BUILD_LEVEL=bc PLAIN_RACKET=racket\racketbc DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)"
|
IF "$(RACKET_FOR_BUILD)" == "" $(MAKE) win-bc-then-cs-base SETUP_BOOT_MODE=--boot WIN32_BUILD_LEVEL=bc PLAIN_RACKET=racket\racketbc DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)"
|
||||||
IF not "$(RACKET_FOR_BUILD)" == "" $(MAKE) win-just-cs-base SETUP_BOOT_MODE=--chain DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)"
|
IF not "$(RACKET_FOR_BUILD)" == "" $(MAKE) win-just-cs-base SETUP_BOOT_MODE=--chain DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)"
|
||||||
|
@ -333,23 +335,23 @@ native-cs-for-cross:
|
||||||
racket/src/build/cross/cs/c/Makefile: racket/src/cs/c/configure racket/src/cs/c/Makefile.in
|
racket/src/build/cross/cs/c/Makefile: racket/src/cs/c/configure racket/src/cs/c/Makefile.in
|
||||||
cd racket/src/build/cross/cs/c; ../../../../cs/c/configure --enable-csdefault $(MORE_CROSS_CONFIGURE_ARGS)
|
cd racket/src/build/cross/cs/c; ../../../../cs/c/configure --enable-csdefault $(MORE_CROSS_CONFIGURE_ARGS)
|
||||||
both:
|
both:
|
||||||
$(MAKE) cs IN_PLACE_SETUP_OPTIONS="--error-out build/step" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) cs IN_PLACE_SETUP_OPTIONS="--error-out build/step" AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
$(MAKE) also-bc IN_PLACE_SETUP_OPTIONS="--error-in build/step" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) also-bc IN_PLACE_SETUP_OPTIONS="--error-in build/step" AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
plain-also:
|
plain-also:
|
||||||
$(MAKE) $(VM) INITIAL_SETUP_MODE=skip PLT_SETUP_OPTIONS="-D $(PLT_SETUP_OPTIONS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) $(VM) INITIAL_SETUP_MODE=skip PLT_SETUP_OPTIONS="-D $(PLT_SETUP_OPTIONS)" AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
also-cs:
|
also-cs:
|
||||||
$(MAKE) plain-also VM=cs CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) plain-also VM=cs AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
also-bc:
|
also-bc:
|
||||||
$(MAKE) plain-also VM=bc CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) plain-also VM=bc AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
win-both:
|
win-both:
|
||||||
$(MAKE) win-cs DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
$(MAKE) win-cs DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
||||||
$(MAKE) win-also-bc CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) win-also-bc AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
win-plain-also:
|
win-plain-also:
|
||||||
$(MAKE) $(VM) INITIAL_SETUP_MODE=skip PLT_SETUP_OPTIONS="-D $(PLT_SETUP_OPTIONS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) $(VM) INITIAL_SETUP_MODE=skip PLT_SETUP_OPTIONS="-D $(PLT_SETUP_OPTIONS)" AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
win-also-cs:
|
win-also-cs:
|
||||||
$(MAKE) win-plain-also VM=cs CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) win-plain-also VM=cs AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
win-also-bc:
|
win-also-bc:
|
||||||
$(MAKE) win-plain-also VM=bc CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) win-plain-also VM=bc AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
bootstrapped-repo:
|
bootstrapped-repo:
|
||||||
if [ "$(EXTRA_REPOS_BASE)" = "" ] ; then $(MAKE) update-bootstrapped-normal GIT_UPDATE_ARGS_qq="$(GIT_UPDATE_ARGS_qq)" ; else $(MAKE) update-bootstrapped-as-extra GIT_CLONE_ARGS_qq="" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_PULL_ARGS_qq="$(GIT_PULL_ARGS_qq)" ; fi
|
if [ "$(EXTRA_REPOS_BASE)" = "" ] ; then $(MAKE) update-bootstrapped-normal GIT_UPDATE_ARGS_qq="$(GIT_UPDATE_ARGS_qq)" ; else $(MAKE) update-bootstrapped-as-extra GIT_CLONE_ARGS_qq="" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_PULL_ARGS_qq="$(GIT_PULL_ARGS_qq)" ; fi
|
||||||
update-bootstrapped-normal:
|
update-bootstrapped-normal:
|
||||||
|
@ -366,14 +368,14 @@ pkgs-catalog:
|
||||||
$(PLAIN_RACKET) $(SETUP_MACHINE_FLAGS) -G racket/etc -X racket/collects -U -G build/config racket/src/pkgs-config.rkt "$(DEFAULT_SRC_CATALOG)" "$(SRC_CATALOG)"
|
$(PLAIN_RACKET) $(SETUP_MACHINE_FLAGS) -G racket/etc -X racket/collects -U -G build/config racket/src/pkgs-config.rkt "$(DEFAULT_SRC_CATALOG)" "$(SRC_CATALOG)"
|
||||||
$(PLAIN_RACKET) $(SETUP_MACHINE_FLAGS) -G racket/etc -X racket/collects racket/src/pkgs-check.rkt racket/share/pkgs-catalog
|
$(PLAIN_RACKET) $(SETUP_MACHINE_FLAGS) -G racket/etc -X racket/collects racket/src/pkgs-check.rkt racket/share/pkgs-catalog
|
||||||
with-setup-flags:
|
with-setup-flags:
|
||||||
if [ "$(SERVER_COMPILE_MACHINE)" = "-M" ] ; then $(MAKE) $(NEXT_TARGET) SETUP_MACHINE_FLAGS="-MCR `pwd`/build/zo:" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --enable-crossany" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)" ; else $(MAKE) $(NEXT_TARGET) BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)" ; fi
|
if [ "$(SERVER_COMPILE_MACHINE)" = "-M" ] ; then $(MAKE) $(NEXT_TARGET) SETUP_MACHINE_FLAGS="-MCR `pwd`/build/zo:" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --enable-crossany" AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)" ; else $(MAKE) $(NEXT_TARGET) AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)" ; fi
|
||||||
random:
|
random:
|
||||||
echo $(MORE_CONFIGURE_ARGS)
|
echo $(MORE_CONFIGURE_ARGS)
|
||||||
server:
|
server:
|
||||||
$(MAKE) with-setup-flags NEXT_TARGET=plain-server BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
$(MAKE) with-setup-flags NEXT_TARGET=plain-server AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||||
plain-server:
|
plain-server:
|
||||||
rm -rf build/zo
|
rm -rf build/zo
|
||||||
$(MAKE) plain-base CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)"
|
$(MAKE) plain-base AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)"
|
||||||
$(MAKE) server-from-base BUILD_STAMP="$(BUILD_STAMP)" CONFIG="$(CONFIG)" CONFIG_MODE="$(CONFIG_MODE)" DOC_SEARCH="$(DOC_SEARCH)" JOB_OPTIONS="$(JOB_OPTIONS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)"
|
$(MAKE) server-from-base BUILD_STAMP="$(BUILD_STAMP)" CONFIG="$(CONFIG)" CONFIG_MODE="$(CONFIG_MODE)" DOC_SEARCH="$(DOC_SEARCH)" JOB_OPTIONS="$(JOB_OPTIONS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)"
|
||||||
server-from-base:
|
server-from-base:
|
||||||
$(MAKE) build/site.rkt
|
$(MAKE) build/site.rkt
|
||||||
|
@ -425,7 +427,7 @@ binary-catalog-server:
|
||||||
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l- distro-build/serve-catalog --mode binary "$(CONFIG)" "$(CONFIG_MODE)" "$(SERVER_HOSTS)" $(SERVER_PORT)
|
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l- distro-build/serve-catalog --mode binary "$(CONFIG)" "$(CONFIG_MODE)" "$(SERVER_HOSTS)" $(SERVER_PORT)
|
||||||
client:
|
client:
|
||||||
if [ ! -d build/log ] ; then rm -rf build/user ; fi
|
if [ ! -d build/log ] ; then rm -rf build/user ; fi
|
||||||
$(MAKE) $(CLIENT_BASE) MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) $(DISABLE_STATIC_LIBS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)"
|
$(MAKE) $(CLIENT_BASE) MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) $(DISABLE_STATIC_LIBS)" AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" VM="$(VM)"
|
||||||
$(MAKE) distro-build-from-server JOB_OPTIONS="$(JOB_OPTIONS)" PLAIN_RACKET="$(PLAIN_RACKET)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SVR_CAT="$(SVR_CAT)"
|
$(MAKE) distro-build-from-server JOB_OPTIONS="$(JOB_OPTIONS)" PLAIN_RACKET="$(PLAIN_RACKET)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SVR_CAT="$(SVR_CAT)"
|
||||||
$(MAKE) $(BUNDLE_FROM_SERVER_TARGET) COPY_ARGS="$(COPY_ARGS)" IN_BUNDLE_RACO="$(IN_BUNDLE_RACO)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_INSTALL_OPTIONS="$(PKG_INSTALL_OPTIONS)" PKG_SOURCE_MODE="$(PKG_SOURCE_MODE)" PLAIN_RACKET="$(PLAIN_RACKET)" SERVER_COLLECTS_PATH="$(SERVER_COLLECTS_PATH)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SOURCE_MODE="$(SOURCE_MODE)" SVR_CAT="$(SVR_CAT)" SVR_PRT="$(SVR_PRT)" UNPACK_COLLECTS_FLAGS="$(UNPACK_COLLECTS_FLAGS)"
|
$(MAKE) $(BUNDLE_FROM_SERVER_TARGET) COPY_ARGS="$(COPY_ARGS)" IN_BUNDLE_RACO="$(IN_BUNDLE_RACO)" JOB_OPTIONS="$(JOB_OPTIONS)" PKGS="$(PKGS)" PKG_INSTALL_OPTIONS="$(PKG_INSTALL_OPTIONS)" PKG_SOURCE_MODE="$(PKG_SOURCE_MODE)" PLAIN_RACKET="$(PLAIN_RACKET)" SERVER_COLLECTS_PATH="$(SERVER_COLLECTS_PATH)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SOURCE_MODE="$(SOURCE_MODE)" SVR_CAT="$(SVR_CAT)" SVR_PRT="$(SVR_PRT)" UNPACK_COLLECTS_FLAGS="$(UNPACK_COLLECTS_FLAGS)"
|
||||||
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l distro-build/set-config bundle/racket/etc/config.rktd "$(INSTALL_NAME)" "$(BUILD_STAMP)" "$(DOC_SEARCH)" $(DIST_CATALOGS_q)
|
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l distro-build/set-config bundle/racket/etc/config.rktd "$(INSTALL_NAME)" "$(BUILD_STAMP)" "$(DOC_SEARCH)" $(DIST_CATALOGS_q)
|
||||||
|
@ -438,7 +440,7 @@ win-client:
|
||||||
$(WIN32_PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l distro-build/set-config bundle/racket/etc/config.rktd "$(INSTALL_NAME)" "$(BUILD_STAMP)" "$(DOC_SEARCH)" $(DIST_CATALOGS_q)
|
$(WIN32_PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l distro-build/set-config bundle/racket/etc/config.rktd "$(INSTALL_NAME)" "$(BUILD_STAMP)" "$(DOC_SEARCH)" $(DIST_CATALOGS_q)
|
||||||
$(MAKE) win-installer-from-bundle DIST_BASE="$(DIST_BASE)" DIST_DESC="$(DIST_DESC)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DIST_SUFFIX="$(DIST_SUFFIX)" INSTALLER_OPTIONS="$(INSTALLER_OPTIONS)" INSTALLER_POST_PROCESS_BASE64="$(INSTALLER_POST_PROCESS_BASE64)" INSTALLER_PRE_PROCESS_BASE64="$(INSTALLER_PRE_PROCESS_BASE64)" MAC_PKG_MODE="$(MAC_PKG_MODE)" OSSLSIGNCODE_ARGS_BASE64="$(OSSLSIGNCODE_ARGS_BASE64)" README="$(README)" RELEASE_MODE="$(RELEASE_MODE)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SIGN_IDENTITY="$(SIGN_IDENTITY)" SOURCE_MODE="$(SOURCE_MODE)" TGZ_MODE="$(TGZ_MODE)" UPLOAD="$(UPLOAD)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" WIN32_PLAIN_RACKET="$(WIN32_PLAIN_RACKET)"
|
$(MAKE) win-installer-from-bundle DIST_BASE="$(DIST_BASE)" DIST_DESC="$(DIST_DESC)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DIST_SUFFIX="$(DIST_SUFFIX)" INSTALLER_OPTIONS="$(INSTALLER_OPTIONS)" INSTALLER_POST_PROCESS_BASE64="$(INSTALLER_POST_PROCESS_BASE64)" INSTALLER_PRE_PROCESS_BASE64="$(INSTALLER_PRE_PROCESS_BASE64)" MAC_PKG_MODE="$(MAC_PKG_MODE)" OSSLSIGNCODE_ARGS_BASE64="$(OSSLSIGNCODE_ARGS_BASE64)" README="$(README)" RELEASE_MODE="$(RELEASE_MODE)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SIGN_IDENTITY="$(SIGN_IDENTITY)" SOURCE_MODE="$(SOURCE_MODE)" TGZ_MODE="$(TGZ_MODE)" UPLOAD="$(UPLOAD)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" WIN32_PLAIN_RACKET="$(WIN32_PLAIN_RACKET)"
|
||||||
client-compile-any:
|
client-compile-any:
|
||||||
$(MAKE) client SETUP_MACHINE_FLAGS="-MCR `pwd`/build/zo:" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --enable-crossany" BUNDLE_FROM_SERVER_TARGET=bundle-cross-from-server BUILD_STAMP="$(BUILD_STAMP)" CLIENT_BASE="$(CLIENT_BASE)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" COPY_ARGS="$(COPY_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" DIST_BASE="$(DIST_BASE)" DIST_CATALOGS_q="$(DIST_CATALOGS_q)" DIST_DESC="$(DIST_DESC)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DIST_SUFFIX="$(DIST_SUFFIX)" DOC_SEARCH="$(DOC_SEARCH)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INSTALLER_OPTIONS="$(INSTALLER_OPTIONS)" INSTALLER_POST_PROCESS_BASE64="$(INSTALLER_POST_PROCESS_BASE64)" INSTALLER_PRE_PROCESS_BASE64="$(INSTALLER_PRE_PROCESS_BASE64)" INSTALL_NAME="$(INSTALL_NAME)" IN_BUNDLE_RACO="$(IN_BUNDLE_RACO)" JOB_OPTIONS="$(JOB_OPTIONS)" MAC_PKG_MODE="$(MAC_PKG_MODE)" OSSLSIGNCODE_ARGS_BASE64="$(OSSLSIGNCODE_ARGS_BASE64)" PKGS="$(PKGS)" PKG_INSTALL_OPTIONS="$(PKG_INSTALL_OPTIONS)" PKG_SOURCE_MODE="$(PKG_SOURCE_MODE)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" README="$(README)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER_COLLECTS_PATH="$(SERVER_COLLECTS_PATH)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SIGN_IDENTITY="$(SIGN_IDENTITY)" SOURCE_MODE="$(SOURCE_MODE)" SVR_CAT="$(SVR_CAT)" SVR_PRT="$(SVR_PRT)" TGZ_MODE="$(TGZ_MODE)" UNPACK_COLLECTS_FLAGS="$(UNPACK_COLLECTS_FLAGS)" UPLOAD="$(UPLOAD)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
$(MAKE) client SETUP_MACHINE_FLAGS="-MCR `pwd`/build/zo:" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS) --enable-crossany" BUNDLE_FROM_SERVER_TARGET=bundle-cross-from-server AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLIENT_BASE="$(CLIENT_BASE)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" COPY_ARGS="$(COPY_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" DIST_BASE="$(DIST_BASE)" DIST_CATALOGS_q="$(DIST_CATALOGS_q)" DIST_DESC="$(DIST_DESC)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DIST_SUFFIX="$(DIST_SUFFIX)" DOC_SEARCH="$(DOC_SEARCH)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INSTALLER_OPTIONS="$(INSTALLER_OPTIONS)" INSTALLER_POST_PROCESS_BASE64="$(INSTALLER_POST_PROCESS_BASE64)" INSTALLER_PRE_PROCESS_BASE64="$(INSTALLER_PRE_PROCESS_BASE64)" INSTALL_NAME="$(INSTALL_NAME)" IN_BUNDLE_RACO="$(IN_BUNDLE_RACO)" JOB_OPTIONS="$(JOB_OPTIONS)" MAC_PKG_MODE="$(MAC_PKG_MODE)" OSSLSIGNCODE_ARGS_BASE64="$(OSSLSIGNCODE_ARGS_BASE64)" PKGS="$(PKGS)" PKG_INSTALL_OPTIONS="$(PKG_INSTALL_OPTIONS)" PKG_SOURCE_MODE="$(PKG_SOURCE_MODE)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" README="$(README)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER_COLLECTS_PATH="$(SERVER_COLLECTS_PATH)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SIGN_IDENTITY="$(SIGN_IDENTITY)" SOURCE_MODE="$(SOURCE_MODE)" SVR_CAT="$(SVR_CAT)" SVR_PRT="$(SVR_PRT)" TGZ_MODE="$(TGZ_MODE)" UNPACK_COLLECTS_FLAGS="$(UNPACK_COLLECTS_FLAGS)" UPLOAD="$(UPLOAD)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||||
distro-build-from-server:
|
distro-build-from-server:
|
||||||
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -N raco -l- raco pkg install --catalog $(SVR_CAT) --scope user --skip-installed --deps search-auto --pkgs $(JOB_OPTIONS) distro-build-client
|
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -N raco -l- raco pkg install --catalog $(SVR_CAT) --scope user --skip-installed --deps search-auto --pkgs $(JOB_OPTIONS) distro-build-client
|
||||||
bundle-from-server:
|
bundle-from-server:
|
||||||
|
@ -480,14 +482,14 @@ win-test-client:
|
||||||
$(WIN32_PLAIN_RACKET) -G bundle/racket/etc -X bundle/racket/collects -C -A bundle/user -l raco pkg install --catalog $(SVR_CAT) --scope installation --skip-installed --deps search-auto --pkgs $(JOB_OPTIONS) $(PKG_INSTALL_OPTIONS) --recompile-only $(PKG_SOURCE_MODE) $(TEST_PKGS)
|
$(WIN32_PLAIN_RACKET) -G bundle/racket/etc -X bundle/racket/collects -C -A bundle/user -l raco pkg install --catalog $(SVR_CAT) --scope installation --skip-installed --deps search-auto --pkgs $(JOB_OPTIONS) $(PKG_INSTALL_OPTIONS) --recompile-only $(PKG_SOURCE_MODE) $(TEST_PKGS)
|
||||||
bundle\racket\raco test $(TEST_ARGS_q)
|
bundle\racket\raco test $(TEST_ARGS_q)
|
||||||
client-from-site:
|
client-from-site:
|
||||||
$(MAKE) with-setup-flags NEXT_TARGET=plain-client-from-site BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
$(MAKE) with-setup-flags NEXT_TARGET=plain-client-from-site AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||||
plain-client-from-site:
|
plain-client-from-site:
|
||||||
make client SERVER_CATALOG_PATH=$(SITE_PATH)catalog/ SERVER_COLLECTS_PATH=$(SITE_PATH)origin/ DIST_CATALOGS_q='$(SERVER_URL_SCHEME)://$(SERVER):$(SERVER_PORT)/$(SITE_PATH)catalog/ ""' DOC_SEARCH="$(SERVER_URL_SCHEME)://$(SERVER):$(SERVER_PORT)/$(SITE_PATH)doc/local-redirect/index.html" $(PROP_ARGS)
|
make client SERVER_CATALOG_PATH=$(SITE_PATH)catalog/ SERVER_COLLECTS_PATH=$(SITE_PATH)origin/ DIST_CATALOGS_q='$(SERVER_URL_SCHEME)://$(SERVER):$(SERVER_PORT)/$(SITE_PATH)catalog/ ""' DOC_SEARCH="$(SERVER_URL_SCHEME)://$(SERVER):$(SERVER_PORT)/$(SITE_PATH)doc/local-redirect/index.html" $(PROP_ARGS)
|
||||||
installers:
|
installers:
|
||||||
rm -rf build/installers
|
rm -rf build/installers
|
||||||
$(MAKE) server SERVE_DURING_CMD_qq='-l- distro-build/drive-clients $(DRIVE_DESCRIBE) $(RELEASE_MODE) $(VERSIONLESS_MODE) $(SOURCE_MODE) $(CLEAN_MODE) $(SERVER_COMPILE_MACHINE) "$(CONFIG)" "$(CONFIG_MODE)" $(SERVER) $(SERVER_PORT) "$(SERVER_HOSTS)" "$(PKGS)" "$(DOC_SEARCH)" "$(DIST_NAME)" $(DIST_BASE) $(DIST_DIR)' BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
$(MAKE) server SERVE_DURING_CMD_qq='-l- distro-build/drive-clients $(DRIVE_DESCRIBE) $(RELEASE_MODE) $(VERSIONLESS_MODE) $(SOURCE_MODE) $(CLEAN_MODE) $(SERVER_COMPILE_MACHINE) "$(CONFIG)" "$(CONFIG_MODE)" $(SERVER) $(SERVER_PORT) "$(SERVER_HOSTS)" "$(PKGS)" "$(DOC_SEARCH)" "$(DIST_NAME)" $(DIST_BASE) $(DIST_DIR)' AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||||
installers-from-built:
|
installers-from-built:
|
||||||
$(MAKE) with-setup-flags NEXT_TARGET=plain-installers-from-built BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
$(MAKE) with-setup-flags NEXT_TARGET=plain-installers-from-built AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||||
plain-installers-from-built:
|
plain-installers-from-built:
|
||||||
$(MAKE) built-catalog-server SERVE_DURING_CMD_qq='-l- distro-build/drive-clients $(DRIVE_DESCRIBE) $(RELEASE_MODE) $(VERSIONLESS_MODE) $(SOURCE_MODE) $(CLEAN_MODE) $(SERVER_COMPILE_MACHINE) "$(CONFIG)" "$(CONFIG_MODE)" $(SERVER) $(SERVER_PORT) "$(SERVER_HOSTS)" "$(PKGS)" "$(DOC_SEARCH)" "$(DIST_NAME)" $(DIST_BASE) $(DIST_DIR)' CONFIG="$(CONFIG)" CONFIG_MODE="$(CONFIG_MODE)" PLAIN_RACKET="$(PLAIN_RACKET)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PORT="$(SERVER_PORT)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
$(MAKE) built-catalog-server SERVE_DURING_CMD_qq='-l- distro-build/drive-clients $(DRIVE_DESCRIBE) $(RELEASE_MODE) $(VERSIONLESS_MODE) $(SOURCE_MODE) $(CLEAN_MODE) $(SERVER_COMPILE_MACHINE) "$(CONFIG)" "$(CONFIG_MODE)" $(SERVER) $(SERVER_PORT) "$(SERVER_HOSTS)" "$(PKGS)" "$(DOC_SEARCH)" "$(DIST_NAME)" $(DIST_BASE) $(DIST_DIR)' CONFIG="$(CONFIG)" CONFIG_MODE="$(CONFIG_MODE)" PLAIN_RACKET="$(PLAIN_RACKET)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PORT="$(SERVER_PORT)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)"
|
||||||
drive-clients:
|
drive-clients:
|
||||||
|
@ -495,20 +497,20 @@ drive-clients:
|
||||||
describe-clients:
|
describe-clients:
|
||||||
$(MAKE) drive-clients DRIVE_DESCRIBE=--describe CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIG_MODE="$(CONFIG_MODE)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_SEARCH="$(DOC_SEARCH)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" RELEASE_MODE="$(RELEASE_MODE)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PORT="$(SERVER_PORT)" SOURCE_MODE="$(SOURCE_MODE)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)"
|
$(MAKE) drive-clients DRIVE_DESCRIBE=--describe CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIG_MODE="$(CONFIG_MODE)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_SEARCH="$(DOC_SEARCH)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" RELEASE_MODE="$(RELEASE_MODE)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PORT="$(SERVER_PORT)" SOURCE_MODE="$(SOURCE_MODE)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)"
|
||||||
site:
|
site:
|
||||||
$(MAKE) installers BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
$(MAKE) installers AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||||
$(MAKE) site-from-installers BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
$(MAKE) site-from-installers AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||||
site-from-installers:
|
site-from-installers:
|
||||||
$(MAKE) with-setup-flags NEXT_TARGET=plain-site-from-installers BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
$(MAKE) with-setup-flags NEXT_TARGET=plain-site-from-installers AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||||
plain-site-from-installers:
|
plain-site-from-installers:
|
||||||
rm -rf build/docs
|
rm -rf build/docs
|
||||||
rm -rf "build/zo`pwd`/build/docs"
|
rm -rf "build/zo`pwd`/build/docs"
|
||||||
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l- distro-build/install-for-docs build/docs "$(CONFIG)" "$(CONFIG_MODE)" "$(PKGS)" $(DOC_CATALOGS)
|
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l- distro-build/install-for-docs build/docs "$(CONFIG)" "$(CONFIG_MODE)" "$(PKGS)" $(DOC_CATALOGS)
|
||||||
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l- distro-build/assemble-site "$(CONFIG)" "$(CONFIG_MODE)" "$(DIST_BASE)"
|
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l- distro-build/assemble-site "$(CONFIG)" "$(CONFIG_MODE)" "$(DIST_BASE)"
|
||||||
snapshot-site:
|
snapshot-site:
|
||||||
$(MAKE) site BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
$(MAKE) site AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||||
$(MAKE) snapshot-at-site BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
$(MAKE) snapshot-at-site AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||||
snapshot-at-site:
|
snapshot-at-site:
|
||||||
$(MAKE) with-setup-flags NEXT_TARGET=plain-snapshot-at-site BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
$(MAKE) with-setup-flags NEXT_TARGET=plain-snapshot-at-site AS_IS="$(AS_IS)" BUILD_STAMP="$(BUILD_STAMP)" CLEAN_MODE="$(CLEAN_MODE)" CONFIG="$(CONFIG)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CONFIG_MODE="$(CONFIG_MODE)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DIST_BASE="$(DIST_BASE)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DOC_CATALOGS="$(DOC_CATALOGS)" DOC_SEARCH="$(DOC_SEARCH)" DRIVE_DESCRIBE="$(DRIVE_DESCRIBE)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PACK_BUILT_OPTIONS="$(PACK_BUILT_OPTIONS)" PKGS="$(PKGS)" PLAIN_RACKET="$(PLAIN_RACKET)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" PROP_ARGS="$(PROP_ARGS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RELEASE_MODE="$(RELEASE_MODE)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SERVER="$(SERVER)" SERVER_COMPILE_MACHINE="$(SERVER_COMPILE_MACHINE)" SERVER_HOSTS="$(SERVER_HOSTS)" SERVER_PKG_INSTALL_OPTIONS="$(SERVER_PKG_INSTALL_OPTIONS)" SERVER_PORT="$(SERVER_PORT)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SITE_PATH="$(SITE_PATH)" SOURCE_MODE="$(SOURCE_MODE)" SRC_CATALOG="$(SRC_CATALOG)" TEST_PKGS="$(TEST_PKGS)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)"
|
||||||
plain-snapshot-at-site:
|
plain-snapshot-at-site:
|
||||||
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l- distro-build/manage-snapshots "$(CONFIG)" "$(CONFIG_MODE)" "$(DIST_BASE)"
|
$(PLAIN_RACKET) -G build/user/config -X racket/collects -A build/user $(SETUP_MACHINE_FLAGS) -l- distro-build/manage-snapshots "$(CONFIG)" "$(CONFIG_MODE)" "$(DIST_BASE)"
|
||||||
win32-in-place:
|
win32-in-place:
|
||||||
|
@ -526,9 +528,9 @@ win32-cs-as-is:
|
||||||
win32-cs-base:
|
win32-cs-base:
|
||||||
$(MAKE) win-cs-base DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)"
|
$(MAKE) win-cs-base DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" JOB_OPTIONS="$(JOB_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)"
|
||||||
win32-both:
|
win32-both:
|
||||||
$(MAKE) win-both CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
$(MAKE) win-both AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)"
|
||||||
win32-also-cs:
|
win32-also-cs:
|
||||||
$(MAKE) win-also-cs CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
$(MAKE) win-also-cs AS_IS="$(AS_IS)" CONFIGURE_ARGS="$(CONFIGURE_ARGS)" CONFIG_IN_PLACE_ARGS="$(CONFIG_IN_PLACE_ARGS)" CPUS="$(CPUS)" CS_CONFIGURE_ARGS="$(CS_CONFIGURE_ARGS)" CS_CROSS_SUFFIX="$(CS_CROSS_SUFFIX)" CS_HOST_WORKAREA_PREFIX="$(CS_HOST_WORKAREA_PREFIX)" DEFAULT_SRC_CATALOG="$(DEFAULT_SRC_CATALOG)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" INITIAL_SETUP_MODE="$(INITIAL_SETUP_MODE)" IN_PLACE_SETUP_OPTIONS="$(IN_PLACE_SETUP_OPTIONS)" JOB_OPTIONS="$(JOB_OPTIONS)" MORE_CONFIGURE_ARGS="$(MORE_CONFIGURE_ARGS)" PKGS="$(PKGS)" PKG_UPDATE_OPTIONS="$(PKG_UPDATE_OPTIONS)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BOOTFILES="$(RACKET_FOR_BOOTFILES)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" SELF_ROOT_CONFIG_FLAG="$(SELF_ROOT_CONFIG_FLAG)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SRC_CATALOG="$(SRC_CATALOG)"
|
||||||
win32-client:
|
win32-client:
|
||||||
$(MAKE) win-client BUILD_STAMP="$(BUILD_STAMP)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" DIST_BASE="$(DIST_BASE)" DIST_CATALOGS_q="$(DIST_CATALOGS_q)" DIST_DESC="$(DIST_DESC)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DIST_SUFFIX="$(DIST_SUFFIX)" DOC_SEARCH="$(DOC_SEARCH)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INSTALLER_OPTIONS="$(INSTALLER_OPTIONS)" INSTALLER_POST_PROCESS_BASE64="$(INSTALLER_POST_PROCESS_BASE64)" INSTALLER_PRE_PROCESS_BASE64="$(INSTALLER_PRE_PROCESS_BASE64)" INSTALL_NAME="$(INSTALL_NAME)" JOB_OPTIONS="$(JOB_OPTIONS)" MAC_PKG_MODE="$(MAC_PKG_MODE)" OSSLSIGNCODE_ARGS_BASE64="$(OSSLSIGNCODE_ARGS_BASE64)" PKGS="$(PKGS)" PKG_INSTALL_OPTIONS="$(PKG_INSTALL_OPTIONS)" PKG_SOURCE_MODE="$(PKG_SOURCE_MODE)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" README="$(README)" RELEASE_MODE="$(RELEASE_MODE)" SERVER_COLLECTS_PATH="$(SERVER_COLLECTS_PATH)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SIGN_IDENTITY="$(SIGN_IDENTITY)" SOURCE_MODE="$(SOURCE_MODE)" SVR_CAT="$(SVR_CAT)" SVR_PRT="$(SVR_PRT)" TGZ_MODE="$(TGZ_MODE)" UNPACK_COLLECTS_FLAGS="$(UNPACK_COLLECTS_FLAGS)" UPLOAD="$(UPLOAD)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)" WIN32_CLIENT_BASE="$(WIN32_CLIENT_BASE)" WIN32_PLAIN_RACKET="$(WIN32_PLAIN_RACKET)"
|
$(MAKE) win-client BUILD_STAMP="$(BUILD_STAMP)" DISABLE_STATIC_LIBS="$(DISABLE_STATIC_LIBS)" DIST_BASE="$(DIST_BASE)" DIST_CATALOGS_q="$(DIST_CATALOGS_q)" DIST_DESC="$(DIST_DESC)" DIST_DIR="$(DIST_DIR)" DIST_NAME="$(DIST_NAME)" DIST_SUFFIX="$(DIST_SUFFIX)" DOC_SEARCH="$(DOC_SEARCH)" EXTRA_REPOS_BASE="$(EXTRA_REPOS_BASE)" GIT_CLONE_ARGS_qq="$(GIT_CLONE_ARGS_qq)" INSTALLER_OPTIONS="$(INSTALLER_OPTIONS)" INSTALLER_POST_PROCESS_BASE64="$(INSTALLER_POST_PROCESS_BASE64)" INSTALLER_PRE_PROCESS_BASE64="$(INSTALLER_PRE_PROCESS_BASE64)" INSTALL_NAME="$(INSTALL_NAME)" JOB_OPTIONS="$(JOB_OPTIONS)" MAC_PKG_MODE="$(MAC_PKG_MODE)" OSSLSIGNCODE_ARGS_BASE64="$(OSSLSIGNCODE_ARGS_BASE64)" PKGS="$(PKGS)" PKG_INSTALL_OPTIONS="$(PKG_INSTALL_OPTIONS)" PKG_SOURCE_MODE="$(PKG_SOURCE_MODE)" PLT_SETUP_OPTIONS="$(PLT_SETUP_OPTIONS)" RACKETBC_SUFFIX="$(RACKETBC_SUFFIX)" RACKETCS_SUFFIX="$(RACKETCS_SUFFIX)" RACKET_FOR_BUILD="$(RACKET_FOR_BUILD)" README="$(README)" RELEASE_MODE="$(RELEASE_MODE)" SERVER_COLLECTS_PATH="$(SERVER_COLLECTS_PATH)" SERVER_URL_SCHEME="$(SERVER_URL_SCHEME)" SETUP_MACHINE_FLAGS="$(SETUP_MACHINE_FLAGS)" SIGN_IDENTITY="$(SIGN_IDENTITY)" SOURCE_MODE="$(SOURCE_MODE)" SVR_CAT="$(SVR_CAT)" SVR_PRT="$(SVR_PRT)" TGZ_MODE="$(TGZ_MODE)" UNPACK_COLLECTS_FLAGS="$(UNPACK_COLLECTS_FLAGS)" UPLOAD="$(UPLOAD)" VERSIONLESS_MODE="$(VERSIONLESS_MODE)" VM="$(VM)" WIN32_BUILD_LEVEL="$(WIN32_BUILD_LEVEL)" WIN32_CLIENT_BASE="$(WIN32_CLIENT_BASE)" WIN32_PLAIN_RACKET="$(WIN32_PLAIN_RACKET)"
|
||||||
win32-distro-build-from-server:
|
win32-distro-build-from-server:
|
||||||
|
|
|
@ -47,19 +47,19 @@ MTZlibLib=..\zlib\zlibmt.lib
|
||||||
MDLZ4Lib=..\lz4\lib\liblz4.lib
|
MDLZ4Lib=..\lz4\lib\liblz4.lib
|
||||||
MTLZ4Lib=..\lz4\lib\liblz4mt.lib
|
MTLZ4Lib=..\lz4\lib\liblz4mt.lib
|
||||||
|
|
||||||
csrc=statics.c segment.c alloc.c symbol.c intern.c gcwrapper.c gc-011.c gc-oce.c gc-ocd.c\
|
csrc=statics.c segment.c alloc.c symbol.c intern.c gcwrapper.c gc-011.c gc-par.c gc-oce.c gc-ocd.c\
|
||||||
number.c schsig.c io.c new-io.c print.c fasl.c vfasl.c stats.c\
|
number.c schsig.c io.c new-io.c print.c fasl.c vfasl.c stats.c\
|
||||||
foreign.c prim.c prim5.c flushcache.c\
|
foreign.c prim.c prim5.c flushcache.c\
|
||||||
windows.c\
|
windows.c\
|
||||||
schlib.c thread.c expeditor.c scheme.c compress-io.c random.c
|
schlib.c thread.c expeditor.c scheme.c compress-io.c random.c
|
||||||
|
|
||||||
cobj=statics.obj segment.obj alloc.obj symbol.obj intern.obj gcwrapper.obj gc-011.obj gc-oce.obj gc-ocd.obj\
|
cobj=statics.obj segment.obj alloc.obj symbol.obj intern.obj gcwrapper.obj gc-011.obj gc-par.obj gc-oce.obj gc-ocd.obj\
|
||||||
number.obj schsig.obj io.obj new-io.obj print.obj fasl.obj vfasl.obj stats.obj\
|
number.obj schsig.obj io.obj new-io.obj print.obj fasl.obj vfasl.obj stats.obj\
|
||||||
foreign.obj prim.obj prim5.obj flushcache.obj\
|
foreign.obj prim.obj prim5.obj flushcache.obj\
|
||||||
windows.obj\
|
windows.obj\
|
||||||
schlib.obj thread.obj expeditor.obj scheme.obj compress-io.obj random.obj
|
schlib.obj thread.obj expeditor.obj scheme.obj compress-io.obj random.obj
|
||||||
|
|
||||||
hsrc=system.h types.h version.h globals.h externs.h compress-io.h segment.h gc.c thread.h sort.h itest.c
|
hsrc=system.h types.h version.h globals.h externs.h compress-io.h segment.h atomic.h gc.c thread.h sort.h itest.c
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
|
|
||||||
|
|
|
@ -46,19 +46,19 @@ MTZlibLib=..\zlib\zlibmt.lib
|
||||||
MDLZ4Lib=..\lz4\lib\liblz4.lib
|
MDLZ4Lib=..\lz4\lib\liblz4.lib
|
||||||
MTLZ4Lib=..\lz4\lib\liblz4mt.lib
|
MTLZ4Lib=..\lz4\lib\liblz4mt.lib
|
||||||
|
|
||||||
csrc=statics.c segment.c alloc.c symbol.c intern.c gcwrapper.c gc-011.c gc-oce.c gc-ocd.c\
|
csrc=statics.c segment.c alloc.c symbol.c intern.c gcwrapper.c gc-011.c gc-par.c gc-oce.c gc-ocd.c\
|
||||||
number.c schsig.c io.c new-io.c print.c fasl.c vfasl.c stats.c\
|
number.c schsig.c io.c new-io.c print.c fasl.c vfasl.c stats.c\
|
||||||
foreign.c prim.c prim5.c flushcache.c\
|
foreign.c prim.c prim5.c flushcache.c\
|
||||||
windows.c\
|
windows.c\
|
||||||
schlib.c thread.c expeditor.c scheme.c compress-io.c random.c
|
schlib.c thread.c expeditor.c scheme.c compress-io.c random.c
|
||||||
|
|
||||||
cobj=statics.obj segment.obj alloc.obj symbol.obj intern.obj gcwrapper.obj gc-011.obj gc-oce.obj gc-ocd.obj\
|
cobj=statics.obj segment.obj alloc.obj symbol.obj intern.obj gcwrapper.obj gc-011.obj gc-par.obj gc-oce.obj gc-ocd.obj\
|
||||||
number.obj schsig.obj io.obj new-io.obj print.obj fasl.obj vfasl.obj stats.obj\
|
number.obj schsig.obj io.obj new-io.obj print.obj fasl.obj vfasl.obj stats.obj\
|
||||||
foreign.obj prim.obj prim5.obj flushcache.obj\
|
foreign.obj prim.obj prim5.obj flushcache.obj\
|
||||||
windows.obj\
|
windows.obj\
|
||||||
schlib.obj thread.obj expeditor.obj scheme.obj compress-io.obj random.obj
|
schlib.obj thread.obj expeditor.obj scheme.obj compress-io.obj random.obj
|
||||||
|
|
||||||
hsrc=system.h types.h version.h globals.h externs.h compress-io.h segment.h gc.c thread.h sort.h itest.c
|
hsrc=system.h types.h version.h globals.h externs.h compress-io.h segment.h atomic.h gc.c thread.h sort.h itest.c
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
|
|
||||||
|
|
|
@ -47,19 +47,19 @@ MTZlibLib=..\zlib\zlibmt.lib
|
||||||
MDLZ4Lib=..\lz4\lib\liblz4.lib
|
MDLZ4Lib=..\lz4\lib\liblz4.lib
|
||||||
MTLZ4Lib=..\lz4\lib\liblz4mt.lib
|
MTLZ4Lib=..\lz4\lib\liblz4mt.lib
|
||||||
|
|
||||||
csrc=statics.c segment.c alloc.c symbol.c intern.c gcwrapper.c gc-011.c gc-oce.c gc-ocd.c\
|
csrc=statics.c segment.c alloc.c symbol.c intern.c gcwrapper.c gc-011.c gc-par.c gc-oce.c gc-ocd.c\
|
||||||
number.c schsig.c io.c new-io.c print.c fasl.c vfasl.c stats.c\
|
number.c schsig.c io.c new-io.c print.c fasl.c vfasl.c stats.c\
|
||||||
foreign.c prim.c prim5.c flushcache.c\
|
foreign.c prim.c prim5.c flushcache.c\
|
||||||
windows.c\
|
windows.c\
|
||||||
schlib.c thread.c expeditor.c scheme.c compress-io.c random.c
|
schlib.c thread.c expeditor.c scheme.c compress-io.c random.c
|
||||||
|
|
||||||
cobj=statics.obj segment.obj alloc.obj symbol.obj intern.obj gcwrapper.obj gc-011.obj gc-oce.obj gc-ocd.obj\
|
cobj=statics.obj segment.obj alloc.obj symbol.obj intern.obj gcwrapper.obj gc-011.obj gc-par.obj gc-oce.obj gc-ocd.obj\
|
||||||
number.obj schsig.obj io.obj new-io.obj print.obj fasl.obj vfasl.obj stats.obj\
|
number.obj schsig.obj io.obj new-io.obj print.obj fasl.obj vfasl.obj stats.obj\
|
||||||
foreign.obj prim.obj prim5.obj flushcache.obj\
|
foreign.obj prim.obj prim5.obj flushcache.obj\
|
||||||
windows.obj\
|
windows.obj\
|
||||||
schlib.obj thread.obj expeditor.obj scheme.obj compress-io.obj random.obj
|
schlib.obj thread.obj expeditor.obj scheme.obj compress-io.obj random.obj
|
||||||
|
|
||||||
hsrc=system.h types.h version.h globals.h externs.h compress-io.h segment.h gc.c thread.h sort.h itest.c
|
hsrc=system.h types.h version.h globals.h externs.h compress-io.h segment.h atomic.h gc.c thread.h sort.h itest.c
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
|
|
||||||
|
|
|
@ -47,19 +47,19 @@ MTZlibLib=..\zlib\zlibmt.lib
|
||||||
MDLZ4Lib=..\lz4\lib\liblz4.lib
|
MDLZ4Lib=..\lz4\lib\liblz4.lib
|
||||||
MTLZ4Lib=..\lz4\lib\liblz4mt.lib
|
MTLZ4Lib=..\lz4\lib\liblz4mt.lib
|
||||||
|
|
||||||
csrc=statics.c segment.c alloc.c symbol.c intern.c gcwrapper.c gc-011.c gc-oce.c gc-ocd.c\
|
csrc=statics.c segment.c alloc.c symbol.c intern.c gcwrapper.c gc-011.c gc-par.c gc-oce.c gc-ocd.c\
|
||||||
number.c schsig.c io.c new-io.c print.c fasl.c vfasl.c stats.c\
|
number.c schsig.c io.c new-io.c print.c fasl.c vfasl.c stats.c\
|
||||||
foreign.c prim.c prim5.c flushcache.c\
|
foreign.c prim.c prim5.c flushcache.c\
|
||||||
windows.c\
|
windows.c\
|
||||||
schlib.c thread.c expeditor.c scheme.c compress-io.c random.c
|
schlib.c thread.c expeditor.c scheme.c compress-io.c random.c
|
||||||
|
|
||||||
cobj=statics.obj segment.obj alloc.obj symbol.obj intern.obj gcwrapper.obj gc-011.c gc-oce.obj gc-ocd.obj\
|
cobj=statics.obj segment.obj alloc.obj symbol.obj intern.obj gcwrapper.obj gc-011.c gc-par.obj gc-oce.obj gc-ocd.obj\
|
||||||
number.obj schsig.obj io.obj new-io.obj print.obj fasl.obj vfasl.obj stats.obj\
|
number.obj schsig.obj io.obj new-io.obj print.obj fasl.obj vfasl.obj stats.obj\
|
||||||
foreign.obj prim.obj prim5.obj flushcache.obj\
|
foreign.obj prim.obj prim5.obj flushcache.obj\
|
||||||
windows.obj\
|
windows.obj\
|
||||||
schlib.obj thread.obj expeditor.obj scheme.obj compress-io.obj random.obj
|
schlib.obj thread.obj expeditor.obj scheme.obj compress-io.obj random.obj
|
||||||
|
|
||||||
hsrc=system.h types.h version.h globals.h externs.h compress-io.h segment.h gc.c thread.h sort.h itest.c
|
hsrc=system.h types.h version.h globals.h externs.h compress-io.h segment.h atomic.h gc.c thread.h sort.h itest.c
|
||||||
|
|
||||||
.SUFFIXES:
|
.SUFFIXES:
|
||||||
|
|
||||||
|
|
|
@ -35,13 +35,13 @@ KernelLib=../boot/$m/libkernel.a
|
||||||
KernelLibLinkDeps=${zlibDep} ${LZ4Dep}
|
KernelLibLinkDeps=${zlibDep} ${LZ4Dep}
|
||||||
KernelLibLinkLibs=${zlibLib} ${LZ4Lib}
|
KernelLibLinkLibs=${zlibLib} ${LZ4Lib}
|
||||||
|
|
||||||
kernelsrc=statics.c segment.c alloc.c symbol.c intern.c gcwrapper.c gc-011.c gc-ocd.c gc-oce.c\
|
kernelsrc=statics.c segment.c alloc.c symbol.c intern.c gcwrapper.c gc-011.c gc-par.c gc-ocd.c gc-oce.c\
|
||||||
number.c schsig.c io.c new-io.c print.c fasl.c vfasl.c stats.c foreign.c prim.c prim5.c flushcache.c\
|
number.c schsig.c io.c new-io.c print.c fasl.c vfasl.c stats.c foreign.c prim.c prim5.c flushcache.c\
|
||||||
schlib.c thread.c expeditor.c scheme.c compress-io.c random.c
|
schlib.c thread.c expeditor.c scheme.c compress-io.c random.c
|
||||||
|
|
||||||
kernelobj=${kernelsrc:%.c=%.$o} ${mdobj}
|
kernelobj=${kernelsrc:%.c=%.$o} ${mdobj}
|
||||||
|
|
||||||
kernelhdr=system.h types.h version.h globals.h externs.h segment.h gc.c sort.h thread.h config.h compress-io.h itest.c nocurses.h popcount.h
|
kernelhdr=system.h types.h version.h globals.h externs.h segment.h atomic.h gc.c sort.h thread.h config.h compress-io.h itest.c nocurses.h popcount.h
|
||||||
|
|
||||||
mainsrc=main.c
|
mainsrc=main.c
|
||||||
|
|
||||||
|
@ -64,12 +64,12 @@ endif
|
||||||
|
|
||||||
scheme.o: itest.c
|
scheme.o: itest.c
|
||||||
scheme.o main.o: config.h
|
scheme.o main.o: config.h
|
||||||
${kernelobj}: system.h types.h version.h externs.h globals.h segment.h thread.h config.h sort.h compress-io.h nocurses.h popcount.h
|
${kernelobj}: system.h types.h version.h externs.h globals.h segment.h atomic.h thread.h config.h sort.h compress-io.h nocurses.h popcount.h
|
||||||
${kernelobj}: ${Include}/equates.h ${Include}/scheme.h
|
${kernelobj}: ${Include}/equates.h ${Include}/scheme.h
|
||||||
${mainobj}: ${Include}/scheme.h
|
${mainobj}: ${Include}/scheme.h
|
||||||
${kernelobj}: ${zlibHeaderDep} ${LZ4HeaderDep}
|
${kernelobj}: ${zlibHeaderDep} ${LZ4HeaderDep}
|
||||||
gc-011.o gc-ocd.o gc-oce.o: gc.c
|
gc-011.o gc-par.o gc-ocd.o gc-oce.o: gc.c
|
||||||
gc-011.o gc-ocd.o: ${Include}/gc-ocd.inc
|
gc-011.o gc-par.o gc-ocd.o: ${Include}/gc-ocd.inc
|
||||||
gc-oce.o: ${Include}/gc-oce.inc
|
gc-oce.o: ${Include}/gc-oce.inc
|
||||||
vfasl.o: ${Include}/vfasl.inc
|
vfasl.o: ${Include}/vfasl.inc
|
||||||
|
|
||||||
|
|
|
@ -24,14 +24,16 @@ void S_alloc_init() {
|
||||||
ISPC s; IGEN g; UINT i;
|
ISPC s; IGEN g; UINT i;
|
||||||
|
|
||||||
if (S_boot_time) {
|
if (S_boot_time) {
|
||||||
|
ptr tc = TO_PTR(S_G.thread_context);
|
||||||
|
|
||||||
/* reset the allocation tables */
|
/* reset the allocation tables */
|
||||||
for (g = 0; g <= static_generation; g++) {
|
for (g = 0; g <= static_generation; g++) {
|
||||||
S_G.bytes_of_generation[g] = 0;
|
S_G.bytes_of_generation[g] = 0;
|
||||||
for (s = 0; s <= max_real_space; s++) {
|
for (s = 0; s <= max_real_space; s++) {
|
||||||
S_G.base_loc[g][s] = FIX(0);
|
BASELOC_AT(tc, s, g) = FIX(0);
|
||||||
S_G.next_loc[g][s] = FIX(0);
|
NEXTLOC_AT(tc, s, g) = FIX(0);
|
||||||
S_G.bytes_left[g][s] = 0;
|
BYTESLEFT_AT(tc, s, g) = 0;
|
||||||
S_G.bytes_of_space[g][s] = 0;
|
S_G.bytes_of_space[g][s] = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,35 +50,35 @@ void S_alloc_init() {
|
||||||
S_G.nonprocedure_code = FIX(0);
|
S_G.nonprocedure_code = FIX(0);
|
||||||
|
|
||||||
S_protect(&S_G.null_vector);
|
S_protect(&S_G.null_vector);
|
||||||
find_room(space_new, 0, type_typed_object, size_vector(0), S_G.null_vector);
|
find_room(tc, space_new, 0, type_typed_object, size_vector(0), S_G.null_vector);
|
||||||
VECTTYPE(S_G.null_vector) = (0 << vector_length_offset) | type_vector;
|
VECTTYPE(S_G.null_vector) = (0 << vector_length_offset) | type_vector;
|
||||||
|
|
||||||
S_protect(&S_G.null_fxvector);
|
S_protect(&S_G.null_fxvector);
|
||||||
find_room(space_new, 0, type_typed_object, size_fxvector(0), S_G.null_fxvector);
|
find_room(tc, space_new, 0, type_typed_object, size_fxvector(0), S_G.null_fxvector);
|
||||||
FXVECTOR_TYPE(S_G.null_fxvector) = (0 << fxvector_length_offset) | type_fxvector;
|
FXVECTOR_TYPE(S_G.null_fxvector) = (0 << fxvector_length_offset) | type_fxvector;
|
||||||
|
|
||||||
S_protect(&S_G.null_bytevector);
|
S_protect(&S_G.null_bytevector);
|
||||||
find_room(space_new, 0, type_typed_object, size_bytevector(0), S_G.null_bytevector);
|
find_room(tc, space_new, 0, type_typed_object, size_bytevector(0), S_G.null_bytevector);
|
||||||
BYTEVECTOR_TYPE(S_G.null_bytevector) = (0 << bytevector_length_offset) | type_bytevector;
|
BYTEVECTOR_TYPE(S_G.null_bytevector) = (0 << bytevector_length_offset) | type_bytevector;
|
||||||
|
|
||||||
S_protect(&S_G.null_string);
|
S_protect(&S_G.null_string);
|
||||||
find_room(space_new, 0, type_typed_object, size_string(0), S_G.null_string);
|
find_room(tc, space_new, 0, type_typed_object, size_string(0), S_G.null_string);
|
||||||
STRTYPE(S_G.null_string) = (0 << string_length_offset) | type_string;
|
STRTYPE(S_G.null_string) = (0 << string_length_offset) | type_string;
|
||||||
|
|
||||||
S_protect(&S_G.null_immutable_vector);
|
S_protect(&S_G.null_immutable_vector);
|
||||||
find_room(space_new, 0, type_typed_object, size_vector(0), S_G.null_immutable_vector);
|
find_room(tc, space_new, 0, type_typed_object, size_vector(0), S_G.null_immutable_vector);
|
||||||
VECTTYPE(S_G.null_immutable_vector) = (0 << vector_length_offset) | type_vector | vector_immutable_flag;
|
VECTTYPE(S_G.null_immutable_vector) = (0 << vector_length_offset) | type_vector | vector_immutable_flag;
|
||||||
|
|
||||||
S_protect(&S_G.null_immutable_fxvector);
|
S_protect(&S_G.null_immutable_fxvector);
|
||||||
find_room(space_new, 0, type_typed_object, size_fxvector(0), S_G.null_immutable_fxvector);
|
find_room(tc, space_new, 0, type_typed_object, size_fxvector(0), S_G.null_immutable_fxvector);
|
||||||
FXVECTOR_TYPE(S_G.null_immutable_fxvector) = (0 << fxvector_length_offset) | type_fxvector | fxvector_immutable_flag;
|
FXVECTOR_TYPE(S_G.null_immutable_fxvector) = (0 << fxvector_length_offset) | type_fxvector | fxvector_immutable_flag;
|
||||||
|
|
||||||
S_protect(&S_G.null_immutable_bytevector);
|
S_protect(&S_G.null_immutable_bytevector);
|
||||||
find_room(space_new, 0, type_typed_object, size_bytevector(0), S_G.null_immutable_bytevector);
|
find_room(tc, space_new, 0, type_typed_object, size_bytevector(0), S_G.null_immutable_bytevector);
|
||||||
BYTEVECTOR_TYPE(S_G.null_immutable_bytevector) = (0 << bytevector_length_offset) | type_bytevector | bytevector_immutable_flag;
|
BYTEVECTOR_TYPE(S_G.null_immutable_bytevector) = (0 << bytevector_length_offset) | type_bytevector | bytevector_immutable_flag;
|
||||||
|
|
||||||
S_protect(&S_G.null_immutable_string);
|
S_protect(&S_G.null_immutable_string);
|
||||||
find_room(space_new, 0, type_typed_object, size_string(0), S_G.null_immutable_string);
|
find_room(tc, space_new, 0, type_typed_object, size_string(0), S_G.null_immutable_string);
|
||||||
STRTYPE(S_G.null_immutable_string) = (0 << string_length_offset) | type_string | string_immutable_flag;
|
STRTYPE(S_G.null_immutable_string) = (0 << string_length_offset) | type_string | string_immutable_flag;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -101,7 +103,7 @@ void S_reset_scheme_stack(tc, n) ptr tc; iptr n; {
|
||||||
if (*x == snil) {
|
if (*x == snil) {
|
||||||
if (n < default_stack_size) n = default_stack_size;
|
if (n < default_stack_size) n = default_stack_size;
|
||||||
/* stacks are untyped objects */
|
/* stacks are untyped objects */
|
||||||
find_room(space_new, 0, typemod, n, SCHEMESTACK(tc));
|
find_room(tc, space_new, 0, typemod, n, SCHEMESTACK(tc));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if ((m = CACHEDSTACKSIZE(*x)) >= n) {
|
if ((m = CACHEDSTACKSIZE(*x)) >= n) {
|
||||||
|
@ -150,12 +152,10 @@ ptr S_compute_bytes_allocated(xg, xs) ptr xg; ptr xs; {
|
||||||
while (g <= gmax) {
|
while (g <= gmax) {
|
||||||
n += S_G.bytesof[g][countof_phantom];
|
n += S_G.bytesof[g][countof_phantom];
|
||||||
for (s = smin; s <= smax; s++) {
|
for (s = smin; s <= smax; s++) {
|
||||||
ptr next_loc = S_G.next_loc[g][s];
|
ptr next_loc;
|
||||||
/* add in bytes previously recorded */
|
/* add in bytes previously recorded */
|
||||||
n += S_G.bytes_of_space[g][s];
|
n += S_G.bytes_of_space[g][s];
|
||||||
/* add in bytes in active segments */
|
/* add in bytes in active segments */
|
||||||
if (next_loc != FIX(0))
|
|
||||||
n += (uptr)next_loc - (uptr)S_G.base_loc[g][s];
|
|
||||||
next_loc = NEXTLOC_AT(tc, s, g);
|
next_loc = NEXTLOC_AT(tc, s, g);
|
||||||
if (next_loc != FIX(0))
|
if (next_loc != FIX(0))
|
||||||
n += (uptr)next_loc - (uptr)BASELOC_AT(tc, s, g);
|
n += (uptr)next_loc - (uptr)BASELOC_AT(tc, s, g);
|
||||||
|
@ -186,27 +186,8 @@ static void maybe_fire_collector() {
|
||||||
S_fire_collector();
|
S_fire_collector();
|
||||||
}
|
}
|
||||||
|
|
||||||
static ptr more_room_segment(ISPC s, IGEN g, iptr n, iptr *_new_bytes)
|
/* suitable mutex (either tc_mutex or gc_tc_mutex) must be held */
|
||||||
{
|
static void close_off_segment(ptr tc, ptr old, ptr base_loc, ptr sweep_loc, ISPC s, IGEN g)
|
||||||
iptr nsegs, seg;
|
|
||||||
ptr new;
|
|
||||||
|
|
||||||
S_pants_down += 1;
|
|
||||||
|
|
||||||
nsegs = (uptr)(n + ptr_bytes + bytes_per_segment - 1) >> segment_offset_bits;
|
|
||||||
|
|
||||||
/* block requests to minimize fragmentation and improve cache locality */
|
|
||||||
if (s == space_code && nsegs < 16) nsegs = 16;
|
|
||||||
|
|
||||||
seg = S_find_segments(s, g, nsegs);
|
|
||||||
new = build_ptr(seg, 0);
|
|
||||||
|
|
||||||
*_new_bytes = nsegs * bytes_per_segment;
|
|
||||||
|
|
||||||
return new;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void close_off_segment(ptr old, ptr base_loc, ptr sweep_loc, ISPC s, IGEN g)
|
|
||||||
{
|
{
|
||||||
if (base_loc) {
|
if (base_loc) {
|
||||||
seginfo *si;
|
seginfo *si;
|
||||||
|
@ -219,84 +200,66 @@ static void close_off_segment(ptr old, ptr base_loc, ptr sweep_loc, ISPC s, IGEN
|
||||||
/* lay down an end-of-segment marker */
|
/* lay down an end-of-segment marker */
|
||||||
*(ptr*)TO_VOIDP(old) = forward_marker;
|
*(ptr*)TO_VOIDP(old) = forward_marker;
|
||||||
|
|
||||||
/* add to sweep list */
|
/* in case this is during a GC, add to sweep list */
|
||||||
si = SegInfo(addr_get_segment(base_loc));
|
si = SegInfo(addr_get_segment(base_loc));
|
||||||
si->sweep_next = S_G.to_sweep[g][s];
|
|
||||||
si->sweep_start = sweep_loc;
|
si->sweep_start = sweep_loc;
|
||||||
S_G.to_sweep[g][s] = si;
|
si->sweep_next = TO_VOIDP(SWEEPNEXT_AT(tc, s, g));
|
||||||
|
SWEEPNEXT_AT(tc, s, g) = TO_PTR(si);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void more_room_done(IGEN g)
|
|
||||||
{
|
|
||||||
if (g == 0 && S_pants_down == 1) maybe_fire_collector();
|
|
||||||
|
|
||||||
S_pants_down -= 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* find_more_room
|
|
||||||
* S_find_more_room is called from the macro find_room when
|
|
||||||
* the current segment is too full to fit the allocation.
|
|
||||||
*
|
|
||||||
* A forward_marker followed by a pointer to
|
|
||||||
* the newly obtained segment is placed at next_loc to show
|
|
||||||
* gc where the end of this segment is and where the next
|
|
||||||
* segment of this type resides. Allocation occurs from the
|
|
||||||
* beginning of the newly obtained segment. The need for the
|
|
||||||
* eos marker explains the ptr_bytes byte factor in
|
|
||||||
* S_find_more_room.
|
|
||||||
*/
|
|
||||||
/* S_find_more_room is always called with mutex */
|
|
||||||
ptr S_find_more_room(s, g, n, old) ISPC s; IGEN g; iptr n; ptr old; {
|
|
||||||
ptr new;
|
|
||||||
iptr new_bytes;
|
|
||||||
|
|
||||||
close_off_segment(old, S_G.base_loc[g][s], S_G.sweep_loc[g][s], s, g);
|
|
||||||
|
|
||||||
new = more_room_segment(s, g, n, &new_bytes);
|
|
||||||
|
|
||||||
/* base address of current block of segments to track amount of allocation
|
|
||||||
and to register a closed-off segment in the sweep list */
|
|
||||||
S_G.base_loc[g][s] = new;
|
|
||||||
|
|
||||||
/* in case a GC has started: */
|
|
||||||
S_G.sweep_loc[g][s] = new;
|
|
||||||
|
|
||||||
S_G.next_loc[g][s] = (ptr)((uptr)new + n);
|
|
||||||
S_G.bytes_left[g][s] = (new_bytes - n) - ptr_bytes;
|
|
||||||
|
|
||||||
more_room_done(g);
|
|
||||||
|
|
||||||
return new;
|
|
||||||
}
|
|
||||||
|
|
||||||
ptr S_find_more_thread_room(ptr tc, ISPC s, IGEN g, iptr n, ptr old) {
|
ptr S_find_more_thread_room(ptr tc, ISPC s, IGEN g, iptr n, ptr old) {
|
||||||
|
iptr nsegs, seg;
|
||||||
ptr new;
|
ptr new;
|
||||||
iptr new_bytes;
|
iptr new_bytes;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
#ifdef PTHREADS
|
||||||
|
if (S_use_gc_tc_mutex)
|
||||||
|
gc_tc_mutex_acquire();
|
||||||
|
else
|
||||||
|
tc_mutex_acquire();
|
||||||
|
#else
|
||||||
|
tc_mutex_acquire();
|
||||||
|
#endif
|
||||||
|
|
||||||
/* closing off segment effectively moves to global space: */
|
close_off_segment(tc, old, BASELOC_AT(tc, s, g), SWEEPLOC_AT(tc, s, g), s, g);
|
||||||
close_off_segment(old, BASELOC_AT(tc, s, g), SWEEPLOC_AT(tc, s, g), s, g);
|
|
||||||
|
|
||||||
new = more_room_segment(s, g, n, &new_bytes);
|
S_pants_down += 1;
|
||||||
|
|
||||||
|
nsegs = (uptr)(n + ptr_bytes + bytes_per_segment - 1) >> segment_offset_bits;
|
||||||
|
|
||||||
|
/* block requests to minimize fragmentation and improve cache locality */
|
||||||
|
if (s == space_code && nsegs < 16) nsegs = 16;
|
||||||
|
|
||||||
|
seg = S_find_segments(tc, s, g, nsegs);
|
||||||
|
new = build_ptr(seg, 0);
|
||||||
|
|
||||||
|
new_bytes = nsegs * bytes_per_segment;
|
||||||
|
|
||||||
BASELOC_AT(tc, s, g) = new;
|
BASELOC_AT(tc, s, g) = new;
|
||||||
SWEEPLOC_AT(tc, s, g) = new;
|
SWEEPLOC_AT(tc, s, g) = new;
|
||||||
BYTESLEFT_AT(tc, s, g) = (new_bytes - n) - ptr_bytes;
|
BYTESLEFT_AT(tc, s, g) = (new_bytes - n) - ptr_bytes;
|
||||||
NEXTLOC_AT(tc, s, g) = (ptr)((uptr)new + n);
|
NEXTLOC_AT(tc, s, g) = (ptr)((uptr)new + n);
|
||||||
|
|
||||||
more_room_done(g);
|
if (g == 0 && S_pants_down == 1) maybe_fire_collector();
|
||||||
|
|
||||||
tc_mutex_release()
|
S_pants_down -= 1;
|
||||||
|
|
||||||
|
#ifdef PTHREADS
|
||||||
|
if (S_use_gc_tc_mutex)
|
||||||
|
gc_tc_mutex_release();
|
||||||
|
else
|
||||||
|
tc_mutex_release();
|
||||||
|
#else
|
||||||
|
tc_mutex_release();
|
||||||
|
#endif
|
||||||
|
|
||||||
return new;
|
return new;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* tc_mutex must be held */
|
/* tc_mutex must be held */
|
||||||
void S_close_off_thread_local_segment(ptr tc, ISPC s, IGEN g) {
|
void S_close_off_thread_local_segment(ptr tc, ISPC s, IGEN g) {
|
||||||
/* closing off segment effectively moves to global space: */
|
close_off_segment(tc, NEXTLOC_AT(tc, s, g), BASELOC_AT(tc, s, g), SWEEPLOC_AT(tc, s, g), s, g);
|
||||||
close_off_segment(NEXTLOC_AT(tc, s, g), BASELOC_AT(tc, s, g), SWEEPLOC_AT(tc, s, g), s, g);
|
|
||||||
|
|
||||||
BASELOC_AT(tc, s, g) = (ptr)0;
|
BASELOC_AT(tc, s, g) = (ptr)0;
|
||||||
BYTESLEFT_AT(tc, s, g) = 0;
|
BYTESLEFT_AT(tc, s, g) = 0;
|
||||||
|
@ -319,14 +282,14 @@ void S_reset_allocation_pointer(tc) ptr tc; {
|
||||||
|
|
||||||
S_pants_down += 1;
|
S_pants_down += 1;
|
||||||
|
|
||||||
seg = S_find_segments(space_new, 0, 1);
|
seg = S_find_segments(tc, space_new, 0, 1);
|
||||||
|
|
||||||
/* NB: if allocate_segments didn't already ensure we don't use the last segment
|
/* NB: if allocate_segments didn't already ensure we don't use the last segment
|
||||||
of memory, we'd have to reject it here so cp2-alloc can avoid a carry check for
|
of memory, we'd have to reject it here so cp2-alloc can avoid a carry check for
|
||||||
small allocation requests, using something like this:
|
small allocation requests, using something like this:
|
||||||
|
|
||||||
if (seg == (((uptr)1 << (ptr_bits - segment_offset_bits)) - 1))
|
if (seg == (((uptr)1 << (ptr_bits - segment_offset_bits)) - 1))
|
||||||
seg = S_find_segments(space_new, 0, 1);
|
seg = S_find_segments(tc, space_new, 0, 1);
|
||||||
*/
|
*/
|
||||||
|
|
||||||
S_G.bytes_of_space[0][space_new] += bytes_per_segment;
|
S_G.bytes_of_space[0][space_new] += bytes_per_segment;
|
||||||
|
@ -340,20 +303,23 @@ void S_reset_allocation_pointer(tc) ptr tc; {
|
||||||
S_pants_down -= 1;
|
S_pants_down -= 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void S_record_new_dirty_card(ptr *ppp, IGEN to_g) {
|
void S_record_new_dirty_card(ptr tc, ptr *ppp, IGEN to_g) {
|
||||||
uptr card = (uptr)TO_PTR(ppp) >> card_offset_bits;
|
uptr card = (uptr)TO_PTR(ppp) >> card_offset_bits;
|
||||||
|
dirtycardinfo *ndc;
|
||||||
|
|
||||||
dirtycardinfo *ndc = S_G.new_dirty_cards;
|
gc_tc_mutex_acquire();
|
||||||
|
ndc = S_G.new_dirty_cards;
|
||||||
if (ndc != NULL && ndc->card == card) {
|
if (ndc != NULL && ndc->card == card) {
|
||||||
if (to_g < ndc->youngest) ndc->youngest = to_g;
|
if (to_g < ndc->youngest) ndc->youngest = to_g;
|
||||||
} else {
|
} else {
|
||||||
dirtycardinfo *next = ndc;
|
dirtycardinfo *next = ndc;
|
||||||
find_room_voidp(space_new, 0, ptr_align(sizeof(dirtycardinfo)), ndc);
|
find_room_voidp(tc, space_new, 0, ptr_align(sizeof(dirtycardinfo)), ndc);
|
||||||
ndc->card = card;
|
ndc->card = card;
|
||||||
ndc->youngest = to_g;
|
ndc->youngest = to_g;
|
||||||
ndc->next = next;
|
ndc->next = next;
|
||||||
S_G.new_dirty_cards = ndc;
|
S_G.new_dirty_cards = ndc;
|
||||||
}
|
}
|
||||||
|
gc_tc_mutex_release();
|
||||||
}
|
}
|
||||||
|
|
||||||
FORCEINLINE void mark_segment_dirty(seginfo *si, IGEN from_g, IGEN to_g) {
|
FORCEINLINE void mark_segment_dirty(seginfo *si, IGEN from_g, IGEN to_g) {
|
||||||
|
@ -384,7 +350,7 @@ void S_dirty_set(ptr *loc, ptr x) {
|
||||||
if (!IMMEDIATE(x)) {
|
if (!IMMEDIATE(x)) {
|
||||||
seginfo *t_si = SegInfo(ptr_get_segment(x));
|
seginfo *t_si = SegInfo(ptr_get_segment(x));
|
||||||
if (t_si->generation < si->generation)
|
if (t_si->generation < si->generation)
|
||||||
S_record_new_dirty_card(loc, t_si->generation);
|
S_record_new_dirty_card(get_thread_context(), loc, t_si->generation);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
IGEN from_g = si->generation;
|
IGEN from_g = si->generation;
|
||||||
|
@ -445,7 +411,7 @@ void S_scan_remembered_set() {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
uptr ap, eap, real_eap;
|
uptr ap, eap, real_eap;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
ap = (uptr)AP(tc);
|
ap = (uptr)AP(tc);
|
||||||
eap = (uptr)EAP(tc);
|
eap = (uptr)EAP(tc);
|
||||||
|
@ -464,7 +430,7 @@ void S_scan_remembered_set() {
|
||||||
S_reset_allocation_pointer(tc);
|
S_reset_allocation_pointer(tc);
|
||||||
}
|
}
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* S_get_more_room is called from genereated machine code when there is
|
/* S_get_more_room is called from genereated machine code when there is
|
||||||
|
@ -492,7 +458,14 @@ ptr S_get_more_room_help(ptr tc, uptr ap, uptr type, uptr size) {
|
||||||
eap = (uptr)EAP(tc);
|
eap = (uptr)EAP(tc);
|
||||||
real_eap = (uptr)REAL_EAP(tc);
|
real_eap = (uptr)REAL_EAP(tc);
|
||||||
|
|
||||||
tc_mutex_acquire()
|
#ifdef PTHREADS
|
||||||
|
if (S_use_gc_tc_mutex)
|
||||||
|
gc_tc_mutex_acquire();
|
||||||
|
else
|
||||||
|
tc_mutex_acquire();
|
||||||
|
#else
|
||||||
|
tc_mutex_acquire();
|
||||||
|
#endif
|
||||||
|
|
||||||
S_scan_dirty(TO_VOIDP(eap), TO_VOIDP(real_eap));
|
S_scan_dirty(TO_VOIDP(eap), TO_VOIDP(real_eap));
|
||||||
eap = real_eap;
|
eap = real_eap;
|
||||||
|
@ -512,7 +485,7 @@ ptr S_get_more_room_help(ptr tc, uptr ap, uptr type, uptr size) {
|
||||||
} else if (eap - ap > alloc_waste_maximum) {
|
} else if (eap - ap > alloc_waste_maximum) {
|
||||||
AP(tc) = (ptr)ap;
|
AP(tc) = (ptr)ap;
|
||||||
EAP(tc) = (ptr)eap;
|
EAP(tc) = (ptr)eap;
|
||||||
find_room(space_new, 0, type, size, x);
|
find_room(tc, space_new, 0, type, size, x);
|
||||||
} else {
|
} else {
|
||||||
uptr bytes = eap - ap;
|
uptr bytes = eap - ap;
|
||||||
S_G.bytes_of_space[0][space_new] -= bytes;
|
S_G.bytes_of_space[0][space_new] -= bytes;
|
||||||
|
@ -523,11 +496,18 @@ ptr S_get_more_room_help(ptr tc, uptr ap, uptr type, uptr size) {
|
||||||
x = TYPE(ap, type);
|
x = TYPE(ap, type);
|
||||||
AP(tc) = (ptr)(ap + size);
|
AP(tc) = (ptr)(ap + size);
|
||||||
} else {
|
} else {
|
||||||
find_room(space_new, 0, type, size, x);
|
find_room(tc, space_new, 0, type, size, x);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
tc_mutex_release()
|
#ifdef PTHREADS
|
||||||
|
if (S_use_gc_tc_mutex)
|
||||||
|
gc_tc_mutex_release();
|
||||||
|
else
|
||||||
|
tc_mutex_release();
|
||||||
|
#else
|
||||||
|
tc_mutex_release();
|
||||||
|
#endif
|
||||||
|
|
||||||
return x;
|
return x;
|
||||||
}
|
}
|
||||||
|
@ -550,16 +530,12 @@ void S_list_bits_set(p, bits) ptr p; iptr bits; {
|
||||||
|
|
||||||
if (!si->list_bits) {
|
if (!si->list_bits) {
|
||||||
void *list_bits;
|
void *list_bits;
|
||||||
|
ptr tc = get_thread_context();
|
||||||
|
|
||||||
if (si->generation == 0) {
|
if (si->generation == 0)
|
||||||
ptr tc = get_thread_context();
|
newspace_find_room_voidp(tc, ptr_align(segment_bitmap_bytes), list_bits);
|
||||||
thread_find_room_voidp(tc, ptr_align(segment_bitmap_bytes), list_bits);
|
else
|
||||||
} else {
|
find_room_voidp(tc, space_data, si->generation, ptr_align(segment_bitmap_bytes), list_bits);
|
||||||
tc_mutex_acquire()
|
|
||||||
|
|
||||||
find_room_voidp(space_data, si->generation, ptr_align(segment_bitmap_bytes), list_bits);
|
|
||||||
tc_mutex_release()
|
|
||||||
}
|
|
||||||
|
|
||||||
memset(list_bits, 0, segment_bitmap_bytes);
|
memset(list_bits, 0, segment_bitmap_bytes);
|
||||||
|
|
||||||
|
@ -576,21 +552,10 @@ void S_list_bits_set(p, bits) ptr p; iptr bits; {
|
||||||
si->list_bits[segment_bitmap_byte(p)] |= segment_bitmap_bits(p, bits);
|
si->list_bits[segment_bitmap_byte(p)] |= segment_bitmap_bits(p, bits);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* tc_mutex must be held */
|
ptr S_cons_in(tc, s, g, car, cdr) ptr tc; ISPC s; IGEN g; ptr car, cdr; {
|
||||||
ptr S_cons_in_global(s, g, car, cdr) ISPC s; IGEN g; ptr car, cdr; {
|
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
find_room(s, g, type_pair, size_pair, p);
|
find_room(tc, s, g, type_pair, size_pair, p);
|
||||||
INITCAR(p) = car;
|
|
||||||
INITCDR(p) = cdr;
|
|
||||||
return p;
|
|
||||||
}
|
|
||||||
|
|
||||||
ptr S_cons_in(s, g, car, cdr) ISPC s; IGEN g; ptr car, cdr; {
|
|
||||||
ptr tc = get_thread_context();
|
|
||||||
ptr p;
|
|
||||||
|
|
||||||
thread_find_room_g(tc, s, g, type_pair, size_pair, p);
|
|
||||||
INITCAR(p) = car;
|
INITCAR(p) = car;
|
||||||
INITCDR(p) = cdr;
|
INITCDR(p) = cdr;
|
||||||
return p;
|
return p;
|
||||||
|
@ -600,7 +565,7 @@ ptr Scons(car, cdr) ptr car, cdr; {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
thread_find_room(tc, type_pair, size_pair, p);
|
newspace_find_room(tc, type_pair, size_pair, p);
|
||||||
INITCAR(p) = car;
|
INITCAR(p) = car;
|
||||||
INITCDR(p) = cdr;
|
INITCDR(p) = cdr;
|
||||||
return p;
|
return p;
|
||||||
|
@ -610,7 +575,7 @@ ptr S_ephemeron_cons_in(gen, car, cdr) IGEN gen; ptr car, cdr; {
|
||||||
ptr p;
|
ptr p;
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
|
|
||||||
thread_find_room_g(tc, space_ephemeron, gen, type_pair, size_ephemeron, p);
|
find_room(tc, space_ephemeron, gen, type_pair, size_ephemeron, p);
|
||||||
INITCAR(p) = car;
|
INITCAR(p) = car;
|
||||||
INITCDR(p) = cdr;
|
INITCDR(p) = cdr;
|
||||||
EPHEMERONPREVREF(p) = 0;
|
EPHEMERONPREVREF(p) = 0;
|
||||||
|
@ -623,12 +588,10 @@ ptr S_box2(ref, immobile) ptr ref; IBOOL immobile; {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
if (immobile) {
|
if (immobile)
|
||||||
tc_mutex_acquire()
|
find_room(tc, space_immobile_impure, 0, type_typed_object, size_box, p);
|
||||||
find_room(space_immobile_impure, 0, type_typed_object, size_box, p);
|
else
|
||||||
tc_mutex_release()
|
newspace_find_room(tc, type_typed_object, size_box, p);
|
||||||
} else
|
|
||||||
thread_find_room(tc, type_typed_object, size_box, p);
|
|
||||||
BOXTYPE(p) = type_box;
|
BOXTYPE(p) = type_box;
|
||||||
INITBOXREF(p) = ref;
|
INITBOXREF(p) = ref;
|
||||||
return p;
|
return p;
|
||||||
|
@ -642,7 +605,7 @@ ptr S_symbol(name) ptr name; {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
thread_find_room(tc, type_symbol, size_symbol, p);
|
newspace_find_room(tc, type_symbol, size_symbol, p);
|
||||||
/* changes here should be reflected in the oblist collection code in gc.c */
|
/* changes here should be reflected in the oblist collection code in gc.c */
|
||||||
INITSYMVAL(p) = sunbound;
|
INITSYMVAL(p) = sunbound;
|
||||||
INITSYMCODE(p,S_G.nonprocedure_code);
|
INITSYMCODE(p,S_G.nonprocedure_code);
|
||||||
|
@ -659,7 +622,7 @@ ptr S_rational(n, d) ptr n, d; {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
thread_find_room(tc, type_typed_object, size_ratnum, p);
|
newspace_find_room(tc, type_typed_object, size_ratnum, p);
|
||||||
RATTYPE(p) = type_ratnum;
|
RATTYPE(p) = type_ratnum;
|
||||||
RATNUM(p) = n;
|
RATNUM(p) = n;
|
||||||
RATDEN(p) = d;
|
RATDEN(p) = d;
|
||||||
|
@ -671,7 +634,7 @@ ptr S_tlc(ptr keyval, ptr ht, ptr next) {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
thread_find_room(tc, type_typed_object, size_tlc, p);
|
newspace_find_room(tc, type_typed_object, size_tlc, p);
|
||||||
TLCTYPE(p) = type_tlc;
|
TLCTYPE(p) = type_tlc;
|
||||||
INITTLCKEYVAL(p) = keyval;
|
INITTLCKEYVAL(p) = keyval;
|
||||||
INITTLCHT(p) = ht;
|
INITTLCHT(p) = ht;
|
||||||
|
@ -679,8 +642,7 @@ ptr S_tlc(ptr keyval, ptr ht, ptr next) {
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* S_vector_in is always called with mutex */
|
ptr S_vector_in(tc, s, g, n) ptr tc; ISPC s; IGEN g; iptr n; {
|
||||||
ptr S_vector_in(s, g, n) ISPC s; IGEN g; iptr n; {
|
|
||||||
ptr p; iptr d;
|
ptr p; iptr d;
|
||||||
|
|
||||||
if (n == 0) return S_G.null_vector;
|
if (n == 0) return S_G.null_vector;
|
||||||
|
@ -689,8 +651,7 @@ ptr S_vector_in(s, g, n) ISPC s; IGEN g; iptr n; {
|
||||||
S_error("", "invalid vector size request");
|
S_error("", "invalid vector size request");
|
||||||
|
|
||||||
d = size_vector(n);
|
d = size_vector(n);
|
||||||
/* S_vector_in always called with mutex */
|
find_room(tc, s, g, type_typed_object, d, p);
|
||||||
find_room(s, g, type_typed_object, d, p);
|
|
||||||
VECTTYPE(p) = (n << vector_length_offset) | type_vector;
|
VECTTYPE(p) = (n << vector_length_offset) | type_vector;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
@ -707,7 +668,7 @@ ptr S_vector(n) iptr n; {
|
||||||
tc = get_thread_context();
|
tc = get_thread_context();
|
||||||
|
|
||||||
d = size_vector(n);
|
d = size_vector(n);
|
||||||
thread_find_room(tc, type_typed_object, d, p);
|
newspace_find_room(tc, type_typed_object, d, p);
|
||||||
VECTTYPE(p) = (n << vector_length_offset) | type_vector;
|
VECTTYPE(p) = (n << vector_length_offset) | type_vector;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
@ -724,7 +685,7 @@ ptr S_fxvector(n) iptr n; {
|
||||||
tc = get_thread_context();
|
tc = get_thread_context();
|
||||||
|
|
||||||
d = size_fxvector(n);
|
d = size_fxvector(n);
|
||||||
thread_find_room(tc, type_typed_object, d, p);
|
newspace_find_room(tc, type_typed_object, d, p);
|
||||||
FXVECTOR_TYPE(p) = (n << fxvector_length_offset) | type_fxvector;
|
FXVECTOR_TYPE(p) = (n << fxvector_length_offset) | type_fxvector;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
@ -745,40 +706,42 @@ ptr S_bytevector2(n, immobile) iptr n; IBOOL immobile; {
|
||||||
tc = get_thread_context();
|
tc = get_thread_context();
|
||||||
|
|
||||||
d = size_bytevector(n);
|
d = size_bytevector(n);
|
||||||
if (immobile) {
|
if (immobile)
|
||||||
tc_mutex_acquire()
|
find_room(tc, space_immobile_data, 0, type_typed_object, d, p);
|
||||||
find_room(space_immobile_data, 0, type_typed_object, d, p);
|
else
|
||||||
tc_mutex_release()
|
newspace_find_room(tc, type_typed_object, d, p);
|
||||||
} else
|
|
||||||
thread_find_room(tc, type_typed_object, d, p);
|
|
||||||
BYTEVECTOR_TYPE(p) = (n << bytevector_length_offset) | type_bytevector;
|
BYTEVECTOR_TYPE(p) = (n << bytevector_length_offset) | type_bytevector;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
ptr S_null_immutable_vector() {
|
ptr S_null_immutable_vector() {
|
||||||
|
ptr tc = get_thread_context();
|
||||||
ptr v;
|
ptr v;
|
||||||
find_room(space_new, 0, type_typed_object, size_vector(0), v);
|
find_room(tc, space_new, 0, type_typed_object, size_vector(0), v);
|
||||||
VECTTYPE(v) = (0 << vector_length_offset) | type_vector | vector_immutable_flag;
|
VECTTYPE(v) = (0 << vector_length_offset) | type_vector | vector_immutable_flag;
|
||||||
return v;
|
return v;
|
||||||
}
|
}
|
||||||
|
|
||||||
ptr S_null_immutable_fxvector() {
|
ptr S_null_immutable_fxvector() {
|
||||||
|
ptr tc = get_thread_context();
|
||||||
ptr v;
|
ptr v;
|
||||||
find_room(space_new, 0, type_typed_object, size_fxvector(0), v);
|
find_room(tc, space_new, 0, type_typed_object, size_fxvector(0), v);
|
||||||
VECTTYPE(v) = (0 << fxvector_length_offset) | type_fxvector | fxvector_immutable_flag;
|
VECTTYPE(v) = (0 << fxvector_length_offset) | type_fxvector | fxvector_immutable_flag;
|
||||||
return v;
|
return v;
|
||||||
}
|
}
|
||||||
|
|
||||||
ptr S_null_immutable_bytevector() {
|
ptr S_null_immutable_bytevector() {
|
||||||
|
ptr tc = get_thread_context();
|
||||||
ptr v;
|
ptr v;
|
||||||
find_room(space_new, 0, type_typed_object, size_bytevector(0), v);
|
find_room(tc, space_new, 0, type_typed_object, size_bytevector(0), v);
|
||||||
VECTTYPE(v) = (0 << bytevector_length_offset) | type_bytevector | bytevector_immutable_flag;
|
VECTTYPE(v) = (0 << bytevector_length_offset) | type_bytevector | bytevector_immutable_flag;
|
||||||
return v;
|
return v;
|
||||||
}
|
}
|
||||||
|
|
||||||
ptr S_null_immutable_string() {
|
ptr S_null_immutable_string() {
|
||||||
|
ptr tc = get_thread_context();
|
||||||
ptr v;
|
ptr v;
|
||||||
find_room(space_new, 0, type_typed_object, size_string(0), v);
|
find_room(tc, space_new, 0, type_typed_object, size_string(0), v);
|
||||||
VECTTYPE(v) = (0 << string_length_offset) | type_string | string_immutable_flag;
|
VECTTYPE(v) = (0 << string_length_offset) | type_string | string_immutable_flag;
|
||||||
return v;
|
return v;
|
||||||
}
|
}
|
||||||
|
@ -791,7 +754,7 @@ ptr S_stencil_vector(mask) uptr mask; {
|
||||||
tc = get_thread_context();
|
tc = get_thread_context();
|
||||||
|
|
||||||
d = size_stencil_vector(n);
|
d = size_stencil_vector(n);
|
||||||
thread_find_room(tc, type_typed_object, d, p);
|
newspace_find_room(tc, type_typed_object, d, p);
|
||||||
VECTTYPE(p) = (mask << stencil_vector_mask_offset) | type_stencil_vector;
|
VECTTYPE(p) = (mask << stencil_vector_mask_offset) | type_stencil_vector;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
@ -800,7 +763,7 @@ ptr S_record(n) iptr n; {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
thread_find_room(tc, type_typed_object, n, p);
|
newspace_find_room(tc, type_typed_object, n, p);
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -809,7 +772,7 @@ ptr S_closure(cod, n) ptr cod; iptr n; {
|
||||||
ptr p; iptr d;
|
ptr p; iptr d;
|
||||||
|
|
||||||
d = size_closure(n);
|
d = size_closure(n);
|
||||||
thread_find_room(tc, type_closure, d, p);
|
newspace_find_room(tc, type_closure, d, p);
|
||||||
CLOSENTRY(p) = cod;
|
CLOSENTRY(p) = cod;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
@ -820,7 +783,7 @@ ptr S_mkcontinuation(s, g, nuate, stack, length, clength, link, ret, winders, at
|
||||||
ptr p;
|
ptr p;
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
|
|
||||||
thread_find_room_g(tc, s, g, type_closure, size_continuation, p);
|
find_room(tc, s, g, type_closure, size_continuation, p);
|
||||||
CLOSENTRY(p) = nuate;
|
CLOSENTRY(p) = nuate;
|
||||||
CONTSTACK(p) = stack;
|
CONTSTACK(p) = stack;
|
||||||
CONTLENGTH(p) = length;
|
CONTLENGTH(p) = length;
|
||||||
|
@ -836,7 +799,7 @@ ptr Sflonum(x) double x; {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
thread_find_room(tc, type_flonum, size_flonum, p);
|
newspace_find_room(tc, type_flonum, size_flonum, p);
|
||||||
FLODAT(p) = x;
|
FLODAT(p) = x;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
@ -845,21 +808,19 @@ ptr S_inexactnum(rp, ip) double rp, ip; {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
thread_find_room(tc, type_typed_object, size_inexactnum, p);
|
newspace_find_room(tc, type_typed_object, size_inexactnum, p);
|
||||||
INEXACTNUM_TYPE(p) = type_inexactnum;
|
INEXACTNUM_TYPE(p) = type_inexactnum;
|
||||||
INEXACTNUM_REAL_PART(p) = rp;
|
INEXACTNUM_REAL_PART(p) = rp;
|
||||||
INEXACTNUM_IMAG_PART(p) = ip;
|
INEXACTNUM_IMAG_PART(p) = ip;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* S_thread is always called with mutex */
|
ptr S_thread(tc) ptr tc; {
|
||||||
ptr S_thread(xtc) ptr xtc; {
|
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
/* don't use thread_find_room since we may be building the current thread */
|
find_room(tc, space_new, 0, type_typed_object, size_thread, p);
|
||||||
find_room(space_new, 0, type_typed_object, size_thread, p);
|
|
||||||
TYPEFIELD(p) = (ptr)type_thread;
|
TYPEFIELD(p) = (ptr)type_thread;
|
||||||
THREADTC(p) = (uptr)xtc;
|
THREADTC(p) = (uptr)tc;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -867,7 +828,7 @@ ptr S_exactnum(a, b) ptr a, b; {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
thread_find_room(tc, type_typed_object, size_exactnum, p);
|
newspace_find_room(tc, type_typed_object, size_exactnum, p);
|
||||||
EXACTNUM_TYPE(p) = type_exactnum;
|
EXACTNUM_TYPE(p) = type_exactnum;
|
||||||
EXACTNUM_REAL_PART(p) = a;
|
EXACTNUM_REAL_PART(p) = a;
|
||||||
EXACTNUM_IMAG_PART(p) = b;
|
EXACTNUM_IMAG_PART(p) = b;
|
||||||
|
@ -892,7 +853,7 @@ ptr S_string(s, n) const char *s; iptr n; {
|
||||||
tc = get_thread_context();
|
tc = get_thread_context();
|
||||||
|
|
||||||
d = size_string(n);
|
d = size_string(n);
|
||||||
thread_find_room(tc, type_typed_object, d, p);
|
newspace_find_room(tc, type_typed_object, d, p);
|
||||||
STRTYPE(p) = (n << string_length_offset) | type_string;
|
STRTYPE(p) = (n << string_length_offset) | type_string;
|
||||||
|
|
||||||
/* fill the string with valid characters */
|
/* fill the string with valid characters */
|
||||||
|
@ -971,7 +932,7 @@ ptr Sstring_utf8(s, n) const char *s; iptr n; {
|
||||||
|
|
||||||
tc = get_thread_context();
|
tc = get_thread_context();
|
||||||
d = size_string(cc);
|
d = size_string(cc);
|
||||||
thread_find_room(tc, type_typed_object, d, p);
|
newspace_find_room(tc, type_typed_object, d, p);
|
||||||
STRTYPE(p) = (cc << string_length_offset) | type_string;
|
STRTYPE(p) = (cc << string_length_offset) | type_string;
|
||||||
|
|
||||||
/* fill the string */
|
/* fill the string */
|
||||||
|
@ -1041,7 +1002,7 @@ ptr S_bignum(tc, n, sign) ptr tc; iptr n; IBOOL sign; {
|
||||||
S_error("", "invalid bignum size request");
|
S_error("", "invalid bignum size request");
|
||||||
|
|
||||||
d = size_bignum(n);
|
d = size_bignum(n);
|
||||||
thread_find_room(tc, type_typed_object, d, p);
|
newspace_find_room(tc, type_typed_object, d, p);
|
||||||
BIGTYPE(p) = (uptr)n << bignum_length_offset | sign << bignum_sign_offset | type_bignum;
|
BIGTYPE(p) = (uptr)n << bignum_length_offset | sign << bignum_sign_offset | type_bignum;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
@ -1050,7 +1011,7 @@ ptr S_code(tc, type, n) ptr tc; iptr type, n; {
|
||||||
ptr p; iptr d;
|
ptr p; iptr d;
|
||||||
|
|
||||||
d = size_code(n);
|
d = size_code(n);
|
||||||
thread_find_room_g(tc, space_code, 0, type_typed_object, d, p);
|
find_room(tc, space_code, 0, type_typed_object, d, p);
|
||||||
CODETYPE(p) = type;
|
CODETYPE(p) = type;
|
||||||
CODELEN(p) = n;
|
CODELEN(p) = n;
|
||||||
/* we record the code modification here, even though we haven't
|
/* we record the code modification here, even though we haven't
|
||||||
|
@ -1065,20 +1026,21 @@ ptr S_relocation_table(n) iptr n; {
|
||||||
ptr p; iptr d;
|
ptr p; iptr d;
|
||||||
|
|
||||||
d = size_reloc_table(n);
|
d = size_reloc_table(n);
|
||||||
thread_find_room(tc, typemod, d, p);
|
newspace_find_room(tc, typemod, d, p);
|
||||||
RELOCSIZE(p) = n;
|
RELOCSIZE(p) = n;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
ptr S_weak_cons(ptr car, ptr cdr) {
|
ptr S_weak_cons(ptr car, ptr cdr) {
|
||||||
return S_cons_in(space_weakpair, 0, car, cdr);
|
ptr tc = get_thread_context();
|
||||||
|
return S_cons_in(tc, space_weakpair, 0, car, cdr);
|
||||||
}
|
}
|
||||||
|
|
||||||
ptr S_phantom_bytevector(sz) uptr sz; {
|
ptr S_phantom_bytevector(sz) uptr sz; {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
ptr p;
|
ptr p;
|
||||||
|
|
||||||
thread_find_room(tc, type_typed_object, size_phantom, p);
|
newspace_find_room(tc, type_typed_object, size_phantom, p);
|
||||||
|
|
||||||
PHANTOMTYPE(p) = type_phantom;
|
PHANTOMTYPE(p) = type_phantom;
|
||||||
PHANTOMLEN(p) = 0;
|
PHANTOMLEN(p) = 0;
|
||||||
|
@ -1093,7 +1055,7 @@ void S_phantom_bytevector_adjust(ph, new_sz) ptr ph; uptr new_sz; {
|
||||||
seginfo *si;
|
seginfo *si;
|
||||||
IGEN g;
|
IGEN g;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
si = SegInfo(ptr_get_segment(ph));
|
si = SegInfo(ptr_get_segment(ph));
|
||||||
g = si->generation;
|
g = si->generation;
|
||||||
|
@ -1102,5 +1064,5 @@ void S_phantom_bytevector_adjust(ph, new_sz) ptr ph; uptr new_sz; {
|
||||||
S_adjustmembytes(new_sz - old_sz);
|
S_adjustmembytes(new_sz - old_sz);
|
||||||
PHANTOMLEN(ph) = new_sz;
|
PHANTOMLEN(ph) = new_sz;
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
|
|
124
racket/src/ChezScheme/c/atomic.h
Normal file
124
racket/src/ChezScheme/c/atomic.h
Normal file
|
@ -0,0 +1,124 @@
|
||||||
|
#if !defined(PTHREADS)
|
||||||
|
# define STORE_FENCE() do { } while (0)
|
||||||
|
#elif defined(__arm64__)
|
||||||
|
# define STORE_FENCE() __asm__ __volatile__ ("dmb ishst" : : : "memory")
|
||||||
|
# define ACQUIRE_FENCE() __asm__ __volatile__ ("dmb ish" : : : "memory")
|
||||||
|
# define RELEASE_FENCE() ACQUIRE_FENCE()
|
||||||
|
#elif defined(__arm__)
|
||||||
|
# if arm_isa_version == 7
|
||||||
|
# define STORE_FENCE() __asm__ __volatile__ ("dmb ishst" : : : "memory")
|
||||||
|
# define ACQUIRE_FENCE() __asm__ __volatile__ ("dmb ish" : : : "memory")
|
||||||
|
# define RELEASE_FENCE() ACQUIRE_FENCE()
|
||||||
|
# else
|
||||||
|
# define STORE_FENCE() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r" (0) : "memory")
|
||||||
|
# define ACQUIRE_FENCE() STORE_FENCE()
|
||||||
|
# define RELEASE_FENCE() STORE_FENCE()
|
||||||
|
# endif
|
||||||
|
#elif defined(__powerpc64__)
|
||||||
|
# define STORE_FENCE() __asm__ __volatile__ ("lwsync" : : : "memory")
|
||||||
|
# define ACQUIRE_FENCE() __asm__ __volatile__ ("sync" : : : "memory")
|
||||||
|
# define RELEASE_FENCE() ACQUIRE_FENCE()
|
||||||
|
#elif defined(__powerpc__) || defined(__POWERPC__)
|
||||||
|
# define STORE_FENCE() __asm__ __volatile__ ("sync" : : : "memory")
|
||||||
|
# define ACQUIRE_FENCE() STORE_FENCE()
|
||||||
|
# define RELEASE_FENCE() STORE_FENCE()
|
||||||
|
#else
|
||||||
|
# define STORE_FENCE() do { } while (0)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef ACQUIRE_FENCE
|
||||||
|
# define ACQUIRE_FENCE() do { } while (0)
|
||||||
|
#endif
|
||||||
|
#ifndef RELEASE_FENCE
|
||||||
|
# define RELEASE_FENCE() do { } while (0)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(PTHREADS)
|
||||||
|
# define CAS_ANY_FENCE(a, old, new) ((*(a) == (old)) ? (*(a) = (new), 1) : 0)
|
||||||
|
#elif defined(__arm64__)
|
||||||
|
FORCEINLINE int CAS_LOAD_ACQUIRE(volatile void *addr, void *old_val, void *new_val) {
|
||||||
|
int ret;
|
||||||
|
__asm__ __volatile__ ("mov %0, #0\n\t"
|
||||||
|
"0:\n\t"
|
||||||
|
"ldaxr r12, [%1, #0]\n\t"
|
||||||
|
"cmp r12, %2\n\t"
|
||||||
|
"bne 1f\n\t"
|
||||||
|
"stxr r7, %3, [%1, #0]\n\t"
|
||||||
|
"cmp r7, #0\n\t"
|
||||||
|
"bne 1f\n\t"
|
||||||
|
"moveq %0, #1\n\t"
|
||||||
|
"1:\n\t"
|
||||||
|
: "=&r" (ret)
|
||||||
|
: "r" (addr), "r" (old_val), "r" (new_val)
|
||||||
|
: "cc", "memory", "r12", "r7");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
/* same as above, but ldaxr -> ldxr and stxr -> stlxr */
|
||||||
|
FORCEINLINE int CAS_STORE_RELEASE(volatile void *addr, void *old_val, void *new_val) {
|
||||||
|
int ret;
|
||||||
|
__asm__ __volatile__ ("mov %0, #0\n\t"
|
||||||
|
"0:\n\t"
|
||||||
|
"ldxr r12, [%1, #0]\n\t"
|
||||||
|
"cmp r12, %2\n\t"
|
||||||
|
"bne 1f\n\t"
|
||||||
|
"stlxr r7, %3, [%1, #0]\n\t"
|
||||||
|
"cmp r7, #0\n\t"
|
||||||
|
"bne 1f\n\t"
|
||||||
|
"moveq %0, #1\n\t"
|
||||||
|
"1:\n\t"
|
||||||
|
: "=&r" (ret)
|
||||||
|
: "r" (addr), "r" (old_val), "r" (new_val)
|
||||||
|
: "cc", "memory", "r12", "r7");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
#elif defined(__arm__)
|
||||||
|
FORCEINLINE int S_cas_any_fence(volatile void *addr, void *old_val, void *new_val) {
|
||||||
|
int ret;
|
||||||
|
__asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5\n\t"
|
||||||
|
"mov %0, #0\n\t"
|
||||||
|
"0:\n\t"
|
||||||
|
"ldrex r12, [%1, #0]\n\t"
|
||||||
|
"cmp r12, %2\n\t"
|
||||||
|
"bne 1f\n\t"
|
||||||
|
"strex r7, %3, [%1, #0]\n\t"
|
||||||
|
"cmp r7, #0\n\t"
|
||||||
|
"bne 1f\n\t"
|
||||||
|
"moveq %0, #1\n\t"
|
||||||
|
"1:\n\t"
|
||||||
|
: "=&r" (ret)
|
||||||
|
: "r" (addr), "r" (old_val), "r" (new_val)
|
||||||
|
: "cc", "memory", "r12", "r7");
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
# define CAS_ANY_FENCE(a, old, new) S_cas_any_fence(a, old, new)
|
||||||
|
#elif (__GNUC__ >= 5) || defined(__clang__)
|
||||||
|
# define CAS_ANY_FENCE(a, old, new) __sync_bool_compare_and_swap(a, old, new)
|
||||||
|
#elif defined(_MSC_VER)
|
||||||
|
# if ptr_bits == 64
|
||||||
|
# define CAS_ANY_FENCE(a, old, new) (_InterlockedCompareExchange64((__int64 *)(a), (__int64)(new), (__int64)(old)) == (__int64)(old))
|
||||||
|
# else
|
||||||
|
# define CAS_ANY_FENCE(a, old, new) (_InterlockedCompareExchange64((long *)(a), (long)(new), (long)(old)) == (long)(old))
|
||||||
|
# endif
|
||||||
|
#elif defined(__i386__) || defined(__x86_64__)
|
||||||
|
# if ptr_bits == 64
|
||||||
|
# define CAS_OP_SIZE "q"
|
||||||
|
# else
|
||||||
|
# define CAS_OP_SIZE ""
|
||||||
|
# endif
|
||||||
|
FORCEINLINE int S_cas_any_fence(volatile void *addr, void *old_val, void *new_val) {
|
||||||
|
char result;
|
||||||
|
__asm__ __volatile__("lock; cmpxchg" CAS_OP_SIZE " %3, %0; setz %1"
|
||||||
|
: "=m"(*(void **)addr), "=q"(result)
|
||||||
|
: "m"(*(void **)addr), "r" (new_val), "a"(old_val)
|
||||||
|
: "memory");
|
||||||
|
return (int) result;
|
||||||
|
}
|
||||||
|
# define CAS_ANY_FENCE(a, old, new) S_cas_any_fence(a, old, new)
|
||||||
|
#else
|
||||||
|
# define CAS_ANY_FENCE(a, old, new) ((*(a) == (old)) ? (*(a) = (new), 1) : 0)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef CAS_ANY_FENCE
|
||||||
|
# define CAS_LOAD_ACQUIRE(a, old, new) CAS_ANY_FENCE(a, old, new)
|
||||||
|
# define CAS_STORE_RELEASE(a, old, new) CAS_ANY_FENCE(a, old, new)
|
||||||
|
#endif
|
|
@ -66,7 +66,7 @@ extern void S_reset_allocation_pointer PROTO((ptr tc));
|
||||||
extern ptr S_compute_bytes_allocated PROTO((ptr xg, ptr xs));
|
extern ptr S_compute_bytes_allocated PROTO((ptr xg, ptr xs));
|
||||||
extern ptr S_bytes_finalized PROTO(());
|
extern ptr S_bytes_finalized PROTO(());
|
||||||
extern ptr S_find_more_room PROTO((ISPC s, IGEN g, iptr n, ptr old));
|
extern ptr S_find_more_room PROTO((ISPC s, IGEN g, iptr n, ptr old));
|
||||||
extern void S_record_new_dirty_card PROTO((ptr *ppp, IGEN to_g));
|
extern void S_record_new_dirty_card PROTO((ptr tc, ptr *ppp, IGEN to_g));
|
||||||
extern ptr S_find_more_thread_room PROTO((ptr tc, IGEN g, ISPC s, iptr n, ptr old));
|
extern ptr S_find_more_thread_room PROTO((ptr tc, IGEN g, ISPC s, iptr n, ptr old));
|
||||||
extern void S_close_off_thread_local_segment PROTO((ptr tc, ISPC s, IGEN g));
|
extern void S_close_off_thread_local_segment PROTO((ptr tc, ISPC s, IGEN g));
|
||||||
extern void S_dirty_set PROTO((ptr *loc, ptr x));
|
extern void S_dirty_set PROTO((ptr *loc, ptr x));
|
||||||
|
@ -77,13 +77,12 @@ extern void S_get_more_room PROTO((void));
|
||||||
extern ptr S_get_more_room_help PROTO((ptr tc, uptr ap, uptr type, uptr size));
|
extern ptr S_get_more_room_help PROTO((ptr tc, uptr ap, uptr type, uptr size));
|
||||||
extern ptr S_list_bits_ref PROTO((ptr p));
|
extern ptr S_list_bits_ref PROTO((ptr p));
|
||||||
extern void S_list_bits_set PROTO((ptr p, iptr bits));
|
extern void S_list_bits_set PROTO((ptr p, iptr bits));
|
||||||
extern ptr S_cons_in PROTO((ISPC s, IGEN g, ptr car, ptr cdr));
|
extern ptr S_cons_in PROTO((ptr tc, ISPC s, IGEN g, ptr car, ptr cdr));
|
||||||
extern ptr S_cons_in_global PROTO((ISPC s, IGEN g, ptr car, ptr cdr));
|
|
||||||
extern ptr S_ephemeron_cons_in PROTO((IGEN g, ptr car, ptr cdr));
|
extern ptr S_ephemeron_cons_in PROTO((IGEN g, ptr car, ptr cdr));
|
||||||
extern ptr S_symbol PROTO((ptr name));
|
extern ptr S_symbol PROTO((ptr name));
|
||||||
extern ptr S_rational PROTO((ptr n, ptr d));
|
extern ptr S_rational PROTO((ptr n, ptr d));
|
||||||
extern ptr S_tlc PROTO((ptr keyval, ptr tconc, ptr next));
|
extern ptr S_tlc PROTO((ptr keyval, ptr tconc, ptr next));
|
||||||
extern ptr S_vector_in PROTO((ISPC s, IGEN g, iptr n));
|
extern ptr S_vector_in PROTO((ptr tc, ISPC s, IGEN g, iptr n));
|
||||||
extern ptr S_vector PROTO((iptr n));
|
extern ptr S_vector PROTO((iptr n));
|
||||||
extern ptr S_fxvector PROTO((iptr n));
|
extern ptr S_fxvector PROTO((iptr n));
|
||||||
extern ptr S_bytevector PROTO((iptr n));
|
extern ptr S_bytevector PROTO((iptr n));
|
||||||
|
@ -180,6 +179,9 @@ extern void S_check_heap PROTO((IBOOL aftergc, IGEN target_gen));
|
||||||
/* gc-011.c */
|
/* gc-011.c */
|
||||||
extern void S_gc_011 PROTO((ptr tc));
|
extern void S_gc_011 PROTO((ptr tc));
|
||||||
|
|
||||||
|
/* gc-par.c */
|
||||||
|
extern ptr S_gc_par PROTO((ptr tc, IGEN max_cg, IGEN min_tg, IGEN max_tg, ptr count_roots));
|
||||||
|
|
||||||
/* gc-ocd.c */
|
/* gc-ocd.c */
|
||||||
extern ptr S_gc_ocd PROTO((ptr tc, IGEN max_cg, IGEN min_tg, IGEN max_tg, ptr count_roots));
|
extern ptr S_gc_ocd PROTO((ptr tc, IGEN max_cg, IGEN min_tg, IGEN max_tg, ptr count_roots));
|
||||||
|
|
||||||
|
@ -380,7 +382,7 @@ extern INT matherr PROTO((struct exception *x));
|
||||||
extern void S_segment_init PROTO((void));
|
extern void S_segment_init PROTO((void));
|
||||||
extern void *S_getmem PROTO((iptr bytes, IBOOL zerofill));
|
extern void *S_getmem PROTO((iptr bytes, IBOOL zerofill));
|
||||||
extern void S_freemem PROTO((void *addr, iptr bytes));
|
extern void S_freemem PROTO((void *addr, iptr bytes));
|
||||||
extern iptr S_find_segments PROTO((ISPC s, IGEN g, iptr n));
|
extern iptr S_find_segments PROTO((ptr tc, ISPC s, IGEN g, iptr n));
|
||||||
extern void S_free_chunk PROTO((chunkinfo *chunk));
|
extern void S_free_chunk PROTO((chunkinfo *chunk));
|
||||||
extern void S_free_chunks PROTO((void));
|
extern void S_free_chunks PROTO((void));
|
||||||
extern uptr S_curmembytes PROTO((void));
|
extern uptr S_curmembytes PROTO((void));
|
||||||
|
|
|
@ -809,7 +809,7 @@ static void faslin(ptr tc, ptr *x, ptr t, ptr *pstrbuf, faslFile f) {
|
||||||
|
|
||||||
faslin(tc, &rtd_uid, t, pstrbuf, f);
|
faslin(tc, &rtd_uid, t, pstrbuf, f);
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
/* look for rtd on uid's property list */
|
/* look for rtd on uid's property list */
|
||||||
plist = SYMSPLIST(rtd_uid);
|
plist = SYMSPLIST(rtd_uid);
|
||||||
|
@ -824,7 +824,7 @@ static void faslin(ptr tc, ptr *x, ptr t, ptr *pstrbuf, faslFile f) {
|
||||||
if (!rtd_equiv(tmp, rtd))
|
if (!rtd_equiv(tmp, rtd))
|
||||||
S_error2("", "incompatible record type ~s in ~a", RECORDDESCNAME(tmp), f->uf->path);
|
S_error2("", "incompatible record type ~s in ~a", RECORDDESCNAME(tmp), f->uf->path);
|
||||||
}
|
}
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -838,7 +838,7 @@ static void faslin(ptr tc, ptr *x, ptr t, ptr *pstrbuf, faslFile f) {
|
||||||
/* register rtd on uid's property list */
|
/* register rtd on uid's property list */
|
||||||
SETSYMSPLIST(rtd_uid, Scons(S_G.rtd_key, Scons(rtd, plist)));
|
SETSYMSPLIST(rtd_uid, Scons(S_G.rtd_key, Scons(rtd, plist)));
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -879,7 +879,7 @@ static void faslin(ptr tc, ptr *x, ptr t, ptr *pstrbuf, faslFile f) {
|
||||||
keyval = Scons(FIX(0), FIX(0));
|
keyval = Scons(FIX(0), FIX(0));
|
||||||
break;
|
break;
|
||||||
case eq_hashtable_subtype_weak:
|
case eq_hashtable_subtype_weak:
|
||||||
keyval = S_cons_in(space_weakpair, 0, FIX(0), FIX(0));
|
keyval = S_cons_in(tc, space_weakpair, 0, FIX(0), FIX(0));
|
||||||
break;
|
break;
|
||||||
case eq_hashtable_subtype_ephemeron:
|
case eq_hashtable_subtype_ephemeron:
|
||||||
default:
|
default:
|
||||||
|
@ -1001,7 +1001,7 @@ static void faslin(ptr tc, ptr *x, ptr t, ptr *pstrbuf, faslFile f) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
case fasl_type_weak_pair:
|
case fasl_type_weak_pair:
|
||||||
*x = S_cons_in(space_weakpair, 0, FIX(0), FIX(0));
|
*x = S_cons_in(tc, space_weakpair, 0, FIX(0), FIX(0));
|
||||||
faslin(tc, &INITCAR(*x), t, pstrbuf, f);
|
faslin(tc, &INITCAR(*x), t, pstrbuf, f);
|
||||||
faslin(tc, &INITCDR(*x), t, pstrbuf, f);
|
faslin(tc, &INITCDR(*x), t, pstrbuf, f);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -59,7 +59,7 @@ void S_record_code_mod(ptr tc, uptr addr, uptr bytes) {
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
printf(" record_code_mod new range %x to %x\n", addr, end); fflush(stdout);
|
printf(" record_code_mod new range %x to %x\n", addr, end); fflush(stdout);
|
||||||
#endif
|
#endif
|
||||||
CODERANGESTOFLUSH(tc) = S_cons_in(space_new, 0, make_mod_range(addr, end), ls);
|
CODERANGESTOFLUSH(tc) = S_cons_in(tc, space_new, 0, make_mod_range(addr, end), ls);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -141,7 +141,7 @@ static ptr lookup(s) const char *s; {
|
||||||
x = lookup_static(s);
|
x = lookup_static(s);
|
||||||
if (x == addr_to_ptr(0)) return x;
|
if (x == addr_to_ptr(0)) return x;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
b = ptrhash(x);
|
b = ptrhash(x);
|
||||||
for (p = Svector_ref(S_G.foreign_names, b); p != Snil; p = Scdr(p)) {
|
for (p = Svector_ref(S_G.foreign_names, b); p != Snil; p = Scdr(p)) {
|
||||||
|
@ -154,14 +154,14 @@ static ptr lookup(s) const char *s; {
|
||||||
Svector_ref(S_G.foreign_names, b)));
|
Svector_ref(S_G.foreign_names, b)));
|
||||||
|
|
||||||
quit:
|
quit:
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return x;
|
return x;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Sforeign_symbol(s, v) const char *s; void *v; {
|
void Sforeign_symbol(s, v) const char *s; void *v; {
|
||||||
iptr b; ptr x;
|
iptr b; ptr x;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
#ifdef HPUX
|
#ifdef HPUX
|
||||||
v = proc2entry(v,name);
|
v = proc2entry(v,name);
|
||||||
|
@ -174,7 +174,7 @@ void Sforeign_symbol(s, v) const char *s; void *v; {
|
||||||
} else if (ptr_to_addr(x) != v)
|
} else if (ptr_to_addr(x) != v)
|
||||||
S_error1("Sforeign_symbol", "duplicate symbol entry for ~s", Sstring_utf8(s, -1));
|
S_error1("Sforeign_symbol", "duplicate symbol entry for ~s", Sstring_utf8(s, -1));
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* like Sforeign_symbol except it silently redefines the symbol
|
/* like Sforeign_symbol except it silently redefines the symbol
|
||||||
|
@ -182,7 +182,7 @@ void Sforeign_symbol(s, v) const char *s; void *v; {
|
||||||
void Sregister_symbol(s, v) const char* s; void *v; {
|
void Sregister_symbol(s, v) const char* s; void *v; {
|
||||||
iptr b; ptr p;
|
iptr b; ptr p;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
b = symhash(s);
|
b = symhash(s);
|
||||||
for (p = Svector_ref(S_G.foreign_static, b); p != Snil; p = Scdr(p))
|
for (p = Svector_ref(S_G.foreign_static, b); p != Snil; p = Scdr(p))
|
||||||
|
@ -194,14 +194,14 @@ void Sregister_symbol(s, v) const char* s; void *v; {
|
||||||
Svector_ref(S_G.foreign_static, b)));
|
Svector_ref(S_G.foreign_static, b)));
|
||||||
|
|
||||||
quit:
|
quit:
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
|
|
||||||
static ptr remove_foreign_entry(s) const char *s; {
|
static ptr remove_foreign_entry(s) const char *s; {
|
||||||
iptr b;
|
iptr b;
|
||||||
ptr tbl, p1, p2;
|
ptr tbl, p1, p2;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
b = symhash(s);
|
b = symhash(s);
|
||||||
tbl = S_G.foreign_static;
|
tbl = S_G.foreign_static;
|
||||||
|
@ -214,11 +214,11 @@ static ptr remove_foreign_entry(s) const char *s; {
|
||||||
} else {
|
} else {
|
||||||
SETCDR(p1, Scdr(p2))
|
SETCDR(p1, Scdr(p2))
|
||||||
}
|
}
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return Strue;
|
return Strue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return Sfalse;
|
return Sfalse;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -226,7 +226,7 @@ static ptr remove_foreign_entry(s) const char *s; {
|
||||||
static void load_shared_object(path) const char *path; {
|
static void load_shared_object(path) const char *path; {
|
||||||
void *handle;
|
void *handle;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
handle = dlopen(path, RTLD_NOW);
|
handle = dlopen(path, RTLD_NOW);
|
||||||
if (handle == (void *)NULL)
|
if (handle == (void *)NULL)
|
||||||
|
@ -234,7 +234,7 @@ static void load_shared_object(path) const char *path; {
|
||||||
Sstring_utf8(dlerror(), -1));
|
Sstring_utf8(dlerror(), -1));
|
||||||
S_foreign_dynamic = Scons(addr_to_ptr(handle), S_foreign_dynamic);
|
S_foreign_dynamic = Scons(addr_to_ptr(handle), S_foreign_dynamic);
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
14
racket/src/ChezScheme/c/gc-par.c
Normal file
14
racket/src/ChezScheme/c/gc-par.c
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
/* gc-par.c
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define GCENTRY S_gc_par_entry
|
||||||
|
#define ENABLE_PARALLEL
|
||||||
|
#include "gc.c"
|
||||||
|
|
||||||
|
ptr S_gc_par(ptr tc, IGEN max_cg, IGEN min_tg, IGEN max_tg, ptr count_roots) {
|
||||||
|
MAX_CG = max_cg;
|
||||||
|
MIN_TG = min_tg;
|
||||||
|
MAX_TG = max_tg;
|
||||||
|
|
||||||
|
return S_gc_par_entry(tc, count_roots);
|
||||||
|
}
|
File diff suppressed because it is too large
Load Diff
|
@ -188,7 +188,7 @@ void S_immobilize_object(x) ptr x; {
|
||||||
si = MaybeSegInfo(ptr_get_segment(x));
|
si = MaybeSegInfo(ptr_get_segment(x));
|
||||||
|
|
||||||
if ((si != NULL) && (si->generation != static_generation)) {
|
if ((si != NULL) && (si->generation != static_generation)) {
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
/* Try a little to to support cancellation of segment-level
|
/* Try a little to to support cancellation of segment-level
|
||||||
* immobilzation --- but we don't try too hard */
|
* immobilzation --- but we don't try too hard */
|
||||||
|
@ -202,7 +202,7 @@ void S_immobilize_object(x) ptr x; {
|
||||||
objects must be marked; only those in the locked list must be
|
objects must be marked; only those in the locked list must be
|
||||||
marked. Non-locked objects on `space_new` cannot be immobilized. */
|
marked. Non-locked objects on `space_new` cannot be immobilized. */
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -215,7 +215,7 @@ void S_mobilize_object(x) ptr x; {
|
||||||
si = MaybeSegInfo(ptr_get_segment(x));
|
si = MaybeSegInfo(ptr_get_segment(x));
|
||||||
|
|
||||||
if ((si != NULL) && (si->generation != static_generation)) {
|
if ((si != NULL) && (si->generation != static_generation)) {
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
if (si->must_mark == 0)
|
if (si->must_mark == 0)
|
||||||
S_error_abort("S_mobilize_object(): object was definitely not immobilzed");
|
S_error_abort("S_mobilize_object(): object was definitely not immobilzed");
|
||||||
|
@ -224,7 +224,7 @@ void S_mobilize_object(x) ptr x; {
|
||||||
if (si->must_mark < MUST_MARK_INFINITY)
|
if (si->must_mark < MUST_MARK_INFINITY)
|
||||||
--si->must_mark;
|
--si->must_mark;
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -260,7 +260,7 @@ IBOOL Slocked_objectp(x) ptr x; {
|
||||||
|
|
||||||
if (IMMEDIATE(x) || (si = MaybeSegInfo(ptr_get_segment(x))) == NULL || (g = si->generation) == static_generation) return 1;
|
if (IMMEDIATE(x) || (si = MaybeSegInfo(ptr_get_segment(x))) == NULL || (g = si->generation) == static_generation) return 1;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
ans = 0;
|
ans = 0;
|
||||||
for (ls = S_G.locked_objects[g]; ls != Snil; ls = Scdr(ls)) {
|
for (ls = S_G.locked_objects[g]; ls != Snil; ls = Scdr(ls)) {
|
||||||
|
@ -270,7 +270,7 @@ IBOOL Slocked_objectp(x) ptr x; {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
|
|
||||||
return ans;
|
return ans;
|
||||||
}
|
}
|
||||||
|
@ -278,7 +278,7 @@ IBOOL Slocked_objectp(x) ptr x; {
|
||||||
ptr S_locked_objects(void) {
|
ptr S_locked_objects(void) {
|
||||||
IGEN g; ptr ans; ptr ls;
|
IGEN g; ptr ans; ptr ls;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
ans = Snil;
|
ans = Snil;
|
||||||
for (g = 0; g <= static_generation; INCRGEN(g)) {
|
for (g = 0; g <= static_generation; INCRGEN(g)) {
|
||||||
|
@ -287,7 +287,7 @@ ptr S_locked_objects(void) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
|
|
||||||
return ans;
|
return ans;
|
||||||
}
|
}
|
||||||
|
@ -297,7 +297,8 @@ void Slock_object(x) ptr x; {
|
||||||
|
|
||||||
/* weed out pointers that won't be relocated */
|
/* weed out pointers that won't be relocated */
|
||||||
if (!IMMEDIATE(x) && (si = MaybeSegInfo(ptr_get_segment(x))) != NULL && (g = si->generation) != static_generation) {
|
if (!IMMEDIATE(x) && (si = MaybeSegInfo(ptr_get_segment(x))) != NULL && (g = si->generation) != static_generation) {
|
||||||
tc_mutex_acquire()
|
ptr tc = get_thread_context();
|
||||||
|
tc_mutex_acquire();
|
||||||
S_pants_down += 1;
|
S_pants_down += 1;
|
||||||
/* immobilize */
|
/* immobilize */
|
||||||
if (si->must_mark < MUST_MARK_INFINITY) {
|
if (si->must_mark < MUST_MARK_INFINITY) {
|
||||||
|
@ -306,13 +307,13 @@ void Slock_object(x) ptr x; {
|
||||||
S_G.must_mark_gen0 = 1;
|
S_G.must_mark_gen0 = 1;
|
||||||
}
|
}
|
||||||
/* add x to locked list. remove from unlocked list */
|
/* add x to locked list. remove from unlocked list */
|
||||||
S_G.locked_objects[g] = S_cons_in((g == 0 ? space_new : space_impure), g, x, S_G.locked_objects[g]);
|
S_G.locked_objects[g] = S_cons_in(tc, (g == 0 ? space_new : space_impure), g, x, S_G.locked_objects[g]);
|
||||||
if (S_G.enable_object_counts) {
|
if (S_G.enable_object_counts) {
|
||||||
if (g != 0) S_G.countof[g][countof_pair] += 1;
|
if (g != 0) S_G.countof[g][countof_pair] += 1;
|
||||||
}
|
}
|
||||||
(void)remove_first_nomorep(x, &S_G.unlocked_objects[g], 0);
|
(void)remove_first_nomorep(x, &S_G.unlocked_objects[g], 0);
|
||||||
S_pants_down -= 1;
|
S_pants_down -= 1;
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -320,7 +321,8 @@ void Sunlock_object(x) ptr x; {
|
||||||
seginfo *si; IGEN g;
|
seginfo *si; IGEN g;
|
||||||
|
|
||||||
if (!IMMEDIATE(x) && (si = MaybeSegInfo(ptr_get_segment(x))) != NULL && (g = si->generation) != static_generation) {
|
if (!IMMEDIATE(x) && (si = MaybeSegInfo(ptr_get_segment(x))) != NULL && (g = si->generation) != static_generation) {
|
||||||
tc_mutex_acquire()
|
ptr tc = get_thread_context();
|
||||||
|
tc_mutex_acquire();
|
||||||
S_pants_down += 1;
|
S_pants_down += 1;
|
||||||
/* mobilize, if we haven't lost track */
|
/* mobilize, if we haven't lost track */
|
||||||
if (si->must_mark < MUST_MARK_INFINITY)
|
if (si->must_mark < MUST_MARK_INFINITY)
|
||||||
|
@ -328,13 +330,13 @@ void Sunlock_object(x) ptr x; {
|
||||||
/* remove first occurrence of x from locked list. if there are no
|
/* remove first occurrence of x from locked list. if there are no
|
||||||
others, add x to unlocked list */
|
others, add x to unlocked list */
|
||||||
if (remove_first_nomorep(x, &S_G.locked_objects[g], (si->space == space_new) && (si->generation > 0))) {
|
if (remove_first_nomorep(x, &S_G.locked_objects[g], (si->space == space_new) && (si->generation > 0))) {
|
||||||
S_G.unlocked_objects[g] = S_cons_in((g == 0 ? space_new : space_impure), g, x, S_G.unlocked_objects[g]);
|
S_G.unlocked_objects[g] = S_cons_in(tc, (g == 0 ? space_new : space_impure), g, x, S_G.unlocked_objects[g]);
|
||||||
if (S_G.enable_object_counts) {
|
if (S_G.enable_object_counts) {
|
||||||
if (g != 0) S_G.countof[g][countof_pair] += 1;
|
if (g != 0) S_G.countof[g][countof_pair] += 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
S_pants_down -= 1;
|
S_pants_down -= 1;
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -353,7 +355,7 @@ ptr s_help_unregister_guardian(ptr *pls, ptr tconc, ptr result) {
|
||||||
|
|
||||||
ptr S_unregister_guardian(ptr tconc) {
|
ptr S_unregister_guardian(ptr tconc) {
|
||||||
ptr result, tc; IGEN g;
|
ptr result, tc; IGEN g;
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
tc = get_thread_context();
|
tc = get_thread_context();
|
||||||
/* in the interest of thread safety, gather entries only in the current thread, ignoring any others */
|
/* in the interest of thread safety, gather entries only in the current thread, ignoring any others */
|
||||||
result = s_help_unregister_guardian(&GUARDIANENTRIES(tc), tconc, Snil);
|
result = s_help_unregister_guardian(&GUARDIANENTRIES(tc), tconc, Snil);
|
||||||
|
@ -361,15 +363,15 @@ ptr S_unregister_guardian(ptr tconc) {
|
||||||
for (g = 0; g <= static_generation; INCRGEN(g)) {
|
for (g = 0; g <= static_generation; INCRGEN(g)) {
|
||||||
result = s_help_unregister_guardian(&S_G.guardians[g], tconc, result);
|
result = s_help_unregister_guardian(&S_G.guardians[g], tconc, result);
|
||||||
}
|
}
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
void S_register_child_process(INT child) {
|
void S_register_child_process(INT child) {
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
S_child_processes[0] = Scons(FIX(child), S_child_processes[0]);
|
S_child_processes[0] = Scons(FIX(child), S_child_processes[0]);
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
#endif /* WIN32 */
|
#endif /* WIN32 */
|
||||||
|
|
||||||
|
@ -384,7 +386,7 @@ void S_set_enable_object_counts(IBOOL eoc) {
|
||||||
ptr S_object_counts(void) {
|
ptr S_object_counts(void) {
|
||||||
IGEN grtd, g; ptr ls; iptr i; ptr outer_alist;
|
IGEN grtd, g; ptr ls; iptr i; ptr outer_alist;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
outer_alist = Snil;
|
outer_alist = Snil;
|
||||||
|
|
||||||
|
@ -441,7 +443,7 @@ ptr S_object_counts(void) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
|
|
||||||
return outer_alist;
|
return outer_alist;
|
||||||
}
|
}
|
||||||
|
@ -457,12 +459,12 @@ void S_set_enable_object_backreferences(IBOOL eoc) {
|
||||||
ptr S_object_backreferences(void) {
|
ptr S_object_backreferences(void) {
|
||||||
IGEN g; ptr ls = Snil;
|
IGEN g; ptr ls = Snil;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
for (g = S_G.max_nonstatic_generation+1; g--; )
|
for (g = S_G.max_nonstatic_generation+1; g--; )
|
||||||
ls = Scons(S_G.gcbackreference[g], ls);
|
ls = Scons(S_G.gcbackreference[g], ls);
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
|
|
||||||
return ls;
|
return ls;
|
||||||
}
|
}
|
||||||
|
@ -564,6 +566,22 @@ void S_check_heap(aftergc, mcg) IBOOL aftergc; IGEN mcg; {
|
||||||
|
|
||||||
check_dirty();
|
check_dirty();
|
||||||
|
|
||||||
|
{
|
||||||
|
ptr ls;
|
||||||
|
for (ls = S_threads; ls != Snil; ls = Scdr(ls)) {
|
||||||
|
ptr t_tc = (ptr)THREADTC(Scar(ls));
|
||||||
|
for (s = 0; s <= max_real_space; s += 1) {
|
||||||
|
for (g = 0; g <= static_generation; INCRGEN(g)) {
|
||||||
|
if ((NEXTLOC_AT(t_tc, s, g) == (ptr)0) != (BASELOC_AT(t_tc, s, g) == (ptr)0)) {
|
||||||
|
S_checkheap_errors += 1;
|
||||||
|
printf("!!! inconsistent thread NEXT %p and BASE %p\n",
|
||||||
|
TO_VOIDP(NEXTLOC_AT(t_tc, s, g)), TO_VOIDP(BASELOC_AT(t_tc, s, g)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for (i = PARTIAL_CHUNK_POOLS; i >= -1; i -= 1) {
|
for (i = PARTIAL_CHUNK_POOLS; i >= -1; i -= 1) {
|
||||||
chunkinfo *chunk = i == -1 ? S_chunks_full : S_chunks[i];
|
chunkinfo *chunk = i == -1 ? S_chunks_full : S_chunks[i];
|
||||||
while (chunk != NULL) {
|
while (chunk != NULL) {
|
||||||
|
@ -658,8 +676,8 @@ void S_check_heap(aftergc, mcg) IBOOL aftergc; IGEN mcg; {
|
||||||
pp1 = TO_VOIDP(build_ptr(seg, 0));
|
pp1 = TO_VOIDP(build_ptr(seg, 0));
|
||||||
pp2 = TO_VOIDP(build_ptr(seg + 1, 0));
|
pp2 = TO_VOIDP(build_ptr(seg + 1, 0));
|
||||||
|
|
||||||
nl = TO_VOIDP(S_G.next_loc[g][s]);
|
nl = NULL;
|
||||||
if (!(pp1 <= nl && nl < pp2)) {
|
{
|
||||||
ptr ls;
|
ptr ls;
|
||||||
for (ls = S_threads; ls != Snil; ls = Scdr(ls)) {
|
for (ls = S_threads; ls != Snil; ls = Scdr(ls)) {
|
||||||
ptr t_tc = (ptr)THREADTC(Scar(ls));
|
ptr t_tc = (ptr)THREADTC(Scar(ls));
|
||||||
|
@ -978,11 +996,6 @@ ptr S_do_gc(IGEN max_cg, IGEN min_tg, IGEN max_tg, ptr count_roots) {
|
||||||
/* now transfer old_g info to new_g, and clear old_g info */
|
/* now transfer old_g info to new_g, and clear old_g info */
|
||||||
S_G.bytes_of_generation[new_g] = S_G.bytes_of_generation[old_g]; S_G.bytes_of_generation[old_g] = 0;
|
S_G.bytes_of_generation[new_g] = S_G.bytes_of_generation[old_g]; S_G.bytes_of_generation[old_g] = 0;
|
||||||
for (s = 0; s <= max_real_space; s += 1) {
|
for (s = 0; s <= max_real_space; s += 1) {
|
||||||
S_G.to_sweep[new_g][s] = S_G.to_sweep[old_g][s]; S_G.to_sweep[old_g][s] = NULL;
|
|
||||||
S_G.base_loc[new_g][s] = S_G.base_loc[old_g][s]; S_G.base_loc[old_g][s] = FIX(0);
|
|
||||||
S_G.next_loc[new_g][s] = S_G.next_loc[old_g][s]; S_G.next_loc[old_g][s] = FIX(0);
|
|
||||||
S_G.sweep_loc[new_g][s] = S_G.sweep_loc[old_g][s]; S_G.sweep_loc[old_g][s] = FIX(0);
|
|
||||||
S_G.bytes_left[new_g][s] = S_G.bytes_left[old_g][s]; S_G.bytes_left[old_g][s] = 0;
|
|
||||||
S_G.bytes_of_space[new_g][s] = S_G.bytes_of_space[old_g][s]; S_G.bytes_of_space[old_g][s] = 0;
|
S_G.bytes_of_space[new_g][s] = S_G.bytes_of_space[old_g][s]; S_G.bytes_of_space[old_g][s] = 0;
|
||||||
S_G.occupied_segments[new_g][s] = S_G.occupied_segments[old_g][s]; S_G.occupied_segments[old_g][s] = NULL;
|
S_G.occupied_segments[new_g][s] = S_G.occupied_segments[old_g][s]; S_G.occupied_segments[old_g][s] = NULL;
|
||||||
for (si = S_G.occupied_segments[new_g][s]; si != NULL; si = si->next) {
|
for (si = S_G.occupied_segments[new_g][s]; si != NULL; si = si->next) {
|
||||||
|
@ -996,6 +1009,7 @@ ptr S_do_gc(IGEN max_cg, IGEN min_tg, IGEN max_tg, ptr count_roots) {
|
||||||
NEXTLOC_AT(t_tc, s, new_g) = NEXTLOC_AT(t_tc, s, old_g); NEXTLOC_AT(t_tc, s, old_g) = (ptr)0;
|
NEXTLOC_AT(t_tc, s, new_g) = NEXTLOC_AT(t_tc, s, old_g); NEXTLOC_AT(t_tc, s, old_g) = (ptr)0;
|
||||||
BYTESLEFT_AT(t_tc, s, new_g) = BYTESLEFT_AT(t_tc, s, old_g); BYTESLEFT_AT(t_tc, s, old_g) = 0;
|
BYTESLEFT_AT(t_tc, s, new_g) = BYTESLEFT_AT(t_tc, s, old_g); BYTESLEFT_AT(t_tc, s, old_g) = 0;
|
||||||
SWEEPLOC_AT(t_tc, s, new_g) = SWEEPLOC_AT(t_tc, s, old_g); SWEEPLOC_AT(t_tc, s, old_g) = 0;
|
SWEEPLOC_AT(t_tc, s, new_g) = SWEEPLOC_AT(t_tc, s, old_g); SWEEPLOC_AT(t_tc, s, old_g) = 0;
|
||||||
|
SWEEPNEXT_AT(t_tc, s, new_g) = SWEEPNEXT_AT(t_tc, s, old_g); SWEEPNEXT_AT(t_tc, s, old_g) = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1091,13 +1105,18 @@ ptr S_do_gc(IGEN max_cg, IGEN min_tg, IGEN max_tg, ptr count_roots) {
|
||||||
ptr S_gc(ptr tc, IGEN max_cg, IGEN min_tg, IGEN max_tg, ptr count_roots) {
|
ptr S_gc(ptr tc, IGEN max_cg, IGEN min_tg, IGEN max_tg, ptr count_roots) {
|
||||||
if (min_tg == static_generation
|
if (min_tg == static_generation
|
||||||
|| S_G.enable_object_counts || S_G.enable_object_backreferences
|
|| S_G.enable_object_counts || S_G.enable_object_backreferences
|
||||||
|| (count_roots != Sfalse))
|
|| (count_roots != Sfalse)) {
|
||||||
return S_gc_oce(tc, max_cg, min_tg, max_tg, count_roots);
|
return S_gc_oce(tc, max_cg, min_tg, max_tg, count_roots);
|
||||||
else if (max_cg == 0 && min_tg == 1 && max_tg == 1
|
#if defined(PTHREADS)
|
||||||
|
} else if (S_collect_waiting_threads != 0) {
|
||||||
|
return S_gc_par(tc, max_cg, min_tg, max_tg, Sfalse);
|
||||||
|
#endif
|
||||||
|
} else if (max_cg == 0 && min_tg == 1 && max_tg == 1
|
||||||
&& !S_G.must_mark_gen0 && S_G.locked_objects[0] == Snil
|
&& !S_G.must_mark_gen0 && S_G.locked_objects[0] == Snil
|
||||||
&& (S_G.min_mark_gen > 0)) {
|
&& (S_G.min_mark_gen > 0)) {
|
||||||
S_gc_011(tc);
|
S_gc_011(tc);
|
||||||
return Svoid;
|
return Svoid;
|
||||||
} else
|
} else {
|
||||||
return S_gc_ocd(tc, max_cg, min_tg, max_tg, Sfalse);
|
return S_gc_ocd(tc, max_cg, min_tg, max_tg, Sfalse);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,6 +40,13 @@ EXTERN scheme_mutex_t S_tc_mutex;
|
||||||
EXTERN s_thread_cond_t S_collect_cond;
|
EXTERN s_thread_cond_t S_collect_cond;
|
||||||
EXTERN s_thread_cond_t S_collect_thread0_cond;
|
EXTERN s_thread_cond_t S_collect_thread0_cond;
|
||||||
EXTERN INT S_tc_mutex_depth;
|
EXTERN INT S_tc_mutex_depth;
|
||||||
|
EXTERN scheme_mutex_t S_gc_tc_mutex;
|
||||||
|
EXTERN IBOOL S_use_gc_tc_mutex;
|
||||||
|
EXTERN int S_collect_waiting_threads;
|
||||||
|
EXTERN ptr S_collect_waiting_tcs[maximum_parallel_collect_threads];
|
||||||
|
# ifdef IMPLICIT_ATOMIC_AS_EXPLICIT
|
||||||
|
EXTERN s_thread_mutex_t S_implicit_mutex;
|
||||||
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* segment.c */
|
/* segment.c */
|
||||||
|
@ -96,11 +103,6 @@ EXTERN struct S_G_struct {
|
||||||
/* alloc.c */
|
/* alloc.c */
|
||||||
ptr *protected[max_protected];
|
ptr *protected[max_protected];
|
||||||
uptr protect_next;
|
uptr protect_next;
|
||||||
seginfo *to_sweep[static_generation+1][max_real_space+1];
|
|
||||||
ptr base_loc[static_generation+1][max_real_space+1];
|
|
||||||
ptr next_loc[static_generation+1][max_real_space+1];
|
|
||||||
ptr sweep_loc[static_generation+1][max_real_space+1];
|
|
||||||
iptr bytes_left[static_generation+1][max_real_space+1];
|
|
||||||
uptr bytes_of_space[static_generation+1][max_real_space+1];
|
uptr bytes_of_space[static_generation+1][max_real_space+1];
|
||||||
uptr bytes_of_generation[static_generation+1];
|
uptr bytes_of_generation[static_generation+1];
|
||||||
uptr bitmask_overhead[static_generation+1];
|
uptr bitmask_overhead[static_generation+1];
|
||||||
|
|
|
@ -38,9 +38,10 @@ void S_intern_init() {
|
||||||
}
|
}
|
||||||
|
|
||||||
static void oblist_insert(ptr sym, iptr idx, IGEN g) {
|
static void oblist_insert(ptr sym, iptr idx, IGEN g) {
|
||||||
|
ptr tc = get_thread_context();
|
||||||
bucket *b, *oldb, **pb;
|
bucket *b, *oldb, **pb;
|
||||||
|
|
||||||
find_room_voidp(g == 0 ? space_new : space_data, g, ptr_align(sizeof(bucket)), b);
|
find_room_voidp(tc, g == 0 ? space_new : space_data, g, ptr_align(sizeof(bucket)), b);
|
||||||
b->sym = sym;
|
b->sym = sym;
|
||||||
if (g == 0) {
|
if (g == 0) {
|
||||||
b->next = S_G.oblist[idx];
|
b->next = S_G.oblist[idx];
|
||||||
|
@ -53,7 +54,7 @@ static void oblist_insert(ptr sym, iptr idx, IGEN g) {
|
||||||
|
|
||||||
if (g != static_generation) {
|
if (g != static_generation) {
|
||||||
bucket_list *bl;
|
bucket_list *bl;
|
||||||
find_room_voidp(g == 0 ? space_new : space_data, g, ptr_align(sizeof(bucket_list)), bl);
|
find_room_voidp(tc, g == 0 ? space_new : space_data, g, ptr_align(sizeof(bucket_list)), bl);
|
||||||
bl->car = b;
|
bl->car = b;
|
||||||
bl->cdr = S_G.buckets_of_generation[g];
|
bl->cdr = S_G.buckets_of_generation[g];
|
||||||
S_G.buckets_of_generation[g] = bl;
|
S_G.buckets_of_generation[g] = bl;
|
||||||
|
@ -155,7 +156,7 @@ ptr S_intern(const unsigned char *s) {
|
||||||
ptr sym;
|
ptr sym;
|
||||||
bucket *b;
|
bucket *b;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
b = S_G.oblist[idx];
|
b = S_G.oblist[idx];
|
||||||
while (b != NULL) {
|
while (b != NULL) {
|
||||||
|
@ -166,7 +167,7 @@ ptr S_intern(const unsigned char *s) {
|
||||||
iptr i;
|
iptr i;
|
||||||
for (i = 0; ; i += 1) {
|
for (i = 0; ; i += 1) {
|
||||||
if (i == n) {
|
if (i == n) {
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return sym;
|
return sym;
|
||||||
}
|
}
|
||||||
if (Sstring_ref(str, i) != s[i]) break;
|
if (Sstring_ref(str, i) != s[i]) break;
|
||||||
|
@ -180,7 +181,7 @@ ptr S_intern(const unsigned char *s) {
|
||||||
INITSYMHASH(sym) = FIX(hc);
|
INITSYMHASH(sym) = FIX(hc);
|
||||||
oblist_insert(sym, idx, 0);
|
oblist_insert(sym, idx, 0);
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return sym;
|
return sym;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -191,7 +192,7 @@ ptr S_intern_sc(const string_char *name, iptr n, ptr name_str) {
|
||||||
ptr sym;
|
ptr sym;
|
||||||
bucket *b;
|
bucket *b;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
b = S_G.oblist[idx];
|
b = S_G.oblist[idx];
|
||||||
while (b != NULL) {
|
while (b != NULL) {
|
||||||
|
@ -202,7 +203,7 @@ ptr S_intern_sc(const string_char *name, iptr n, ptr name_str) {
|
||||||
iptr i;
|
iptr i;
|
||||||
for (i = 0; ; i += 1) {
|
for (i = 0; ; i += 1) {
|
||||||
if (i == n) {
|
if (i == n) {
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return sym;
|
return sym;
|
||||||
}
|
}
|
||||||
if (STRIT(str, i) != name[i]) break;
|
if (STRIT(str, i) != name[i]) break;
|
||||||
|
@ -218,7 +219,7 @@ ptr S_intern_sc(const string_char *name, iptr n, ptr name_str) {
|
||||||
INITSYMHASH(sym) = FIX(hc);
|
INITSYMHASH(sym) = FIX(hc);
|
||||||
oblist_insert(sym, idx, 0);
|
oblist_insert(sym, idx, 0);
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return sym;
|
return sym;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -228,7 +229,7 @@ ptr S_intern3(const string_char *pname, iptr plen, const string_char *uname, ipt
|
||||||
ptr sym;
|
ptr sym;
|
||||||
bucket *b;
|
bucket *b;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
b = S_G.oblist[idx];
|
b = S_G.oblist[idx];
|
||||||
while (b != NULL) {
|
while (b != NULL) {
|
||||||
|
@ -239,7 +240,7 @@ ptr S_intern3(const string_char *pname, iptr plen, const string_char *uname, ipt
|
||||||
iptr i;
|
iptr i;
|
||||||
for (i = 0; ; i += 1) {
|
for (i = 0; ; i += 1) {
|
||||||
if (i == ulen) {
|
if (i == ulen) {
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return sym;
|
return sym;
|
||||||
}
|
}
|
||||||
if (STRIT(str, i) != uname[i]) break;
|
if (STRIT(str, i) != uname[i]) break;
|
||||||
|
@ -257,7 +258,7 @@ ptr S_intern3(const string_char *pname, iptr plen, const string_char *uname, ipt
|
||||||
INITSYMHASH(sym) = FIX(hc);
|
INITSYMHASH(sym) = FIX(hc);
|
||||||
oblist_insert(sym, idx, 0);
|
oblist_insert(sym, idx, 0);
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return sym;
|
return sym;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -269,7 +270,7 @@ void S_intern_gensym(sym) ptr sym; {
|
||||||
iptr idx = OBINDEX(hc, S_G.oblist_length);
|
iptr idx = OBINDEX(hc, S_G.oblist_length);
|
||||||
bucket *b;
|
bucket *b;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
b = S_G.oblist[idx];
|
b = S_G.oblist[idx];
|
||||||
while (b != NULL) {
|
while (b != NULL) {
|
||||||
|
@ -280,7 +281,7 @@ void S_intern_gensym(sym) ptr sym; {
|
||||||
iptr i;
|
iptr i;
|
||||||
for (i = 0; ; i += 1) {
|
for (i = 0; ; i += 1) {
|
||||||
if (i == ulen) {
|
if (i == ulen) {
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
S_error1("intern-gensym", "unique name ~s already interned", uname_str);
|
S_error1("intern-gensym", "unique name ~s already interned", uname_str);
|
||||||
}
|
}
|
||||||
if (STRIT(str, i) != uname[i]) break;
|
if (STRIT(str, i) != uname[i]) break;
|
||||||
|
@ -293,7 +294,7 @@ void S_intern_gensym(sym) ptr sym; {
|
||||||
INITSYMHASH(sym) = FIX(hc);
|
INITSYMHASH(sym) = FIX(hc);
|
||||||
oblist_insert(sym, idx, GENERATION(sym));
|
oblist_insert(sym, idx, GENERATION(sym));
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* must hold mutex */
|
/* must hold mutex */
|
||||||
|
|
|
@ -57,7 +57,7 @@ void S_machine_init() {}
|
||||||
|
|
||||||
#define SIGN_FLIP(r, a, b) ((~((a ^ b) | (r ^ ~b))) >> (ptr_bits-1))
|
#define SIGN_FLIP(r, a, b) ((~((a ^ b) | (r ^ ~b))) >> (ptr_bits-1))
|
||||||
|
|
||||||
#if __GNUC__ >= 5
|
#if (__GNUC__ >= 5) || defined(__clang__)
|
||||||
# define USE_OVERFLOW_INTRINSICS 1
|
# define USE_OVERFLOW_INTRINSICS 1
|
||||||
#else
|
#else
|
||||||
# define USE_OVERFLOW_INTRINSICS 0
|
# define USE_OVERFLOW_INTRINSICS 0
|
||||||
|
|
|
@ -224,9 +224,7 @@ static void s_instantiate_code_object() {
|
||||||
cookie = S_get_scheme_arg(tc, 2);
|
cookie = S_get_scheme_arg(tc, 2);
|
||||||
proc = S_get_scheme_arg(tc, 3);
|
proc = S_get_scheme_arg(tc, 3);
|
||||||
|
|
||||||
tc_mutex_acquire()
|
|
||||||
new = S_code(tc, CODETYPE(old), CODELEN(old));
|
new = S_code(tc, CODETYPE(old), CODELEN(old));
|
||||||
tc_mutex_release()
|
|
||||||
|
|
||||||
S_immobilize_object(new);
|
S_immobilize_object(new);
|
||||||
|
|
||||||
|
|
|
@ -132,7 +132,7 @@ static ptr s_profile_release_counters PROTO((void));
|
||||||
ptr S_strerror(INT errnum) {
|
ptr S_strerror(INT errnum) {
|
||||||
ptr p; char *msg;
|
ptr p; char *msg;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
msg = Swide_to_utf8(_wcserror(errnum));
|
msg = Swide_to_utf8(_wcserror(errnum));
|
||||||
if (msg == NULL)
|
if (msg == NULL)
|
||||||
|
@ -144,7 +144,7 @@ ptr S_strerror(INT errnum) {
|
||||||
#else
|
#else
|
||||||
p = (msg = strerror(errnum)) == NULL ? Sfalse : Sstring_utf8(msg, -1);
|
p = (msg = strerror(errnum)) == NULL ? Sfalse : Sstring_utf8(msg, -1);
|
||||||
#endif
|
#endif
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -214,12 +214,11 @@ static ptr s_make_immobile_bytevector(uptr len) {
|
||||||
}
|
}
|
||||||
|
|
||||||
static ptr s_make_immobile_vector(uptr len, ptr fill) {
|
static ptr s_make_immobile_vector(uptr len, ptr fill) {
|
||||||
|
ptr tc = get_thread_context();
|
||||||
ptr v;
|
ptr v;
|
||||||
uptr i;
|
uptr i;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
v = S_vector_in(tc, space_immobile_impure, 0, len);
|
||||||
v = S_vector_in(space_immobile_impure, 0, len);
|
|
||||||
tc_mutex_release()
|
|
||||||
|
|
||||||
S_immobilize_object(v);
|
S_immobilize_object(v);
|
||||||
|
|
||||||
|
@ -401,8 +400,9 @@ static void s_showalloc(IBOOL show_dump, const char *outfn) {
|
||||||
static char spacechar[space_total+1] = { alloc_space_chars, '?', 't' };
|
static char spacechar[space_total+1] = { alloc_space_chars, '?', 't' };
|
||||||
chunkinfo *chunk; seginfo *si; ISPC s; IGEN g;
|
chunkinfo *chunk; seginfo *si; ISPC s; IGEN g;
|
||||||
ptr sorted_chunks;
|
ptr sorted_chunks;
|
||||||
|
ptr tc = get_thread_context();
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
if (outfn == NULL) {
|
if (outfn == NULL) {
|
||||||
out = stderr;
|
out = stderr;
|
||||||
|
@ -417,10 +417,10 @@ static void s_showalloc(IBOOL show_dump, const char *outfn) {
|
||||||
if (out == NULL) {
|
if (out == NULL) {
|
||||||
ptr msg = S_strerror(errno);
|
ptr msg = S_strerror(errno);
|
||||||
if (msg != Sfalse) {
|
if (msg != Sfalse) {
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
S_error2("fopen", "open of ~s failed: ~a", Sstring_utf8(outfn, -1), msg);
|
S_error2("fopen", "open of ~s failed: ~a", Sstring_utf8(outfn, -1), msg);
|
||||||
} else {
|
} else {
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
S_error1("fopen", "open of ~s failed", Sstring_utf8(outfn, -1));
|
S_error1("fopen", "open of ~s failed", Sstring_utf8(outfn, -1));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -434,8 +434,8 @@ static void s_showalloc(IBOOL show_dump, const char *outfn) {
|
||||||
/* add in bytes previously recorded */
|
/* add in bytes previously recorded */
|
||||||
bytes[g][s] += S_G.bytes_of_space[g][s];
|
bytes[g][s] += S_G.bytes_of_space[g][s];
|
||||||
/* add in bytes in active segments */
|
/* add in bytes in active segments */
|
||||||
if (S_G.next_loc[g][s] != FIX(0))
|
if (NEXTLOC_AT(tc, s, g) != FIX(0))
|
||||||
bytes[g][s] += (uptr)S_G.next_loc[g][s] - (uptr)S_G.base_loc[g][s];
|
bytes[g][s] += (uptr)NEXTLOC_AT(tc, s, g) - (uptr)BASELOC_AT(tc, s, g);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -627,7 +627,7 @@ static void s_showalloc(IBOOL show_dump, const char *outfn) {
|
||||||
fclose(out);
|
fclose(out);
|
||||||
}
|
}
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
|
@ -914,9 +914,7 @@ static ptr s_set_reloc(p, n, e) ptr p, n, e; {
|
||||||
}
|
}
|
||||||
|
|
||||||
static ptr s_flush_instruction_cache() {
|
static ptr s_flush_instruction_cache() {
|
||||||
tc_mutex_acquire()
|
|
||||||
S_flush_instruction_cache(get_thread_context());
|
S_flush_instruction_cache(get_thread_context());
|
||||||
tc_mutex_release()
|
|
||||||
return Svoid;
|
return Svoid;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -924,9 +922,7 @@ static ptr s_make_code(flags, free, name, arity_mark, n, info, pinfos)
|
||||||
iptr flags, free, n; ptr name, arity_mark, info, pinfos; {
|
iptr flags, free, n; ptr name, arity_mark, info, pinfos; {
|
||||||
ptr co;
|
ptr co;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
|
||||||
co = S_code(get_thread_context(), type_code | (flags << code_flags_offset), n);
|
co = S_code(get_thread_context(), type_code | (flags << code_flags_offset), n);
|
||||||
tc_mutex_release()
|
|
||||||
CODEFREE(co) = free;
|
CODEFREE(co) = free;
|
||||||
CODENAME(co) = name;
|
CODENAME(co) = name;
|
||||||
CODEARITYMASK(co) = arity_mark;
|
CODEARITYMASK(co) = arity_mark;
|
||||||
|
|
|
@ -55,7 +55,7 @@ static void main_init() {
|
||||||
/* create dependency for linker */
|
/* create dependency for linker */
|
||||||
scheme_statics();
|
scheme_statics();
|
||||||
|
|
||||||
/* force thread inline allocation to go through find_room until ready */
|
/* force thread inline newspace allocation to go through find_room until ready */
|
||||||
AP(tc) = (ptr)0;
|
AP(tc) = (ptr)0;
|
||||||
EAP(tc) = (ptr)0;
|
EAP(tc) = (ptr)0;
|
||||||
REAL_EAP(tc) = (ptr)0;
|
REAL_EAP(tc) = (ptr)0;
|
||||||
|
@ -66,8 +66,8 @@ static void main_init() {
|
||||||
if (S_boot_time) S_G.protect_next = 0;
|
if (S_boot_time) S_G.protect_next = 0;
|
||||||
|
|
||||||
S_segment_init();
|
S_segment_init();
|
||||||
S_alloc_init();
|
|
||||||
S_thread_init();
|
S_thread_init();
|
||||||
|
S_alloc_init();
|
||||||
S_intern_init();
|
S_intern_init();
|
||||||
S_gc_init();
|
S_gc_init();
|
||||||
S_number_init();
|
S_number_init();
|
||||||
|
|
|
@ -128,9 +128,9 @@ void S_split_and_resize() {
|
||||||
* argument register values */
|
* argument register values */
|
||||||
n = CONTCLENGTH(k) + (value_count * sizeof(ptr)) + stack_slop;
|
n = CONTCLENGTH(k) + (value_count * sizeof(ptr)) + stack_slop;
|
||||||
if (n >= SCHEMESTACKSIZE(tc)) {
|
if (n >= SCHEMESTACKSIZE(tc)) {
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
S_reset_scheme_stack(tc, n);
|
S_reset_scheme_stack(tc, n);
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -272,7 +272,7 @@ void S_overflow(tc, frame_request) ptr tc; iptr frame_request; {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* create a continuation */
|
/* create a continuation */
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
STACKLINK(tc) = S_mkcontinuation(space_new,
|
STACKLINK(tc) = S_mkcontinuation(space_new,
|
||||||
0,
|
0,
|
||||||
CODEENTRYPOINT(nuate),
|
CODEENTRYPOINT(nuate),
|
||||||
|
@ -283,7 +283,7 @@ void S_overflow(tc, frame_request) ptr tc; iptr frame_request; {
|
||||||
*split_point,
|
*split_point,
|
||||||
Snil,
|
Snil,
|
||||||
Sfalse);
|
Sfalse);
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
|
|
||||||
/* overwrite old return address with dounderflow */
|
/* overwrite old return address with dounderflow */
|
||||||
*split_point = TO_PTR(DOUNDERFLOW);
|
*split_point = TO_PTR(DOUNDERFLOW);
|
||||||
|
@ -296,9 +296,9 @@ void S_overflow(tc, frame_request) ptr tc; iptr frame_request; {
|
||||||
|
|
||||||
/* allocate a new stack, retaining same relative sfp */
|
/* allocate a new stack, retaining same relative sfp */
|
||||||
sfp_offset = (uptr)TO_PTR(sfp) - (uptr)TO_PTR(split_point);
|
sfp_offset = (uptr)TO_PTR(sfp) - (uptr)TO_PTR(split_point);
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
S_reset_scheme_stack(tc, above_split_size + frame_request);
|
S_reset_scheme_stack(tc, above_split_size + frame_request);
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
SFP(tc) = (ptr)((uptr)SCHEMESTACK(tc) + sfp_offset);
|
SFP(tc) = (ptr)((uptr)SCHEMESTACK(tc) + sfp_offset);
|
||||||
|
|
||||||
/* copy up everything above the split point. we don't know where the
|
/* copy up everything above the split point. we don't know where the
|
||||||
|
@ -324,14 +324,14 @@ void S_abnormal_exit() {
|
||||||
static void reset_scheme() {
|
static void reset_scheme() {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
/* eap should always be up-to-date now that we write-through to the tc
|
/* eap should always be up-to-date now that we write-through to the tc
|
||||||
when making any changes to eap when eap is a real register */
|
when making any changes to eap when eap is a real register */
|
||||||
S_scan_dirty(TO_VOIDP(EAP(tc)), TO_VOIDP(REAL_EAP(tc)));
|
S_scan_dirty(TO_VOIDP(EAP(tc)), TO_VOIDP(REAL_EAP(tc)));
|
||||||
S_reset_allocation_pointer(tc);
|
S_reset_allocation_pointer(tc);
|
||||||
S_reset_scheme_stack(tc, stack_slop);
|
S_reset_scheme_stack(tc, stack_slop);
|
||||||
FRAME(tc,0) = TO_PTR(DOUNDERFLOW);
|
FRAME(tc,0) = TO_PTR(DOUNDERFLOW);
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* error_resets occur with the system in an unknown state,
|
/* error_resets occur with the system in an unknown state,
|
||||||
|
@ -516,7 +516,7 @@ void S_fire_collector() {
|
||||||
|
|
||||||
/* printf("really firing collector!\n"); fflush(stdout); */
|
/* printf("really firing collector!\n"); fflush(stdout); */
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
/* check again in case some other thread beat us to the punch */
|
/* check again in case some other thread beat us to the punch */
|
||||||
if (!Sboolean_value(S_symbol_value(crp_id))) {
|
if (!Sboolean_value(S_symbol_value(crp_id))) {
|
||||||
/* printf("firing collector nthreads = %d\n", list_length(S_threads)); fflush(stdout); */
|
/* printf("firing collector nthreads = %d\n", list_length(S_threads)); fflush(stdout); */
|
||||||
|
@ -524,7 +524,7 @@ void S_fire_collector() {
|
||||||
for (ls = S_threads; ls != Snil; ls = Scdr(ls))
|
for (ls = S_threads; ls != Snil; ls = Scdr(ls))
|
||||||
SOMETHINGPENDING(THREADTC(Scar(ls))) = Strue;
|
SOMETHINGPENDING(THREADTC(Scar(ls))) = Strue;
|
||||||
}
|
}
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -664,7 +664,7 @@ ptr S_allocate_scheme_signal_queue() {
|
||||||
void S_register_scheme_signal(sig) iptr sig; {
|
void S_register_scheme_signal(sig) iptr sig; {
|
||||||
struct sigaction act;
|
struct sigaction act;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
if (!scheme_signals_registered) {
|
if (!scheme_signals_registered) {
|
||||||
ptr ls;
|
ptr ls;
|
||||||
scheme_signals_registered = 1;
|
scheme_signals_registered = 1;
|
||||||
|
@ -672,7 +672,7 @@ void S_register_scheme_signal(sig) iptr sig; {
|
||||||
SIGNALINTERRUPTQUEUE(THREADTC(Scar(ls))) = S_allocate_scheme_signal_queue();
|
SIGNALINTERRUPTQUEUE(THREADTC(Scar(ls))) = S_allocate_scheme_signal_queue();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
|
|
||||||
sigfillset(&act.sa_mask);
|
sigfillset(&act.sa_mask);
|
||||||
act.sa_flags = 0;
|
act.sa_flags = 0;
|
||||||
|
|
|
@ -37,7 +37,7 @@ Low-level Memory management strategy:
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
|
||||||
static void out_of_memory PROTO((void));
|
static void out_of_memory PROTO((void));
|
||||||
static void initialize_seginfo PROTO((seginfo *si, ISPC s, IGEN g));
|
static void initialize_seginfo PROTO((seginfo *si, ptr tc, ISPC s, IGEN g));
|
||||||
static seginfo *allocate_segments PROTO((uptr nreq));
|
static seginfo *allocate_segments PROTO((uptr nreq));
|
||||||
static void expand_segment_table PROTO((uptr base, uptr end, seginfo *si));
|
static void expand_segment_table PROTO((uptr base, uptr end, seginfo *si));
|
||||||
static void contract_segment_table PROTO((uptr base, uptr end));
|
static void contract_segment_table PROTO((uptr base, uptr end));
|
||||||
|
@ -225,7 +225,7 @@ static INT find_index(iptr n) {
|
||||||
return (index < PARTIAL_CHUNK_POOLS-1) ? index : PARTIAL_CHUNK_POOLS-1;
|
return (index < PARTIAL_CHUNK_POOLS-1) ? index : PARTIAL_CHUNK_POOLS-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void initialize_seginfo(seginfo *si, ISPC s, IGEN g) {
|
static void initialize_seginfo(seginfo *si, NO_THREADS_UNUSED ptr tc, ISPC s, IGEN g) {
|
||||||
INT d;
|
INT d;
|
||||||
|
|
||||||
si->space = s;
|
si->space = s;
|
||||||
|
@ -234,6 +234,10 @@ static void initialize_seginfo(seginfo *si, ISPC s, IGEN g) {
|
||||||
si->old_space = 0;
|
si->old_space = 0;
|
||||||
si->use_marks = 0;
|
si->use_marks = 0;
|
||||||
si->must_mark = 0;
|
si->must_mark = 0;
|
||||||
|
#ifdef PTHREADS
|
||||||
|
si->lock = 0;
|
||||||
|
si->creator_tc = tc;
|
||||||
|
#endif
|
||||||
si->list_bits = NULL;
|
si->list_bits = NULL;
|
||||||
si->min_dirty_byte = 0xff;
|
si->min_dirty_byte = 0xff;
|
||||||
for (d = 0; d < cards_per_segment; d += sizeof(ptr)) {
|
for (d = 0; d < cards_per_segment; d += sizeof(ptr)) {
|
||||||
|
@ -253,7 +257,7 @@ static void initialize_seginfo(seginfo *si, ISPC s, IGEN g) {
|
||||||
si->sweep_next = NULL;
|
si->sweep_next = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
iptr S_find_segments(s, g, n) ISPC s; IGEN g; iptr n; {
|
iptr S_find_segments(tc, s, g, n) ptr tc; ISPC s; IGEN g; iptr n; {
|
||||||
chunkinfo *chunk, *nextchunk;
|
chunkinfo *chunk, *nextchunk;
|
||||||
seginfo *si, *nextsi, **prevsi;
|
seginfo *si, *nextsi, **prevsi;
|
||||||
iptr nunused_segs, j;
|
iptr nunused_segs, j;
|
||||||
|
@ -277,7 +281,7 @@ iptr S_find_segments(s, g, n) ISPC s; IGEN g; iptr n; {
|
||||||
}
|
}
|
||||||
|
|
||||||
chunk->nused_segs += 1;
|
chunk->nused_segs += 1;
|
||||||
initialize_seginfo(si, s, g);
|
initialize_seginfo(si, tc, s, g);
|
||||||
si->next = S_G.occupied_segments[g][s];
|
si->next = S_G.occupied_segments[g][s];
|
||||||
S_G.occupied_segments[g][s] = si;
|
S_G.occupied_segments[g][s] = si;
|
||||||
S_G.number_of_empty_segments -= 1;
|
S_G.number_of_empty_segments -= 1;
|
||||||
|
@ -315,7 +319,7 @@ iptr S_find_segments(s, g, n) ISPC s; IGEN g; iptr n; {
|
||||||
nextsi->next = S_G.occupied_segments[g][s];
|
nextsi->next = S_G.occupied_segments[g][s];
|
||||||
S_G.occupied_segments[g][s] = si;
|
S_G.occupied_segments[g][s] = si;
|
||||||
for (j = n, nextsi = si; j > 0; j -= 1, nextsi = nextsi->next) {
|
for (j = n, nextsi = si; j > 0; j -= 1, nextsi = nextsi->next) {
|
||||||
initialize_seginfo(nextsi, s, g);
|
initialize_seginfo(nextsi, tc, s, g);
|
||||||
}
|
}
|
||||||
S_G.number_of_empty_segments -= n;
|
S_G.number_of_empty_segments -= n;
|
||||||
return si->number;
|
return si->number;
|
||||||
|
@ -335,7 +339,7 @@ iptr S_find_segments(s, g, n) ISPC s; IGEN g; iptr n; {
|
||||||
/* we couldn't find space, so ask for more */
|
/* we couldn't find space, so ask for more */
|
||||||
si = allocate_segments(n);
|
si = allocate_segments(n);
|
||||||
for (nextsi = si; n > 0; n -= 1, nextsi += 1) {
|
for (nextsi = si; n > 0; n -= 1, nextsi += 1) {
|
||||||
initialize_seginfo(nextsi, s, g);
|
initialize_seginfo(nextsi, tc, s, g);
|
||||||
/* add segment to appropriate list of occupied segments */
|
/* add segment to appropriate list of occupied segments */
|
||||||
nextsi->next = S_G.occupied_segments[g][s];
|
nextsi->next = S_G.occupied_segments[g][s];
|
||||||
S_G.occupied_segments[g][s] = nextsi;
|
S_G.occupied_segments[g][s] = nextsi;
|
||||||
|
|
|
@ -38,14 +38,14 @@
|
||||||
#define SEGMENT_T3_IDX(i) ((i)>>(segment_t2_bits+segment_t1_bits))
|
#define SEGMENT_T3_IDX(i) ((i)>>(segment_t2_bits+segment_t1_bits))
|
||||||
|
|
||||||
FORCEINLINE seginfo *SegInfo(uptr i) {
|
FORCEINLINE seginfo *SegInfo(uptr i) {
|
||||||
return S_segment_info[SEGMENT_T3_IDX(i)]->t2[SEGMENT_T2_IDX(i)]->t1[SEGMENT_T1_IDX(i)];
|
return AS_IMPLICIT_ATOMIC(seginfo *, S_segment_info[SEGMENT_T3_IDX(i)]->t2[SEGMENT_T2_IDX(i)]->t1[SEGMENT_T1_IDX(i)]);
|
||||||
}
|
}
|
||||||
|
|
||||||
FORCEINLINE seginfo *MaybeSegInfo(uptr i) {
|
FORCEINLINE seginfo *MaybeSegInfo(uptr i) {
|
||||||
t2table *t2i; t1table *t1i;
|
t2table *t2i; t1table *t1i;
|
||||||
if ((t2i = S_segment_info[SEGMENT_T3_IDX(i)]) == NULL) return NULL;
|
if ((t2i = AS_IMPLICIT_ATOMIC(t2table *, S_segment_info[SEGMENT_T3_IDX(i)])) == NULL) return NULL;
|
||||||
if ((t1i = t2i->t2[SEGMENT_T2_IDX(i)]) == NULL) return NULL;
|
if ((t1i = AS_IMPLICIT_ATOMIC(t1table *, t2i->t2[SEGMENT_T2_IDX(i)])) == NULL) return NULL;
|
||||||
return t1i->t1[SEGMENT_T1_IDX(i)];
|
return AS_IMPLICIT_ATOMIC(seginfo *, t1i->t1[SEGMENT_T1_IDX(i)]);
|
||||||
}
|
}
|
||||||
|
|
||||||
#else /* segment_t3_bits */
|
#else /* segment_t3_bits */
|
||||||
|
|
|
@ -45,3 +45,4 @@
|
||||||
|
|
||||||
#include "segment.h"
|
#include "segment.h"
|
||||||
|
|
||||||
|
#include "atomic.h"
|
||||||
|
|
|
@ -35,6 +35,14 @@ void S_thread_init() {
|
||||||
s_thread_cond_init(&S_collect_cond);
|
s_thread_cond_init(&S_collect_cond);
|
||||||
s_thread_cond_init(&S_collect_thread0_cond);
|
s_thread_cond_init(&S_collect_thread0_cond);
|
||||||
S_tc_mutex_depth = 0;
|
S_tc_mutex_depth = 0;
|
||||||
|
s_thread_mutex_init(&S_gc_tc_mutex.pmutex);
|
||||||
|
S_tc_mutex.owner = 0;
|
||||||
|
S_tc_mutex.count = 0;
|
||||||
|
S_use_gc_tc_mutex = 0;
|
||||||
|
|
||||||
|
# ifdef IMPLICIT_ATOMIC_AS_EXPLICIT
|
||||||
|
s_thread_mutex_init(&S_implicit_mutex);
|
||||||
|
# endif
|
||||||
#endif /* PTHREADS */
|
#endif /* PTHREADS */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -42,31 +50,37 @@ void S_thread_init() {
|
||||||
/* this needs to be reworked. currently, S_create_thread_object is
|
/* this needs to be reworked. currently, S_create_thread_object is
|
||||||
called from main to create the base thread, from fork_thread when
|
called from main to create the base thread, from fork_thread when
|
||||||
there is already an active current thread, and from S_activate_thread
|
there is already an active current thread, and from S_activate_thread
|
||||||
when there is no current thread. we have to avoid thread-local
|
when there is no current thread. scheme.c does part of the initialization of the
|
||||||
allocation in at least the latter case, so we call vector_in and
|
|
||||||
cons_in and arrange for S_thread to use find_room rather than
|
|
||||||
thread_find_room. scheme.c does part of the initialization of the
|
|
||||||
base thread (e.g., parameters, current input/output ports) in one
|
base thread (e.g., parameters, current input/output ports) in one
|
||||||
or more places. */
|
or more places. */
|
||||||
ptr S_create_thread_object(who, p_tc) const char *who; ptr p_tc; {
|
ptr S_create_thread_object(who, p_tc) const char *who; ptr p_tc; {
|
||||||
ptr thread, tc;
|
ptr thread, tc;
|
||||||
INT i;
|
INT i;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
if (S_threads == Snil) {
|
if (S_threads == Snil) {
|
||||||
tc = TO_PTR(S_G.thread_context);
|
tc = TO_PTR(S_G.thread_context);
|
||||||
} else { /* clone parent */
|
} else { /* clone parent */
|
||||||
ptr p_v = PARAMETERS(p_tc);
|
ptr p_v = PARAMETERS(p_tc);
|
||||||
iptr i, n = Svector_length(p_v);
|
iptr i, n = Svector_length(p_v);
|
||||||
/* use S_vector_in to avoid thread-local allocation */
|
ptr v;
|
||||||
ptr v = S_vector_in(space_new, 0, n);
|
|
||||||
|
|
||||||
tc = TO_PTR(malloc(size_tc));
|
tc = TO_PTR(malloc(size_tc));
|
||||||
|
|
||||||
if (tc == (ptr)0)
|
if (tc == (ptr)0)
|
||||||
S_error(who, "unable to malloc thread data structure");
|
S_error(who, "unable to malloc thread data structure");
|
||||||
memcpy(TO_VOIDP(tc), TO_VOIDP(p_tc), size_tc);
|
memcpy(TO_VOIDP(tc), TO_VOIDP(p_tc), size_tc);
|
||||||
|
|
||||||
|
for (i = 0; i < num_thread_local_allocation_segments; i++) {
|
||||||
|
BASELOC(tc, i) = (ptr)0;
|
||||||
|
NEXTLOC(tc, i) = (ptr)0;
|
||||||
|
BYTESLEFT(tc, i) = 0;
|
||||||
|
SWEEPLOC(tc, i) = (ptr)0;
|
||||||
|
}
|
||||||
|
|
||||||
|
v = S_vector_in(tc, space_new, 0, n);
|
||||||
|
|
||||||
for (i = 0; i < n; i += 1)
|
for (i = 0; i < n; i += 1)
|
||||||
INITVECTIT(v, i) = Svector_ref(p_v, i);
|
INITVECTIT(v, i) = Svector_ref(p_v, i);
|
||||||
|
|
||||||
|
@ -110,10 +124,9 @@ ptr S_create_thread_object(who, p_tc) const char *who; ptr p_tc; {
|
||||||
|
|
||||||
DSTBV(tc) = SRCBV(tc) = Sfalse;
|
DSTBV(tc) = SRCBV(tc) = Sfalse;
|
||||||
|
|
||||||
/* S_thread had better not do thread-local allocation */
|
|
||||||
thread = S_thread(tc);
|
thread = S_thread(tc);
|
||||||
|
|
||||||
S_threads = S_cons_in_global(space_new, 0, thread, S_threads);
|
S_threads = S_cons_in(tc, space_new, 0, thread, S_threads);
|
||||||
S_nthreads += 1;
|
S_nthreads += 1;
|
||||||
SETSYMVAL(S_G.active_threads_id,
|
SETSYMVAL(S_G.active_threads_id,
|
||||||
FIX(UNFIX(SYMVAL(S_G.active_threads_id)) + 1));
|
FIX(UNFIX(SYMVAL(S_G.active_threads_id)) + 1));
|
||||||
|
@ -128,14 +141,10 @@ ptr S_create_thread_object(who, p_tc) const char *who; ptr p_tc; {
|
||||||
|
|
||||||
LZ4OUTBUFFER(tc) = 0;
|
LZ4OUTBUFFER(tc) = 0;
|
||||||
|
|
||||||
for (i = 0; i < num_thread_local_allocation_segments; i++) {
|
SWEEPER(tc) = -1;
|
||||||
BASELOC(tc, i) = (ptr)0;
|
LOCKSTATUS(tc) = Strue;
|
||||||
NEXTLOC(tc, i) = (ptr)0;
|
|
||||||
BYTESLEFT(tc, i) = 0;
|
|
||||||
SWEEPLOC(tc, i) = (ptr)0;
|
|
||||||
}
|
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
|
|
||||||
return thread;
|
return thread;
|
||||||
}
|
}
|
||||||
|
@ -202,7 +211,7 @@ static IBOOL destroy_thread(tc) ptr tc; {
|
||||||
ptr *ls; IBOOL status;
|
ptr *ls; IBOOL status;
|
||||||
|
|
||||||
status = 0;
|
status = 0;
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
ls = &S_threads;
|
ls = &S_threads;
|
||||||
while (*ls != Snil) {
|
while (*ls != Snil) {
|
||||||
ptr thread = Scar(*ls);
|
ptr thread = Scar(*ls);
|
||||||
|
@ -258,7 +267,7 @@ static IBOOL destroy_thread(tc) ptr tc; {
|
||||||
}
|
}
|
||||||
ls = &Scdr(*ls);
|
ls = &Scdr(*ls);
|
||||||
}
|
}
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -270,7 +279,7 @@ ptr S_fork_thread(thunk) ptr thunk; {
|
||||||
thread = S_create_thread_object("fork-thread", get_thread_context());
|
thread = S_create_thread_object("fork-thread", get_thread_context());
|
||||||
CP(THREADTC(thread)) = thunk;
|
CP(THREADTC(thread)) = thunk;
|
||||||
|
|
||||||
if ((status = s_thread_create(start_thread, (void *)THREADTC(thread))) != 0) {
|
if ((status = s_thread_create(start_thread, TO_VOIDP(THREADTC(thread)))) != 0) {
|
||||||
destroy_thread((ptr)THREADTC(thread));
|
destroy_thread((ptr)THREADTC(thread));
|
||||||
S_error1("fork-thread", "failed: ~a", S_strerror(status));
|
S_error1("fork-thread", "failed: ~a", S_strerror(status));
|
||||||
}
|
}
|
||||||
|
@ -447,6 +456,7 @@ IBOOL S_condition_wait(c, m, t) s_thread_cond_t *c; scheme_mutex_t *m; ptr t; {
|
||||||
long nsec;
|
long nsec;
|
||||||
INT status;
|
INT status;
|
||||||
IBOOL is_collect;
|
IBOOL is_collect;
|
||||||
|
iptr collect_index = 0;
|
||||||
|
|
||||||
if ((count = m->count) == 0 || !s_thread_equal(m->owner, self))
|
if ((count = m->count) == 0 || !s_thread_equal(m->owner, self))
|
||||||
S_error1("condition-wait", "thread does not own mutex ~s", m);
|
S_error1("condition-wait", "thread does not own mutex ~s", m);
|
||||||
|
@ -467,6 +477,17 @@ IBOOL S_condition_wait(c, m, t) s_thread_cond_t *c; scheme_mutex_t *m; ptr t; {
|
||||||
|
|
||||||
is_collect = (c == &S_collect_cond || c == &S_collect_thread0_cond);
|
is_collect = (c == &S_collect_cond || c == &S_collect_thread0_cond);
|
||||||
|
|
||||||
|
if (is_collect) {
|
||||||
|
/* Remember the index where we record this tc, because a thread
|
||||||
|
might temporarily wait for collection, but then get woken
|
||||||
|
up (e.g., to make the main thread drive the collection) before
|
||||||
|
a collection actually happens. In that case, we may track fewer
|
||||||
|
tcs than possible, but it should be close enough on average. */
|
||||||
|
collect_index = S_collect_waiting_threads++;
|
||||||
|
if (collect_index < maximum_parallel_collect_threads)
|
||||||
|
S_collect_waiting_tcs[collect_index] = tc;
|
||||||
|
}
|
||||||
|
|
||||||
if (is_collect || DISABLECOUNT(tc) == 0) {
|
if (is_collect || DISABLECOUNT(tc) == 0) {
|
||||||
deactivate_thread_signal_collect(tc, !is_collect)
|
deactivate_thread_signal_collect(tc, !is_collect)
|
||||||
}
|
}
|
||||||
|
@ -481,6 +502,12 @@ IBOOL S_condition_wait(c, m, t) s_thread_cond_t *c; scheme_mutex_t *m; ptr t; {
|
||||||
reactivate_thread(tc)
|
reactivate_thread(tc)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (is_collect) {
|
||||||
|
--S_collect_waiting_threads;
|
||||||
|
if (collect_index < maximum_parallel_collect_threads)
|
||||||
|
S_collect_waiting_tcs[collect_index] = (ptr)0;
|
||||||
|
}
|
||||||
|
|
||||||
if (status == 0) {
|
if (status == 0) {
|
||||||
return 1;
|
return 1;
|
||||||
} else if (status == ETIMEDOUT) {
|
} else if (status == ETIMEDOUT) {
|
||||||
|
|
|
@ -76,44 +76,35 @@ typedef int IFASLCODE; /* fasl type codes */
|
||||||
|
|
||||||
#define ALREADY_PTR(p) (p)
|
#define ALREADY_PTR(p) (p)
|
||||||
|
|
||||||
/* inline allocation --- mutex required */
|
#define SG_AT_TO_INDEX(s, g) (((g) * (1 + max_real_space)) + (s))
|
||||||
/* find room allocates n bytes in space s and generation g into
|
|
||||||
* destination x, tagged with ty, punting to find_more_room if
|
|
||||||
* no space is left in the current segment. n is assumed to be
|
|
||||||
* an integral multiple of the object alignment. */
|
|
||||||
#define find_room_T(s, g, t, n, T, x) { \
|
|
||||||
ptr X = S_G.next_loc[g][s];\
|
|
||||||
S_G.next_loc[g][s] = (ptr)((uptr)X + (n));\
|
|
||||||
if ((S_G.bytes_left[g][s] -= (n)) < 0) X = S_find_more_room(s, g, n, X);\
|
|
||||||
(x) = T(TYPE(X, t)); \
|
|
||||||
}
|
|
||||||
|
|
||||||
#define find_room(s, g, t, n, x) find_room_T(s, g, t, n, ALREADY_PTR, x)
|
|
||||||
#define find_room_voidp(s, g, n, x) find_room_T(s, g, typemod, n, TO_VOIDP, x)
|
|
||||||
|
|
||||||
#define SG_AT_TO_INDEX(s, g) ((g * (1 + max_real_space)) + s)
|
|
||||||
|
|
||||||
#define BASELOC_AT(tc, s, g) BASELOC(tc, SG_AT_TO_INDEX(s, g))
|
#define BASELOC_AT(tc, s, g) BASELOC(tc, SG_AT_TO_INDEX(s, g))
|
||||||
#define NEXTLOC_AT(tc, s, g) NEXTLOC(tc, SG_AT_TO_INDEX(s, g))
|
#define NEXTLOC_AT(tc, s, g) NEXTLOC(tc, SG_AT_TO_INDEX(s, g))
|
||||||
#define BYTESLEFT_AT(tc, s, g) BYTESLEFT(tc, SG_AT_TO_INDEX(s, g))
|
#define BYTESLEFT_AT(tc, s, g) BYTESLEFT(tc, SG_AT_TO_INDEX(s, g))
|
||||||
#define SWEEPLOC_AT(tc, s, g) SWEEPLOC(tc, SG_AT_TO_INDEX(s, g))
|
#define SWEEPLOC_AT(tc, s, g) SWEEPLOC(tc, SG_AT_TO_INDEX(s, g))
|
||||||
|
#define SWEEPNEXT_AT(tc, s, g) SWEEPNEXT(tc, SG_AT_TO_INDEX(s, g))
|
||||||
|
|
||||||
/* inline allocation --- no mutex required */
|
/* inline allocation --- no mutex required */
|
||||||
/* Like `find_room`, but allocating into thread-local space. */
|
/* find room allocates n bytes in space s and generation g into
|
||||||
#define thread_find_room_g_T(tc, s, g, t, n, T, x) { \
|
* destination x, tagged with ty, punting to find_more_room if
|
||||||
ptr X = NEXTLOC_AT(tc, s, g); \
|
* no space is left in the current segment. n is assumed to be
|
||||||
NEXTLOC_AT(tc, s, g) = (ptr)((uptr)X + (n)); \
|
* an integral multiple of the object alignment. */
|
||||||
if ((BYTESLEFT_AT(tc, s, g) -= (n)) < 0) X = S_find_more_thread_room(tc, s, g, n, X); \
|
#define find_room_T(tc, s, g, t, n, T, x) do { \
|
||||||
(x) = T(TYPE(X, t)); \
|
iptr L_IDX = SG_AT_TO_INDEX(s, g); \
|
||||||
}
|
iptr N_BYTES = n; \
|
||||||
|
ptr X = NEXTLOC(tc, L_IDX); \
|
||||||
|
NEXTLOC(tc, L_IDX) = (ptr)((uptr)X + N_BYTES); \
|
||||||
|
if ((BYTESLEFT(tc, L_IDX) -= (n)) < 0) X = S_find_more_thread_room(tc, s, g, N_BYTES, X); \
|
||||||
|
(x) = T(TYPE(X, t)); \
|
||||||
|
} while(0)
|
||||||
|
|
||||||
#define thread_find_room_g(tc, s, g, t, n, x) thread_find_room_g_T(tc, s, g, t, n, ALREADY_PTR, x)
|
#define find_room(tc, s, g, t, n, x) find_room_T(tc, s, g, t, n, ALREADY_PTR, x)
|
||||||
#define thread_find_room_g_voidp(tc, s, g, n, x) thread_find_room_g_T(tc, s, g, typemod, n, TO_VOIDP, x)
|
#define find_room_voidp(tc, s, g, n, x) find_room_T(tc, s, g, typemod, n, TO_VOIDP, x)
|
||||||
|
|
||||||
/* thread-local inline allocation --- no mutex required */
|
/* new-space inline allocation --- no mutex required */
|
||||||
/* Like `thread_find_room_g`, but always `space_new` and generation 0,
|
/* Like `find_room`, but always `space_new` and generation 0,
|
||||||
so using the same bump pointer as most new allocation */
|
so using the same bump pointer as most new allocation */
|
||||||
#define thread_find_room_T(tc, t, n, T, x) { \
|
#define newspace_find_room_T(tc, t, n, T, x) do { \
|
||||||
ptr _tc = tc;\
|
ptr _tc = tc;\
|
||||||
uptr _ap = (uptr)AP(_tc);\
|
uptr _ap = (uptr)AP(_tc);\
|
||||||
if ((uptr)n > ((uptr)EAP(_tc) - _ap)) {\
|
if ((uptr)n > ((uptr)EAP(_tc) - _ap)) {\
|
||||||
|
@ -123,10 +114,10 @@ typedef int IFASLCODE; /* fasl type codes */
|
||||||
(x) = T(TYPE(_ap,t)); \
|
(x) = T(TYPE(_ap,t)); \
|
||||||
AP(_tc) = (ptr)(_ap + n);\
|
AP(_tc) = (ptr)(_ap + n);\
|
||||||
}\
|
}\
|
||||||
}
|
} while(0)
|
||||||
|
|
||||||
#define thread_find_room(tc, t, n, x) thread_find_room_T(tc, t, n, ALREADY_PTR, x)
|
#define newspace_find_room(tc, t, n, x) newspace_find_room_T(tc, t, n, ALREADY_PTR, x)
|
||||||
#define thread_find_room_voidp(tc, n, x) thread_find_room_T(tc, typemod, n, TO_VOIDP, x)
|
#define newspace_find_room_voidp(tc, n, x) newspace_find_room_T(tc, typemod, n, TO_VOIDP, x)
|
||||||
|
|
||||||
#ifndef NO_PRESERVE_FLONUM_EQ
|
#ifndef NO_PRESERVE_FLONUM_EQ
|
||||||
# define PRESERVE_FLONUM_EQ
|
# define PRESERVE_FLONUM_EQ
|
||||||
|
@ -166,6 +157,10 @@ typedef struct _seginfo {
|
||||||
octet min_dirty_byte; /* dirty byte for full segment, effectively min(dirty_bytes) */
|
octet min_dirty_byte; /* dirty byte for full segment, effectively min(dirty_bytes) */
|
||||||
octet *list_bits; /* for `$list-bits-ref` and `$list-bits-set!` */
|
octet *list_bits; /* for `$list-bits-ref` and `$list-bits-set!` */
|
||||||
uptr number; /* the segment number */
|
uptr number; /* the segment number */
|
||||||
|
#ifdef PTHREADS
|
||||||
|
ptr lock; /* for parallel GC */
|
||||||
|
ptr creator_tc; /* for parallelism heuristic; might not match an active thread */
|
||||||
|
#endif
|
||||||
struct _chunkinfo *chunk; /* the chunk this segment belongs to */
|
struct _chunkinfo *chunk; /* the chunk this segment belongs to */
|
||||||
struct _seginfo *next; /* pointer to the next seginfo (used in occupied_segments and unused_segs) */
|
struct _seginfo *next; /* pointer to the next seginfo (used in occupied_segments and unused_segs) */
|
||||||
struct _seginfo *sweep_next; /* next in list of segments allocated during GC => need to sweep */
|
struct _seginfo *sweep_next; /* next in list of segments allocated during GC => need to sweep */
|
||||||
|
@ -375,7 +370,7 @@ typedef struct {
|
||||||
#define deactivate_thread_signal_collect(tc, check_collect) { \
|
#define deactivate_thread_signal_collect(tc, check_collect) { \
|
||||||
if (ACTIVE(tc)) {\
|
if (ACTIVE(tc)) {\
|
||||||
ptr code;\
|
ptr code;\
|
||||||
tc_mutex_acquire()\
|
tc_mutex_acquire();\
|
||||||
code = CP(tc);\
|
code = CP(tc);\
|
||||||
if (Sprocedurep(code)) CP(tc) = code = CLOSCODE(code);\
|
if (Sprocedurep(code)) CP(tc) = code = CLOSCODE(code);\
|
||||||
Slock_object(code);\
|
Slock_object(code);\
|
||||||
|
@ -394,7 +389,7 @@ typedef struct {
|
||||||
#define deactivate_thread(tc) deactivate_thread_signal_collect(tc, 1)
|
#define deactivate_thread(tc) deactivate_thread_signal_collect(tc, 1)
|
||||||
#define reactivate_thread(tc) {\
|
#define reactivate_thread(tc) {\
|
||||||
if (!ACTIVE(tc)) {\
|
if (!ACTIVE(tc)) {\
|
||||||
tc_mutex_acquire()\
|
tc_mutex_acquire(); \
|
||||||
SETSYMVAL(S_G.active_threads_id,\
|
SETSYMVAL(S_G.active_threads_id,\
|
||||||
FIX(UNFIX(SYMVAL(S_G.active_threads_id)) + 1));\
|
FIX(UNFIX(SYMVAL(S_G.active_threads_id)) + 1));\
|
||||||
Sunlock_object(CP(tc));\
|
Sunlock_object(CP(tc));\
|
||||||
|
@ -406,20 +401,55 @@ typedef struct {
|
||||||
C code on tc_mutex. it is used by do_error to release tc_mutex
|
C code on tc_mutex. it is used by do_error to release tc_mutex
|
||||||
the appropriate number of times.
|
the appropriate number of times.
|
||||||
*/
|
*/
|
||||||
#define tc_mutex_acquire() {\
|
#define tc_mutex_acquire() do { \
|
||||||
S_mutex_acquire(&S_tc_mutex);\
|
S_mutex_acquire(&S_tc_mutex); \
|
||||||
S_tc_mutex_depth += 1;\
|
S_tc_mutex_depth += 1; \
|
||||||
}
|
} while (0);
|
||||||
#define tc_mutex_release() {\
|
#define tc_mutex_release() do { \
|
||||||
S_tc_mutex_depth -= 1;\
|
S_tc_mutex_depth -= 1; \
|
||||||
S_mutex_release(&S_tc_mutex);\
|
S_mutex_release(&S_tc_mutex); \
|
||||||
}
|
} while (0);
|
||||||
|
#define gc_tc_mutex_acquire() S_mutex_acquire(&S_gc_tc_mutex)
|
||||||
|
#define gc_tc_mutex_release() S_mutex_release(&S_gc_tc_mutex)
|
||||||
|
|
||||||
|
#ifdef IMPLICIT_ATOMIC_AS_EXPLICIT
|
||||||
|
# define AS_IMPLICIT_ATOMIC(T, X) ({ \
|
||||||
|
T RESLT; \
|
||||||
|
s_thread_mutex_lock(&S_implicit_mutex); \
|
||||||
|
RESLT = X; \
|
||||||
|
s_thread_mutex_unlock(&S_implicit_mutex); \
|
||||||
|
RESLT; \
|
||||||
|
})
|
||||||
|
# define BEGIN_IMPLICIT_ATOMIC() s_thread_mutex_lock(&S_implicit_mutex)
|
||||||
|
# define END_IMPLICIT_ATOMIC() s_thread_mutex_unlock(&S_implicit_mutex)
|
||||||
|
#else
|
||||||
|
# define AS_IMPLICIT_ATOMIC(T, X) X
|
||||||
|
# define BEGIN_IMPLICIT_ATOMIC() do { } while (0)
|
||||||
|
# define END_IMPLICIT_ATOMIC() do { } while (0)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define S_cas_load_acquire_voidp(a, old, new) CAS_LOAD_ACQUIRE(a, old, new)
|
||||||
|
#define S_cas_store_release_voidp(a, old, new) CAS_STORE_RELEASE(a, old, new)
|
||||||
|
#define S_cas_load_acquire_ptr(a, old, new) CAS_LOAD_ACQUIRE(a, TO_VOIDP(old), TO_VOIDP(new))
|
||||||
|
#define S_cas_store_release_ptr(a, old, new) CAS_STORE_RELEASE(a, TO_VOIDP(old), TO_VOIDP(new))
|
||||||
|
#define S_store_release() RELEASE_FENCE()
|
||||||
|
|
||||||
#else
|
#else
|
||||||
#define get_thread_context() TO_PTR(S_G.thread_context)
|
#define get_thread_context() TO_PTR(S_G.thread_context)
|
||||||
#define deactivate_thread(tc) {}
|
#define deactivate_thread(tc) {}
|
||||||
#define reactivate_thread(tc) {}
|
#define reactivate_thread(tc) {}
|
||||||
#define tc_mutex_acquire() {}
|
#define tc_mutex_acquire() do {} while (0)
|
||||||
#define tc_mutex_release() {}
|
#define tc_mutex_release() do {} while (0)
|
||||||
|
#define gc_tc_mutex_acquire() do {} while (0)
|
||||||
|
#define gc_tc_mutex_release() do {} while (0)
|
||||||
|
#define S_cas_load_acquire_voidp(a, old, new) (*(a) = new, 1)
|
||||||
|
#define S_cas_store_release_voidp(a, old, new) (*(a) = new, 1)
|
||||||
|
#define S_cas_load_acquire_ptr(a, old, new) (*(a) = new, 1)
|
||||||
|
#define S_cas_store_release_ptr(a, old, new) (*(a) = new, 1)
|
||||||
|
#define S_store_release() do { } while (0)
|
||||||
|
#define BEGIN_IMPLICIT_ATOMIC() do { } while (0)
|
||||||
|
#define END_IMPLICIT_ATOMIC() do { } while (0)
|
||||||
|
#define AS_IMPLICIT_ATOMIC(T, X) X
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __MINGW32__
|
#ifdef __MINGW32__
|
||||||
|
|
|
@ -466,21 +466,14 @@ typedef char tputsputcchar;
|
||||||
# define WRITE write
|
# define WRITE write
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef PTHREADS
|
||||||
|
# define NO_THREADS_UNUSED /* empty */
|
||||||
|
#else
|
||||||
|
# define NO_THREADS_UNUSED UNUSED
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Use "/dev/urandom" everywhere except Windows */
|
/* Use "/dev/urandom" everywhere except Windows */
|
||||||
#define USE_DEV_URANDOM_UUID
|
#define USE_DEV_URANDOM_UUID
|
||||||
|
|
||||||
#if defined(__arm64__)
|
/* For debugging: */
|
||||||
# define STORE_FENCE() __asm__ __volatile__ ("dmb ishst" : : : "memory")
|
/* #define IMPLICIT_ATOMIC_AS_EXPLICIT */
|
||||||
#elif defined(__arm__)
|
|
||||||
# if arm_isa_version == 7
|
|
||||||
# define STORE_FENCE() __asm__ __volatile__ ("dmb ishst" : : : "memory")
|
|
||||||
# else
|
|
||||||
# define STORE_FENCE() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r" (0) : "memory")
|
|
||||||
# endif
|
|
||||||
#elif defined(__powerpc64__)
|
|
||||||
# define STORE_FENCE() __asm__ __volatile__ ("lwsync" : : : "memory")
|
|
||||||
#elif defined(__powerpc__) || defined(__POWERPC__)
|
|
||||||
# define STORE_FENCE() __asm__ __volatile__ ("sync" : : : "memory")
|
|
||||||
#else
|
|
||||||
# define STORE_FENCE() /* empty */
|
|
||||||
#endif
|
|
||||||
|
|
|
@ -243,7 +243,7 @@ ptr S_vfasl(ptr bv, void *stream, iptr offset, iptr input_len)
|
||||||
|
|
||||||
if (bv) {
|
if (bv) {
|
||||||
void *base_addr = &BVIT(bv, sizeof(vfasl_header) + offset);
|
void *base_addr = &BVIT(bv, sizeof(vfasl_header) + offset);
|
||||||
thread_find_room(tc, typemod, header.data_size, data);
|
newspace_find_room(tc, typemod, header.data_size, data);
|
||||||
memcpy(TO_VOIDP(data), base_addr, header.data_size);
|
memcpy(TO_VOIDP(data), base_addr, header.data_size);
|
||||||
table = ptr_add(TO_PTR(base_addr), header.data_size);
|
table = ptr_add(TO_PTR(base_addr), header.data_size);
|
||||||
} else {
|
} else {
|
||||||
|
@ -252,9 +252,9 @@ ptr S_vfasl(ptr bv, void *stream, iptr offset, iptr input_len)
|
||||||
uptr sz = vspace_offsets[s+1] - vspace_offsets[s];
|
uptr sz = vspace_offsets[s+1] - vspace_offsets[s];
|
||||||
if (sz > 0) {
|
if (sz > 0) {
|
||||||
if ((s == vspace_reloc) && !S_G.retain_static_relocation) {
|
if ((s == vspace_reloc) && !S_G.retain_static_relocation) {
|
||||||
thread_find_room(tc, typemod, sz, vspaces[s])
|
newspace_find_room(tc, typemod, sz, vspaces[s]);
|
||||||
} else {
|
} else {
|
||||||
find_room(vspace_spaces[s], static_generation, typemod, sz, vspaces[s])
|
find_room(tc, vspace_spaces[s], static_generation, typemod, sz, vspaces[s]);
|
||||||
}
|
}
|
||||||
if (S_fasl_stream_read(stream, TO_VOIDP(vspaces[s]), sz) < 0)
|
if (S_fasl_stream_read(stream, TO_VOIDP(vspaces[s]), sz) < 0)
|
||||||
S_error("fasl-read", "input truncated");
|
S_error("fasl-read", "input truncated");
|
||||||
|
@ -268,12 +268,12 @@ ptr S_vfasl(ptr bv, void *stream, iptr offset, iptr input_len)
|
||||||
data = (ptr)0; /* => initialize below */
|
data = (ptr)0; /* => initialize below */
|
||||||
to_static = 1;
|
to_static = 1;
|
||||||
} else {
|
} else {
|
||||||
thread_find_room(tc, typemod, header.data_size, data)
|
newspace_find_room(tc, typemod, header.data_size, data);
|
||||||
if (S_fasl_stream_read(stream, TO_VOIDP(data), header.data_size) < 0)
|
if (S_fasl_stream_read(stream, TO_VOIDP(data), header.data_size) < 0)
|
||||||
S_error("fasl-read", "input truncated");
|
S_error("fasl-read", "input truncated");
|
||||||
}
|
}
|
||||||
|
|
||||||
thread_find_room(tc, typemod, ptr_align(header.table_size), table)
|
newspace_find_room(tc, typemod, ptr_align(header.table_size), table);
|
||||||
if (S_fasl_stream_read(stream, TO_VOIDP(table), header.table_size) < 0)
|
if (S_fasl_stream_read(stream, TO_VOIDP(table), header.table_size) < 0)
|
||||||
S_error("fasl-read", "input truncated");
|
S_error("fasl-read", "input truncated");
|
||||||
}
|
}
|
||||||
|
@ -390,7 +390,7 @@ ptr S_vfasl(ptr bv, void *stream, iptr offset, iptr input_len)
|
||||||
ptr end_syms = TYPE(VSPACE_END(vspace_symbol), type_symbol);
|
ptr end_syms = TYPE(VSPACE_END(vspace_symbol), type_symbol);
|
||||||
|
|
||||||
if (sym != end_syms) {
|
if (sym != end_syms) {
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
while (sym < end_syms) {
|
while (sym < end_syms) {
|
||||||
ptr isym;
|
ptr isym;
|
||||||
|
@ -432,7 +432,7 @@ ptr S_vfasl(ptr bv, void *stream, iptr offset, iptr input_len)
|
||||||
in_seg_off += size_symbol;
|
in_seg_off += size_symbol;
|
||||||
}
|
}
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -464,7 +464,7 @@ ptr S_vfasl(ptr bv, void *stream, iptr offset, iptr input_len)
|
||||||
RECORDINSTTYPE(rtd) = S_G.base_rtd;
|
RECORDINSTTYPE(rtd) = S_G.base_rtd;
|
||||||
RECORDDESCUID(rtd) = S_G.base_rtd;
|
RECORDDESCUID(rtd) = S_G.base_rtd;
|
||||||
|
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
while (1) {
|
while (1) {
|
||||||
ptr new_rtd, meta_rtd, parent_rtd;
|
ptr new_rtd, meta_rtd, parent_rtd;
|
||||||
|
@ -497,7 +497,7 @@ ptr S_vfasl(ptr bv, void *stream, iptr offset, iptr input_len)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Replace rtd references to interned references */
|
/* Replace rtd references to interned references */
|
||||||
|
@ -1262,7 +1262,7 @@ static iptr vfasl_symbol_to_index(vfasl_info *vfi, ptr pp)
|
||||||
|
|
||||||
static void fasl_init_entry_tables()
|
static void fasl_init_entry_tables()
|
||||||
{
|
{
|
||||||
tc_mutex_acquire()
|
tc_mutex_acquire();
|
||||||
|
|
||||||
if (!S_G.c_entries) {
|
if (!S_G.c_entries) {
|
||||||
iptr i;
|
iptr i;
|
||||||
|
@ -1286,7 +1286,7 @@ static void fasl_init_entry_tables()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
tc_mutex_release()
|
tc_mutex_release();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void vfasl_check_install_library_entry(vfasl_info *vfi, ptr name)
|
static void vfasl_check_install_library_entry(vfasl_info *vfi, ptr name)
|
||||||
|
@ -1427,7 +1427,7 @@ static ptr vfasl_hash_table_ref(vfasl_hash_table *ht, ptr key) {
|
||||||
static void *vfasl_malloc(uptr sz) {
|
static void *vfasl_malloc(uptr sz) {
|
||||||
ptr tc = get_thread_context();
|
ptr tc = get_thread_context();
|
||||||
void *p;
|
void *p;
|
||||||
thread_find_room_voidp(tc, ptr_align(sz), p)
|
newspace_find_room_voidp(tc, ptr_align(sz), p);
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -270,8 +270,8 @@ partialx:
|
||||||
$(MAKE) allxhelp o=3 eval=interpret cp0=t rmg=2
|
$(MAKE) allxhelp o=3 eval=interpret cp0=t rmg=2
|
||||||
|
|
||||||
allx: prettyclean
|
allx: prettyclean
|
||||||
$(MAKE) allxhelp o=0
|
$(MAKE) allxhelp o=0 eoc=f
|
||||||
$(MAKE) allxhelp o=3
|
$(MAKE) allxhelp o=3 eoc=f
|
||||||
$(MAKE) allxhelp o=0 cp0=t cl=3
|
$(MAKE) allxhelp o=0 cp0=t cl=3
|
||||||
$(MAKE) allxhelp o=3 cp0=t cl=3
|
$(MAKE) allxhelp o=3 cp0=t cl=3
|
||||||
$(MAKE) allxhelp o=0 spi=t rmg=2 p=t
|
$(MAKE) allxhelp o=0 spi=t rmg=2 p=t
|
||||||
|
|
|
@ -802,7 +802,7 @@
|
||||||
($oops 'collect "cannot collect when multiple threads are active"))
|
($oops 'collect "cannot collect when multiple threads are active"))
|
||||||
(let-values ([(trip g gmintarget gmaxtarget count-roots) (p gc-trip)])
|
(let-values ([(trip g gmintarget gmaxtarget count-roots) (p gc-trip)])
|
||||||
(set! gc-trip trip)
|
(set! gc-trip trip)
|
||||||
(let ([cpu (current-time 'time-thread)] [real (current-time 'time-monotonic)])
|
(let ([cpu (current-time 'time-process)] [real (current-time 'time-monotonic)])
|
||||||
(set! gc-bytes (+ gc-bytes (bytes-allocated)))
|
(set! gc-bytes (+ gc-bytes (bytes-allocated)))
|
||||||
(when (collect-notify)
|
(when (collect-notify)
|
||||||
(fprintf (console-output-port)
|
(fprintf (console-output-port)
|
||||||
|
@ -819,7 +819,7 @@
|
||||||
(fprintf (console-output-port) "done]~%")
|
(fprintf (console-output-port) "done]~%")
|
||||||
(flush-output-port (console-output-port)))
|
(flush-output-port (console-output-port)))
|
||||||
(set! gc-bytes (- gc-bytes (bytes-allocated)))
|
(set! gc-bytes (- gc-bytes (bytes-allocated)))
|
||||||
(set! gc-cpu (add-duration gc-cpu (time-difference (current-time 'time-thread) cpu)))
|
(set! gc-cpu (add-duration gc-cpu (time-difference (current-time 'time-process) cpu)))
|
||||||
(set! gc-real (add-duration gc-real (time-difference (current-time 'time-monotonic) real)))
|
(set! gc-real (add-duration gc-real (time-difference (current-time 'time-monotonic) real)))
|
||||||
(set! gc-count (1+ gc-count))
|
(set! gc-count (1+ gc-count))
|
||||||
gc-result)))))))
|
gc-result)))))))
|
||||||
|
|
|
@ -1496,6 +1496,7 @@
|
||||||
(define-constant static-generation 7)
|
(define-constant static-generation 7)
|
||||||
(define-constant num-thread-local-allocation-segments (fx* (fx+ 1 (constant static-generation))
|
(define-constant num-thread-local-allocation-segments (fx* (fx+ 1 (constant static-generation))
|
||||||
(fx+ 1 (constant max-real-space))))
|
(fx+ 1 (constant max-real-space))))
|
||||||
|
(define-constant maximum-parallel-collect-threads 8)
|
||||||
|
|
||||||
;;; make sure gc sweeps all ptrs
|
;;; make sure gc sweeps all ptrs
|
||||||
(define-primitive-structure-disps tc typemod
|
(define-primitive-structure-disps tc typemod
|
||||||
|
@ -1571,13 +1572,18 @@
|
||||||
[ptr DSTBV]
|
[ptr DSTBV]
|
||||||
[ptr SRCBV]
|
[ptr SRCBV]
|
||||||
[double fpregs (constant asm-fpreg-max)]
|
[double fpregs (constant asm-fpreg-max)]
|
||||||
[xptr sweep-stack]
|
;; thread-local allocation and parallel collection:
|
||||||
[xptr sweep-stack-start]
|
|
||||||
[xptr sweep-stack-limit]
|
|
||||||
[xptr base-loc (constant num-thread-local-allocation-segments)]
|
[xptr base-loc (constant num-thread-local-allocation-segments)]
|
||||||
[xptr next-loc (constant num-thread-local-allocation-segments)]
|
[xptr next-loc (constant num-thread-local-allocation-segments)]
|
||||||
[iptr bytes-left (constant num-thread-local-allocation-segments)]
|
[iptr bytes-left (constant num-thread-local-allocation-segments)]
|
||||||
[xptr sweep-loc (constant num-thread-local-allocation-segments)]))
|
[xptr sweep-loc (constant num-thread-local-allocation-segments)]
|
||||||
|
[xptr sweep-next (constant num-thread-local-allocation-segments)]
|
||||||
|
[iptr sweeper]
|
||||||
|
[xptr sweep-stack]
|
||||||
|
[xptr sweep-stack-start]
|
||||||
|
[xptr sweep-stack-limit]
|
||||||
|
[iptr sweep-change]
|
||||||
|
[xptr lock-status]))
|
||||||
|
|
||||||
(define tc-field-list
|
(define tc-field-list
|
||||||
(let f ([ls (oblist)] [params '()])
|
(let f ([ls (oblist)] [params '()])
|
||||||
|
|
|
@ -96,6 +96,8 @@
|
||||||
;; - (as-mark-end <statment> ...) : declares that <statement>s implement counting,
|
;; - (as-mark-end <statment> ...) : declares that <statement>s implement counting,
|
||||||
;; which means that it's included for mark mode
|
;; which means that it's included for mark mode
|
||||||
;; - (skip-forwarding) : disable forward-pointer installation in copy mode
|
;; - (skip-forwarding) : disable forward-pointer installation in copy mode
|
||||||
|
;; - (check-lock-failed) : bail out if a lock aquire failed; use this before dereferencing
|
||||||
|
;; an object reference that might not have been relocated
|
||||||
;; - (assert <expr>) : assertion
|
;; - (assert <expr>) : assertion
|
||||||
;;
|
;;
|
||||||
;; In the above declarations, nonterminals like <space> can be
|
;; In the above declarations, nonterminals like <space> can be
|
||||||
|
@ -472,6 +474,13 @@
|
||||||
(copy-type ratnum-type)
|
(copy-type ratnum-type)
|
||||||
(trace-now ratnum-numerator)
|
(trace-now ratnum-numerator)
|
||||||
(trace-now ratnum-denominator)
|
(trace-now ratnum-denominator)
|
||||||
|
(case-mode
|
||||||
|
[(copy) (when (CHECK_LOCK_FAILED _tc_)
|
||||||
|
;; create failed relocates so that the heap checker isn't unhappy
|
||||||
|
(set! (ratnum-numerator _copy_) (cast ptr 0))
|
||||||
|
(set! (ratnum-denominator _copy_) (cast ptr 0)))]
|
||||||
|
[(mark) (check-lock-failed)]
|
||||||
|
[else])
|
||||||
(mark)
|
(mark)
|
||||||
(vfasl-pad-word)
|
(vfasl-pad-word)
|
||||||
(count countof-ratnum)]
|
(count countof-ratnum)]
|
||||||
|
@ -483,6 +492,13 @@
|
||||||
(copy-type exactnum-type)
|
(copy-type exactnum-type)
|
||||||
(trace-now exactnum-real)
|
(trace-now exactnum-real)
|
||||||
(trace-now exactnum-imag)
|
(trace-now exactnum-imag)
|
||||||
|
(case-mode
|
||||||
|
[(copy) (when (CHECK_LOCK_FAILED _tc_)
|
||||||
|
;; create failed relocates so that the heap checker isn't unhappy
|
||||||
|
(set! (exactnum-real _copy_) (cast ptr 0))
|
||||||
|
(set! (exactnum-imag _copy_) (cast ptr 0)))]
|
||||||
|
[(mark) (check-lock-failed)]
|
||||||
|
[else])
|
||||||
(mark)
|
(mark)
|
||||||
(vfasl-pad-word)
|
(vfasl-pad-word)
|
||||||
(count countof-exactnum)]
|
(count countof-exactnum)]
|
||||||
|
@ -575,9 +591,11 @@
|
||||||
(count countof-phantom)
|
(count countof-phantom)
|
||||||
;; Separate from `count`, because we want to track sizes even
|
;; Separate from `count`, because we want to track sizes even
|
||||||
;; if counting is not enabled:
|
;; if counting is not enabled:
|
||||||
|
(GC_TC_MUTEX_ACQUIRE)
|
||||||
(set! (array-ref (array-ref S_G.bytesof _tg_) countof-phantom)
|
(set! (array-ref (array-ref S_G.bytesof _tg_) countof-phantom)
|
||||||
+=
|
+=
|
||||||
(phantom-length _)))]
|
(phantom-length _))
|
||||||
|
(GC_TC_MUTEX_RELEASE))]
|
||||||
[measure (set! measure_total += (phantom-length _))]
|
[measure (set! measure_total += (phantom-length _))]
|
||||||
[else])])]))
|
[else])])]))
|
||||||
|
|
||||||
|
@ -611,7 +629,7 @@
|
||||||
(cond
|
(cond
|
||||||
[(&& (!= cdr_p _)
|
[(&& (!= cdr_p _)
|
||||||
(&& (== (TYPEBITS cdr_p) type_pair)
|
(&& (== (TYPEBITS cdr_p) type_pair)
|
||||||
(&& (= (ptr_get_segment cdr_p) (ptr_get_segment _))
|
(&& (== (ptr_get_segment cdr_p) (ptr_get_segment _))
|
||||||
(&& (!= (FWDMARKER cdr_p) forward_marker)
|
(&& (!= (FWDMARKER cdr_p) forward_marker)
|
||||||
;; Checking `marked_mask`, in
|
;; Checking `marked_mask`, in
|
||||||
;; case the cdr pair is locked
|
;; case the cdr pair is locked
|
||||||
|
@ -691,7 +709,9 @@
|
||||||
[(== (continuation-stack-length _) opportunistic-1-shot-flag)
|
[(== (continuation-stack-length _) opportunistic-1-shot-flag)
|
||||||
(set! (continuation-stack-length _copy_) (continuation-stack-clength _))
|
(set! (continuation-stack-length _copy_) (continuation-stack-clength _))
|
||||||
;; May need to recur at end to promote link:
|
;; May need to recur at end to promote link:
|
||||||
(set! conts_to_promote (S_cons_in space_new 0 _copy_ conts_to_promote))]
|
(GC_TC_MUTEX_ACQUIRE)
|
||||||
|
(set! conts_to_promote (S_cons_in _tc_ space_new 0 _copy_ conts_to_promote))
|
||||||
|
(GC_TC_MUTEX_RELEASE)]
|
||||||
[else
|
[else
|
||||||
(copy continuation-stack-length)])]
|
(copy continuation-stack-length)])]
|
||||||
[else
|
[else
|
||||||
|
@ -703,6 +723,7 @@
|
||||||
(trace ref)]
|
(trace ref)]
|
||||||
[(sweep sweep-in-old)
|
[(sweep sweep-in-old)
|
||||||
(trace ref) ; can't trace `val` directly, because we need an impure relocate
|
(trace ref) ; can't trace `val` directly, because we need an impure relocate
|
||||||
|
(check-lock-failed)
|
||||||
(define val : ptr (ref _))]
|
(define val : ptr (ref _))]
|
||||||
[vfasl-copy
|
[vfasl-copy
|
||||||
(set! (ref _copy_) vfasl-val)]
|
(set! (ref _copy_) vfasl-val)]
|
||||||
|
@ -717,6 +738,7 @@
|
||||||
(case-flag as-dirty?
|
(case-flag as-dirty?
|
||||||
[on (trace (just code))]
|
[on (trace (just code))]
|
||||||
[off (trace-pure (just code))])
|
[off (trace-pure (just code))])
|
||||||
|
(check-lock-failed)
|
||||||
(INITSYMCODE _ code)]
|
(INITSYMCODE _ code)]
|
||||||
[measure]
|
[measure]
|
||||||
[vfasl-copy
|
[vfasl-copy
|
||||||
|
@ -740,7 +762,9 @@
|
||||||
;; determine if key is old, since keyval might or might not have been
|
;; determine if key is old, since keyval might or might not have been
|
||||||
;; swept already. NB: assuming keyvals are always pairs.
|
;; swept already. NB: assuming keyvals are always pairs.
|
||||||
(when (&& (!= next Sfalse) (OLDSPACE keyval))
|
(when (&& (!= next Sfalse) (OLDSPACE keyval))
|
||||||
(set! tlcs_to_rehash (S_cons_in space_new 0 _copy_ tlcs_to_rehash)))]
|
(GC_TC_MUTEX_ACQUIRE)
|
||||||
|
(set! tlcs_to_rehash (S_cons_in _tc_ space_new 0 _copy_ tlcs_to_rehash))
|
||||||
|
(GC_TC_MUTEX_RELEASE))]
|
||||||
[else
|
[else
|
||||||
(trace-nonself tlc-keyval)
|
(trace-nonself tlc-keyval)
|
||||||
(trace-nonself tlc-next)]))
|
(trace-nonself tlc-next)]))
|
||||||
|
@ -784,6 +808,7 @@
|
||||||
[(sweep sweep-in-old self-test)
|
[(sweep sweep-in-old self-test)
|
||||||
;; Bignum pointer mask may need forwarding
|
;; Bignum pointer mask may need forwarding
|
||||||
(trace-pure (record-type-pm rtd))
|
(trace-pure (record-type-pm rtd))
|
||||||
|
(check-lock-failed)
|
||||||
(set! num (record-type-pm rtd))]
|
(set! num (record-type-pm rtd))]
|
||||||
[else])])
|
[else])])
|
||||||
(let* ([index : iptr (- (BIGLEN num) 1)]
|
(let* ([index : iptr (- (BIGLEN num) 1)]
|
||||||
|
@ -852,7 +877,7 @@
|
||||||
(let* ([grtd : IGEN (GENERATION c_rtd)])
|
(let* ([grtd : IGEN (GENERATION c_rtd)])
|
||||||
(set! (array-ref (array-ref S_G.countof grtd) countof_rtd_counts) += 1)
|
(set! (array-ref (array-ref S_G.countof grtd) countof_rtd_counts) += 1)
|
||||||
;; Allocate counts struct in same generation as rtd. Initialize timestamp & counts.
|
;; Allocate counts struct in same generation as rtd. Initialize timestamp & counts.
|
||||||
(thread_find_room_g _tc_ space_data grtd type_typed_object size_rtd_counts counts)
|
(find_room _tc_ space_data grtd type_typed_object size_rtd_counts counts)
|
||||||
(set! (rtd-counts-type counts) type_rtd_counts)
|
(set! (rtd-counts-type counts) type_rtd_counts)
|
||||||
(set! (rtd-counts-timestamp counts) (array-ref S_G.gctimestamp 0))
|
(set! (rtd-counts-timestamp counts) (array-ref S_G.gctimestamp 0))
|
||||||
(let* ([g : IGEN 0])
|
(let* ([g : IGEN 0])
|
||||||
|
@ -865,7 +890,8 @@
|
||||||
;; For max_copied_generation, the list will get copied again in `rtds_with_counts` fixup;
|
;; For max_copied_generation, the list will get copied again in `rtds_with_counts` fixup;
|
||||||
;; meanwhile, allocating in `space_impure` would copy and sweep old list entries causing
|
;; meanwhile, allocating in `space_impure` would copy and sweep old list entries causing
|
||||||
;; otherwise inaccessible rtds to be retained
|
;; otherwise inaccessible rtds to be retained
|
||||||
(S_cons_in (cond [(<= grtd MAX_CG) space_new] [else space_impure])
|
(S_cons_in _tc_
|
||||||
|
(cond [(<= grtd MAX_CG) space_new] [else space_impure])
|
||||||
(cond [(<= grtd MAX_CG) 0] [else grtd])
|
(cond [(<= grtd MAX_CG) 0] [else grtd])
|
||||||
c_rtd
|
c_rtd
|
||||||
(array-ref S_G.rtds_with_counts grtd)))
|
(array-ref S_G.rtds_with_counts grtd)))
|
||||||
|
@ -1004,7 +1030,7 @@
|
||||||
(set! mask >>= 1)))]
|
(set! mask >>= 1)))]
|
||||||
[else
|
[else
|
||||||
(trace-pure (* (ENTRYNONCOMPACTLIVEMASKADDR oldret)))
|
(trace-pure (* (ENTRYNONCOMPACTLIVEMASKADDR oldret)))
|
||||||
|
(check-lock-failed)
|
||||||
(let* ([num : ptr (ENTRYLIVEMASK oldret)]
|
(let* ([num : ptr (ENTRYLIVEMASK oldret)]
|
||||||
[index : iptr (BIGLEN num)])
|
[index : iptr (BIGLEN num)])
|
||||||
(while
|
(while
|
||||||
|
@ -1038,6 +1064,7 @@
|
||||||
(case-mode
|
(case-mode
|
||||||
[sweep-in-old]
|
[sweep-in-old]
|
||||||
[else
|
[else
|
||||||
|
(check-lock-failed)
|
||||||
(set! field (cast ptr (+ (cast uptr c_p) co)))]))]
|
(set! field (cast ptr (+ (cast uptr c_p) co)))]))]
|
||||||
[else
|
[else
|
||||||
(trace-pure (just c_p))]))
|
(trace-pure (just c_p))]))
|
||||||
|
@ -1094,6 +1121,7 @@
|
||||||
|
|
||||||
(case-mode
|
(case-mode
|
||||||
[sweep
|
[sweep
|
||||||
|
(check-lock-failed)
|
||||||
(cond
|
(cond
|
||||||
[(&& (== from_g static_generation)
|
[(&& (== from_g static_generation)
|
||||||
(&& (! S_G.retain_static_relocation)
|
(&& (! S_G.retain_static_relocation)
|
||||||
|
@ -1102,16 +1130,22 @@
|
||||||
[else
|
[else
|
||||||
(let* ([t_si : seginfo* (SegInfo (ptr_get_segment t))])
|
(let* ([t_si : seginfo* (SegInfo (ptr_get_segment t))])
|
||||||
(when (-> t_si old_space)
|
(when (-> t_si old_space)
|
||||||
(set! n (size_reloc_table (reloc-table-size t)))
|
|
||||||
(count countof-relocation-table (just n) 1 sweep)
|
|
||||||
(cond
|
(cond
|
||||||
[(-> t_si use_marks)
|
[(SEGMENT_LOCK_ACQUIRE t_si)
|
||||||
;; Assert: (! (marked t_si t))
|
(set! n (size_reloc_table (reloc-table-size t)))
|
||||||
(mark_typemod_data_object _tc_ t n t_si)]
|
(count countof-relocation-table (just n) 1 sweep)
|
||||||
|
(cond
|
||||||
|
[(-> t_si use_marks)
|
||||||
|
;; Assert: (! (marked t_si t))
|
||||||
|
(mark_typemod_data_object _tc_ t n t_si)]
|
||||||
|
[else
|
||||||
|
(let* ([oldt : ptr t])
|
||||||
|
(find_room _tc_ space_data from_g typemod n t)
|
||||||
|
(memcpy_aligned (TO_VOIDP t) (TO_VOIDP oldt) n))])
|
||||||
|
(SEGMENT_LOCK_RELEASE t_si)]
|
||||||
[else
|
[else
|
||||||
(let* ([oldt : ptr t])
|
(RECORD_LOCK_FAILED _tc_ t_si)
|
||||||
(thread_find_room_g _tc_ space_data from_g typemod n t)
|
(check-lock-failed)])))
|
||||||
(memcpy_aligned (TO_VOIDP t) (TO_VOIDP oldt) n))])))
|
|
||||||
(set! (reloc-table-code t) _)
|
(set! (reloc-table-code t) _)
|
||||||
(set! (code-reloc _) t)])
|
(set! (code-reloc _) t)])
|
||||||
(S_record_code_mod tc_in (cast uptr (TO_PTR (& (code-data _ 0)))) (cast uptr (code-length _)))]
|
(S_record_code_mod tc_in (cast uptr (TO_PTR (& (code-data _ 0)))) (cast uptr (code-length _)))]
|
||||||
|
@ -1388,12 +1422,15 @@
|
||||||
(case (lookup 'mode config)
|
(case (lookup 'mode config)
|
||||||
[(copy)
|
[(copy)
|
||||||
(code-block
|
(code-block
|
||||||
"change = 1;"
|
"ENABLE_LOCK_ACQUIRE"
|
||||||
|
"if (CHECK_LOCK_FAILED(tc_in)) return 0xff;"
|
||||||
"check_triggers(si);"
|
"check_triggers(si);"
|
||||||
(code-block
|
(code-block
|
||||||
"ptr new_p;"
|
"ptr new_p;"
|
||||||
"IGEN tg = TARGET_GENERATION(si);"
|
"IGEN tg = TARGET_GENERATION(si);"
|
||||||
(body)
|
(body)
|
||||||
|
"if (CHECK_LOCK_FAILED(tc_in)) return 0xff;"
|
||||||
|
"SWEEPCHANGE(tc_in) = SWEEP_CHANGE_PROGRESS;"
|
||||||
"FWDMARKER(p) = forward_marker;"
|
"FWDMARKER(p) = forward_marker;"
|
||||||
"FWDADDRESS(p) = new_p;"
|
"FWDADDRESS(p) = new_p;"
|
||||||
(and (lookup 'maybe-backreferences? config #f)
|
(and (lookup 'maybe-backreferences? config #f)
|
||||||
|
@ -1402,14 +1439,18 @@
|
||||||
"return tg;"))]
|
"return tg;"))]
|
||||||
[(mark)
|
[(mark)
|
||||||
(code-block
|
(code-block
|
||||||
"change = 1;"
|
"ENABLE_LOCK_ACQUIRE"
|
||||||
|
"if (CHECK_LOCK_FAILED(tc_in)) return 0xff;"
|
||||||
"check_triggers(si);"
|
"check_triggers(si);"
|
||||||
(ensure-segment-mark-mask "si" "" '())
|
(ensure-segment-mark-mask "si" "" '())
|
||||||
(body)
|
(body)
|
||||||
|
"SWEEPCHANGE(tc_in) = SWEEP_CHANGE_PROGRESS;"
|
||||||
"ADD_BACKREFERENCE(p, si->generation);"
|
"ADD_BACKREFERENCE(p, si->generation);"
|
||||||
"return si->generation;")]
|
"return si->generation;")]
|
||||||
[(sweep)
|
[(sweep)
|
||||||
(code-block
|
(code-block
|
||||||
|
(and (not (lookup 'as-dirty? config #f))
|
||||||
|
"ENABLE_LOCK_ACQUIRE")
|
||||||
(and (lookup 'maybe-backreferences? config #f)
|
(and (lookup 'maybe-backreferences? config #f)
|
||||||
"PUSH_BACKREFERENCE(p)")
|
"PUSH_BACKREFERENCE(p)")
|
||||||
(body)
|
(body)
|
||||||
|
@ -1417,6 +1458,10 @@
|
||||||
"POP_BACKREFERENCE()")
|
"POP_BACKREFERENCE()")
|
||||||
(and (lookup 'as-dirty? config #f)
|
(and (lookup 'as-dirty? config #f)
|
||||||
"return youngest;"))]
|
"return youngest;"))]
|
||||||
|
[(sweep-in-old)
|
||||||
|
(code-block
|
||||||
|
"ENABLE_LOCK_ACQUIRE"
|
||||||
|
(body))]
|
||||||
[(measure)
|
[(measure)
|
||||||
(body)]
|
(body)]
|
||||||
[(self-test)
|
[(self-test)
|
||||||
|
@ -1548,6 +1593,7 @@
|
||||||
(statements (cdr l) config))]
|
(statements (cdr l) config))]
|
||||||
[`(trace-early ,field)
|
[`(trace-early ,field)
|
||||||
(code (trace-statement field config #t 'pure)
|
(code (trace-statement field config #t 'pure)
|
||||||
|
(check-lock-failure-statement config)
|
||||||
(statements (cdr l) (if (symbol? field)
|
(statements (cdr l) (if (symbol? field)
|
||||||
(cons `(copy-extra ,field) config)
|
(cons `(copy-extra ,field) config)
|
||||||
config)))]
|
config)))]
|
||||||
|
@ -1726,7 +1772,7 @@
|
||||||
(hashtable-set! (lookup 'used config) 'p_sz #t)
|
(hashtable-set! (lookup 'used config) 'p_sz #t)
|
||||||
(code (format "~a, ~a, p_sz, new_p);"
|
(code (format "~a, ~a, p_sz, new_p);"
|
||||||
(case mode
|
(case mode
|
||||||
[(copy) "thread_find_room_g(tc_in, p_spc, tg"]
|
[(copy) "find_room(tc_in, p_spc, tg"]
|
||||||
[(vfasl-copy) "FIND_ROOM(vfi, p_vspc"])
|
[(vfasl-copy) "FIND_ROOM(vfi, p_vspc"])
|
||||||
(as-c 'type (lookup 'basetype config)))
|
(as-c 'type (lookup 'basetype config)))
|
||||||
(statements (let ([extra (lookup 'copy-extra config #f)])
|
(statements (let ([extra (lookup 'copy-extra config #f)])
|
||||||
|
@ -1776,6 +1822,7 @@
|
||||||
(unless (null? (cdr l))
|
(unless (null? (cdr l))
|
||||||
(error 'skip-forwarding "not at end"))
|
(error 'skip-forwarding "not at end"))
|
||||||
(code "*dest = new_p;"
|
(code "*dest = new_p;"
|
||||||
|
"SWEEPCHANGE(tc_in) = SWEEP_CHANGE_PROGRESS;"
|
||||||
"return tg;")]
|
"return tg;")]
|
||||||
[else
|
[else
|
||||||
(statements (cdr l) config)])]
|
(statements (cdr l) config)])]
|
||||||
|
@ -1808,6 +1855,10 @@
|
||||||
(statements (list count-stmt) config)))]
|
(statements (list count-stmt) config)))]
|
||||||
[else
|
[else
|
||||||
(statements (cdr l) config)])]
|
(statements (cdr l) config)])]
|
||||||
|
[`(check-lock-failed)
|
||||||
|
(code
|
||||||
|
(check-lock-failure-statement config)
|
||||||
|
(statements (cdr l) config))]
|
||||||
[`(define ,id : ,type ,rhs)
|
[`(define ,id : ,type ,rhs)
|
||||||
(let* ([used (lookup 'used config)]
|
(let* ([used (lookup 'used config)]
|
||||||
[prev-used? (hashtable-ref used id #f)])
|
[prev-used? (hashtable-ref used id #f)])
|
||||||
|
@ -2153,7 +2204,7 @@
|
||||||
[no-sweep? (or (memq 'no-sweep flags)
|
[no-sweep? (or (memq 'no-sweep flags)
|
||||||
(eq? known-space 'space-data))]
|
(eq? known-space 'space-data))]
|
||||||
[within-loop-statement
|
[within-loop-statement
|
||||||
(lambda (decl si step count?)
|
(lambda (decl si step count? final)
|
||||||
(code-block
|
(code-block
|
||||||
"uptr offset = 0;"
|
"uptr offset = 0;"
|
||||||
"while (offset < p_sz) {"
|
"while (offset < p_sz) {"
|
||||||
|
@ -2162,6 +2213,7 @@
|
||||||
(format " ~a->marked_mask[segment_bitmap_byte(mark_p)] |= segment_bitmap_bit(mark_p);" si)
|
(format " ~a->marked_mask[segment_bitmap_byte(mark_p)] |= segment_bitmap_bit(mark_p);" si)
|
||||||
(and count? (format " ~a->marked_count += ~a;" si step))
|
(and count? (format " ~a->marked_count += ~a;" si step))
|
||||||
(format " offset += ~a;" step)
|
(format " offset += ~a;" step)
|
||||||
|
final
|
||||||
"}"))]
|
"}"))]
|
||||||
[type (let ([t (lookup 'basetype config)])
|
[type (let ([t (lookup 'basetype config)])
|
||||||
(if (eq? t 'typemod)
|
(if (eq? t 'typemod)
|
||||||
|
@ -2191,18 +2243,27 @@
|
||||||
" seginfo *mark_si; IGEN g;"
|
" seginfo *mark_si; IGEN g;"
|
||||||
" si->marked_count += ((uptr)build_ptr(seg+1,0)) - addr;"
|
" si->marked_count += ((uptr)build_ptr(seg+1,0)) - addr;"
|
||||||
" seg++;"
|
" seg++;"
|
||||||
|
" /* Note: taking a sequence of locks for a span of segments */"
|
||||||
" while (seg < end_seg) {"
|
" while (seg < end_seg) {"
|
||||||
|
" ENABLE_LOCK_ACQUIRE"
|
||||||
" mark_si = SegInfo(seg);"
|
" mark_si = SegInfo(seg);"
|
||||||
|
" SEGMENT_LOCK_MUST_ACQUIRE(mark_si);"
|
||||||
" g = mark_si->generation;"
|
" g = mark_si->generation;"
|
||||||
" if (!fully_marked_mask[g]) init_fully_marked_mask(tc_in, g);"
|
" if (!fully_marked_mask[g]) init_fully_marked_mask(tc_in, g);"
|
||||||
" mark_si->marked_mask = fully_marked_mask[g];"
|
" mark_si->marked_mask = fully_marked_mask[g];"
|
||||||
" mark_si->marked_count = bytes_per_segment;"
|
" mark_si->marked_count = bytes_per_segment;"
|
||||||
|
" SEGMENT_LOCK_RELEASE(mark_si);"
|
||||||
" seg++;"
|
" seg++;"
|
||||||
" }"
|
" }"
|
||||||
" mark_si = SegInfo(end_seg);"
|
" mark_si = SegInfo(end_seg);"
|
||||||
(ensure-segment-mark-mask "mark_si" " " '())
|
" {"
|
||||||
" /* no need to set a bit: just make sure `marked_mask` is non-NULL */"
|
" ENABLE_LOCK_ACQUIRE"
|
||||||
" mark_si->marked_count += addr + p_sz - (uptr)build_ptr(end_seg,0);"
|
" SEGMENT_LOCK_MUST_ACQUIRE(mark_si);"
|
||||||
|
(ensure-segment-mark-mask "mark_si" " " '())
|
||||||
|
" /* no need to set a bit: it's enough to have made `marked_mask` non-NULL */"
|
||||||
|
" mark_si->marked_count += addr + p_sz - (uptr)build_ptr(end_seg,0);"
|
||||||
|
" SEGMENT_LOCK_RELEASE(mark_si);"
|
||||||
|
" }"
|
||||||
"}")]))]
|
"}")]))]
|
||||||
[within-segment?
|
[within-segment?
|
||||||
(code
|
(code
|
||||||
|
@ -2221,7 +2282,7 @@
|
||||||
"mark_p = (ptr)((uptr)mark_p + byte_alignment);"
|
"mark_p = (ptr)((uptr)mark_p + byte_alignment);"
|
||||||
(loop sz)))))))]
|
(loop sz)))))))]
|
||||||
[else
|
[else
|
||||||
(within-loop-statement #f "si" "byte_alignment" #f)]))]
|
(within-loop-statement #f "si" "byte_alignment" #f #f)]))]
|
||||||
[else
|
[else
|
||||||
(let ([step "byte_alignment"])
|
(let ([step "byte_alignment"])
|
||||||
(code-block
|
(code-block
|
||||||
|
@ -2229,14 +2290,17 @@
|
||||||
"if (addr_get_segment(addr) == addr_get_segment(addr + p_sz - 1))"
|
"if (addr_get_segment(addr) == addr_get_segment(addr + p_sz - 1))"
|
||||||
(code-block
|
(code-block
|
||||||
"si->marked_count += p_sz;"
|
"si->marked_count += p_sz;"
|
||||||
(within-loop-statement #f "si" step #f))
|
(within-loop-statement #f "si" step #f #f))
|
||||||
"else"
|
"else"
|
||||||
(within-loop-statement (code
|
(within-loop-statement (code
|
||||||
" seginfo *mark_si = SegInfo(ptr_get_segment(mark_p));"
|
" seginfo *mark_si = SegInfo(ptr_get_segment(mark_p));"
|
||||||
|
" ENABLE_LOCK_ACQUIRE"
|
||||||
|
" SEGMENT_LOCK_MUST_ACQUIRE(mark_si);"
|
||||||
(ensure-segment-mark-mask "mark_si" " " '()))
|
(ensure-segment-mark-mask "mark_si" " " '()))
|
||||||
"mark_si"
|
"mark_si"
|
||||||
step
|
step
|
||||||
#t)))])
|
#t
|
||||||
|
" SEGMENT_LOCK_RELEASE(mark_si);")))])
|
||||||
(cond
|
(cond
|
||||||
[no-sweep? #f]
|
[no-sweep? #f]
|
||||||
[else
|
[else
|
||||||
|
@ -2248,6 +2312,20 @@
|
||||||
(code-block push))]
|
(code-block push))]
|
||||||
[else push]))]))))
|
[else push]))]))))
|
||||||
|
|
||||||
|
(define (check-lock-failure-statement config)
|
||||||
|
(let ([mode (lookup 'mode config)])
|
||||||
|
(case mode
|
||||||
|
[(copy mark sweep)
|
||||||
|
(code
|
||||||
|
"if (CHECK_LOCK_FAILED(tc_in))"
|
||||||
|
(case mode
|
||||||
|
[(copy mark) (code-block "return 0xff;")]
|
||||||
|
[(sweep sweep-in-old)
|
||||||
|
(if (lookup 'as-dirty? config #f)
|
||||||
|
(code-block "return 0xff;")
|
||||||
|
(code-block "return;"))]))]
|
||||||
|
[else #f])))
|
||||||
|
|
||||||
(define (field-expression field config arg protect?)
|
(define (field-expression field config arg protect?)
|
||||||
(if (symbol? field)
|
(if (symbol? field)
|
||||||
(cond
|
(cond
|
||||||
|
@ -2284,7 +2362,7 @@
|
||||||
(define (ensure-segment-mark-mask si inset flags)
|
(define (ensure-segment-mark-mask si inset flags)
|
||||||
(code
|
(code
|
||||||
(format "~aif (!~a->marked_mask) {" inset si)
|
(format "~aif (!~a->marked_mask) {" inset si)
|
||||||
(format "~a thread_find_room_g_voidp(tc_in, space_data, ~a->generation, ptr_align(segment_bitmap_bytes), ~a->marked_mask);"
|
(format "~a find_room_voidp(tc_in, space_data, ~a->generation, ptr_align(segment_bitmap_bytes), ~a->marked_mask);"
|
||||||
inset si si)
|
inset si si)
|
||||||
(if (memq 'no-clear flags)
|
(if (memq 'no-clear flags)
|
||||||
(format "~a /* no clearing needed */" inset)
|
(format "~a /* no clearing needed */" inset)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user