Hi Ferruh, On 05/30/2016 05:49 PM, Ferruh Yigit wrote: > On 5/30/2016 12:56 PM, Olivier Matz wrote: >> The $(comma) variable is not defined in this Makefile, nor in >> any included Makefile. Seen while doing a "make clean" on ubuntu: >> >> $ make clean >> == Clean lib >> == Clean lib/librte_compat >> == Clean lib/librte_eal >> == Clean lib/librte_eal/common >> == Clean lib/librte_eal/linuxapp >> == Clean lib/librte_eal/linuxapp/eal >> == Clean lib/librte_eal/linuxapp/igb_uio >> == Clean lib/librte_eal/linuxapp/kni >> tr: missing operand after ?.-? >> Two strings must be given when translating. >> Try 'tr --help' for more information. > > I don't observe this error on Ubuntu. > > Also did a quick check and $(comma) seems defined, but not sure exactly > where. What I test: > > $ lsb_release -si > Ubuntu > > > $ git diff > diff --git a/lib/librte_eal/linuxapp/kni/Makefile > b/lib/librte_eal/linuxapp/kni/Makefile > index ac99d3f..dcad241 100644 > --- a/lib/librte_eal/linuxapp/kni/Makefile > +++ b/lib/librte_eal/linuxapp/kni/Makefile > @@ -90,4 +90,7 @@ SRCS-y += kni_net.c > SRCS-y += kni_ethtool.c > SRCS-$(CONFIG_RTE_KNI_VHOST) += kni_vhost.c > > +test_comma: > + @echo "= comma: $(comma) =" > + > > > > $ make -C lib/librte_eal/linuxapp/kni test_comma > make: Entering directory '.../dpdk/lib/librte_eal/linuxapp/kni' > = comma: , = > make: Leaving directory '.../dpdk/lib/librte_eal/linuxapp/kni'
Thanks for testing and review. I added the following lines to the makefile (just after the include rte.vars.mk): $(info ------------------) $(info comma=$(comma)) $(info $(origin comma)) And it gives me: $ make clean == Clean lib/librte_eal/linuxapp/kni -------------------- comma=, file make -C /lib/modules/3.13.0-79-generic/build M=/home/user/dpdk.org/build/build/lib/librte_eal/linuxapp/kni O=/lib/modules/3.13.0-79-generic/build clean make -C /usr/src/linux-headers-3.13.0-79-generic \ KBUILD_SRC=/usr/src/linux-headers-3.13.0-79-generic \ KBUILD_EXTMOD="/home/user/dpdk.org/build/build/lib/librte_eal/linuxapp/kni" -f /usr/src/linux-headers-3.13.0-79-generic/Makefile \ clean make -f /usr/src/linux-headers-3.13.0-79-generic/scripts/Makefile.clean obj=/home/user/dpdk.org/build/build/lib/librte_eal/linuxapp/kni -------------------- comma= undefined tr: missing operand after ?.-? Two strings must be given when translating. Try 'tr --help' for more information. [...] Actually this Makefile is used twice, and second time the $(comma) variable is not defined. It seems the $(comma) variable is defined in rte.cpuflags.mk when including rte.vars.mk: mk/rte.vars.mk mk/target/generic/rte.vars.mk mk/rte.cpuflags.mk (only if KERNELRELEASE is unset, which is not the case for the second call) Do you see the issue when you do a "make clean"? Thanks, Olivier