Hi, I believe I solved that same problem by just adding, in the case of armv8 (which I believe may be the new architecture you're referring to): MUTEX_armv8 = "" This way, it allows previous versions to work just like they did before, without having to disable ARM assembler mutex code for architectures that support it correctly - up to armv7ve I believe. Of course, we might need to also have a good definition for armv8, which is the object of another thread.
Cheers, Herve -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Ovidiu Panait Sent: jeudi 14 juin 2018 13:55 To: [email protected] Subject: [OE-core] [PATCH 1/1] db: disable the ARM assembler mutex code The swpb in macro MUTEX_SET will cause "undefined instruction" error on the new arm arches which don't support this assembly instruction any more. If use ldrex/strex to replace swpb, the old arm arches don't support them. So to avoid this issue, just disable the ARM assembler mutex code, and use the default pthreads mutex. Signed-off-by: Li Zhou <[email protected]> Signed-off-by: Catalin Enache <[email protected]> Signed-off-by: Ovidiu Panait <[email protected]> --- meta/recipes-support/db/db_5.3.28.bb | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/meta/recipes-support/db/db_5.3.28.bb b/meta/recipes-support/db/db_5.3.28.bb index 093ee44909..15b4155a29 100644 --- a/meta/recipes-support/db/db_5.3.28.bb +++ b/meta/recipes-support/db/db_5.3.28.bb @@ -59,18 +59,7 @@ FILES_SOLIBSDEV = "${libdir}/libdb.so ${libdir}/libdb_cxx.so" # All the --disable-* options replace --enable-smallbuild, which breaks a bunch of stuff (eg. postfix) DB5_CONFIG ?= "--enable-o_direct --disable-cryptography --disable-queue --disable-replication --disable-verify --disable-compat185 --disable-sql" -EXTRA_OECONF = "${DB5_CONFIG} --enable-shared --enable-cxx --with-sysroot" - -# Override the MUTEX setting here, the POSIX library is -# the default - "POSIX/pthreads/library". -# Don't ignore the nice SWP instruction on the ARM: -# These enable the ARM assembler mutex code, this won't -# work with thumb compilation... -ARM_MUTEX = "--with-mutex=ARM/gcc-assembly" -MUTEX = "" -MUTEX_arm = "${ARM_MUTEX}" -MUTEX_armeb = "${ARM_MUTEX}" -EXTRA_OECONF += "${MUTEX} STRIP=true" +EXTRA_OECONF = "${DB5_CONFIG} --enable-shared --enable-cxx --with-sysroot STRIP=true" EXTRA_OEMAKE += "LIBTOOL='./${HOST_SYS}-libtool'" EXTRA_AUTORECONF += "--exclude=autoheader -I ${S}/dist/aclocal -I${S}/dist/aclocal_java" -- 2.17.1 -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
