From 0e399b9e4623a68eb681f8c3c5c45e05048a96e8 Mon Sep 17 00:00:00 2001 From: Niels de Vos Date: Fri, 10 Aug 2018 01:32:22 +0200 Subject: rpm: add "--with asan" build option RHEL-6 does not have libasan, enabling the "--with asan" option is a no-op there. RHEL-7 has an earlier version of libasan, and that does not have the __asan_init symbol. Test for __asan_report_error in confiure.as instead. Change-Id: I6322e832c5cfbd7d750f5c32c84c28771674ced6 Updates: #492 Signed-off-by: Niels de Vos --- glusterfs.spec.in | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'glusterfs.spec.in') diff --git a/glusterfs.spec.in b/glusterfs.spec.in index e2490f95eca..d4e78a891d0 100644 --- a/glusterfs.spec.in +++ b/glusterfs.spec.in @@ -9,6 +9,15 @@ ## All argument definitions should be placed here and keep them sorted ## +# asan +# if you wish to compile an rpm with address sanitizer... +# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --with asan +%{?_with_asan:%global _with_asan --enable-asan} + +%if ( 0%{?rhel} && 0%{?rhel} < 7 ) +%global _with_asan %{nil} +%endif + # bd # if you wish to compile an rpm without the BD map support... # rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without bd @@ -259,6 +268,9 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release} %if ( 0%{?_with_systemd:1} ) %{?systemd_requires} %endif +%if 0%{?_with_asan:1} && !( 0%{?rhel} && 0%{?rhel} < 7 ) +BuildRequires: libasan +%endif BuildRequires: bison flex BuildRequires: gcc make libtool BuildRequires: ncurses-devel readline-devel @@ -724,6 +736,7 @@ export CFLAGS %endif %configure \ + %{?_with_asan} \ %{?_with_cmocka} \ %{?_with_debug} \ %{?_with_firewalld} \ @@ -1501,6 +1514,9 @@ exit 0 %endif %changelog +* Fri Sep 7 2018 Niels de Vos +- Add an option to build with address sanitizer (ASAN) + * Sun Jul 29 2018 Niels de Vos - Disable building glusterfs-resource-agents on el6 (#1609551) -- cgit