|
From: Hrvoje V. <hrv...@gm...> - 2020-12-26 10:24:10
|
Hi everyone,
I am new to the project, both from user and dev perspective. In a couple of
days with playing around with the check, I have a few ideas that I can
contribute back to the project. Sorry if this was previously discussed.
1. It seems that check_mem_leaks is not part of the CMake build although
it is integrated into GNU Autotools scripts. Integration into GNU Autotools
scripts was done brarcher. See his commit
8699473b65011b50766d536222329eeb3953f1cc:
commit 8699473b65011b50766d536222329eeb3953f1cc
Author: brarcher <brarcher@64e312b2-a51f-0410-8e61-82d0ca0eb02a>
Date: Wed Dec 18 21:37:09 2013 +0000
check_mem_leaks: add new unit test for use against valgrind
I am not sure if that was intention. Is there a possibility that author
forgot to include it into CMake scripts?
In any case, I have prepared a commit that adds check_mem_leaks to CMake
scripts. I just haven't created a pull request.
2. Continuing from the first one; maybe it is better if project uses
just one build system? If you guys agree with this, I propose that we keep
using GNU Autotools and ditch CMake since this is a "pure UNIX" software;
Windows users needs to install MinGW, MSYS or Cygwin.
I strongly encourage only one build system, whichever the choice. I can
prepare a commit for this if we can agree with this.
3. Valgrind reports a lot of memory issues; leaks and invalid reads and
writes.
My idea is to fix everything what can be fixed.
4. Write a Dockerfile that can be used to build the project, run tests
including running Valgrind to check for memory errors, generate API
documentation, and to have a static code analysis of the whole codebase.
5. Integrate this Docker Container into Travis CI so that it can
automatically do all steps mentioned from the previous step.
I do apologies if I sound like I am trying to impose myself into the
project since I am a newbie to it. I just feel like I need to contribute my
know-how. Let me know what do you think about this. If you do agree about
any or all of the points above, I can create an issue for each individual
point so that we can track them.
br,
Hrvoje
|