[dpdk-dev] [PATCH v2] mk: fix parallel build of test resources
Thomas Monjalon
thomas.monjalon at 6wind.com
Fri Jun 24 16:19:34 CEST 2016
2016-06-24 16:06, Olivier Matz:
> Hi Thomas,
>
> On 06/24/2016 01:22 PM, Thomas Monjalon wrote:
> > --- a/app/test/Makefile
> > +++ b/app/test/Makefile
> > @@ -43,14 +43,14 @@ define linked_resource
> > SRCS-y += $(1).res.o
> > $(1).res.o: $(2)
> > @ echo ' MKRES $$@'
> > - $Q ln -fs $$< resource.tmp
> > + $Q [ "$$(<D)" = . ] || ln -fs $$<
>
> Maybe the symbolic link file in the build directory could be prefixed
> with "lnk_"... (see following below)
yes...
> > $Q $(OBJCOPY) -I binary -B $(RTE_OBJCOPY_ARCH) -O $(RTE_OBJCOPY_TARGET) \
> > --rename-section \
> > .data=.rodata,alloc,load,data,contents,readonly \
> > - --redefine-sym _binary_resource_tmp_start=beg_$(1) \
> > - --redefine-sym _binary_resource_tmp_end=end_$(1) \
> > - --redefine-sym _binary_resource_tmp_size=siz_$(1) \
> > - resource.tmp $$@ && rm -f resource.tmp
> > + --redefine-sym _binary_$$(subst .,_,$$(<F))_start=beg_$(1) \
> > + --redefine-sym _binary_$$(subst .,_,$$(<F))_end=end_$(1) \
> > + --redefine-sym _binary_$$(subst .,_,$$(<F))_size=siz_$(1) \
> > + $$(<F) $$@
> > endef
> >
> > ifeq ($(CONFIG_RTE_APP_TEST_RESOURCE_TAR),y)
> > @@ -76,7 +76,9 @@ SRCS-$(CONFIG_RTE_LIBRTE_CMDLINE) := commands.c
> > SRCS-y += test.c
> > SRCS-y += resource.c
> > SRCS-y += test_resource.c
> > -$(eval $(call linked_resource,test_resource_c,resource.c))
> > +test_resource.res: test_resource.c
> > + @ cp $< $@
> > +$(eval $(call linked_resource,test_resource_c,test_resource.res))
> > $(eval $(call linked_tar_resource,test_resource_tar,test_resource.c))
> > SRCS-$(CONFIG_RTE_APP_TEST_RESOURCE_TAR) += test_pci.c
> > $(eval $(call linked_tar_resource,test_pci_sysfs,test_pci_sysfs))
>
> ...this would avoid to rename the resource file and make the patch
> easier to understand.
... but it would be harder to understand how are named the resources in
the build directory ;)
Ideally we should not use a source file (referenced in SRCS-y) as a
test resource.
More information about the dev
mailing list