summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYongxin Liu <yongxin.liu@windriver.com>2019-07-19 10:29:56 +0800
committerKhem Raj <raj.khem@gmail.com>2019-07-21 09:31:09 -0700
commitef290c543285f645ff43a53d01b25f2a69f9c1b9 (patch)
tree23f1a0f7cf8e3d94ebadeb77990f9e561e1df22a
parentcfcbbdc48b44fa00f2a1b15ed2f0dc81b8632637 (diff)
downloadmeta-openembedded-ef290c543285f645ff43a53d01b25f2a69f9c1b9.tar.gz
pmdk: update from 1.4.2 to 1.6
1) Use git repo instead of github archive tarball. 2) PMDK libraries can be installed in lib or lib64, depending on host building system. If host has /usr/local/lib64, libraries will be installed in lib64, otherwise they will be installed in lib. PMDK is only for 64-bit system, so use LIB_PREFIX=lib64 to force the install path to be lib64. 3) Use prefix instead of PREFIX to install. 4) Remove unneeded files in /usr/lib64/pmdk_debug. 5) Add "/usr/etc" and "/usr/share" to fix package QA issue. 6) Revise patches for version 1.6. Remove upstream accepted patches. Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch4
-rw-r--r--meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch12
-rw-r--r--meta-oe/recipes-extended/pmdk/files/0003-Makefile-Don-t-build-the-examples.patch14
-rw-r--r--meta-oe/recipes-extended/pmdk/files/0004-os_posix-Manually-implement-secure_getenv-if-require.patch30
-rw-r--r--meta-oe/recipes-extended/pmdk/files/0005-pmempool-Remove-unused-__USE_UNIX98-define.patch30
-rw-r--r--meta-oe/recipes-extended/pmdk/files/0006-Makefile.inc-Allow-extra-libs-to-be-specified.patch29
-rw-r--r--meta-oe/recipes-extended/pmdk/pmdk_1.6.bb (renamed from meta-oe/recipes-extended/pmdk/pmdk_1.4.2.bb)33
7 files changed, 24 insertions, 128 deletions
diff --git a/meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch b/meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch
index 747538b0cb..ca2a1f6430 100644
--- a/meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch
+++ b/meta-oe/recipes-extended/pmdk/files/0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch
@@ -1,4 +1,4 @@
1From 2a22dc96c3bbb5c9bbcc008f58d4f5c64e3d19e6 Mon Sep 17 00:00:00 2001 1From 231eb4c75fbfaaf90bca7702bdaf55cf701a3527 Mon Sep 17 00:00:00 2001
2From: Alistair Francis <alistair.francis@wdc.com> 2From: Alistair Francis <alistair.francis@wdc.com>
3Date: Mon, 23 Jul 2018 11:23:39 -0700 3Date: Mon, 23 Jul 2018 11:23:39 -0700
4Subject: [PATCH] jemalloc/jemalloc.cfg: Specify the host when building 4Subject: [PATCH] jemalloc/jemalloc.cfg: Specify the host when building
@@ -25,5 +25,5 @@ index 196129de6..79ebbab1c 100644
25 --disable-munmap 25 --disable-munmap
26+--host=${HOST_SYS} 26+--host=${HOST_SYS}
27-- 27--
282.17.1 282.14.4
29 29
diff --git a/meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch b/meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch
index bd1b97c242..82b96cf95e 100644
--- a/meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch
+++ b/meta-oe/recipes-extended/pmdk/files/0002-Makefile-Don-t-install-the-docs.patch
@@ -1,7 +1,7 @@
1From 460a96e390cb80278784cfe36629e280fe7ffef7 Mon Sep 17 00:00:00 2001 1From 3863d8bd71d6a5638cf984f8d8f9cccac0c7f2a4 Mon Sep 17 00:00:00 2001
2From: Alistair Francis <alistair.francis@wdc.com> 2From: Alistair Francis <alistair.francis@wdc.com>
3Date: Mon, 23 Jul 2018 11:31:17 -0700 3Date: Mon, 23 Jul 2018 11:31:17 -0700
4Subject: [PATCH 2/2] Makefile: Don't install the docs 4Subject: [PATCH] Makefile: Don't install the docs
5 5
6Signed-off-by: Alistair Francis <alistair.francis@wdc.com> 6Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
7Upstream-Status: Inappropriate [disable feature] 7Upstream-Status: Inappropriate [disable feature]
@@ -10,17 +10,17 @@ Upstream-Status: Inappropriate [disable feature]
10 1 file changed, 1 deletion(-) 10 1 file changed, 1 deletion(-)
11 11
12diff --git a/Makefile b/Makefile 12diff --git a/Makefile b/Makefile
13index 224a315f6..ce7f84afb 100644 13index 47a447f12..7c0f9848f 100644
14--- a/Makefile 14--- a/Makefile
15+++ b/Makefile 15+++ b/Makefile
16@@ -144,7 +144,6 @@ rpm dpkg: pkg-clean source 16@@ -148,7 +148,6 @@ rpm dpkg: pkg-clean
17 17
18 install uninstall: 18 install uninstall:
19 $(MAKE) -C src $@ 19 $(MAKE) -C src $@
20- $(MAKE) -C doc $@ 20- $(MAKE) -C doc $@
21 21
22 .PHONY: all clean clobber test check cstyle check-license install uninstall\ 22 .PHONY: all clean clobber test check cstyle check-license install uninstall\
23 source rpm dpkg pkg-clean pcheck check-remote format doc $(SUBDIRS) 23 source rpm dpkg pkg-clean pcheck check-remote format doc require-rpmem\
24-- 24--
252.17.1 252.14.4
26 26
diff --git a/meta-oe/recipes-extended/pmdk/files/0003-Makefile-Don-t-build-the-examples.patch b/meta-oe/recipes-extended/pmdk/files/0003-Makefile-Don-t-build-the-examples.patch
index f75d94197b..dbe9c45e11 100644
--- a/meta-oe/recipes-extended/pmdk/files/0003-Makefile-Don-t-build-the-examples.patch
+++ b/meta-oe/recipes-extended/pmdk/files/0003-Makefile-Don-t-build-the-examples.patch
@@ -1,6 +1,6 @@
1From a7f07dca2468ea226d2f07fc0105166e75cadaf8 Mon Sep 17 00:00:00 2001 1From ac24c78f5aa62ba43bb87b74301b659bcc506f11 Mon Sep 17 00:00:00 2001
2From: Alistair Francis <alistair.francis@wdc.com> 2From: Alistair Francis <alistair.francis@wdc.com>
3Date: Thu, 6 Sep 2018 16:18:50 -0700 3Date: Thu, 18 Jul 2019 15:40:22 +0800
4Subject: [PATCH] Makefile: Don't build the examples 4Subject: [PATCH] Makefile: Don't build the examples
5 5
6Signed-off-by: Alistair Francis <alistair.francis@wdc.com> 6Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
@@ -10,25 +10,25 @@ Upstream-Status: Inappropriate [disable feature]
10 1 file changed, 2 insertions(+), 2 deletions(-) 10 1 file changed, 2 insertions(+), 2 deletions(-)
11 11
12diff --git a/src/Makefile b/src/Makefile 12diff --git a/src/Makefile b/src/Makefile
13index 4b50dd8b5..e00501e31 100644 13index 773ab1387..58912f0ab 100644
14--- a/src/Makefile 14--- a/src/Makefile
15+++ b/src/Makefile 15+++ b/src/Makefile
16@@ -38,13 +38,13 @@ include $(TOP)/src/version.inc 16@@ -37,13 +37,13 @@ include $(TOP)/src/common.inc
17 17
18 TARGETS = libpmem libvmem libpmemblk libpmemlog libpmemobj libpmempool\ 18 TARGETS = libpmem libvmem libpmemblk libpmemlog libpmemobj libpmempool\
19 libpmemcto libvmmalloc tools 19 libvmmalloc tools
20-ALL_TARGETS = $(TARGETS) common librpmem examples benchmarks 20-ALL_TARGETS = $(TARGETS) common librpmem examples benchmarks
21+ALL_TARGETS = $(TARGETS) common librpmem benchmarks 21+ALL_TARGETS = $(TARGETS) common librpmem benchmarks
22 22
23 SCOPE_DIRS = $(TARGETS) common librpmem rpmem_common 23 SCOPE_DIRS = $(TARGETS) common librpmem rpmem_common
24 24
25 DEBUG_RELEASE_TARGETS = common libpmem libvmem libpmemblk libpmemlog libpmemobj\ 25 DEBUG_RELEASE_TARGETS = common libpmem libvmem libpmemblk libpmemlog libpmemobj\
26 libpmempool libvmmalloc librpmem libpmemcto 26 libpmempool libvmmalloc librpmem
27-RELEASE_TARGETS = tools examples benchmarks 27-RELEASE_TARGETS = tools examples benchmarks
28+RELEASE_TARGETS = tools benchmarks 28+RELEASE_TARGETS = tools benchmarks
29 29
30 CLEAN_NO_JE_TARGETS = $(ALL_TARGETS) rpmem_common test 30 CLEAN_NO_JE_TARGETS = $(ALL_TARGETS) rpmem_common test
31 CLEAN_TARGETS = $(CLEAN_NO_JE_TARGETS) jemalloc 31 CLEAN_TARGETS = $(CLEAN_NO_JE_TARGETS) jemalloc
32-- 32--
332.17.1 332.14.4
34 34
diff --git a/meta-oe/recipes-extended/pmdk/files/0004-os_posix-Manually-implement-secure_getenv-if-require.patch b/meta-oe/recipes-extended/pmdk/files/0004-os_posix-Manually-implement-secure_getenv-if-require.patch
deleted file mode 100644
index 624f17bd4f..0000000000
--- a/meta-oe/recipes-extended/pmdk/files/0004-os_posix-Manually-implement-secure_getenv-if-require.patch
+++ /dev/null
@@ -1,30 +0,0 @@
1From 33affa9ee97691efb73f439fcdba4adb8625a26a Mon Sep 17 00:00:00 2001
2From: Alistair Francis <alistair.francis@wdc.com>
3Date: Mon, 10 Sep 2018 12:59:48 -0700
4Subject: [PATCH] os_posix: Manually implement secure_getenv() if required
5
6Manually implement the secure_getenv() if we need to, this is required
7if using musl.
8
9Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
10Upstream-Status: Pending
11---
12 src/common/os_posix.c | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-)
14
15diff --git a/src/common/os_posix.c b/src/common/os_posix.c
16index 2d70a0a29..fb09b6ce0 100644
17--- a/src/common/os_posix.c
18+++ b/src/common/os_posix.c
19@@ -261,7 +261,7 @@ os_setenv(const char *name, const char *value, int overwrite)
20 /*
21 * secure_getenv -- provide GNU secure_getenv for FreeBSD
22 */
23-#ifdef __FreeBSD__
24+#if defined(__FreeBSD__) || !HAVE___SECURE_GETENV
25 static char *
26 secure_getenv(const char *name)
27 {
28--
292.17.1
30
diff --git a/meta-oe/recipes-extended/pmdk/files/0005-pmempool-Remove-unused-__USE_UNIX98-define.patch b/meta-oe/recipes-extended/pmdk/files/0005-pmempool-Remove-unused-__USE_UNIX98-define.patch
deleted file mode 100644
index 75c35f8653..0000000000
--- a/meta-oe/recipes-extended/pmdk/files/0005-pmempool-Remove-unused-__USE_UNIX98-define.patch
+++ /dev/null
@@ -1,30 +0,0 @@
1From 92e63699ea83074298971b0251f002562be4dbd3 Mon Sep 17 00:00:00 2001
2From: Alistair Francis <alistair.francis@wdc.com>
3Date: Mon, 10 Sep 2018 13:23:37 -0700
4Subject: [PATCH 2/3] pmempool: Remove unused __USE_UNIX98 define
5
6Remove the unused __USE_UNIX98 to fix musl build failures.
7
8Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
9Upstream-Status: Pending
10---
11 src/tools/pmempool/info.c | 3 ---
12 1 file changed, 3 deletions(-)
13
14diff --git a/src/tools/pmempool/info.c b/src/tools/pmempool/info.c
15index b4010bf35..7b890a123 100644
16--- a/src/tools/pmempool/info.c
17+++ b/src/tools/pmempool/info.c
18@@ -45,9 +45,6 @@
19 #include <inttypes.h>
20 #include <assert.h>
21 #include <sys/param.h>
22-#ifndef __FreeBSD__
23-#define __USE_UNIX98
24-#endif
25 #include <unistd.h>
26 #include <sys/mman.h>
27
28--
292.17.1
30
diff --git a/meta-oe/recipes-extended/pmdk/files/0006-Makefile.inc-Allow-extra-libs-to-be-specified.patch b/meta-oe/recipes-extended/pmdk/files/0006-Makefile.inc-Allow-extra-libs-to-be-specified.patch
deleted file mode 100644
index 2042fdb256..0000000000
--- a/meta-oe/recipes-extended/pmdk/files/0006-Makefile.inc-Allow-extra-libs-to-be-specified.patch
+++ /dev/null
@@ -1,29 +0,0 @@
1From a88e806f9ce8cc071e81abad688643d53f393176 Mon Sep 17 00:00:00 2001
2From: Alistair Francis <alistair.francis@wdc.com>
3Date: Mon, 10 Sep 2018 14:18:38 -0700
4Subject: [PATCH 3/3] Makefile.inc: Allow extra libs to be specified
5
6Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
7Upstream-Status: Pending
8---
9 src/Makefile.inc | 2 ++
10 src/common.inc | 2 ++
11 src/tools/Makefile.inc | 1 +
12 3 files changed, 5 insertions(+)
13
14diff --git a/src/common.inc b/src/common.inc
15index 032cb83ea..2d5c4bedf 100644
16--- a/src/common.inc
17+++ b/src/common.inc
18@@ -74,6 +74,8 @@ GCOV_CFLAGS=-fprofile-arcs -ftest-coverage --coverage
19 GCOV_LDFLAGS=-fprofile-arcs -ftest-coverage
20 GCOV_LIBS=-lgcov
21
22+LIBS += $(EXTRA_LIBS)
23+
24 osdep = $(1)_$(shell uname -s | tr "[:upper:]" "[:lower:]")$(2)
25 get_arch = $(shell $(CC) -dumpmachine | awk -F'[/-]' '{print $$1}')
26
27--
282.17.1
29
diff --git a/meta-oe/recipes-extended/pmdk/pmdk_1.4.2.bb b/meta-oe/recipes-extended/pmdk/pmdk_1.6.bb
index 3da22a9702..a5096fdad2 100644
--- a/meta-oe/recipes-extended/pmdk/pmdk_1.4.2.bb
+++ b/meta-oe/recipes-extended/pmdk/pmdk_1.6.bb
@@ -9,18 +9,15 @@ DEPENDS = "ndctl"
9# Required to have the fts.h header for musl 9# Required to have the fts.h header for musl
10DEPENDS_append_libc-musl = " fts" 10DEPENDS_append_libc-musl = " fts"
11 11
12SRC_URI = "https://github.com/pmem/${BPN}/archive/${PV}.tar.gz \ 12S = "${WORKDIR}/git"
13
14SRC_URI = "git://github.com/pmem/pmdk.git \
13 file://0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch \ 15 file://0001-jemalloc-jemalloc.cfg-Specify-the-host-when-building.patch \
14 file://0002-Makefile-Don-t-install-the-docs.patch \ 16 file://0002-Makefile-Don-t-install-the-docs.patch \
15 file://0003-Makefile-Don-t-build-the-examples.patch \ 17 file://0003-Makefile-Don-t-build-the-examples.patch \
16 file://0005-pmempool-Remove-unused-__USE_UNIX98-define.patch \
17 file://0006-Makefile.inc-Allow-extra-libs-to-be-specified.patch \
18 " 18 "
19 19
20SRC_URI_append_libc-musl = " file://0004-os_posix-Manually-implement-secure_getenv-if-require.patch" 20SRCREV = "695e6eba28c53a69a0ef7bad3cc0f45c21ef3e00"
21
22SRC_URI[md5sum] = "bde73bca9ef5b90911deb0fdcfb15ccf"
23SRC_URI[sha256sum] = "df7e658e75d28cd80f6d2ff7b9fc9ae2885d52f8923fdbacecfd46215115fb4c"
24 21
25inherit autotools-brokensep pkgconfig 22inherit autotools-brokensep pkgconfig
26 23
@@ -29,30 +26,16 @@ inherit autotools-brokensep pkgconfig
29# | If you meant to cross compile, use `--host'. 26# | If you meant to cross compile, use `--host'.
30# 27#
31# Also fix #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp] 28# Also fix #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp]
32EXTRA_OEMAKE = "HOST_SYS='${HOST_SYS}' EXTRA_CFLAGS='${SELECTED_OPTIMIZATION}'" 29EXTRA_OEMAKE = "HOST_SYS='${HOST_SYS}' EXTRA_CFLAGS='${SELECTED_OPTIMIZATION}' LIB_PREFIX=lib64"
33 30
34# Fix the missing fts libs when using musl 31# Fix the missing fts libs when using musl
35EXTRA_OEMAKE_append_libc-musl = " EXTRA_LIBS='-lfts'" 32EXTRA_OEMAKE_append_libc-musl = " EXTRA_LIBS='-lfts'"
36 33
37do_install() { 34do_install() {
38 oe_runmake PREFIX=${prefix} DESTDIR=${D} install 35 oe_runmake prefix=${prefix} DESTDIR=${D} install
39
40 # Copy these into the standard directories
41 install -d ${D}${bindir}/
42 mv ${D}/usr/local/bin/pmempool ${D}${bindir}/
43 mv ${D}/usr/local/bin/daxio ${D}${bindir}/
44
45 install -d ${D}${libdir}
46 mv ${D}/usr/local/lib/*so* ${D}${libdir}/
47
48 install -d ${D}${libdir}/pkgconfig
49 mv ${D}/usr/local/lib/pkgconfig/*.pc ${D}${libdir}/pkgconfig/
50
51 install -d ${D}${includedir}
52 mv ${D}/usr/local/include/* ${D}${includedir}/
53 36
54 # Remove uneeded files 37 # Remove uneeded files
55 rm -rf ${D}/usr/local/ 38 rm -rf ${D}/usr/lib64/pmdk_debug
56} 39}
57 40
58# Include these by default otherwise the SDK is not very useful 41# Include these by default otherwise the SDK is not very useful
@@ -60,5 +43,7 @@ FILES_${PN} += "${bindir}/pmempool ${bindir}/daxio"
60FILES_${PN} += "${libdir}/*so*" 43FILES_${PN} += "${libdir}/*so*"
61FILES_${PN} += "${libdir}/pkgconfig/*.pc" 44FILES_${PN} += "${libdir}/pkgconfig/*.pc"
62FILES_${PN} += "${includedir}/libpmemobj++/* ${includedir}/libpmemobj/*" 45FILES_${PN} += "${includedir}/libpmemobj++/* ${includedir}/libpmemobj/*"
46FILES_${PN} += "/usr/etc"
47FILES_${PN} += "/usr/share"
63 48
64COMPATIBLE_HOST='(x86_64).*' 49COMPATIBLE_HOST='(x86_64).*'