On 3/28/17 1:37 PM, Andre McCurdy wrote: > On Tue, Mar 28, 2017 at 12:33 PM, Martin Kelly <[email protected]> wrote: >> From: Martin Kelly <[email protected]> >> >> I tried turning on the Yocto security flags and hit a compilation >> error due to gtest not compiling. Adding -fPIC fixes the issue. > > Since gtest only creates static libraries, compiling everything with > -fPIC might not be the correct solution.
it still is going to be linked with a PIE binary then it should be PIC
>
> Does adding:
>
> SECURITY_CFLAGS_pn-gtest = "${SECURITY_NO_PIE_CFLAGS}"
>
> to meta-oe/conf/distro/include/meta_oe_security_flags.inc help? If so,
> that might be the better approach.
>
>> Signed-off-by: Martin Kelly <[email protected]>
>> ---
>> meta-oe/recipes-test/gtest/gtest_1.8.0.bb | 9 +++++++++
>> 1 file changed, 9 insertions(+)
>>
>> diff --git a/meta-oe/recipes-test/gtest/gtest_1.8.0.bb
>> b/meta-oe/recipes-test/gtest/gtest_1.8.0.bb
>> index 483dc1f..9ba4ee4 100644
>> --- a/meta-oe/recipes-test/gtest/gtest_1.8.0.bb
>> +++ b/meta-oe/recipes-test/gtest/gtest_1.8.0.bb
>> @@ -19,6 +19,15 @@ S = "${WORKDIR}/googletest-release-${PV}"
>>
>> inherit cmake
>>
>> +# -fPIC is needed to prevent relocation errors when we compile with Yocto
>> +# security flags. See this issue for more details:
>> +#
>> +# https://github.com/google/googletest/issues/854
>> +#
>> +# If that issue is fixed, we can probably remove the manual -fPIC flags
>> here.
>> +OECMAKE_C_FLAGS += " -fPIC"
>> +OECMAKE_CXX_FLAGS += " -fPIC"
>
> No leading space is required with +=
>
>> +
>> ALLOW_EMPTY_${PN} = "1"
>> ALLOW_EMPTY_${PN}-dbg = "1"
>>
>> --
>> 2.1.4
>>
>> --
>> _______________________________________________
>> Openembedded-devel mailing list
>> [email protected]
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
signature.asc
Description: OpenPGP digital signature
-- _______________________________________________ Openembedded-devel mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-devel
