Skip to content

Commit 63df248

Browse files
committed
Revert "Reorganize lib-glob code to avoid accidentally duplicating lib/ subdirectory."
This reverts commit 2cf6bf8.
1 parent 2cf6bf8 commit 63df248

File tree

5 files changed

+52
-41
lines changed

5 files changed

+52
-41
lines changed

Makefile.in

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -118,10 +118,14 @@ CFG_STDLIB :=$(call CFG_LIB_NAME,std)
118118
CFG_LIBRUSTC :=$(call CFG_LIB_NAME,rustc)
119119
CFG_LIBSYNTAX :=$(call CFG_LIB_NAME,syntax)
120120

121-
STDLIB_GLOB =$(call CFG_LIB_GLOB,$(1),std)
122-
CORELIB_GLOB =$(call CFG_LIB_GLOB,$(1),core)
123-
LIBRUSTC_GLOB =$(call CFG_LIB_GLOB,$(1),rustc)
124-
LIBSYNTAX_GLOB =$(call CFG_LIB_GLOB,$(1),syntax)
121+
STDLIB_GLOB :=$(call CFG_LIB_GLOB,std)
122+
CORELIB_GLOB :=$(call CFG_LIB_GLOB,core)
123+
LIBRUSTC_GLOB :=$(call CFG_LIB_GLOB,rustc)
124+
LIBSYNTAX_GLOB :=$(call CFG_LIB_GLOB,syntax)
125+
STDLIB_DSYM_GLOB :=$(call CFG_LIB_DSYM_GLOB,std)
126+
CORELIB_DSYM_GLOB :=$(call CFG_LIB_DSYM_GLOB,core)
127+
LIBRUSTC_DSYM_GLOB :=$(call CFG_LIB_DSYM_GLOB,rustc)
128+
LIBSYNTAX_DSYM_GLOB :=$(call CFG_LIB_DSYM_GLOB,syntax)
125129

126130
# version-string calculation
127131
CFG_GIT_DIR := $(CFG_SRC_DIR).git

mk/clean.mk

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -62,10 +62,10 @@ clean$(1)_H_$(2):
6262
$(Q)rm -f $$(HLIB$(1)_H_$(2))/$(CFG_STDLIB)
6363
$(Q)rm -f $$(HLIB$(1)_H_$(2))/$(CFG_LIBRUSTC)
6464
$(Q)rm -f $$(HLIB$(1)_H_$(2))/$(CFG_LIBSYNTAX)
65-
$(Q)rm -f $$(call CORELIB_GLOB,$$(HLIB$(1)_H_$(2)))
66-
$(Q)rm -f $$(call STDLIB_GLOB,$$(HLIB$(1)_H_$(2))))
67-
$(Q)rm -f $$(call LIBRUSTC_GLOB,$$(HLIB$(1)_H_$(2)))
68-
$(Q)rm -f $$(call LIBSYNTAX_GLOB,$$(HLIB$(1)_H_$(2)))
65+
$(Q)rm -f $$(HLIB$(1)_H_$(2))/$(CORELIB_GLOB)
66+
$(Q)rm -f $$(HLIB$(1)_H_$(2))/$(STDLIB_GLOB)
67+
$(Q)rm -f $$(HLIB$(1)_H_$(2))/$(LIBRUSTC_GLOB)
68+
$(Q)rm -f $$(HLIB$(1)_H_$(2))/$(LIBSYNTAX_GLOB)
6969
$(Q)rm -f $$(HLIB$(1)_H_$(2))/$(CFG_RUSTLLVM)
7070
$(Q)rm -f $$(HLIB$(1)_H_$(2))/libstd.rlib
7171

@@ -88,10 +88,10 @@ clean$(1)_T_$(2)_H_$(3):
8888
$(Q)rm -f $$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_STDLIB)
8989
$(Q)rm -f $$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_LIBRUSTC)
9090
$(Q)rm -f $$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_LIBSYNTAX)
91-
$(Q)rm -f $$(call CORELIB_GLOB,$$(TLIB$(1)_T_$(2)_H_$(3)))
92-
$(Q)rm -f $$(call STDLIB_GLOB,$$(TLIB$(1)_T_$(2)_H_$(3)))
93-
$(Q)rm -f $$(call LIBRUSTC_GLOB,$$(TLIB$(1)_T_$(2)_H_$(3)))
94-
$(Q)rm -f $$(call LIBSYNTAX_GLOB,$$(TLIB$(1)_T_$(2)_H_$(3)))
91+
$(Q)rm -f $$(TLIB$(1)_T_$(2)_H_$(3))/$(CORELIB_GLOB)
92+
$(Q)rm -f $$(TLIB$(1)_T_$(2)_H_$(3))/$(STDLIB_GLOB)
93+
$(Q)rm -f $$(TLIB$(1)_T_$(2)_H_$(3))/$(LIBRUSTC_GLOB)
94+
$(Q)rm -f $$(TLIB$(1)_T_$(2)_H_$(3))/$(LIBSYNTAX_GLOB)
9595
$(Q)rm -f $$(TLIB$(1)_T_$(2)_H_$(3))/$(CFG_RUSTLLVM)
9696
$(Q)rm -f $$(TLIB$(1)_T_$(2)_H_$(3))/libstd.rlib
9797
$(Q)rm -f $$(TLIB$(1)_T_$(2)_H_$(3))/libmorestack.a

