blob: 82631924db2323283ecf87b802890b0c74e0dcae [file] [log] [blame]
# Makefile for drbd.o
#
# This file is part of DRBD by Philipp Reisner and Lars Ellenberg.
#
# drbd 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; either version 2, or (at your option)
# any later version.
#
# drbd is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with drbd; see the file COPYING. If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
#
VPATH = ../shared
# variables set by configure
DISTRO = @DISTRO@
prefix = @prefix@
exec_prefix = @exec_prefix@
localstatedir = @localstatedir@
datarootdir = @datarootdir@
datadir = @datadir@
sbindir = @sbindir@
sysconfdir = @sysconfdir@
BASH_COMPLETION_SUFFIX = @BASH_COMPLETION_SUFFIX@
UDEV_RULE_SUFFIX = @UDEV_RULE_SUFFIX@
INITDIR = @INITDIR@
LIBDIR = @prefix@/lib/@PACKAGE_TARNAME@
CC = @CC@
CFLAGS = @CFLAGS@
LDFLAGS = @LDFLAGS@
LN_S = @LN_S@
# features enabled or disabled by configure
WITH_84_SUPPORT = @WITH_84_SUPPORT@
WITH_UDEV = @WITH_UDEV@
WITH_XEN = @WITH_XEN@
WITH_PACEMAKER = @WITH_PACEMAKER@
WITH_RGMANAGER = @WITH_RGMANAGER@
WITH_BASHCOMPLETION = @WITH_BASHCOMPLETION@
# variables meant to be overridden from the make command line
DESTDIR ?= /
CFLAGS += -Wall -I. -I../shared
CFLAGS += $(EXTRA_CFLAGS)
GENETLINK_H := /usr/include/linux/genetlink.h
libgenl.o: CFLAGS += $(shell for w in CTRL_ATTR_VERSION CTRL_ATTR_HDRSIZE CTRL_ATTR_MCAST_GROUPS; do grep -qw $$w $(GENETLINK_H) && echo -DHAVE_$$w; done)
drbdadm-obj = drbdadm_scanner.o drbdadm_parser.o drbdadm_main.o \
drbdadm_adjust.o drbdtool_common.o drbdadm_usage_cnt.o \
drbd_buildtag.o registry.o config_flags.o libgenl.o \
drbd_nla.o shared_tool.o shared_main.o shared_parser.o
drbdsetup-obj = libgenl.o registry.o drbdsetup.o drbdtool_common.o \
drbd_buildtag.o drbd_strings.o config_flags.o drbd_nla.o \
wrap_printf.o drbdsetup_colors.o shared_tool.o
all-obj := $(drbdadm-obj) $(drbdsetup-obj)
all: tools
../shared_prereqs.mk: ;
include ../shared_prereqs.mk
ifeq ($(WITH_84_SUPPORT),yes)
tools: drbdadm-84 drbdsetup-84
else
tools:
endif
.PHONY: drbdadm drbdsetup
drbdadm drbdsetup:
echo >&2 "You meant to ask for $@-84" ; exit 1
drbdadm-84: $(drbdadm-obj)
$(LINK.c) $(LDFLAGS) -o $@ $^
drbdadm_scanner.c: drbdadm_scanner.fl drbdadm_parser.h
flex -s -odrbdadm_scanner.c drbdadm_scanner.fl
drbdsetup-84: $(drbdsetup-obj)
$(LINK.c) $(LDFLAGS) -o $@ $^
clean:
rm -f drbdadm_scanner.c
rm -f drbdsetup-84 drbdadm-84 $(all-obj)
rm -f *~
distclean: clean
rm -f $(all-dep)
install:
ifeq ($(WITH_84_SUPPORT),yes)
install -d $(DESTDIR)$(localstatedir)/lib/drbd
install -d $(DESTDIR)$(localstatedir)/lock
install -d $(DESTDIR)/lib/drbd/
if getent group haclient > /dev/null 2> /dev/null ; then \
install -g haclient -m 4750 drbdsetup-84 $(DESTDIR)/lib/drbd/ ; \
install -m 755 drbdadm-84 $(DESTDIR)/lib/drbd/ ; \
else \
install -m 755 drbdsetup-84 $(DESTDIR)/lib/drbd/ ; \
install -m 755 drbdadm-84 $(DESTDIR)/lib/drbd/ ; \
fi
endif
uninstall:
rm -f $(DESTDIR)/lib/drbd/drbdsetup-84
rm -f $(DESTDIR)/lib/drbd/drbdadm-84
spell:
for f in drbdadm_adjust.c drbdadm_main.c drbdadm_parser.c drbdadm_usage_cnt.c drbdsetup.c drbdtool_common.c; do \
aspell --save-repl --dont-backup --personal=./../documentation/aspell.en.per check $$f; \
done
.PHONY: install uninstall clean distclean
../../configure:
@echo "please (re-)run ./autogen.sh with appropriate arguments"; exit 1
../../config.status: ../../configure
@echo "please (re-)run ./configure with appropriate arguments"; exit 1
Makefile.in: ;
Makefile: Makefile.in ../../config.status
cd ../.. && ./config.status user/v84/Makefile