From 78d5cad8aedf17d8687975c724bd71bbf2186ffe Mon Sep 17 00:00:00 2001 From: Tobias Klauser Date: Tue, 17 Feb 2015 11:33:18 +0100 Subject: build: Add and document install target Signed-off-by: Tobias Klauser --- Makefile | 21 +++++++++++++++++---- README | 17 +++++++++++++++++ 2 files changed, 34 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 120bc58..a94ea25 100644 --- a/Makefile +++ b/Makefile @@ -7,28 +7,41 @@ OBJS = llmnr.o iface.o socket.o util.o main.o LIBS = -lpthread CC = $(CROSS_COMPILE)gcc +INSTALL = install CFLAGS ?= -W -Wall -O2 LDFLAGS ?= -CCQ = @echo -e " CC\t$<" && $(CC) -LDQ = @echo -e " LD\t$@" && $(CC) - ifeq ($(DEBUG), 1) CFLAGS += -g -DDEBUG endif +CCQ = @echo " CC $<" && $(CC) +LDQ = @echo " LD $@" && $(CC) + +prefix ?= /usr/local + +BINDIR = $(prefix)/bin +DESTDIR = + all: $(P) $(P): $(OBJS) $(LDQ) $(LDFLAGS) -o $@ $(OBJS) $(LIBS) +install_$(P): $(P) + @echo " INSTALL $(P)" + @$(INSTALL) -d -m 755 $(DESTDIR)$(BINDIR) + @$(INSTALL) -m 755 $(P) $(BINDIR)/$(P) + %.o: %.c %.h $(CCQ) $(CFLAGS) -o $@ -c $< %.o: %.c $(CCQ) $(CFLAGS) -o $@ -c $< +install: install_$(P) + clean: - @echo -e " CLEAN" + @echo " CLEAN" @rm -f $(OBJS) $(P) diff --git a/README b/README index 8415143..f60a984 100644 --- a/README +++ b/README @@ -5,6 +5,23 @@ llmnrd is a daemon implementing the Link-Local Multicast Name Resolution (LLMNR) protocol according to RFC 4795. It currently only supports Linux, as it uses the netlink kernel interface. +Installation +------------ + +To build and install llmnrd use the following commands: + +$ make +$ sudo make install + +By default, the llmnrd binary will be installed to /usr/local/sbin. To install +the binary to a different installation path, use: + +$ make +$ sudo make prefix= install + +License +------- + llmnrd is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2 of the License. -- cgit v1.2.3-54-g00ecf