libosmocore[master]: configure: add --enable-sanitize, use in jenkins.sh

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Neels Hofmeyr gerrit-no-reply at lists.osmocom.org
Fri Sep 30 00:53:42 UTC 2016


Patch Set 2: Code-Review+1

I have tested various ways of switching on -fsanitize:

(1) adding the flags with a ./configure switch (this patch).
(2) in jenkins.sh, add flags to 'make' invocation.
(3) in jenkins.sh, export flags before running ./configure.

I would have liked this to work on both the linux_amd64 slave as well
as the FreeBSD slave, but the FreeBSD slave doesn't seem to like ASAN,
at least that's how I interpret the test runs:

works as expected on:   (1)  (2)  (3)
linux                   yes  yes  yes
FreeBSD                 no   no   no

What happens on FreeBSD?  (1)  (2)  (3)
clean build passes        yes  no   no
dirty build passes        yes  no   no

On FreeBSD:

For (1), a clean build passes, but sanity fail is not detected.
This should fail: https://jenkins.osmocom.org/jenkins/job/libosmocore-gerrit/261/

For (2), a clean build fails.
This should pass: https://jenkins.osmocom.org/jenkins/job/libosmocore-gerrit/262/
Instead we get undefined reference to asan symbols for tests compilation.

For (3), a clean build fails.
This should pass: https://jenkins.osmocom.org/jenkins/job/libosmocore-gerrit/264/
Instead we get a "C compiler cannot create executables"

So this patch here (1) successfully detects sanitize failures on linux,
and just passes everything on FreeBSD, be it sane or not.
Which means we can apply this without introducing problems on FreeBSD.

I favor this patch over the other methods.
Though I don't understand exactly why FreeBSD fails with ASAN
(gmake? cc instead of gcc?).

This patch also has the advantage of being most convenient: just pass a 
configure option of --enable-sanitize and done. The verbose options are
hidden in configure.ac. (I hope they all get through, but the result looks good.)

-- 
To view, visit https://gerrit.osmocom.org/974
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Idf7f46fa048608c2951f2473cb528f6c8dc2681d
Gerrit-PatchSet: 2
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Owner: Neels Hofmeyr <nhofmeyr at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: Neels Hofmeyr <nhofmeyr at sysmocom.de>
Gerrit-HasComments: No



More information about the gerrit-log mailing list