mirror of https://github.com/torvalds/linux.git
rust: kbuild: add proc macro library support
Add the proc macro library rule that produces `.rlib` files to be used by proc macros such as the `macros` crate. Reviewed-by: Gary Guo <gary@garyguo.net> Tested-by: Gary Guo <gary@garyguo.net> Tested-by: Jesung Yang <y.j3ms.n@gmail.com> Link: https://patch.msgid.link/20251124151837.2184382-4-ojeda@kernel.org Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
This commit is contained in:
parent
1181c97442
commit
7dbe46c0b1
|
|
@ -41,6 +41,7 @@
|
||||||
*.o.*
|
*.o.*
|
||||||
*.patch
|
*.patch
|
||||||
*.pyc
|
*.pyc
|
||||||
|
*.rlib
|
||||||
*.rmeta
|
*.rmeta
|
||||||
*.rpm
|
*.rpm
|
||||||
*.rsi
|
*.rsi
|
||||||
|
|
|
||||||
|
|
@ -421,6 +421,16 @@ $(obj)/exports_bindings_generated.h: $(obj)/bindings.o FORCE
|
||||||
$(obj)/exports_kernel_generated.h: $(obj)/kernel.o FORCE
|
$(obj)/exports_kernel_generated.h: $(obj)/kernel.o FORCE
|
||||||
$(call if_changed,exports)
|
$(call if_changed,exports)
|
||||||
|
|
||||||
|
quiet_cmd_rustc_procmacrolibrary = $(RUSTC_OR_CLIPPY_QUIET) PL $@
|
||||||
|
cmd_rustc_procmacrolibrary = \
|
||||||
|
$(if $(skip_clippy),$(RUSTC),$(RUSTC_OR_CLIPPY)) \
|
||||||
|
$(filter-out $(skip_flags),$(rust_common_flags) $(rustc_target_flags)) \
|
||||||
|
--emit=dep-info,link --crate-type rlib -O \
|
||||||
|
--out-dir $(objtree)/$(obj) -L$(objtree)/$(obj) \
|
||||||
|
--crate-name $(patsubst lib%.rlib,%,$(notdir $@)) $<; \
|
||||||
|
mv $(objtree)/$(obj)/$(patsubst lib%.rlib,%,$(notdir $@)).d $(depfile); \
|
||||||
|
sed -i '/^\#/d' $(depfile)
|
||||||
|
|
||||||
quiet_cmd_rustc_procmacro = $(RUSTC_OR_CLIPPY_QUIET) P $@
|
quiet_cmd_rustc_procmacro = $(RUSTC_OR_CLIPPY_QUIET) P $@
|
||||||
cmd_rustc_procmacro = \
|
cmd_rustc_procmacro = \
|
||||||
$(RUSTC_OR_CLIPPY) $(rust_common_flags) $(rustc_target_flags) \
|
$(RUSTC_OR_CLIPPY) $(rust_common_flags) $(rustc_target_flags) \
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue