Skip to content

Commit 6f9b30c

Browse files
committed
configure: Make rustlibdir non-configurable
Trying to reduce the complexity of installation
1 parent e509cd6 commit 6f9b30c

File tree

8 files changed

+11
-14
lines changed

8 files changed

+11
-14
lines changed

configure

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -401,7 +401,8 @@ valopt infodir "${CFG_PREFIX}/share/info" "install additional info"
401401
valopt mandir "${CFG_PREFIX}/share/man" "install man pages in PATH"
402402

403403
# On windows we just store the libraries in the bin directory because
404-
# there's no rpath
404+
# there's no rpath. This is where the build system itself puts libraries;
405+
# --libdir is used to configure the installation directory.
405406
# FIXME: Thise needs to parameterized over target triples. Do it in platform.mk
406407
CFG_LIBDIR_RELATIVE=lib
407408
if [ "$CFG_OSTYPE" = "pc-mingw32" ]
@@ -410,7 +411,6 @@ then
410411
fi
411412

412413
valopt libdir "${CFG_PREFIX}/${CFG_LIBDIR_RELATIVE}" "install libraries"
413-
valopt rustlibdir "rustlib" "subdirectory name for rustc's libraries"
414414

415415
if [ $HELP -eq 1 ]
416416
then
@@ -777,10 +777,10 @@ do
777777
make_dir $h/stage$i/test
778778

779779
# target bin dir
780-
make_dir $h/stage$i/$CFG_LIBDIR_RELATIVE/$CFG_RUSTLIBDIR/$t/bin
780+
make_dir $h/stage$i/$CFG_LIBDIR_RELATIVE/rustlib/$t/bin
781781

782782
# target lib dir
783-
make_dir $h/stage$i/$CFG_LIBDIR_RELATIVE/$CFG_RUSTLIBDIR/$t/lib
783+
make_dir $h/stage$i/$CFG_LIBDIR_RELATIVE/rustlib/$t/lib
784784
done
785785
done
786786

@@ -1039,7 +1039,6 @@ putvar CFG_HOST
10391039
putvar CFG_TARGET
10401040
putvar CFG_C_COMPILER
10411041
putvar CFG_LIBDIR
1042-
putvar CFG_RUSTLIBDIR
10431042
putvar CFG_LIBDIR_RELATIVE
10441043
putvar CFG_DISABLE_MANAGE_SUBMODULES
10451044
putvar CFG_ANDROID_CROSS_PATH

mk/dist.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ dist-install-dir-$(1): PREPARE_MAN_CMD=$(DEFAULT_PREPARE_MAN_CMD)
200200
dist-install-dir-$(1): PREPARE_CLEAN=true
201201
dist-install-dir-$(1): prepare-base-dir-$(1)
202202
$$(Q)(cd $$(PREPARE_DEST_DIR)/ && find -type f | sed 's/^\.\///') \
203-
> $$(PREPARE_DEST_DIR)/$$(CFG_LIBDIR_RELATIVE)/$$(CFG_RUSTLIBDIR)/manifest
203+
> $$(PREPARE_DEST_DIR)/$$(CFG_LIBDIR_RELATIVE)/rustlib/manifest
204204
$$(Q)$$(PREPARE_MAN_CMD) $$(S)COPYRIGHT $$(PREPARE_DEST_DIR)
205205
$$(Q)$$(PREPARE_MAN_CMD) $$(S)LICENSE-APACHE $$(PREPARE_DEST_DIR)
206206
$$(Q)$$(PREPARE_MAN_CMD) $$(S)LICENSE-MIT $$(PREPARE_DEST_DIR)

mk/main.mk

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,6 @@ export CFG_LLVM_ROOT
281281
export CFG_ENABLE_MINGW_CROSS
282282
export CFG_PREFIX
283283
export CFG_LIBDIR
284-
export CFG_RUSTLIBDIR
285284
export CFG_LIBDIR_RELATIVE
286285
export CFG_DISABLE_INJECT_STD_VERSION
287286

@@ -302,7 +301,7 @@ HBIN$(1)_H_$(3) = $$(HROOT$(1)_H_$(3))/bin
302301
HLIB$(1)_H_$(3) = $$(HROOT$(1)_H_$(3))/$$(CFG_LIBDIR_RELATIVE)
303302