mk/host.mk

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ $$(HLIB$(2)_H_$(4))/$$(CFG_LIBRUSTC): \
3030
$$(HSTDLIB_DEFAULT$(2)_H_$(3))
3131
@$$(call E, cp: $$@)
3232
$$(Q)cp $$< $$@
33-
$$(Q)cp -R $$(call LIBRUSTC_GLOB,$$(TLIB$(1)_T_$(4)_H_$(3))) \
33+
$$(Q)cp -R $$(TLIB$(1)_T_$(4)_H_$(3))/$(LIBRUSTC_GLOB) \
34+
$$(TLIB$(1)_T_$(4)_H_$(3))/$(LIBRUSTC_DSYM_GLOB) \
3435
$$(HLIB$(2)_H_$(4))
3536

3637
$$(HLIB$(2)_H_$(4))/$$(CFG_LIBSYNTAX): \
@@ -41,7 +42,8 @@ $$(HLIB$(2)_H_$(4))/$$(CFG_LIBSYNTAX): \
4142
$$(HSTDLIB_DEFAULT$(2)_H_$(3))
4243
@$$(call E, cp: $$@)
4344
$$(Q)cp $$< $$@
44-
$$(Q)cp -R $$(call LIBSYNTAX_GLOB,$$(TLIB$(1)_T_$(4)_H_$(3))) \
45+
$$(Q)cp -R $$(TLIB$(1)_T_$(4)_H_$(3))/$(LIBSYNTAX_GLOB) \
46+
$$(TLIB$(1)_T_$(4)_H_$(3))/$(LIBSYNTAX_DSYM_GLOB) \
4547
$$(HLIB$(2)_H_$(4))
4648

4749
$$(HLIB$(2)_H_$(4))/$$(CFG_RUNTIME): \
@@ -54,7 +56,15 @@ $$(HLIB$(2)_H_$(4))/$$(CFG_CORELIB): \
5456
$$(HLIB$(2)_H_$(4))/$$(CFG_RUNTIME)
5557
@$$(call E, cp: $$@)
5658
$$(Q)cp $$< $$@
57-
$$(Q)cp -R $$(call CORELIB_GLOB,$$(TLIB$(1)_T_$(4)_H_$(3))) \
59+
# Subtle: We do not let the shell expand $(CORELIB_DSYM_GLOB) directly rather
60+
# we use Make's $$(wildcard) facility. The reason is that, on mac, when using
61+
# USE_SNAPSHOT_CORELIB, we copy the core.dylib file out of the snapshot.
62+
# In that case, there is no .dSYM file. Annoyingly, bash then refuses to expand
63+
# glob, and cp reports an error because libcore-*.dylib.dsym does not exist.
64+
# Make instead expands the glob to nothing, which gives us the correct behavior.
65+
# (Copy .dsym file if it exists, but do nothing otherwise)
66+
$$(Q)cp -R $$(TLIB$(1)_T_$(4)_H_$(3))/$(CORELIB_GLOB) \
67+
$$(wildcard $$(TLIB$(1)_T_$(4)_H_$(3))/$(CORELIB_DSYM_GLOB)) \
5868
$$(HLIB$(2)_H_$(4))
5969

6070
$$(HLIB$(2)_H_$(4))/$$(CFG_STDLIB): \
@@ -63,7 +73,8 @@ $$(HLIB$(2)_H_$(4))/$$(CFG_STDLIB): \
6373
$$(HLIB$(2)_H_$(4))/$$(CFG_RUNTIME)
6474
@$$(call E, cp: $$@)
6575
$$(Q)cp $$< $$@
66-
$$(Q)cp -R $$(call STDLIB_GLOB,$$(TLIB$(1)_T_$(4)_H_$(3))) \
76+
$$(Q)cp -R $$(TLIB$(1)_T_$(4)_H_$(3))/$(STDLIB_GLOB) \
77+
$$(wildcard $$(TLIB$(1)_T_$(4)_H_$(3))/$(STDLIB_DSYM_GLOB)) \
6778
$$(HLIB$(2)_H_$(4))
6879

