[oe] [meta-oe][PATCH v3] safec: Initial recipe for safe C library

Ankit Navik ankit.tarot at gmail.com
Fri Jun 21 06:20:10 UTC 2019


Hi Martin,

On Fri, Jun 21, 2019 at 12:39 AM Martin Jansa <martin.jansa at gmail.com>
wrote:

> And there is also:
> WARNING: safec-3.4-r0 do_populate_lic: safec: No generic license file
> exists for: safec in any provider
>
> Add the license text to the meta-oe/licenses/ directory.
>
 I have already added licenses.
https://patchwork.openembedded.org/patch/161305/
There are no comment on the patch but it is in change requested state.

Regards,
Ankit

On Tue, Jun 18, 2019 at 8:02 AM Martin Jansa <martin.jansa at gmail.com> wrote:
>
>> Hi,
>>
>> it seems to fail for aarch64, I've noticed it in world build for
>> raspberrypi3-64:
>>
>> aarch64-webos-linux-libtool: compile:  aarch64-webos-linux-gcc
>> -mcpu=cortex-a53+crc -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat
>> -Wformat-security -Werror=format-security
>> --sysroot=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot
>> -DHAVE_CONFIG_H -I. -I../../git/src -I.. -I../../git/include -I../include
>> -I../../git/src -pedantic -fno-strict-aliasing -Wall -Wextra -Wundef
>> -Wwrite-strings -Wpointer-arith -Wmissing-declarations -Wredundant-decls
>> -Wno-unused-parameter -Wno-missing-field-initializers -Wcast-align
>> -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Wpacked
>> -Wmissing-noreturn -Winit-self -Wmissing-include-dirs
>> -Wunused-but-set-variable -Warray-bounds -Wreturn-type -Wswitch-enum
>> -Wswitch-default -Wduplicated-cond -Wduplicated-branches -Wlogical-op
>> -Wrestrict -Wnull-dereference -Wdouble-promotion -Wnested-externs
>> -Wmissing-prototypes -Wstrict-prototypes -Wdeclaration-after-statement
>> -Wimplicit-function-declaration -Wold-style-definition -Wjump-misses-init
>> -Werror -Wno-suggest-attribute=format -Wno-error=unused-parameter
>> -Wno-error=missing-field-initializers -O2 -pipe -g
>> -feliminate-unused-debug-types
>> -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0=/usr/src/debug/safec/3.4-r0
>> -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0=/usr/src/debug/safec/3.4-r0
>> -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot=
>> -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot-native=
>> -c ../../git/src/wchar/wcscpy_s.c  -fPIC -DPIC -o wchar/.libs/wcscpy_s.o
>> {standard input}: Assembler messages:
>> {standard input}:161: Error: unknown mnemonic `memory_barrier' --
>> `memory_barrier'
>> {standard input}:389: Error: unknown mnemonic `memory_barrier' --
>> `memory_barrier'
>> {standard input}:649: Error: unknown mnemonic `memory_barrier' --
>> `memory_barrier'
>> aarch64-webos-linux-libtool: compile:  aarch64-webos-linux-gcc
>> -mcpu=cortex-a53+crc -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat
>> -Wformat-security -Werror=format-security
>> --sysroot=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot
>> -DHAVE_CONFIG_H -I. -I../../git/src -I.. -I../../git/include -I../include
>> -I../../git/src -pedantic -fno-strict-aliasing -Wall -Wextra -Wundef
>> -Wwrite-strings -Wpointer-arith -Wmissing-declarations -Wredundant-decls
>> -Wno-unused-parameter -Wno-missing-field-initializers -Wcast-align
>> -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Wpacked
>> -Wmissing-noreturn -Winit-self -Wmissing-include-dirs
>> -Wunused-but-set-variable -Warray-bounds -Wreturn-type -Wswitch-enum
>> -Wswitch-default -Wduplicated-cond -Wduplicated-branches -Wlogical-op
>> -Wrestrict -Wnull-dereference -Wdouble-promotion -Wnested-externs
>> -Wmissing-prototypes -Wstrict-prototypes -Wdeclaration-after-statement
>> -Wimplicit-function-declaration -Wold-style-definition -Wjump-misses-init
>> -Werror -Wno-suggest-attribute=format -Wno-error=unused-parameter
>> -Wno-error=missing-field-initializers -O2 -pipe -g
>> -feliminate-unused-debug-types
>> -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0=/usr/src/debug/safec/3.4-r0
>> -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0=/usr/src/debug/safec/3.4-r0
>> -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot=
>> -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot-native=
>> -c ../../git/src/wchar/wcsncpy_s.c  -fPIC -DPIC -o wchar/.libs/wcsncpy_s.o
>> aarch64-webos-linux-libtool: compile:  aarch64-webos-linux-gcc
>> -mcpu=cortex-a53+crc -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat
>> -Wformat-security -Werror=format-security
>> --sysroot=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot
>> -DHAVE_CONFIG_H -I. -I../../git/src -I.. -I../../git/include -I../include
>> -I../../git/src -pedantic -fno-strict-aliasing -Wall -Wextra -Wundef
>> -Wwrite-strings -Wpointer-arith -Wmissing-declarations -Wredundant-decls
>> -Wno-unused-parameter -Wno-missing-field-initializers -Wcast-align
>> -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Wpacked
>> -Wmissing-noreturn -Winit-self -Wmissing-include-dirs
>> -Wunused-but-set-variable -Warray-bounds -Wreturn-type -Wswitch-enum
>> -Wswitch-default -Wduplicated-cond -Wduplicated-branches -Wlogical-op
>> -Wrestrict -Wnull-dereference -Wdouble-promotion -Wnested-externs
>> -Wmissing-prototypes -Wstrict-prototypes -Wdeclaration-after-statement
>> -Wimplicit-function-declaration -Wold-style-definition -Wjump-misses-init
>> -Werror -Wno-suggest-attribute=format -Wno-error=unused-parameter
>> -Wno-error=missing-field-initializers -O2 -pipe -g
>> -feliminate-unused-debug-types
>> -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0=/usr/src/debug/safec/3.4-r0
>> -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0=/usr/src/debug/safec/3.4-r0
>> -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot=
>> -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot-native=
>> -c ../../git/src/wchar/wmemcpy_s.c  -fPIC -DPIC -o wchar/.libs/wmemcpy_s.o
>> ../aarch64-webos-linux-libtool  --tag=CC   --mode=compile
>> aarch64-webos-linux-gcc  -mcpu=cortex-a53+crc -fstack-protector-strong
>>  -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security
>> --sysroot=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot
>> -DHAVE_CONFIG_H -I. -I../../git/src -I..  -I../../git/include  -I../include
>> -I../../git/src -pedantic -fno-strict-aliasing -Wall -Wextra -Wundef
>> -Wwrite-strings -Wpointer-arith -Wmissing-declarations -Wredundant-decls
>> -Wno-unused-parameter -Wno-missing-field-initializers -Wcast-align
>> -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Wpacked
>> -Wmissing-noreturn -Winit-self -Wmissing-include-dirs
>> -Wunused-but-set-variable -Warray-bounds -Wreturn-type -Wswitch-enum
>> -Wswitch-default -Wduplicated-cond -Wduplicated-branches -Wlogical-op
>> -Wrestrict -Wnull-dereference -Wdouble-promotion -Wnested-externs
>> -Wmissing-prototypes -Wstrict-prototypes -Wdeclaration-after-statement
>> -Wimplicit-function-declaration -Wold-style-definition -Wjump-misses-init
>> -Werror -Wno-suggest-attribute=format -Wno-error=unused-parameter
>> -Wno-error=missing-field-initializers  -O2 -pipe -g
>> -feliminate-unused-debug-types
>> -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0=/usr/src/debug/safec/3.4-r0
>>
>>  -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0=/usr/src/debug/safec/3.4-r0
>>
>>  -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot=
>>
>>  -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot-native=
>>   -c -o wchar/wscanf_s.lo ../../git/src/wchar/wscanf_s.c
>> ../aarch64-webos-linux-libtool  --tag=CC   --mode=compile
>> aarch64-webos-linux-gcc  -mcpu=cortex-a53+crc -fstack-protector-strong
>>  -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security
>> --sysroot=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot
>> -DHAVE_CONFIG_H -I. -I../../git/src -I..  -I../../git/include  -I../include
>> -I../../git/src -pedantic -fno-strict-aliasing -Wall -Wextra -Wundef
>> -Wwrite-strings -Wpointer-arith -Wmissing-declarations -Wredundant-decls
>> -Wno-unused-parameter -Wno-missing-field-initializers -Wcast-align
>> -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Wpacked
>> -Wmissing-noreturn -Winit-self -Wmissing-include-dirs
>> -Wunused-but-set-variable -Warray-bounds -Wreturn-type -Wswitch-enum
>> -Wswitch-default -Wduplicated-cond -Wduplicated-branches -Wlogical-op
>> -Wrestrict -Wnull-dereference -Wdouble-promotion -Wnested-externs
>> -Wmissing-prototypes -Wstrict-prototypes -Wdeclaration-after-statement
>> -Wimplicit-function-declaration -Wold-style-definition -Wjump-misses-init
>> -Werror -Wno-suggest-attribute=format -Wno-error=unused-parameter
>> -Wno-error=missing-field-initializers  -O2 -pipe -g
>> -feliminate-unused-debug-types
>> -fmacro-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0=/usr/src/debug/safec/3.4-r0
>>
>>  -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0=/usr/src/debug/safec/3.4-r0
>>
>>  -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot=
>>
>>  -fdebug-prefix-map=TOPDIR/BUILD/work/raspberrypi3_64-webos-linux/safec/3.4-r0/recipe-sysroot-native=
>>   -c -o wchar/vfwscanf_s.lo ../../git/src/wchar/vfwscanf_s.c
>> Makefile:1432: recipe for target 'mem/mem_primitives_lib.lo' failed
>> make[2]: *** [mem/mem_primitives_lib.lo] Error 1
>> make[2]: *** Waiting for unfinished jobs....
>>
>> On Wed, May 29, 2019 at 12:31 PM Ankit Navik <ankit.tarot at gmail.com>
>> wrote:
>>
>>> Hi Raj,
>>>
>>> On Wed, May 29, 2019 at 2:45 PM Khem Raj <raj.khem at gmail.com> wrote:
>>>
>>> > On Wed, May 29, 2019 at 10:48 AM Ankit Navik <ankit.tarot at gmail.com>
>>> > wrote:
>>> > >
>>> > > Add generic recipe for safe C library.
>>> > > This library implements the secure C11 Annex K functions on top of
>>> most
>>> > libc
>>> > > implementations, which are missing from them.
>>> > >
>>> > > Signed-off-by: Ankit Navik <ankit.tarot at gmail.com>
>>> > > ---
>>> > >  meta-oe/recipes-core/safec/safec_3.4.bb | 15 +++++++++++++++
>>> > >  1 file changed, 15 insertions(+)
>>> > >  create mode 100644 meta-oe/recipes-core/safec/safec_3.4.bb
>>> > >
>>> > > diff --git a/meta-oe/recipes-core/safec/safec_3.4.bb
>>> > b/meta-oe/recipes-core/safec/safec_3.4.bb
>>> > > new file mode 100644
>>> > > index 000000000..d55d081f3
>>> > > --- /dev/null
>>> > > +++ b/meta-oe/recipes-core/safec/safec_3.4.bb
>>> > > @@ -0,0 +1,15 @@
>>> > > +SUMMARY  = "Safe C Library"
>>> > > +
>>> > > +LICENSE  = "safec"
>>> > > +LIC_FILES_CHKSUM =
>>> "file://COPYING;md5=6d0eb7dfc57806a006fcbc4e389cf164"
>>> > > +SECTION = "lib"
>>> > > +
>>> > > +inherit autotools pkgconfig
>>> > > +
>>> > > +S = "${WORKDIR}/git"
>>> > > +SRCREV = "62e6b2df55084316d027165d286e46beb40513dc"
>>> > > +SRC_URI = "git://github.com/rurban/safeclib.git"
>>> > > +
>>> > > +COMPATIBLE_HOST =
>>> '(x86_64|i.86|powerpc|powerpc64|arm|aarch64).*-linux'
>>> > > +
>>> >
>>> > I see its excluding mips/mips64 from core supported architectures, is
>>> > that intentional ?
>>> >
>>>
>>> I'm not sure. This library is required for another component i.e. ipmctl.
>>>
>>> Regards,
>>> Ankit
>>>
>>> >
>>> > > +RDEPENDS_${PN} = "perl"
>>> > > --
>>> > > 2.20.1
>>> > >
>>> > > --
>>> > > _______________________________________________
>>> > > Openembedded-devel mailing list
>>> > > Openembedded-devel at lists.openembedded.org
>>> > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>>> >
>>> --
>>> _______________________________________________
>>> Openembedded-devel mailing list
>>> Openembedded-devel at lists.openembedded.org
>>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>>>
>>


More information about the Openembedded-devel mailing list