Issue Details (XML | Word | Printable)

Key: STDCXX-573
Type: Improvement Improvement
Status: Open Open
Priority: Minor Minor
Assignee: Unassigned
Reporter: Andrew Black
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
C++ Standard Library

Enable building with Purify

Created: 27/Sep/07 07:54 PM   Updated: 11/Jul/09 12:06 AM
Return to search
Component/s: Build and Installation
Affects Version/s: 4.2.0
Fix Version/s: 4.3.0

Time Tracking:
Original Estimate: 4h
Original Estimate - 4h
Remaining Estimate: 8h
Time Spent - 4h Remaining Estimate - 8h
Time Spent: 4h
Time Spent - 4h Remaining Estimate - 8h

File Attachments:
  Size
File Licensed for inclusion in ASF works purify.diff 2007-09-27 08:10 PM Andrew Black 2 kB


 Description  « Hide
It would be useful to be able to build and run the examples, utilities and tests using Rational Purify. This could potentially allow us to detect errors, such as memory leaks, which we might not otherwise detect.

 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Andrew Black added a comment - 27/Sep/07 08:10 PM
Attached (As purify.diff) is my first take at resolving this issue, though there are a few things that need to be fixed before the patch is included. I targeted this issue at 4.2.1, as it's too late in the 4.2.0 cycle for this sort of change.

One major issue is that it doesn't instrument the utilities (exec, locale/localedef), and this likely would be desired. A second issue is that we'd want to update the windows infrastructure for feature parity.

A smaller issue is that we need to determine the correct behavior if a user defines both PHDIR and PURE_OPTS. We may also wish to consider increasing the timeout used when running the tests and examples.

Probably one other issue to consider is whether this should be extended to single step compilation and single step run compilation.

Changelog:

2007-09-27 Andrew Black <ablack@roguewave.com>

  • GNUmakefile: Document PURE_OPTS flag, add to generated makefile.in.
  • makefile.rules [PURE_OPTS]: Link executables using purify if PURE_OPTS is defined.

Martin Sebor added a comment - 01/Nov/07 12:06 AM
Reported against 4.2 Set Affects Version(s) accordingly.

Martin Sebor added a comment - 16/Jan/08 10:49 PM
Adding Purify to our nightly testing would be worthwhile, as would running valgrind on Linux.
Travis, you might want to look at this to see if it makes sense.

Travis Vitek added a comment - 24/Jan/08 05:51 PM
It sounds like this just went from updating and integrating Andrews patch to updating the mekefiles, spot testing and then extending the buildntest script.

Travis Vitek added a comment - 26/Jan/08 01:39 AM
Committed as http://svn.apache.org/viewvc?view=rev&revision=615419.

If we want to do automated purify/valgrind/cadvise builds, then we should probably have a discussion about how we are going to process the results. I didn't do valgrind on Linux. If we just want the out target rule to run valgrind, then I can easily add it. Otherwise, I don't see any easy way to make valgrind run as part of the normal build/test process because the exec tool would need to run the each program through valgrind, which is something that exec doesn't do yet.


Travis Vitek added a comment - 30/Jan/08 02:19 AM

Travis Vitek added a comment - 06/Mar/08 07:12 PM
If we want to do this right, we need a bit of infrastructure to process the results into a human readable form and to build up a list of filters. This will take some time and discussion, and doesn't need to be fixed for 4.2.1, so I'm deferring to 4.3 or later.