Trying to install headers for an external library using DPDK exported makefile
rte.extshared.mk results in following error :
$ cd dpdk
$ make install DESTDIR=/home/marchand/myapp/staging/plop 
T=x86_64-default-linuxapp-gcc
$ cd ~/myapp
$ make RTE_SDK=/home/marchand/myapp/staging/plop 
RTE_TARGET=x86_64-default-linuxapp-gcc
  CC plop.o
  LD plop.so
  SYMLINK-FILE include/plop.h
/bin/sh:
/home/marchand/myapp/staging/plop/scripts/relpath.sh: No such file or directory
ln: `/home/marchand/myapp/build/include' and `./include' are the same file
make[1]: *** [/home/marchand/myapp/build/include/plop.h] Error 1
make: *** [all] Error 2

This comes from the fact that DPDK only installs its mk/ directory while some
makefiles require the scripts/ directory content as well.

So install missing files from scripts/.

Signed-off-by: David Marchand <david.marchand at 6wind.com>
---
 mk/rte.sdkbuild.mk |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mk/rte.sdkbuild.mk b/mk/rte.sdkbuild.mk
index 2975ee4..d4d6c05 100644
--- a/mk/rte.sdkbuild.mk
+++ b/mk/rte.sdkbuild.mk
@@ -63,7 +63,7 @@ build: $(ROOTDIRS-y)
        @echo Build complete
 ifneq ($(DESTDIR),)
        $(Q)mkdir -p $(DESTDIR)
-       $(Q)tar -C $(RTE_SDK) -cf - mk | tar -C $(DESTDIR) -x \
+       $(Q)tar -C $(RTE_SDK) -cf - mk scripts/*.sh | tar -C $(DESTDIR) -x \
          --keep-newer-files --warning=no-ignore-newer -f -
        $(Q)mkdir -p $(DESTDIR)/`basename $(RTE_OUTPUT)`
        $(Q)tar -C $(RTE_OUTPUT) -chf - \
-- 
1.7.10.4

Reply via email to