[dpdk-dev] [virtio-net-pmd PATCH 11/16] mk: allow to install lib and doc

Thomas Monjalon thomas.monjalon at 6wind.com
Tue Feb 4 16:54:26 CET 2014


Signed-off-by: Thomas Monjalon <thomas.monjalon at 6wind.com>
---
 Makefile |   30 ++++++++++++++++++++++++++++--
 1 file changed, 28 insertions(+), 2 deletions(-)

diff --git a/Makefile b/Makefile
index 4ff4c1d..100864d 100644
--- a/Makefile
+++ b/Makefile
@@ -30,6 +30,7 @@
 # OF THE POSSIBILITY OF SUCH DAMAGE.
 
 SOLIB = librte_pmd_virtio.so
+DOC = dpdk-virtio-net-pmd.rst
 
 CC = $(CROSS)gcc
 override CPPFLAGS += -Wall -Wextra -Werror
@@ -39,6 +40,12 @@ override LDFLAGS  += -shared
 S ?= .
 O ?= .
 
+prefix ?= /usr/local
+exec_prefix ?= $(prefix)
+libdir ?= $(exec_prefix)/lib
+datarootdir ?= $(prefix)/share
+docdir ?= $(datarootdir)/doc/dpdk
+
 all : $O/$(SOLIB)
 
 $O :
@@ -52,19 +59,38 @@ endif
 		-I$(RTE_INCLUDE) -include $(RTE_INCLUDE)/rte_config.h \
 		-o $@ $<
 
+install : $(DESTDIR)$(libdir)/$(SOLIB)
+$(DESTDIR)$(libdir)/$(SOLIB): $O/$(SOLIB)
+	install -D -m 644 $< $@
+
+install : $(DESTDIR)$(docdir)/$(DOC)
+$(DESTDIR)$(docdir)/$(DOC) : $S/README.rst
+	install -D -m 644 $< $@
+
 clean :
 	- rm -f $O/$(SOLIB)
 ifneq '$(abspath $O)' '$(CURDIR)'
 	- rmdir -p $O 2>&-
 endif
 
+uninstall :
+	- rm -f $(DESTDIR)$(libdir)/$(SOLIB)
+	- rmdir -p $(DESTDIR)$(libdir) 2>&-
+	- rm -f $(DESTDIR)$(docdir)/$(DOC)
+	- rmdir -p $(DESTDIR)$(docdir) 2>&-
+
 help :
 	@ echo 'rules:'
 	@ echo '    all (default)'
 	@ echo '    clean'
-	@ echo 'variables:'
+	@ echo '    install'
+	@ echo '    uninstall'
+	@ echo 'build variables:'
 	@ echo '    RTE_INCLUDE (e.g. ../dpdk/build/include),'
 	@ echo '    CPPFLAGS, CFLAGS, LDFLAGS,'
 	@ echo '    S (source directory), O (build directory)'
+	@ echo 'install variables:'
+	@ echo '    DESTDIR (optional),'
+	@ echo '    prefix, exec_prefix, libdir, datarootdir, docdir'
 
-.PHONY : all clean help
+.PHONY : all clean install uninstall help
-- 
1.7.10.4



More information about the dev mailing list