304303
# Destinations of artifacts for target architectures
305-
TROOT$(1)_T_$(2)_H_$(3) = $$(HLIB$(1)_H_$(3))/$$(CFG_RUSTLIBDIR)/$(2)
304+
TROOT$(1)_T_$(2)_H_$(3) = $$(HLIB$(1)_H_$(3))/rustlib/$(2)
306305
TBIN$(1)_T_$(2)_H_$(3) = $$(TROOT$(1)_T_$(2)_H_$(3))/bin
307306
TLIB$(1)_T_$(2)_H_$(3) = $$(TROOT$(1)_T_$(2)_H_$(3))/lib
308307

mk/prepare.mk

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,8 +121,8 @@ endef
121121
# $(4) tag
122122
define DEF_PREPARE_TARGET_N
123123
# Rebind PREPARE_*_LIB_DIR to point to rustlib, then install the libs for the targets
124-
prepare-target-$(2)-host-$(3)-$(1)-$(4): PREPARE_WORKING_SOURCE_LIB_DIR=$$(PREPARE_SOURCE_LIB_DIR)/$$(CFG_RUSTLIBDIR)/$(2)/lib
125-
prepare-target-$(2)-host-$(3)-$(1)-$(4): PREPARE_WORKING_DEST_LIB_DIR=$$(PREPARE_DEST_LIB_DIR)/$$(CFG_RUSTLIBDIR)/$(2)/lib
124+
prepare-target-$(2)-host-$(3)-$(1)-$(4): PREPARE_WORKING_SOURCE_LIB_DIR=$$(PREPARE_SOURCE_LIB_DIR)/rustlib/$(2)/lib
125+
prepare-target-$(2)-host-$(3)-$(1)-$(4): PREPARE_WORKING_DEST_LIB_DIR=$$(PREPARE_DEST_LIB_DIR)/rustlib/$(2)/lib
126126
prepare-target-$(2)-host-$(3)-$(1)-$(4): prepare-maybe-clean-$(4) \
127127
$$(foreach crate,$$(TARGET_CRATES), \
128128
$$(TLIB$(1)_T_$(2)_H_$(3))/stamp.$$(crate)) \

mk/stage0.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ $(SNAPSHOT_RUSTC_POST_CLEANUP): \
1515
# Note: the variable "SNAPSHOT_FILE" is generally not set, and so
1616
# we generally only pass one argument to this script.
1717
ifdef CFG_ENABLE_LOCAL_RUST
18-
$(Q)$(S)src/etc/local_stage0.sh $(CFG_BUILD) $(CFG_LOCAL_RUST_ROOT) $(CFG_RUSTLIBDIR)
18+
$(Q)$(S)src/etc/local_stage0.sh $(CFG_BUILD) $(CFG_LOCAL_RUST_ROOT) rustlib
1919
else
2020
$(Q)$(CFG_PYTHON) $(S)src/etc/get-snapshot.py $(CFG_BUILD) $(SNAPSHOT_FILE)
2121
ifdef CFG_ENABLE_PAX_FLAGS

mk/tests.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ ifdef CFG_WINDOWSY_$(1)
104104
stage2/$$(CFG_LIBDIR_RELATIVE), \
105105
$$(if $$(findstring stage3,$$(1)), \
106106
stage3/$$(CFG_LIBDIR_RELATIVE), \
107-
)))))/$$(CFG_RUSTLIBDIR)/$$(CFG_BUILD)/lib
107+
)))))/rustlib/$$(CFG_BUILD)/lib
108108
CFG_RUN_TEST_$(1)=$$(call CFG_RUN_$(1),$$(call CFG_TESTLIB_$(1),$$(1),$$(3)),$$(1))
109109
endif
110110

src/etc/install.sh

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,6 @@ need_ok "failed to remove install probe"
237237

238238
# First, uninstall from the installation prefix.
239239
# Errors are warnings - try to rm everything in the manifest even if some fail.
240-
# FIXME: Hardcoded 'rustlib' ignores CFG_RUSTLIBDIR
241240
if [ -f "${CFG_PREFIX}/lib/rustlib/manifest" ]
242241
then
243242
# Iterate through installed manifest and remove files

src/librustc/metadata/filesearch.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,5 +242,5 @@ pub fn libdir() -> ~str {
242242
// The name of rustc's own place to organize libraries.
243243
// Used to be "rustc", now the default is "rustlib"
244244
pub fn rustlibdir() -> ~str {
245-
(env!("CFG_RUSTLIBDIR")).to_owned()
245+
~"rustlib"
246246
}

0 commit comments

Comments
 (0)