6980
$$(HLIB$(2)_H_$(4))/libcore.rlib: \

mk/install.mk

Lines changed: 16 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,11 @@
66
# destination directory as arg 2, and filename/libname-glob as arg 3
77
ifdef VERBOSE
88
INSTALL = install -m755 $(1)/$(3) $(2)/$(3)
9-
INSTALL_LIB = install -m644 $(3) $(2)/
9+
INSTALL_LIB = install -m644 `ls -rt1 $(1)/$(3) | tail -1` $(2)/
1010
else
1111
INSTALL = $(Q)$(call E, install: $(2)/$(3)) && install -m755 $(1)/$(3) $(2)/$(3)
12-
INSTALL_LIB = $(Q)$(call E, install_lib: \
13-
$(addprefix $(2)/,$(basename $(3)))) && \
14-
install -m644 $(3) $(2)/
12+
INSTALL_LIB = $(Q)$(call E, install_lib: $(2)/$(3)) && \
13+
install -m644 `ls -rt1 $(1)/$(3) | tail -1` $(2)/
1514
endif
1615

1716
# The stage we install from
@@ -38,17 +37,13 @@ install-target-$(1)-host-$(2): $$(SREQ$$(ISTAGE)_T_$(1)_H_$(2))
3837
$$(Q)mkdir -p $$(PTL$(1)$(2))
3938
$$(Q)$$(call INSTALL,$$(TL$(1)$(2)),$$(PTL$(1)$(2)),$$(CFG_RUNTIME))
4039
$$(Q)$$(call INSTALL_LIB, \
41-
$$(TL$(1)$(2)),$$(PTL$(1)$(2)),\
42-
$$(call CORELIB_GLOB,$$(TL$(1)$(2))))
40+
$$(TL$(1)$(2)),$$(PTL$(1)$(2)),$$(CORELIB_GLOB))
4341
$$(Q)$$(call INSTALL_LIB, \
44-
$$(TL$(1)$(2)),$$(PTL$(1)$(2)),\
45-
$$(call STDLIB_GLOB,$$(TL$(1)$(2))))
42+
$$(TL$(1)$(2)),$$(PTL$(1)$(2)),$$(STDLIB_GLOB))
4643
$$(Q)$$(call INSTALL_LIB, \
47-
$$(TL$(1)$(2)),$$(PTL$(1)$(2)),\
48-
$$(call LIBRUSTC_GLOB,$$(TL$(1)$(2))))
44+
$$(TL$(1)$(2)),$$(PTL$(1)$(2)),$$(LIBRUSTC_GLOB))
4945
$$(Q)$$(call INSTALL_LIB, \
50-
$$(TL$(1)$(2)),$$(PTL$(1)$(2)),\
51-
$$(call LIBSYNTAX_GLOB,$$(TL$(1)$(2))))
46+
$$(TL$(1)$(2)),$$(PTL$(1)$(2)),$$(LIBSYNTAX_GLOB))
5247
$$(Q)$$(call INSTALL,$$(TL$(1)$(2)),$$(PTL$(1)$(2)),libmorestack.a)
5348

5449
endef
@@ -79,10 +74,10 @@ install-host: $(SREQ$(ISTAGE)_T_$(CFG_HOST_TRIPLE)_H_$(CFG_HOST_TRIPLE))
7974
$(Q)$(call INSTALL,$(HB2),$(PHB),cargo$(X))
8075
$(Q)$(call INSTALL,$(HB2),$(PHB),rustdoc$(X))
8176
$(Q)$(call INSTALL,$(HL),$(PHL),$(CFG_RUNTIME))
82-
$(Q)$(call INSTALL_LIB,$(HL),$(PHL),$(call CORELIB_GLOB,$(PHL)))
83-
$(Q)$(call INSTALL_LIB,$(HL),$(PHL),$(call STDLIB_GLOB,$(PHL)))
84-
$(Q)$(call INSTALL_LIB,$(HL),$(PHL),$(call LIBRUSTC_GLOB,$(PHL)))
85-
$(Q)$(call INSTALL_LIB,$(HL),$(PHL),$(call LIBSYNTAX_GLOB,$(PHL)))
77+
$(Q)$(call INSTALL_LIB,$(HL),$(PHL),$(CORELIB_GLOB))
78+
$(Q)$(call INSTALL_LIB,$(HL),$(PHL),$(STDLIB_GLOB))
79+
$(Q)$(call INSTALL_LIB,$(HL),$(PHL),$(LIBRUSTC_GLOB))
80+
$(Q)$(call INSTALL_LIB,$(HL),$(PHL),$(LIBSYNTAX_GLOB))
8681
$(Q)$(call INSTALL,$(HL),$(PHL),$(CFG_RUSTLLVM))
8782
$(Q)$(call INSTALL,$(S)/man, \
8883
$(PREFIX_ROOT)/share/man/man1,rustc.1)
@@ -91,7 +86,7 @@ install-targets: $(INSTALL_TARGET_RULES)
9186

