From mboxrd@z Thu Jan 1 00:00:00 1970 From: Olivier MATZ Subject: Re: [PATCH] External app builds need to locate common make fragments and includes. Date: Wed, 04 Mar 2015 10:08:20 +0100 Message-ID: <54F6CB84.2050202@6wind.com> References: <1425142563-27185-1-git-send-email-keith.wiles@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit To: Keith Wiles , dev-VfR2kkLFssw@public.gmane.org Return-path: In-Reply-To: <1425142563-27185-1-git-send-email-keith.wiles-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" Hi Keith, On 02/28/2015 05:56 PM, Keith Wiles wrote: > When building an external application like Pktgen and using the proper > makefile fragments rte.extXYZ.mk NOT rte.XYZ.mk files as you would > use with example applications in the same RTE_SDK directory the rte.extXYZ.mk > files are missing some defines/includes. > > 1 - Add missing tests for RTE_SDK/RTE_TARGET not defined code. > 2 - The build of external applications are forced to be verbose ouput > as the Q=@ define is not present. > 3 - Missing include of target/generic/rte.vars.mk file which includes > the information to locate the rte_config.h and other DPDK include > files. > > A patch like this one was submitted before and was rejected because it > seemed it was not required, because target/generic/rte.vars.mk already > included by rte.vars.mk. > > This is not the cause for external applications like Pktgen which are > built outside of the RTE_SDK directory and only include the rte.extXYZ.mk > makefile fragments. I still not understand what is your problem. If you take an example from dpdk, let's say examples/l2fwd. cd test # compile dpdk git clone http://dpdk.org/git/dpdk cd dpdk DPDK=${PWD} make -j8 install T=x86_64-native-linuxapp-gcc cd .. # copy l2fwd in an external directory cp -r dpdk/examples/l2fwd . cd l2fwd # build it make RTE_TARGET=x86_64-native-linuxapp-gcc RTE_SDK=${DPDK} So if you use a Makefile similar to l2fwd, I think it should work. As I explained in [1], you need to include "rte.vars.mk" at the beginning of the Makefile, not "rte.extvars.mk". But you will use "rte.extapp.mk" at the end, like in l2fwd Makefile. Regards, Olivier [1] http://dpdk.org/ml/archives/dev/2015-February/013301.html