summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2016-02-23 14:05:35 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-07-10 14:12:17 +0100
commit3a6f0b66a5550b392317c6ad77a4e8298906d218 (patch)
tree2b288a9061f6dd424c3365b111d0401ee9ad2df2
parentb58c5dc787227aaf069f812450ff366608097099 (diff)
downloadpoky-3a6f0b66a5550b392317c6ad77a4e8298906d218.tar.gz
db: use S/B more idiomatically
Instead of setting S to a directory inside the tarball and B to another directory inside the tarball, use the default value of S and set AUTOTOOLS_SCRIPT_PATH to the right path to find configure. Update the patches so they still apply, and clean up the recipe slightly. Because something is not quite right regarding quilt and patching, add a PR bump to the recipes to ensure that a clean work directory is used: for some reason rebuilds will rarely fail to patch correctly. (From OE-Core rev: dcbef72b8344c22617d65ea1e9f0fa7ad9a742bd) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-support/db/db/Makefile-let-libso_target-depend-on-bt_rec.patch4
-rw-r--r--meta/recipes-support/db/db/fix-parallel-build.patch4
-rw-r--r--meta/recipes-support/db/db_5.3.28.bb28
-rw-r--r--meta/recipes-support/db/db_6.0.30.bb53
4 files changed, 40 insertions, 49 deletions
diff --git a/meta/recipes-support/db/db/Makefile-let-libso_target-depend-on-bt_rec.patch b/meta/recipes-support/db/db/Makefile-let-libso_target-depend-on-bt_rec.patch
index 329bff5d3b..9ec117ae4e 100644
--- a/meta/recipes-support/db/db/Makefile-let-libso_target-depend-on-bt_rec.patch
+++ b/meta/recipes-support/db/db/Makefile-let-libso_target-depend-on-bt_rec.patch
@@ -17,8 +17,8 @@ Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
17 17
18diff --git a/Makefile.in b/Makefile.in 18diff --git a/Makefile.in b/Makefile.in
19index e451f70..0a42375 100644 19index e451f70..0a42375 100644
20--- a/Makefile.in 20--- db/dist/Makefile.in
21+++ b/Makefile.in 21+++ db/dist/Makefile.in
22@@ -863,7 +863,7 @@ $(libdb_version): $(C_OBJS) 22@@ -863,7 +863,7 @@ $(libdb_version): $(C_OBJS)
23 $(LN) -s $(libdb_version) $(libdb) 23 $(LN) -s $(libdb_version) $(libdb)
24 24
diff --git a/meta/recipes-support/db/db/fix-parallel-build.patch b/meta/recipes-support/db/db/fix-parallel-build.patch
index 2c7f1e186b..88bc6b35e5 100644
--- a/meta/recipes-support/db/db/fix-parallel-build.patch
+++ b/meta/recipes-support/db/db/fix-parallel-build.patch
@@ -6,8 +6,8 @@ Upstream-Status: Pending
6 6
7Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> 7Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
8 8
9--- dist.orig/Makefile.in 2012-05-11 19:57:48.000000000 +0200 9--- db/dist.orig/Makefile.in 2012-05-11 19:57:48.000000000 +0200
10+++ dist/Makefile.in 2013-10-31 18:17:11.875532522 +0100 10+++ db/dist/Makefile.in 2013-10-31 18:17:11.875532522 +0100
11@@ -1034,7 +1034,7 @@ 11@@ -1034,7 +1034,7 @@
12 db_recover@o@ util_sig@o@ $(DEF_LIB) $(LIBS) 12 db_recover@o@ util_sig@o@ $(DEF_LIB) $(LIBS)
13 $(POSTLINK) $@ 13 $(POSTLINK) $@
diff --git a/meta/recipes-support/db/db_5.3.28.bb b/meta/recipes-support/db/db_5.3.28.bb
index c724f049f7..6b0e76b1a3 100644
--- a/meta/recipes-support/db/db_5.3.28.bb
+++ b/meta/recipes-support/db/db_5.3.28.bb
@@ -15,15 +15,17 @@ LICENSE = "Sleepycat"
15VIRTUAL_NAME ?= "virtual/db" 15VIRTUAL_NAME ?= "virtual/db"
16RCONFLICTS_${PN} = "db3" 16RCONFLICTS_${PN} = "db3"
17 17
18PR = "r1"
19
18SRC_URI = "http://download.oracle.com/berkeley-db/db-${PV}.tar.gz" 20SRC_URI = "http://download.oracle.com/berkeley-db/db-${PV}.tar.gz"
19SRC_URI += "file://arm-thumb-mutex_db5.patch;patchdir=.. \ 21SRC_URI += "file://arm-thumb-mutex_db5.patch \
20 file://fix-parallel-build.patch \ 22 file://fix-parallel-build.patch \
21 " 23 "
22 24
23SRC_URI[md5sum] = "b99454564d5b4479750567031d66fe24" 25SRC_URI[md5sum] = "b99454564d5b4479750567031d66fe24"
24SRC_URI[sha256sum] = "e0a992d740709892e81f9d93f06daf305cf73fb81b545afe72478043172c3628" 26SRC_URI[sha256sum] = "e0a992d740709892e81f9d93f06daf305cf73fb81b545afe72478043172c3628"
25 27
26LIC_FILES_CHKSUM = "file://../LICENSE;md5=ed1158e31437f4f87cdd4ab2b8613955" 28LIC_FILES_CHKSUM = "file://LICENSE;md5=ed1158e31437f4f87cdd4ab2b8613955"
27 29
28inherit autotools 30inherit autotools
29 31
@@ -36,14 +38,6 @@ inherit autotools
36# to select the correct db in the build (distro) .conf 38# to select the correct db in the build (distro) .conf
37PROVIDES += "${VIRTUAL_NAME}" 39PROVIDES += "${VIRTUAL_NAME}"
38 40
39# bitbake isn't quite clever enough to deal with sleepycat,
40# the distribution sits in the expected directory, but all
41# the builds must occur from a sub-directory. The following
42# persuades bitbake to go to the right place
43S = "${WORKDIR}/db-${PV}/dist"
44B = "${WORKDIR}/db-${PV}/build_unix"
45SPDX_S = "${WORKDIR}/db-${PV}"
46
47# The executables go in a separate package - typically there 41# The executables go in a separate package - typically there
48# is no need to install these unless doing real database 42# is no need to install these unless doing real database
49# management on the system. 43# management on the system.
@@ -75,21 +69,22 @@ ARM_MUTEX = "--with-mutex=ARM/gcc-assembly"
75MUTEX = "" 69MUTEX = ""
76MUTEX_arm = "${ARM_MUTEX}" 70MUTEX_arm = "${ARM_MUTEX}"
77MUTEX_armeb = "${ARM_MUTEX}" 71MUTEX_armeb = "${ARM_MUTEX}"
78EXTRA_OECONF += "${MUTEX}" 72EXTRA_OECONF += "${MUTEX} STRIP=true"
79EXTRA_OEMAKE_class-target = "LIBTOOL=${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool" 73
74AUTOTOOLS_SCRIPT_PATH = "${S}/dist"
80 75
81# Cancel the site stuff - it's set for db3 and destroys the 76# Cancel the site stuff - it's set for db3 and destroys the
82# configure. 77# configure.
83CONFIG_SITE = "" 78CONFIG_SITE = ""
84do_configure() { 79do_configure() {
85 gnu-configize --force ${S} 80 cd ${B}
86 export STRIP="true" 81 gnu-configize --force ${AUTOTOOLS_SCRIPT_PATH}
87 oe_runconf 82 oe_runconf
88} 83}
89 84
90do_compile_prepend() { 85do_compile_prepend() {
91 sed -i -e 's|hardcode_into_libs=yes|hardcode_into_libs=no|' \ 86 # Stop libtool adding RPATHs
92 ${B}/libtool 87 sed -i -e 's|hardcode_into_libs=yes|hardcode_into_libs=no|' ${B}/libtool
93} 88}
94 89
95do_install_append() { 90do_install_append() {
@@ -114,4 +109,3 @@ INSANE_SKIP_${PN} = "dev-so"
114INSANE_SKIP_${PN}-cxx = "dev-so" 109INSANE_SKIP_${PN}-cxx = "dev-so"
115 110
116BBCLASSEXTEND = "native nativesdk" 111BBCLASSEXTEND = "native nativesdk"
117
diff --git a/meta/recipes-support/db/db_6.0.30.bb b/meta/recipes-support/db/db_6.0.30.bb
index 018dd58f67..08528206f9 100644
--- a/meta/recipes-support/db/db_6.0.30.bb
+++ b/meta/recipes-support/db/db_6.0.30.bb
@@ -15,13 +15,15 @@ LICENSE = "AGPL-3.0"
15VIRTUAL_NAME ?= "virtual/db" 15VIRTUAL_NAME ?= "virtual/db"
16RCONFLICTS_${PN} = "db3" 16RCONFLICTS_${PN} = "db3"
17 17
18PR = "r1"
19
18# Note, when upgraded to 6.1.x, a patch in RPM will need to be removed to activate db 6.1 support. 20# Note, when upgraded to 6.1.x, a patch in RPM will need to be removed to activate db 6.1 support.
19 21
20SRC_URI = "http://download.oracle.com/berkeley-db/db-${PV}.tar.gz" 22SRC_URI = "http://download.oracle.com/berkeley-db/db-${PV}.tar.gz \
21SRC_URI += "file://arm-thumb-mutex_db5.patch;patchdir=.. \ 23 file://arm-thumb-mutex_db5.patch \
22 file://fix-parallel-build.patch \ 24 file://fix-parallel-build.patch \
23 file://Makefile-let-libso_target-depend-on-bt_rec.patch \ 25 file://Makefile-let-libso_target-depend-on-bt_rec.patch \
24 file://Makefile-let-libdb-6.0.la-depend-os_map.l.patch;patchdir=.. \ 26 file://Makefile-let-libdb-6.0.la-depend-os_map.l.patch \
25 " 27 "
26 28
27SRC_URI[md5sum] = "ad28eb86ad3203b5422844db179c585b" 29SRC_URI[md5sum] = "ad28eb86ad3203b5422844db179c585b"
@@ -31,9 +33,7 @@ SRC_URI[sha256sum] = "608e4b1cf390e9bf54c0ef00c5bd9ca76d36e2261b9f4d33d54516f3f6
31UPSTREAM_CHECK_REGEX = "db-(?P<pver>\d+\.\d+(\.\d+)?).tar" 33UPSTREAM_CHECK_REGEX = "db-(?P<pver>\d+\.\d+(\.\d+)?).tar"
32UPSTREAM_CHECK_URI = "http://www.oracle.com/technetwork/products/berkeleydb/downloads/index-082944.html" 34UPSTREAM_CHECK_URI = "http://www.oracle.com/technetwork/products/berkeleydb/downloads/index-082944.html"
33 35
34LIC_FILES_CHKSUM = "file://../LICENSE;md5=1ec8b0b17cc31513fe35ab10716f8490" 36LIC_FILES_CHKSUM = "file://LICENSE;md5=1ec8b0b17cc31513fe35ab10716f8490"
35
36inherit autotools
37 37
38# Put virtual/db in any appropriate provider of a 38# Put virtual/db in any appropriate provider of a
39# relational database, use it as a dependency in 39# relational database, use it as a dependency in
@@ -44,13 +44,7 @@ inherit autotools
44# to select the correct db in the build (distro) .conf 44# to select the correct db in the build (distro) .conf
45PROVIDES += "${VIRTUAL_NAME}" 45PROVIDES += "${VIRTUAL_NAME}"
46 46
47# bitbake isn't quite clever enough to deal with sleepycat, 47inherit autotools
48# the distribution sits in the expected directory, but all
49# the builds must occur from a sub-directory. The following
50# persuades bitbake to go to the right place
51S = "${WORKDIR}/db-${PV}/dist"
52B = "${WORKDIR}/db-${PV}/build_unix"
53SPDX_S = "${WORKDIR}/db-${PV}"
54 48
55# The executables go in a separate package - typically there 49# The executables go in a separate package - typically there
56# is no need to install these unless doing real database 50# is no need to install these unless doing real database
@@ -60,7 +54,6 @@ inherit lib_package
60PACKAGES =+ "${PN}-cxx" 54PACKAGES =+ "${PN}-cxx"
61FILES_${PN}-cxx = "${libdir}/*cxx*so" 55FILES_${PN}-cxx = "${libdir}/*cxx*so"
62 56
63
64# The dev package has the .so link (as in db3) and the .a's - 57# The dev package has the .so link (as in db3) and the .a's -
65# it is therefore incompatible (cannot be installed at the 58# it is therefore incompatible (cannot be installed at the
66# same time) as the db3 package 59# same time) as the db3 package
@@ -74,6 +67,17 @@ DB6_CONFIG ?= "--enable-o_direct --disable-cryptography --disable-queue --disabl
74 67
75EXTRA_OECONF = "${DB6_CONFIG} --enable-shared --enable-cxx --with-sysroot" 68EXTRA_OECONF = "${DB6_CONFIG} --enable-shared --enable-cxx --with-sysroot"
76 69
70# Cancel the site stuff - it's set for db3 and destroys the configure.
71CONFIG_SITE = ""
72
73AUTOTOOLS_SCRIPT_PATH = "${S}/dist"
74
75do_configure() {
76 cd ${B}
77 gnu-configize --force ${AUTOTOOLS_SCRIPT_PATH}
78 oe_runconf
79}
80
77# Override the MUTEX setting here, the POSIX library is 81# Override the MUTEX setting here, the POSIX library is
78# the default - "POSIX/pthreads/library". 82# the default - "POSIX/pthreads/library".
79# Don't ignore the nice SWP instruction on the ARM: 83# Don't ignore the nice SWP instruction on the ARM:
@@ -83,20 +87,11 @@ MUTEX = ""
83MUTEX_arm = "${ARM_MUTEX}" 87MUTEX_arm = "${ARM_MUTEX}"
84MUTEX_armeb = "${ARM_MUTEX}" 88MUTEX_armeb = "${ARM_MUTEX}"
85EXTRA_OECONF += "${MUTEX}" 89EXTRA_OECONF += "${MUTEX}"
86EXTRA_OEMAKE_class-target = "LIBTOOL=${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool" 90EXTRA_OEMAKE += "STRIP=true"
87
88# Cancel the site stuff - it's set for db3 and destroys the
89# configure.
90CONFIG_SITE = ""
91do_configure() {
92 gnu-configize --force ${S}
93 export STRIP="true"
94 oe_runconf
95}
96 91
97do_compile_prepend() { 92do_compile_prepend() {
98 sed -i -e 's|hardcode_into_libs=yes|hardcode_into_libs=no|' \ 93 # Stop libtool adding RPATHs
99 ${B}/libtool 94 sed -i -e 's|hardcode_into_libs=yes|hardcode_into_libs=no|' ${B}/libtool
100} 95}
101 96
102do_install_append() { 97do_install_append() {
@@ -117,6 +112,8 @@ do_install_append() {
117 chown -R root:root ${D} 112 chown -R root:root ${D}
118} 113}
119 114
115# libdb isn't versioned in the typical manner (libdb-6.0.so is the full library
116# name) so skip these checks.
120INSANE_SKIP_${PN} = "dev-so" 117INSANE_SKIP_${PN} = "dev-so"
121INSANE_SKIP_${PN}-cxx = "dev-so" 118INSANE_SKIP_${PN}-cxx = "dev-so"
122 119