2015-03-04 09:39, Neil Horman: > On Wed, Mar 04, 2015 at 01:54:49PM +0100, Thomas Monjalon wrote: > > Hi Neil, > > > > I remove parts that I agree and reply to those which deserve more > > discussion. > > > > 2015-03-04 06:49, Neil Horman: > > > On Tue, Mar 03, 2015 at 11:18:47PM +0100, Thomas Monjalon wrote: > > > > 2015-02-02 13:18, Neil Horman: > > > > > +# Validate that we have all the arguments we need > > > > > +if [ ! -d ./.git ] > > > > > +then > > > > > + log "WARN" "You must be in the root of the dpdk git tree" > > > > > + log "WARN" "You are in $PWD" > > > > > + cleanup_and_exit 1 > > > > > +fi > > > > > > > > Why not cd $(dirname $0)/.. instead of returning an error? > > > > > > Why would that help in finding the base of the git tree. Theres no > > > guarantee > > > that you are in a subdirectory of a git tree. I suppose we can try it > > > recursively until we hit /, but it seems just as easy and clear to tell > > > the user > > > whats needed. > > > > No I'm saying that you could avoid this check by going into the right > > directory from the beginning. > > We know that the root dir is $(dirname $0)/.. because this script is in > > scripts/ directory. > > > That only helps if you start from the right directory. If you run this > command > from some other location, your solution just breaks.
Why it would break? $(dirname $0) is always reachable because you launched $0. The only exception is for the case the PATH variable is used to find the DPDK scripts/ directory (should not happen). > > > > > +# Make sure we configure SHARED libraries > > > > > +# Also turn off IGB and KNI as those require kernel headers to build > > > > > +sed -i -e"$ a\CONFIG_RTE_BUILD_SHARED_LIB=y" config/defconfig_$TARGET > > > > > +sed -i -e"$ a\CONFIG_RTE_EAL_IGB_UIO=n" config/defconfig_$TARGET > > > > > +sed -i -e"$ a\CONFIG_RTE_LIBRTE_KNI=n" config/defconfig_$TARGET > > > > > > > > Why not tuning configuration after make config in .config file? > > > > > > > Because this way we save a reconfig (from a developer viewpoint), you > > > should run > > > make config again after changing configs, and so this way you save doing > > > that. > > > > No, you run make config once and update .config file. That's the recommended > > way to configure DPDK. > > defconfig files are default configurations and should stay read-only. > > They get overwritten when we do the git resets. Its silly to modify your > config > file after you run make config, in the event the make target has to re-read > any > modified options and adjust dependent config files accordingly. I understand > that doesn't happen now, but its common practice for every open source project > in existance. I'm not sure to understand. Maybe an example would help. By the way, your method works.