[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-buildsystem
Subject:    Re: Review Request 119968: add compiler sanitizers support
From:       "Albert Astals Cid" <aacid () kde ! org>
Date:       2014-08-28 11:23:20
Message-ID: 20140828112320.11205.2135 () probe ! kde ! org
[Download RAW message or body]

--===============7167507104036894174==
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit



> On ago. 28, 2014, 10:57 a.m., Albert Astals Cid wrote:
> > How would i compile karchive with this? does karchive need any modification?
> 
> Mathieu Tarral wrote:
> I don't know the build process for Karchive, neither for KDE in general,
> but you should have to modify your buildsystem or any of your flags.
> The goal of this module is to handle errors, misconfigurations and
> right compiler flags internaly.
> 
> It aims to be as simple as :
> include (ECMEnableSanitizers)
> 
> and then :
> cmake -DCMAKE_ENABLE_SANITIZERS ..
> make karchive ?
> 
> Please tell me more about the way you configure and build karchive
> so we can test this module integration.
> 
> Mathieu Tarral wrote:
> Sorry, quick fix for my last message :
> but you should**n't** have to modify your buildsystem
> 
> and for the build process :
> cmake -DCMAKE_ENABLE_SANITIZERS=address;undefined ..
> or
> cmake -DCMAKE_ENABLE_SANITIZERS=address ..
> or
> cmake -DCMAKE_ENABLE_SANITIZERS=memory ..
> etc
> 
> the sanitizers address, memory and thread are mutually exclusive.
> undefined is compatible with all sanitizers.
> 
> Albert Astals Cid wrote:
> git clone kde:karchive
> cd karchive
> cmake .
> make
> 
> I think it's not a good idea if one has to modify code to use this.
> 
> Can you do that include in KDECompilerSettings so that all kde stuff automatically \
> gets this?

Arg, damn reviewboarrd, i mean 

git clone git://anongit.kde.org/karchive


- Albert


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/119968/#review65411
-----------------------------------------------------------


On ago. 28, 2014, 10:33 a.m., Mathieu Tarral wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/119968/
> -----------------------------------------------------------
> 
> (Updated ago. 28, 2014, 10:33 a.m.)
> 
> 
> Review request for Build System and Extra Cmake Modules.
> 
> 
> Repository: extra-cmake-modules
> 
> 
> Description
> -------
> 
> This module uses a cached variable to hold a list of compiler sanitizers
> to enable.
> It parses that list, checks the sanitizer desired options, then checks the compiler
> support and set the appropriate flags.
> 
> 
> Diffs
> -----
> 
> modules/ECMEnableSanitizers.cmake PRE-CREATION 
> 
> Diff: https://git.reviewboard.kde.org/r/119968/diff/
> 
> 
> Testing
> -------
> 
> cmake -DECM_ENABLE_SANITIZERS=address;undefined
> make VERBOSE=1
> 
> 
> Thanks,
> 
> Mathieu Tarral
> 
> 


--===============7167507104036894174==
MIME-Version: 1.0
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: 7bit




<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 \
solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">  \
<tr>  <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/119968/">https://git.reviewboard.kde.org/r/119968/</a>
  </td>
    </tr>
   </table>
   <br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <p style="margin-top: 0;">On agost 28th, 2014, 10:57 a.m. UTC, <b>Albert \
Astals Cid</b> wrote:</p>  <blockquote style="margin-left: 1em; border-left: 2px \
solid #d0d0d0; padding-left: 10px;">  <pre style="white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">How would i compile karchive with this? does karchive \
need any modification?</p></pre>  </blockquote>




 <p>On agost 28th, 2014, 11:14 a.m. UTC, <b>Mathieu Tarral</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I \
don't know the build process for Karchive, neither for KDE in general,<br \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
normal;" /> but you should have to modify your buildsystem or any of your flags.<br \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
normal;" /> The goal of this module is to handle errors, misconfigurations and<br \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
normal;" /> right compiler flags internaly.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">It aims to be as simple as :<br style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;" /> \
include (ECMEnableSanitizers)</p> <p style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: inherit;">and then :<br \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
normal;" /> cmake -DCMAKE_ENABLE_SANITIZERS ..<br style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: normal;" /> make karchive ?</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">Please tell me more about the way you configure and \
build karchive<br style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: normal;" /> so we can test this module integration.</p></pre>
 </blockquote>





 <p>On agost 28th, 2014, 11:22 a.m. UTC, <b>Mathieu Tarral</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
inherit;">Sorry, quick fix for my last message :<br style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: normal;" /> but you should<strong \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
normal;">n't</strong> have to modify your buildsystem</p> <p style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">and \
for the build process :<br style="padding: 0;text-rendering: inherit;margin: \
0;line-height: inherit;white-space: normal;" /> cmake \
-DCMAKE_ENABLE_SANITIZERS=address;undefined ..<br style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: normal;" /> or<br style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;" /> \
cmake -DCMAKE_ENABLE_SANITIZERS=address ..<br style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: normal;" /> or<br style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;" /> \
cmake -DCMAKE_ENABLE_SANITIZERS=memory ..<br style="padding: 0;text-rendering: \
inherit;margin: 0;line-height: inherit;white-space: normal;" /> etc</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">the sanitizers address, memory and thread are mutually \
exclusive.<br style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: normal;" /> undefined is compatible with all \
sanitizers.</p></pre>  </blockquote>





 <p>On agost 28th, 2014, 11:23 a.m. UTC, <b>Albert Astals Cid</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">git \
clone kde:karchive<br style="padding: 0;text-rendering: inherit;margin: \
0;line-height: inherit;white-space: normal;" /> cd karchive<br style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;" /> \
cmake .<br style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: normal;" /> make</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">I think it's not a good idea if one has to modify code \
to use this.</p> <p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">Can you do that include in KDECompilerSettings so that \
all kde stuff automatically gets this?</p></pre>  </blockquote>








</blockquote>

<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Arg, \
damn reviewboarrd, i mean </p> <p style="padding: 0;text-rendering: inherit;margin: \
0;line-height: inherit;white-space: inherit;">git clone \
git://anongit.kde.org/karchive</p></pre> <br />










<p>- Albert</p>


<br />
<p>On agost 28th, 2014, 10:33 a.m. UTC, Mathieu Tarral wrote:</p>









<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: \
1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; \
-webkit-border-radius: 6px;">  <tr>
  <td>

<div>Review request for Build System and Extra Cmake Modules.</div>
<div>By Mathieu Tarral.</div>


<p style="color: grey;"><i>Updated ago. 28, 2014, 10:33 a.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
extra-cmake-modules
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" \
style="border: 1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">This module uses a cached variable to hold a list of \
compiler sanitizers<br style="padding: 0;text-rendering: inherit;margin: \
0;line-height: inherit;white-space: normal;" /> to enable.<br style="padding: \
0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;" /> It \
parses that list, checks the sanitizer desired options, then checks the compiler<br \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
normal;" /> support and set the appropriate flags.</p></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: \
1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: \
inherit;white-space: inherit;">cmake -DECM_ENABLE_SANITIZERS=address;undefined<br \
style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: \
normal;" /> make VERBOSE=1</p></pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>modules/ECMEnableSanitizers.cmake <span style="color: \
grey">(PRE-CREATION)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/119968/diff/" style="margin-left: \
3em;">View Diff</a></p>






  </td>
 </tr>
</table>








  </div>
 </body>
</html>


--===============7167507104036894174==--



_______________________________________________
Kde-buildsystem mailing list
Kde-buildsystem@kde.org
https://mail.kde.org/mailman/listinfo/kde-buildsystem


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic