-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
make: parallel build #1202
make: parallel build #1202
Changes from 6 commits
d7d7ce7
85e390e
181d9cc
bbee631
bd63722
897a162
7401041
2709dab
8ffc4ec
3614ee3
4712b9d
1963480
9da21ec
7c64149
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -51,7 +51,7 @@ CLEAN_TARGET += tb/libraries | |
|
||
GENERIC_DEPS += $(HDL_LIBRARY_PATH)../scripts/adi_env.tcl | ||
|
||
.PHONY: all intel intel_dep xilinx xilinx_dep clean clean-all | ||
.PHONY: all intel intel_dep xilinx clean clean-all | ||
|
||
all: intel xilinx | ||
|
||
|
@@ -83,22 +83,26 @@ ifneq ($(XILINX_DEPS),) | |
|
||
XILINX_DEPS += $(GENERIC_DEPS) | ||
XILINX_DEPS += $(HDL_LIBRARY_PATH)scripts/adi_ip_xilinx.tcl | ||
XILINX_DEPS += $(foreach dep,$(XILINX_LIB_DEPS),$(HDL_LIBRARY_PATH)$(dep)/component.xml) | ||
_XILINX_LIB_DEPS = $(foreach dep,$(XILINX_LIB_DEPS),$(HDL_LIBRARY_PATH)$(dep)/component.xml) | ||
_XILINX_INTF_DEPS = $(foreach dep,$(XILINX_INTERFACE_DEPS),$(HDL_LIBRARY_PATH)$(dep)) | ||
|
||
xilinx: xilinx_dep component.xml | ||
xilinx: component.xml | ||
|
||
component.xml: $(XILINX_DEPS) | ||
.DELETE_ON_ERROR: | ||
|
||
component.xml: $(XILINX_DEPS) $(_XILINX_INTF_DEPS) $(_XILINX_LIB_DEPS) | ||
-rm -rf $(CLEAN_TARGET) | ||
$(call build, \ | ||
$(VIVADO) $(LIBRARY_NAME)_ip.tcl, \ | ||
flock component.xml -c "$(VIVADO) $(LIBRARY_NAME)_ip.tcl", \ | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks you for your initiative and effort. This optimization will be appreciated by everyone. Let me continue with what I would change. There are two issues at this line:
If you have a better solution, please add it. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hi @AndreiGrozav, Thanks for testing this, and apologies for the delay.
interesting! I definitely missed that. I like your approach, I can't really find anything within actually, maybe Do you have a preference?
I definitely agree with that, the commit message might be misleading. If I'm not mistaken, this error message happens if you try using There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I don't have a preference. |
||
$(LIBRARY_NAME)_ip.log, \ | ||
$(HL)$(LIBRARY_NAME)$(NC) library) | ||
|
||
xilinx_dep: | ||
@for lib in $(XILINX_LIB_DEPS); do \ | ||
$(MAKE) -C $(HDL_LIBRARY_PATH)$${lib} xilinx || exit $$?; \ | ||
done | ||
@for intf in $(XILINX_INTERFACE_DEPS); do \ | ||
$(MAKE) -C $(HDL_LIBRARY_PATH)$${intf} xilinx || exit $$?; \ | ||
done | ||
$(_XILINX_INTF_DEPS): | ||
$(MAKE) -C $(dir $@) $(notdir $@) | ||
|
||
$(_XILINX_LIB_DEPS): | ||
$(MAKE) -C $(dir $@) xilinx | ||
|
||
%.xml: | ||
$(MAKE) -C $(dir $@) $(notdir $@) | ||
endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you also do this to library/Makefile ?
I mean, move the project list to a variable to be used as a dependencies, so we can also use the -j .
There, I think it is better to keep the list instead of globing.
(if not, I can do it later also)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
okay, I'll have a look