diff --git a/Makefile b/Makefile index c12da640675755912aea8c17a3fc93288c52f1f9..a44fe088cb79ee5ba41677513d96884ef57161fe 100644 --- a/Makefile +++ b/Makefile @@ -45,7 +45,6 @@ EXPERIMENTAL ?= n BUILD_PACKAGE_CHECK ?= y BUILD_RPMEM ?= y TEST_CONFIG_FILE ?= "$(CURDIR)"/src/test/testconfig.sh -PMEM2_INSTALL ?= n DOC ?= y rpm : override DESTDIR="$(CURDIR)/$(RPM_BUILDDIR)" @@ -122,7 +121,7 @@ rpm dpkg: pkg-clean $(MAKE) source DESTDIR="$(DESTDIR)" +utils/build-$@.sh -t $(SRCVERSION) -s "$(DESTDIR)"/pmdk -w "$(DESTDIR)" -o $(CURDIR)/$@\ -e $(EXPERIMENTAL) -c $(BUILD_PACKAGE_CHECK) -r $(BUILD_RPMEM)\ - -f $(TEST_CONFIG_FILE) -n $(NDCTL_ENABLE) -p $(PMEM2_INSTALL) + -f $(TEST_CONFIG_FILE) -n $(NDCTL_ENABLE) install: all diff --git a/doc/Makefile b/doc/Makefile index 1ab350594717d2a7c43862d8791fde51415749ec..ffff0565428bd7564c006068707ca516b6107a08 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -112,11 +112,9 @@ MANPAGES_3_MD_PMEM2 = libpmem2/pmem2_errormsg.3.md libpmem2/pmem2_config_new.3.m libpmem2/pmem2_source_get_handle.3.md MANPAGES_1_MD_PMEM2 = -ifeq ($(PMEM2_INSTALL),y) MANPAGES_3_DUMMY += libpmem2/pmem2_config_delete.3 libpmem2/pmem2_source_from_handle.3 libpmem2/pmem2_source_delete.3 \ libpmem2/pmem2_get_memset_fn.3 libpmem2/pmem2_get_memcpy_fn.3 libpmem2/pmem2_vm_reservation_delete.3 \ libpmem2/pmem2_badblock_context_delete.3 -endif ifeq ($(BUILD_RPMEM),y) MANPAGES_7_MD += librpmem/librpmem.7.md @@ -160,17 +158,10 @@ MANPAGES_3_NOINSTALL += $(MANPAGES_3_GROFF_EXP) MANPAGES_1_NOINSTALL += $(MANPAGES_1_GROFF_EXP) endif -ifeq ($(PMEM2_INSTALL),y) MANPAGES_7_GROFF += $(MANPAGES_7_GROFF_PMEM2) MANPAGES_5_GROFF += $(MANPAGES_5_GROFF_PMEM2) MANPAGES_3_GROFF += $(MANPAGES_3_GROFF_PMEM2) MANPAGES_1_GROFF += $(MANPAGES_1_GROFF_PMEM2) -else -MANPAGES_7_NOINSTALL += $(MANPAGES_7_GROFF_PMEM2) -MANPAGES_5_NOINSTALL += $(MANPAGES_5_GROFF_PMEM2) -MANPAGES_3_NOINSTALL += $(MANPAGES_3_GROFF_PMEM2) -MANPAGES_1_NOINSTALL += $(MANPAGES_1_GROFF_PMEM2) -endif MANPAGES_7_MD_WEB = $(MANPAGES_7_MD_PMEM2) + $(MANPAGES_7_MD) MANPAGES_5_MD_WEB = $(MANPAGES_5_MD_PMEM2) + $(MANPAGES_5_MD) diff --git a/src/Makefile b/src/Makefile index 8923a265a07e5a24cd4dde82f0ba188422fc75a1..7e208046c9051c94a5c34fa6fdf40597c2a7d513 100644 --- a/src/Makefile +++ b/src/Makefile @@ -8,12 +8,12 @@ TOP := $(dir $(lastword $(MAKEFILE_LIST))).. include $(TOP)/src/common.inc # core targets -TARGETS = libpmem libpmemblk libpmemlog libpmemobj libpmempool tools +TARGETS = libpmem libpmemblk libpmemlog libpmemobj libpmempool tools libpmem2 # make all targets -ALL_TARGETS = $(TARGETS) common core librpmem libpmem2 +ALL_TARGETS = $(TARGETS) common core librpmem # all available targets POSSIBLE_TARGETS = $(TARGETS) common core librpmem rpmem_common test\ - examples benchmarks libpmem2 + examples benchmarks SCOPE_DIRS = $(TARGETS) common core librpmem rpmem_common @@ -36,31 +36,26 @@ CLOBBER_TARGETS = $(POSSIBLE_TARGETS) CSTYLE_TARGETS = $(POSSIBLE_TARGETS) INSTALL_TARGETS = $(TARGETS) SPARSE_TARGETS = $(POSSIBLE_TARGETS) -EXAMPLES_TARGETS = $(TARGETS) librpmem libpmem2 +EXAMPLES_TARGETS = $(TARGETS) librpmem HEADERS_DESTDIR = $(DESTDIR)$(includedir) HEADERS_INSTALL = include/libpmem.h\ include/libpmemobj.h include/libpmempool.h\ - include/libpmemblk.h include/libpmemlog.h + include/libpmemblk.h include/libpmemlog.h\ + include/libpmem2.h OBJ_HEADERS_INSTALL = include/libpmemobj/*.h PKG_CONFIG_DESTDIR = $(DESTDIR)$(pkgconfigdir) PKG_CONFIG_COMMON = common.pc PKG_CONFIG_FILES = libpmem.pc libpmemobj.pc libpmemlog.pc libpmemblk.pc\ - libpmempool.pc + libpmempool.pc libpmem2.pc PMREORDER_BIN = $(DESTDIR)$(bindir) PMREORDER_SRC = tools/pmreorder PMREORDER_FILES = $(PMREORDER_SRC)/*.py PMREORDER_DESTDIR = $(DESTDIR)$(datarootdir)/pmreorder PMREORDER_ROOTDIR = $(datarootdir)/pmreorder -ifeq ($(PMEM2_INSTALL),y) - PKG_CONFIG_FILES += libpmem2.pc - HEADERS_INSTALL += include/libpmem2.h - INSTALL_TARGETS += libpmem2 -endif - ifeq ($(BUILD_RPMEM),y) PKG_CONFIG_FILES += librpmem.pc HEADERS_INSTALL += include/librpmem.h diff --git a/src/include/README b/src/include/README index 7aedf77c864783eaa0841d3d326147afb6a6a93d..6cd9ebbf16f3da3d7d6181f598b73264bb0d0a55 100644 --- a/src/include/README +++ b/src/include/README @@ -14,6 +14,8 @@ Here you'll find: libpmem.h -- definitions of libpmem entry points (see libpmem(7)) +libpmem2.h -- definitions of libpmem2 entry points (see libpmem2(7)) + libpmemblk.h -- definitions of libpmemblk entry points (see libpmemblk(7)) libpmemlog.h -- definitions of libpmemlog entry points (see libpmemlog(7)) diff --git a/src/include/libpmem2.h b/src/include/libpmem2.h index 4d2e6027cf4bd0d712757484f9292146f2d5abcc..37fb24a0da27409d06e1c05a25518fe26de4517f 100644 --- a/src/include/libpmem2.h +++ b/src/include/libpmem2.h @@ -2,7 +2,7 @@ /* Copyright 2019-2020, Intel Corporation */ /* - * libpmem2.h -- definitions of libpmem2 entry points (EXPERIMENTAL) + * libpmem2.h -- definitions of libpmem2 entry points * * This library provides support for programming with persistent memory (pmem). * diff --git a/src/libpmem2/libpmem2.rc b/src/libpmem2/libpmem2.rc index b4a37dade1b361fe72e1dc253522356ed176cea4..d077a0a14d84b3b3c0bf1944f48748dccc290b1f 100644 --- a/src/libpmem2/libpmem2.rc +++ b/src/libpmem2/libpmem2.rc @@ -7,6 +7,6 @@ #include <windows.h> #define FILE_NAME "libpmem2.dll" -#define DESCRIPTION "libpmem2 - persistent memory support library v2 (EXPERIMENTAL)" +#define DESCRIPTION "libpmem2 - persistent memory support library v2" #define TYPE VFT_DLL #include <common.rc> diff --git a/utils/build-dpkg.sh b/utils/build-dpkg.sh index 8297c50aaeeda862339ac6b61fc5362d027c2792..cb96f4185ae8d1219e1a6499fe33aadf0a32c141 100755 --- a/utils/build-dpkg.sh +++ b/utils/build-dpkg.sh @@ -21,7 +21,6 @@ usage() Usage: $0 [ -h ] -t version-tag -s source-dir -w working-dir -o output-dir [ -e build-experimental ] [ -c run-check ] [ -n with-ndctl ] [ -f testconfig-file ] - [ -p build-libpmem2 ] -h print this help message -t version-tag source version tag @@ -32,7 +31,6 @@ Usage: $0 [ -h ] -t version-tag -s source-dir -w working-dir -o output-dir -c run-check run package check -n with-ndctl build with libndctl -f testconfig-file custom testconfig.sh --p build-libpmem2 build libpmem2 packages EOF exit 1 } @@ -40,7 +38,7 @@ EOF # # command-line argument processing... # -args=`getopt he:c:r:n:t:d:s:w:o:f:p: $*` +args=`getopt he:c:r:n:t:d:s:w:o:f: $*` [ $? != 0 ] && usage set -- $args for arg @@ -84,10 +82,6 @@ do OUT_DIR="$2" shift 2 ;; - -p) - PMEM2_INSTALL="$2" - shift 2 - ;; --) shift break @@ -102,6 +96,8 @@ then usage fi +PMEM2_INSTALL="y" + PREFIX=usr LIB_DIR=$PREFIX/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH) INC_DIR=$PREFIX/include @@ -277,7 +273,7 @@ Depends: \${shlibs:Depends}, \${misc:Depends} Description: Persistent Memory low level support library libpmem2 provides low level persistent memory support. In particular, support for the persistent memory instructions for flushing changes to pmem is - provided. (EXPERIMENTAL) + provided. Package: libpmem2-dev Section: libdevel @@ -286,7 +282,7 @@ Depends: libpmem2 (=\${binary:Version}), \${shlibs:Depends}, \${misc:Depends} Description: Development files for libpmem2 libpmem2 provides low level persistent memory support. In particular, support for the persistent memory instructions for flushing changes to pmem is - provided. (EXPERIMENTAL) + provided. EOF } diff --git a/utils/build-rpm.sh b/utils/build-rpm.sh index 3c4d93497fca9e04f0d56d61c8afeb0ea8f25058..759a1fe1ce58b4b11693cc95365ccfac3e484168 100755 --- a/utils/build-rpm.sh +++ b/utils/build-rpm.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash # SPDX-License-Identifier: BSD-3-Clause -# Copyright 2014-2019, Intel Corporation +# Copyright 2014-2020, Intel Corporation # # build-rpm.sh - Script for building rpm packages @@ -25,7 +25,6 @@ usage() Usage: $0 [ -h ] -t version-tag -s source-dir -w working-dir -o output-dir [ -d distro ] [ -e build-experimental ] [ -c run-check ] [ -r build-rpmem ] [ -n with-ndctl ] [ -f testconfig-file ] - [ -p build-libpmem2 ] -h print this help message -t version-tag source version tag @@ -38,7 +37,6 @@ Usage: $0 [ -h ] -t version-tag -s source-dir -w working-dir -o output-dir -r build-rpmem build librpmem and rpmemd packages -n with-ndctl build with libndctl -f testconfig-file custom testconfig.sh --p build-libpmem2 build libpmem2 packages EOF exit 1 } @@ -46,7 +44,7 @@ EOF # # command-line argument processing... # -args=`getopt he:c:r:n:t:d:s:w:o:f:p: $*` +args=`getopt he:c:r:n:t:d:s:w:o:f: $*` [ $? != 0 ] && usage set -- $args for arg @@ -94,10 +92,6 @@ do DISTRO="$2" shift 2 ;; - -p) - PMEM2_INSTALL="$2" - shift 2 - ;; --) shift break @@ -130,6 +124,8 @@ if [ "$EXTRA_CFLAGS_RELEASE" = "" ]; then export EXTRA_CFLAGS_RELEASE="-ggdb -fno-omit-frame-pointer" fi +PMEM2_INSTALL="y" + LIBFABRIC_MIN_VERSION=1.4.2 NDCTL_MIN_VERSION=60.1 diff --git a/utils/libpmem2.pc.in b/utils/libpmem2.pc.in index 255679b41a6e9985b0442122fb4b9fa76dcd0e03..d4ddc907cf87762c8e2d764ac2faa8393fcd1ca3 100644 --- a/utils/libpmem2.pc.in +++ b/utils/libpmem2.pc.in @@ -1,7 +1,7 @@ includedir=${prefix}/include Name: libpmem2 -Description: libpmem2 library from PMDK project (EXPERIMENTAL) +Description: libpmem2 library from PMDK project Version: ${version} URL: https://pmem.io/pmdk Requires: diff --git a/utils/pmdk.spec.in b/utils/pmdk.spec.in index e8c2fd20d01ea24e992739c099c5331ca395296f..094e9d0b4d17aba72f92a9eb7b3461cef3ca7c36 100644 --- a/utils/pmdk.spec.in +++ b/utils/pmdk.spec.in @@ -4,7 +4,6 @@ # --with | --without ndctl # --define _testconfig <path to custom testconfig.sh> # --define _skip_check 1 -# --define _pmem2_install 1 # do not terminate build if files in the $RPM_BUILD_ROOT # directory are not found in the %files (without rpmem case) @@ -92,10 +91,8 @@ The Persistent Memory Development Kit is a collection of libraries for using memory-mapped persistence, optimized specifically for persistent memory. -%if 0%{?_pmem2_install} == 1 - %package -n libpmem2__PKG_NAME_SUFFIX__ -Summary: Low-level persistent memory support library (EXPERIMENTAL) +Summary: Low-level persistent memory support library Group: __GROUP_SYS_LIBS__ %description -n libpmem2__PKG_NAME_SUFFIX__ The libpmem2 provides low level persistent memory support. In particular, @@ -112,7 +109,7 @@ to pmem is provided. %package -n libpmem2-devel -Summary: Development files for the low-level persistent memory library (EXPERIMENTAL) +Summary: Development files for the low-level persistent memory library Group: __GROUP_DEV_LIBS__ Requires: libpmem2__PKG_NAME_SUFFIX__ = %{version}-%{release} %description -n libpmem2-devel @@ -137,7 +134,7 @@ convenient. %package -n libpmem2-debug -Summary: Debug variant of the low-level persistent memory library (EXPERIMENTAL) +Summary: Debug variant of the low-level persistent memory library Group: __GROUP_DEV_LIBS__ Requires: libpmem2__PKG_NAME_SUFFIX__ = %{version}-%{release} %description -n libpmem2-debug @@ -158,8 +155,6 @@ debug version is to set the environment variable LD_LIBRARY_PATH to %license LICENSE %doc ChangeLog CONTRIBUTING.md README.md -# end of "if _pmem2_install" -%endif %package -n libpmem__PKG_NAME_SUFFIX__