9287

9388
HOST_LIB_FROM_HL_GLOB = \
94-
$(patsubst $(HL)/%,$(PHL)/%,$(1))
89+
$(patsubst $(HL)/%,$(PHL)/%,$(wildcard $(HL)/$(1)))
9590

9691
uninstall:
9792
$(Q)rm -f $(PHB)/rustc$(X)
@@ -100,10 +95,10 @@ uninstall:
10095
$(Q)rm -f $(PHL)/$(CFG_RUSTLLVM)
10196
$(Q)rm -f $(PHL)/$(CFG_RUNTIME)
10297
$(Q)for i in \
103-
$(call HOST_LIB_FROM_HL_GLOB,$(call CORELIB_GLOB,$(HL))) \
104-
$(call HOST_LIB_FROM_HL_GLOB,$(call STDLIB_GLOB,$(HL))) \
105-
$(call HOST_LIB_FROM_HL_GLOB,$(call LIBRUSTC_GLOB,$(HL))) \
106-
$(call HOST_LIB_FROM_HL_GLOB,$(call LIBSYNTAX_GLOB,$(HL))) \
98+
$(call HOST_LIB_FROM_HL_GLOB,$(CORELIB_GLOB)) \
99+
$(call HOST_LIB_FROM_HL_GLOB,$(STDLIB_GLOB)) \
100+
$(call HOST_LIB_FROM_HL_GLOB,$(LIBRUSTC_GLOB)) \
101+
$(call HOST_LIB_FROM_HL_GLOB,$(LIBSYNTAX_GLOB)) \
107102
; \
108103
do rm -f $$i ; \
109104
done

mk/platform.mk

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ CFG_DSYMUTIL := true
2121

2222
ifneq ($(findstring freebsd,$(CFG_OSTYPE)),)
2323
CFG_LIB_NAME=lib$(1).so
24-
CFG_LIB_GLOB=$(wildcard $(1)/lib$(2)-*.so)
24+
CFG_LIB_GLOB=lib$(1)-*.so
2525
CFG_GCCISH_CFLAGS += -fPIC -I/usr/local/include
2626
CFG_GCCISH_LINK_FLAGS += -shared -fPIC -lpthread -lrt
2727
CFG_GCCISH_DEF_FLAG := -Wl,--export-dynamic,--dynamic-list=
@@ -40,7 +40,7 @@ endif
4040

4141
ifneq ($(findstring linux,$(CFG_OSTYPE)),)
4242
CFG_LIB_NAME=lib$(1).so
43-
CFG_LIB_GLOB=$(wildcard $(1)/lib$(2)-*.so)
43+
CFG_LIB_GLOB=lib$(1)-*.so
4444
CFG_GCCISH_CFLAGS += -fPIC
4545
CFG_GCCISH_LINK_FLAGS += -shared -fPIC -ldl -lpthread -lrt
4646
CFG_GCCISH_DEF_FLAG := -Wl,--export-dynamic,--dynamic-list=
@@ -76,7 +76,8 @@ endif
7676

7777
ifneq ($(findstring darwin,$(CFG_OSTYPE)),)
7878
CFG_LIB_NAME=lib$(1).dylib
79-
CFG_LIB_GLOB=$(wildcard $(1)/lib$(2)-*.dylib $(1)/lib$(2)-*.dylib.dSYM)
79+
CFG_LIB_GLOB=lib$(1)-*.dylib
80+
CFG_LIB_DSYM_GLOB=lib$(1)-*.dylib.dSYM
8081
CFG_UNIXY := 1
8182
CFG_LDENV := DYLD_LIBRARY_PATH
8283
CFG_GCCISH_LINK_FLAGS += -dynamiclib -lpthread -framework CoreServices -Wl,-no_compact_unwind
@@ -173,7 +174,7 @@ ifdef CFG_WINDOWSY
173174

174175
CFG_EXE_SUFFIX := .exe
175176
CFG_LIB_NAME=$(1).dll
176-
CFG_LIB_GLOB=$(wildcard $(1)/$(2)-*.dll)
177+
CFG_LIB_GLOB=$(1)-*.dll
177178
CFG_DEF_SUFFIX := .def
178179
ifdef MSYSTEM
179180
CFG_LDPATH :=$(CFG_LDPATH):$$PATH

0 commit comments

Comments
 (0)