# make.tmpl. Generated from make.tmpl.in by configure. # # Copyright (C) 2001-2004 Sistina Software, Inc. All rights reserved. # Copyright (C) 2004-2009 Red Hat, Inc. All rights reserved. # # This file is part of LVM2. # # This copyrighted material is made available to anyone wishing to use, # modify, copy, or redistribute it subject to the terms and conditions # of the GNU General Public License v.2. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, # Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA SHELL = /bin/sh CC = gcc RANLIB = ranlib SHELL = /bin/sh INSTALL = /usr/bin/install -c MKDIR_P = autoconf/install-sh -c -d MSGFMT = LCOV = GENHTML = LN_S = ln -s SED = /usr/bin/sed LIBS = DEFS += -DHAVE_CONFIG_H CFLAGS += -g -O2 CLDFLAGS += LDDEPS += LDFLAGS += LIB_SUFFIX = # Setup directory variables prefix = /usr exec_prefix = udev_prefix = ${exec_prefix} bindir = $(DESTDIR)${exec_prefix}/bin confdir = $(DESTDIR)/etc/lvm includedir = $(DESTDIR)${prefix}/include libdir = $(DESTDIR)${exec_prefix}/lib usrlibdir = $(DESTDIR)${prefix}/lib sbindir = $(DESTDIR)${exec_prefix}/sbin usrsbindir = $(DESTDIR)${prefix}/sbin infodir = $(DESTDIR)${prefix}/share/info mandir = $(DESTDIR)${prefix}/share/man localedir = $(DESTDIR) staticdir = $(DESTDIR)${exec_prefix}/sbin udevdir = $(DESTDIR)${udev_prefix}/lib/udev/rules.d interface = ioctl interfacedir = $(top_srcdir)/libdm/$(interface) # setup misc variables # define the ownership variables for the binaries and man pages OWNER = GROUP = # The number of jobs to run, if blank, defaults to the make standard ifndef MAKEFLAGS MAKEFLAGS = endif .SUFFIXES: .c .d .o .so .a .po .pot .mo .dylib CFLAGS += -fPIC -Wall -Wundef -Wshadow -Wcast-align -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline -Wmissing-noreturn -Wformat-security #CFLAGS += -W -Wconversion -Wpointer-arith -Wredundant-decls -Wbad-function-cast -Wcast-qual #CFLAGS += -pedantic -std=gnu99 CFLAGS += ifeq ("no", "yes") CFLAGS += -g -fno-omit-frame-pointer DEFS += -DDEBUG DEFS += -DDEBUG_MEM endif ifeq ("no", "yes") DEFS += -DINTL_PACKAGE=\"\" -DLOCALEDIR=\"\" endif LDFLAGS += -L$(top_builddir)/libdm -L$(top_builddir)/lib CLDFLAGS += -L$(top_builddir)/libdm -L$(top_builddir)/lib ifeq ("", "yes") LDFLAGS += -L$(top_builddir)/daemons/dmeventd CLDFLAGS += -L$(top_builddir)/daemons/dmeventd endif ifeq ("no", "yes") DEFS += -DDM_COMPAT endif ifeq ("", "yes") DEFS += -DDM_IOCTLS endif #DEFS += -DDEBUG_POOL #DEFS += -DBOUNDS_CHECK #CFLAGS += -pg #LDFLAGS += -pg STRIP= #STRIP = -s LVM_VERSION := $(shell cat $(top_srcdir)/VERSION) LIB_VERSION_LVM := $(shell cat $(top_srcdir)/VERSION | \ awk -F '.' '{printf "%s.%s",$$1,$$2}') LIB_VERSION_DM := $(shell cat $(top_srcdir)/VERSION_DM | \ awk -F '.' '{printf "%s.%s",$$1,$$2}') LIB_VERSION_APP := $(shell cat $(top_srcdir)/VERSION | \ awk -F '[(). ]' '{printf "%s.%s",$$1,$$4}') INCLUDES += -I. -I$(top_builddir)/include INC_LNS = $(top_builddir)/include/.symlinks_created DEPS = $(top_builddir)/make.tmpl $(top_srcdir)/VERSION \ $(top_builddir)/Makefile $(INC_LNS) OBJECTS = $(SOURCES:%.c=%.o) POTFILES = $(SOURCES:%.c=%.pot) .PHONY: all install install_cluster pofile distclean clean cflow device-mapper .PHONY: install_device-mapper install_lvm2 .PHONY: $(SUBDIRS) $(SUBDIRS.install) $(SUBDIRS.clean) $(SUBDIRS.distclean) .PHONY: $(SUBDIRS.pofile) $(SUBDIRS.install_cluster) $(SUBDIRS.cflow) .PHONY: $(SUBDIRS.device-mapper) $(SUBDIRS.install-device-mapper) SUBDIRS.device-mapper := $(SUBDIRS:=.device-mapper) SUBDIRS.install := $(SUBDIRS:=.install) SUBDIRS.install_cluster := $(SUBDIRS:=.install_cluster) SUBDIRS.install_device-mapper := $(SUBDIRS:=.install_device-mapper) SUBDIRS.install_lvm2 := $(SUBDIRS:=.install_lvm2) SUBDIRS.pofile := $(SUBDIRS:=.pofile) SUBDIRS.cflow := $(SUBDIRS:=.cflow) SUBDIRS.clean := $(SUBDIRS:=.clean) SUBDIRS.distclean := $(SUBDIRS:=.distclean) TARGETS += $(LIB_SHARED) $(LIB_STATIC) $(VERSIONED_SHLIB) all: $(SUBDIRS) $(TARGETS) install: all $(SUBDIRS.install) install_cluster: all $(SUBDIRS.install_cluster) install_device-mapper: $(SUBDIRS.install_device-mapper) install_lvm2: $(SUBDIRS.install_lvm2) $(SUBDIRS): $(SUBDIRS.device-mapper) $(MAKE) -C $@ $(SUBDIRS.device-mapper): $(MAKE) -C $(@:.device-mapper=) device-mapper $(SUBDIRS.install): $(SUBDIRS) $(MAKE) -C $(@:.install=) install $(SUBDIRS.install_cluster): $(SUBDIRS) $(MAKE) -C $(@:.install_cluster=) install_cluster $(SUBDIRS.install_device-mapper): device-mapper $(MAKE) -C $(@:.install_device-mapper=) install_device-mapper $(SUBDIRS.install_lvm2): $(SUBDIRS) $(MAKE) -C $(@:.install_lvm2=) install_lvm2 $(SUBDIRS.clean): -$(MAKE) -C $(@:.clean=) clean $(SUBDIRS.distclean): -$(MAKE) -C $(@:.distclean=) distclean ifeq ("no", "yes") pofile: $(SUBDIRS.pofile) $(POTFILES) $(SUBDIRS.pofile): $(MAKE) -C $(@:.pofile=) pofile endif ifneq ("", "") cflow: $(SUBDIRS.cflow) $(SUBDIRS.cflow): $(MAKE) -C $(@:.cflow=) cflow endif $(TARGETS): $(OBJECTS) %.o: %.c $(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $< -o $@ %.pot: %.c Makefile $(CC) -E $(INCLUDES) -include $(top_srcdir)/include/pogen.h \ $(DEFS) $(CFLAGS) $< > $@ %.so: %.o $(CC) -c $(INCLUDES) $(DEFS) $(CFLAGS) $(CLDFLAGS) $< $(LIBS) -o $@ ifeq ("","so") $(LIB_SHARED): $(OBJECTS) $(LDDEPS) $(CC) -shared -Wl,-soname,$(notdir $@).$(LIB_VERSION) \ $(CFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@ endif ifeq ("","dylib") $(LIB_SHARED): $(OBJECTS) $(LDDEPS) $(CC) -dynamiclib -dylib_current_version,$(LIB_VERSION) \ $(CFLAGS) $(CLDFLAGS) $(OBJECTS) $(LIBS) -o $@ endif %.so: %.a $(CC) -shared -Wl,-soname,$(notdir $@).$(LIB_VERSION) \ $(CFLAGS) $(CLDFLAGS) $(LIBS) -o $@ \ $< $(LIB_STATIC): $(OBJECTS) $(RM) $@ $(AR) rs $@ $(OBJECTS) %.d: %.c $(MKDIR_P) $(dir $@); \ set -e; \ FILE=`echo $@ | sed 's/\\//\\\\\\//g;s/\\.d//g'`; \ DEPS=`echo $(DEPS) | sed -e 's/\\//\\\\\\//g'`; \ $(CC) -MM $(INCLUDES) $(DEFS) $(CFLAGS) -o $@ $<; \ sed -i "s/\(.*\)\.o[ :]*/$$FILE.o $$FILE.d $$FILE.pot: $$DEPS /g" $@; \ [ -s $@ ] || $(RM) $@ %.mo: %.po $(MSGFMT) -o $@ $< clean: $(SUBDIRS.clean) $(RM) $(OBJECTS) $(TARGETS) $(CLEAN_TARGETS) $(SOURCES:%.c=%.d) \ $(SOURCES2:%.c=%.d) $(SOURCES:%.c=%.pot) $(SOURCES:%.c=%.gcno) \ $(SOURCES:%.c=%.gcda) $(LDDEPS) distclean: $(SUBDIRS.distclean) $(RM) -rf $(DISTCLEAN_DIRS) $(RM) $(DISTCLEAN_TARGETS) \ $(OBJECTS) $(TARGETS) $(CLEAN_TARGETS) $(SOURCES:%.c=%.d) \ $(SOURCES2:%.c=%.d) $(SOURCES:%.c=%.pot) $(SOURCES:%.c=%.gcno) \ $(SOURCES:%.c=%.gcda) $(LDDEPS) \ config.cache config.log config.status \ Makefile make.tmpl core \ lvm-version.h .export.sym: .exported_symbols set -e; (echo "Base {"; echo " global:"; \ sed "s/^/ /;s/$$/;/" < $<; \ echo " local:"; echo " *;"; echo "};") > $@ ifneq ($(MAKECMDGOALS),clean) ifneq ($(MAKECMDGOALS),distclean) ifdef SOURCES -include $(SOURCES:.c=.d) endif ifdef SOURCES2 -include $(SOURCES2:.c=.d) endif endif endif