5353 [ ! -f $( TMPDIR) /* .dwp ]
5454 [ ! -f $( TMPDIR) /* .dwo ]
5555
56- packed : packed-split packed-single packed-remapped packed-crosscrate
56+ packed : packed-split packed-single packed-lto packed- remapped packed-crosscrate
5757
5858# - Debuginfo in `.dwo` files
5959# - `.o` deleted
@@ -77,6 +77,32 @@ packed-single:
7777 rm $(TMPDIR ) /foo.dwp
7878 rm $(TMPDIR ) /$(call BIN,foo)
7979
80+ packed-lto : packed-lto-split packed-lto-single
81+
82+ # - rmeta file added to rlib, no object files are generated and thus no debuginfo is generated
83+ # - `.o` never created
84+ # - `.dwo` never created
85+ # - `.dwp` never created
86+ packed-lto-split :
87+ $(RUSTC ) baz.rs -g $(UNSTABLEOPTS ) -Csplit-debuginfo=packed -Zsplit-dwarf-kind=split \
88+ --crate-type=rlib -Clinker-plugin-lto
89+ ls $(TMPDIR ) /* .o && exit 1 || exit 0
90+ ls $(TMPDIR ) /* .dwo && exit 1 || exit 0
91+ ls $(TMPDIR ) /* .dwp && exit 1 || exit 0
92+ rm $(TMPDIR ) /libbaz.rlib
93+
94+ # - rmeta file added to rlib, no object files are generated and thus no debuginfo is generated
95+ # - `.o` never created
96+ # - `.dwo` never created
97+ # - `.dwp` never created
98+ packed-lto-single :
99+ $(RUSTC ) baz.rs -g $(UNSTABLEOPTS ) -Csplit-debuginfo=packed -Zsplit-dwarf-kind=single \
100+ --crate-type=rlib -Clinker-plugin-lto
101+ ls $(TMPDIR ) /* .o && exit 1 || exit 0
102+ ls $(TMPDIR ) /* .dwo && exit 1 || exit 0
103+ ls $(TMPDIR ) /* .dwp && exit 1 || exit 0
104+ rm $(TMPDIR ) /libbaz.rlib
105+
80106packed-remapped : packed-remapped-split packed-remapped-single
81107
82108# - Debuginfo in `.dwo` files
@@ -153,7 +179,7 @@ packed-crosscrate-single:
153179 rm $(TMPDIR ) /main.dwp
154180 rm $(TMPDIR ) /$(call BIN,main)
155181
156- unpacked : unpacked-split unpacked-single unpacked-remapped unpacked-crosscrate
182+ unpacked : unpacked-split unpacked-single unpacked-lto unpacked- remapped unpacked-crosscrate
157183
158184# - Debuginfo in `.dwo` files
159185# - `.o` deleted
@@ -177,6 +203,32 @@ unpacked-single:
177203 ls $(TMPDIR ) /* .dwp && exit 1 || exit 0
178204 rm $(TMPDIR ) /$(call BIN,foo)
179205
206+ unpacked-lto : packed-lto-split packed-lto-single
207+
208+ # - rmeta file added to rlib, no object files are generated and thus no debuginfo is generated
209+ # - `.o` never created
210+ # - `.dwo` never created
211+ # - `.dwp` never created
212+ unpacked-lto-split :
213+ $(RUSTC ) baz.rs -g $(UNSTABLEOPTS ) -Csplit-debuginfo=unpacked -Zsplit-dwarf-kind=split \
214+ --crate-type=rlib -Clinker-plugin-lto
215+ ls $(TMPDIR ) /* .o && exit 1 || exit 0
216+ ls $(TMPDIR ) /* .dwo && exit 1 || exit 0
217+ ls $(TMPDIR ) /* .dwp && exit 1 || exit 0
218+ rm $(TMPDIR ) /libbaz.rlib
219+
220+ # - rmeta file added to rlib, no object files are generated and thus no debuginfo is generated
221+ # - `.o` never created
222+ # - `.dwo` never created
223+ # - `.dwp` never created
224+ unpacked-lto-single :
225+ $(RUSTC ) baz.rs -g $(UNSTABLEOPTS ) -Csplit-debuginfo=unpacked -Zsplit-dwarf-kind=single \
226+ --crate-type=rlib -Clinker-plugin-lto
227+ ls $(TMPDIR ) /* .o && exit 1 || exit 0
228+ ls $(TMPDIR ) /* .dwo && exit 1 || exit 0
229+ ls $(TMPDIR ) /* .dwp && exit 1 || exit 0
230+ rm $(TMPDIR ) /libbaz.rlib
231+
180232unpacked-remapped : unpacked-remapped-split unpacked-remapped-single
181233
182234# - Debuginfo in `.dwo` files
0 commit comments