|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Copyright 2014-2018, Intel Corporation
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Redistribution and use in source and binary forms, with or without
|
|
Packit |
95bb47 |
# modification, are permitted provided that the following conditions
|
|
Packit |
95bb47 |
# are met:
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# * Redistributions of source code must retain the above copyright
|
|
Packit |
95bb47 |
# notice, this list of conditions and the following disclaimer.
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# * Redistributions in binary form must reproduce the above copyright
|
|
Packit |
95bb47 |
# notice, this list of conditions and the following disclaimer in
|
|
Packit |
95bb47 |
# the documentation and/or other materials provided with the
|
|
Packit |
95bb47 |
# distribution.
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# * Neither the name of the copyright holder nor the names of its
|
|
Packit |
95bb47 |
# contributors may be used to endorse or promote products derived
|
|
Packit |
95bb47 |
# from this software without specific prior written permission.
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
Packit |
95bb47 |
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
Packit |
95bb47 |
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
Packit |
95bb47 |
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
Packit |
95bb47 |
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
Packit |
95bb47 |
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
Packit |
95bb47 |
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
Packit |
95bb47 |
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
Packit |
95bb47 |
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
Packit |
95bb47 |
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
Packit |
95bb47 |
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Makefile -- top-level Makefile for PMDK
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make" to build the library.
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make doc" to build documentation.
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make test" to build unit tests. Add "SKIP_SYNC_REMOTES=y" to skip
|
|
Packit |
95bb47 |
# or "FORCE_SYNC_REMOTES=y" to force syncing remote nodes if any is defined.
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make check" to run unit tests.
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make check-remote" to run only remote unit tests.
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make clean" to delete all intermediate files (*.o, etc).
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make clobber" to delete everything re-buildable (binaries, etc.).
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make cstyle" to run cstyle on all C source files
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make check-license" to check copyright and license in all source files
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make rpm" to build rpm packages
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make dpkg" to build dpkg packages
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# Use "make source DESTDIR=path_to_dir" to copy source files
|
|
Packit |
95bb47 |
# from HEAD to 'path_to_dir/pmdk' directory.
|
|
Packit |
95bb47 |
#
|
|
Packit |
95bb47 |
# As root, use "make install" to install the library in the usual
|
|
Packit |
95bb47 |
# locations (/usr/local/lib, /usr/local/include, and /usr/local/share/man).
|
|
Packit |
95bb47 |
# You can provide custom directory prefix for installation using
|
|
Packit |
95bb47 |
# DESTDIR variable e.g.: "make install DESTDIR=/opt"
|
|
Packit |
95bb47 |
# You can override the prefix within DESTDIR using prefix variable
|
|
Packit |
95bb47 |
# e.g.: "make install prefix=/usr"
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
include src/common.inc
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
RPM_BUILDDIR=rpmbuild
|
|
Packit |
95bb47 |
DPKG_BUILDDIR=dpkgbuild
|
|
Packit |
95bb47 |
EXPERIMENTAL ?= n
|
|
Packit |
95bb47 |
BUILD_PACKAGE_CHECK ?= y
|
|
Packit |
95bb47 |
BUILD_RPMEM ?= y
|
|
Packit |
95bb47 |
TEST_CONFIG_FILE ?= "$(CURDIR)"/src/test/testconfig.sh
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
rpm : override DESTDIR="$(CURDIR)/$(RPM_BUILDDIR)"
|
|
Packit |
95bb47 |
dpkg: override DESTDIR="$(CURDIR)/$(DPKG_BUILDDIR)"
|
|
Packit |
95bb47 |
rpm dpkg: override prefix=/usr
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
all:
|
|
Packit |
95bb47 |
$(MAKE) -C src $@
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
doc:
|
|
Packit |
95bb47 |
$(MAKE) -C doc all
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
clean:
|
|
Packit |
95bb47 |
$(MAKE) -C src $@
|
|
Packit |
95bb47 |
$(MAKE) -C doc $@
|
|
Packit |
95bb47 |
$(MAKE) -C utils $@
|
|
Packit |
95bb47 |
$(RM) -r $(RPM_BUILDDIR) $(DPKG_BUILDDIR)
|
|
Packit |
95bb47 |
$(RM) -f $(GIT_VERSION)
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
clobber:
|
|
Packit |
95bb47 |
$(MAKE) -C src $@
|
|
Packit |
95bb47 |
$(MAKE) -C doc $@
|
|
Packit |
95bb47 |
$(MAKE) -C utils $@
|
|
Packit |
95bb47 |
$(RM) -r $(RPM_BUILDDIR) $(DPKG_BUILDDIR) rpm dpkg
|
|
Packit |
95bb47 |
$(RM) -f $(GIT_VERSION)
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
test check pcheck check-remote: all
|
|
Packit |
95bb47 |
$(MAKE) -C src $@
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
cstyle:
|
|
Packit |
95bb47 |
@utils/check-commit.sh
|
|
Packit |
95bb47 |
$(MAKE) -C src $@
|
|
Packit |
95bb47 |
$(MAKE) -C utils $@
|
|
Packit |
95bb47 |
@echo Checking files for whitespace issues...
|
|
Packit |
95bb47 |
@utils/check_whitespace -g
|
|
Packit |
95bb47 |
@echo Done.
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
format:
|
|
Packit |
95bb47 |
$(MAKE) -C src $@
|
|
Packit |
95bb47 |
$(MAKE) -C utils $@
|
|
Packit |
95bb47 |
@echo Done.
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
check-license:
|
|
Packit |
95bb47 |
$(MAKE) -C utils $@
|
|
Packit |
95bb47 |
@utils/check_license/check-headers.sh \
|
|
Packit |
95bb47 |
$(TOP) \
|
|
Packit |
95bb47 |
utils/check_license/check-license \
|
|
Packit |
95bb47 |
LICENSE
|
|
Packit |
95bb47 |
@echo Done.
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
sparse:
|
|
Packit |
95bb47 |
$(MAKE) -C src sparse
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
source:
|
|
Packit |
95bb47 |
$(if "$(DESTDIR)", , $(error Please provide DESTDIR variable))
|
|
Packit |
95bb47 |
+utils/copy-source.sh "$(DESTDIR)" $(SRCVERSION)
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
pkg-clean:
|
|
Packit |
95bb47 |
$(RM) -r "$(DESTDIR)"
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
rpm dpkg: pkg-clean
|
|
Packit |
95bb47 |
$(MAKE) source DESTDIR="$(DESTDIR)"
|
|
Packit |
95bb47 |
+utils/build-$@.sh -t $(SRCVERSION) -s "$(DESTDIR)"/pmdk -w "$(DESTDIR)" -o $(CURDIR)/$@\
|
|
Packit |
95bb47 |
-e $(EXPERIMENTAL) -c $(BUILD_PACKAGE_CHECK) -r $(BUILD_RPMEM)\
|
|
Packit |
95bb47 |
-f $(TEST_CONFIG_FILE) -n $(NDCTL_ENABLE)
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
install uninstall:
|
|
Packit |
95bb47 |
$(MAKE) -C src $@
|
|
Packit |
95bb47 |
$(MAKE) -C doc $@
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
.PHONY: all clean clobber test check cstyle check-license install uninstall\
|
|
Packit |
95bb47 |
source rpm dpkg pkg-clean pcheck check-remote format doc $(SUBDIRS)
|