Commit Graph

589 Commits

Author SHA1 Message Date
Daniel Marjamäki 9b874b97f0 add parse-glibc script that match annotations in system headers against cppcheck cfg files 2015-02-26 20:40:40 +01:00
PKEuS 688d5d5c54 matchcompiler.py: Added missing parantheses 2015-01-31 12:36:22 +01:00
PKEuS b2835051df Refactorization: Renamed Token::Match pattern %var% to %name%, implement new pattern %var% which is true if varId > 0. 2015-01-31 12:32:04 +01:00
Matthias Krüger e56671101e tests: add a script which runs test/cfg tests.
add new make target (checkcfg) which builds cppcheck and executes the script
       make travis run checkcfg
2015-01-27 19:46:52 +01:00
Thomas Jarosch 0c21f77873 MC: Add ability to show skipped (=non-compiled) patterns 2015-01-09 22:50:42 +01:00
Thomas Jarosch 5b4f543c3b Match compiler: Support match patterns with escaped quotes
This allows us to compile patterns like 'extern "C"'.
Fixes long standing open issues in the MC unit test.
2015-01-09 22:41:40 +01:00
Thomas Jarosch 027ce0e81f Match compiler: Add unit test for C string replacements 2015-01-09 20:20:54 +01:00
Thomas Jarosch 07231c832c Match compiler: Allow multiple spaces / no space at all when searching for C-strings
This catches 32 more C strings.
2015-01-09 01:18:50 +01:00
Thomas Jarosch 965775423b Remove useless forward declarations
Instead move the 'static' keyword to the function implementation.
2015-01-08 23:58:00 +01:00
Daniel Marjamäki ff11ba9847 Updated copyright year to 2015 2015-01-03 12:14:58 +01:00
Thomas Jarosch 95940ff0ef python3 compatibility 2014-12-22 16:04:29 +01:00
Thomas Jarosch 91e45ba8d7 pep8 fix
pep8 reported:
extracttests.py:233:16: E713 test for membership should be 'not in'
2014-12-22 14:27:47 +01:00
Daniel Marjamäki 051d42ae6b astyle formatting 2014-11-20 14:20:09 +01:00
orbitcowboy f5d804f71a running astyle 2014-11-20 10:13:03 +01:00
Alexander Mai b8224edaac Remove iceowl from list of skipped packages. Document the remaining skipped packages with a reference to accoding trac ticket 2014-11-15 12:10:18 +01:00
Daniel Marjamäki 33f384c48e daca2: allow -j option 2014-10-11 18:04:53 +02:00
Daniel Marjamäki b96f4f53ad daca2: removed the bailout for wxwidgets. the varid fix for typedefs seem to fix the hangs. 2014-10-11 16:48:00 +02:00
Daniel Marjamäki a33f01a2df daca2: skip wxwidgets for now to avoid hang 2014-10-11 14:05:11 +02:00
Daniel Marjamäki 748e3a4ba3 daca2: skip valgrind for now because it's extremely slow. see #6151 2014-10-11 07:54:41 +02:00
Gianfranco Costamagna 3eafb2b5c4 Makefile: Fix DESTDIR handling 2014-09-25 18:50:48 +02:00
Daniel Marjamäki e875146060 ci.py: minor refactoring 2014-09-09 05:35:11 +02:00
Daniel Marjamäki da3e8606ec ci.py: sleep 2014-09-08 17:39:18 +02:00
Daniel Marjamäki 5fecd4c194 ci.py: Cleanup, DACA2 will be executed on other computers 2014-09-08 17:25:57 +02:00
Matthias Krüger 7784bbfa86 times.sh: create a variable which can be changed to alter the iterations/how often we run cppcheck on one commit (default: 4). 2014-08-31 11:10:55 +02:00
Daniel Marjamäki fbf09f11a0 reduce: simplify multiline #define statements 2014-08-01 13:35:31 +02:00
Daniel Marjamäki 3d8ac3d0a1 astyle formatting
[ci skip]
2014-07-30 17:53:41 +02:00
Daniel Marjamäki 1144384242 reduce: simplify multiline function declarations better 2014-07-30 17:43:24 +02:00
Daniel Marjamäki c5e9da2984 xml dump: add more token attributes 2014-07-21 12:44:53 +02:00
Daniel Marjamäki 57a05bc341 xml dump: added 'astIsFloat' utility function in cppcheckdata.py 2014-07-20 15:24:40 +02:00
Daniel Marjamäki 54dbb5f832 cppcheckdata.py: Added Token.getValue() 2014-07-18 18:10:52 +02:00
Daniel Marjamäki 4a784ce2e9 cppcheckdata.py: My intention is that it will be possible to use this module from any code no matter if it's open source or closed source etc. And for any purposes. Added a comment at the top. 2014-07-18 17:57:02 +02:00
Daniel Marjamäki d003a47826 xml dump: Fixed ValueFlow handling in cppcheckdata.py 2014-07-18 17:29:39 +02:00
Daniel Marjamäki d3425d5c61 xml dump: fixed cppcheckdata loader so previous/next will work 2014-07-17 07:39:19 +02:00
Daniel Marjamäki 27829383a5 xml dump: Read scope-type attribute in cppcheckdata.py module 2014-07-16 16:15:28 +02:00
Daniel Marjamäki d734a98c89 xml dump: Added tools/cppcheckdata.py that loads the dump. 2014-07-16 15:26:59 +02:00
Matthias Krüger bfb2ebedec daca: keep files that we can check (see path.cpp). 2014-07-09 18:47:44 +02:00
PKEuS 62d07878d7 Fixed two issues in matchcompiler:
- Use correct findmatch or findsimplematch for verification
- Print failing pattern also for findmatch/findsimplematch
2014-07-02 15:25:54 +02:00
PKEuS ec59f1d9df matchcompiler.py: Check Token::type() before comparing Token::str() against "||" or "|" 2014-06-30 14:04:18 +02:00
PKEuS 78f0a47170 matchcompiler.py: Show pattern that caused the InternalError 2014-06-30 14:04:18 +02:00
Daniel Marjamäki 1bcb22e4a4 ci.py: run daca2 in alphabetical order again 2014-06-28 20:11:46 +02:00
Toralf Förster c1d8d1b26a tools/times.sh: exit if prereq were not met
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:55:51 +02:00
Toralf Förster 4b135b935d tools/times.sh: use always long-opts
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:49:47 +02:00
Toralf Förster fa18adea6f tools/times.sh: prefer a loop over repeating the same command
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:48:56 +02:00
Toralf Förster da017d6888 tools/times.sh: adapt comment to the actual loops
left over from #ea9f0718

Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:46:31 +02:00
PKEuS e2b77a33dd Fixed test_matchcompiler.py 2014-06-18 18:51:24 +02:00
PKEuS 47a1122eb8 Updated matchcompiler to latest changes 2014-06-14 10:57:38 +02:00
orbitcowboy 5c2ed8450e Revert my previous fix 28763fa020 and suppress gcc false positive warnings. 2014-06-13 15:46:43 +02:00
Alexander Mai 16aa891da2 #5798 cfg files are not installed to CFGDIR. Extend patch to update dmake.cpp. Also fix some g++ compiler warnings 2014-05-17 11:05:42 +02:00
Alexander Mai fc592673a1 Fix gcc compiler warning by adding #ifdef GDB_HELPERS 2014-05-15 21:02:08 +02:00
Matthias Krüger 52ba857f8d dmake: make clean: also remove objects files inside tools/ (dmake.o, reduce.o) 2014-05-14 13:20:24 +02:00
Matthias Krüger f138bf004b dmake: make clean: remove dmake binary as well. 2014-05-09 08:45:25 +02:00
Alexander Mai 417a916ece Use CXXFLAGS upon linking dmake for consistency 2014-05-04 20:52:54 +02:00
Daniel Marjamäki 636a15ac55 Doublefree: Fixed FP when exit() is called 2014-05-04 12:02:55 +02:00
amai a5aac3b551 Add missing dependencies for dmake 2014-05-03 20:05:58 +02:00
amai 3bdfad0b73 reduce and dmake now use existing object files as dependencies whenever possible. Fix compilation for reduce on cygwin. 2014-05-03 18:54:48 +02:00
Alexander Mai 0b26a1f27a Fix compiler warnings 2014-04-27 18:56:54 +02:00
Alexander Mai 9e9bc1e457 Since reduce shares object files with cppcheck it should use the same compiler and linker flags 2014-04-27 18:56:30 +02:00
Alexander Mai 290f0ef022 #5644 Compilation failure on Cygwin - related to tinyxml2 (#undefine __STRICT_ANSI__ on cygwin). Patch by ir0nh34d 2014-04-24 22:22:43 +02:00
Daniel Marjamäki ea016d4d73 dmake: include lib/cxx11emu.h in release builds also 2014-04-20 12:30:05 +02:00
orbitcowboy bd242c07eb Fixed typo in travis script and tools/readme.md, no functional change. 2014-04-13 23:17:41 +02:00
Alexander Mai 9ac83d7624 reduce is linking against LIBS as well, to keep build scripts e.g. on travis working 2014-04-11 23:24:47 +02:00
Alexander Mai fb13c56ef0 Makefile: reduce now also depends on LIBOBJ: command not found 2014-04-11 22:27:29 +02:00
Daniel Marjamäki c27a482a84 Merge pull request #284 from matthiaskrgr/dmake
"make dmake" will now compile dmake and directly run it afterwards, bump kernel version checked by travis to 3.14
2014-04-05 08:23:15 +02:00
Daniel Marjamäki 749117a7ff daca2: we must bailout for now when checking insighttoolkit because there is some hang 2014-04-03 17:10:35 +02:00
Matthias Krüger 4481015bdc dmake: "make dmake" now also runs the binary after compilation. 2014-04-03 16:41:58 +02:00
Daniel Marjamäki 22c4d45ca0 astyle formatting 2014-03-31 03:06:57 +02:00
Alexander Mai 0242a3c188 -rdynamic cannot be used on mingw 2014-03-30 20:50:03 +02:00
Daniel Marjamäki 568b9677d7 daca2: Added script that downloads all packages and save reduced archives in the folder ~/daca2-packages 2014-03-23 11:45:29 +01:00
Alexander Mai 29165f3e5f Add -rdynamic to the linker flags to allow obtaining a bracktrace 2014-03-21 22:33:07 +01:00
XhmikosR 1df5ccf315 daca2-report.py: add missing new line in the generated HTML.
[ci skip]
2014-03-21 20:38:02 +02:00
XhmikosR fc54e6acc4 Trim tailing spaces and convert tabs to spaces. 2014-03-18 17:00:28 +02:00
XhmikosR 4928dc52bb daca2: Move style into daca2.css. 2014-03-18 16:50:38 +02:00
XhmikosR b608a8904a Minify sorttable.min.js and use that in daca2-report.py. 2014-03-18 16:48:03 +02:00
Matthias Krüger 76fb3903ff tools: times.sh: show more information in stdout (while still printing it to the log), compute averages of runs, automatically compile and run "times" binary after generating the log. 2014-03-17 02:12:37 +01:00
XhmikosR 66e448f0fd daca2-report.py: tweak style more.
[ci skip]
2014-03-16 13:27:24 +02:00
XhmikosR 9e80080738 Add sorttable.js to the repository. 2014-03-16 13:22:22 +02:00
XhmikosR c7b2f08782 daca2-report.py: move script inclusion after any style.
[ci skip]
2014-03-16 13:14:19 +02:00
XhmikosR bfd388dc15 daca2-report.py: fix CSS style.
[ci skip]
2014-03-16 12:19:52 +02:00
XhmikosR 98fcaa7a9e daca2-report.py: remove unneeded end tags.
[ci skip]
2014-03-16 12:08:58 +02:00
Matthias Krüger ea18e4b245 daca: count varid 0 occurences per file. 2014-03-12 12:49:06 +01:00
XhmikosR aabee422e0 PEP8 fixes. 2014-03-11 17:42:14 +02:00
Alexander Mai b44c1b52ee daca2: made mainpage report sortable 2014-03-09 08:33:27 +01:00
Simon Martin a3d1cac79c Ticket #5373: Keep track whether tokens come from a C or C++ file to properly handle %type% in Token::Match with "delete" 2014-03-08 21:26:06 +01:00
Daniel Marjamäki dddd9848b8 daca2: remove ../clang/INPUTS/.. files since these take so long time to scan 2014-03-06 20:36:52 +01:00
Daniel Marjamäki 5eb79f0fa5 Merge pull request #252 from matthiaskrgr/dmake_externals
Dmake externals
2014-03-04 06:04:11 +01:00
Matthias Krüger c108321329 dmake: when building cppcheck. do not include "externals" dir, there are no files in there (only the tinyxml dir which is already handled via -Iexternals/tinyxml). 2014-03-03 12:09:21 +01:00
Matthias Krüger a9df4a3288 man, htdocs, gui, test, tools: bump a few more copyrights to 2014 2014-03-03 11:03:17 +01:00
Daniel Marjamäki 43d48574c5 ci.py: fixed daca2folder() when results is empty 2014-02-23 10:26:01 +01:00
Daniel Marjamäki 1d801ce7b1 daca2: fixed wget function 2014-02-23 10:21:00 +01:00
Daniel Marjamäki 6273a270c7 daca2: tell wget to overwrite file. We want that the correct file is used. 2014-02-22 07:52:51 +01:00
Lauri Nurmi 91340d4043 Emulate the C++11 'nullptr' and 'static_assert' 2014-02-15 07:52:17 +01:00
Daniel Marjamäki fd3a8a2a18 Update copyright 2014-02-15 07:45:39 +01:00
Daniel Marjamäki b88fbb9857 CI: run daca2 on oldest folder 2014-02-07 06:37:42 +01:00
Matthias Krüger ec7e54c123 daca2: count crashes of cppcheck in index table. 2014-01-29 12:54:52 +01:00
Daniel Marjamäki a7146916b1 Makefile: added -Wno-sign-compare. I don't like this warning 2014-01-18 09:51:48 +01:00
Ryan Pavlik 065db3d9f6 Add a rule to the cli makefile to actually build TinyXML2 2014-01-17 15:52:05 -06:00
Matthias Krüger 0cfd60aa34 travis: rewrite config file.
Uses CXXFLAGS -O2 instead of default flags to speed up self checking.

Testing is done with the following settings:

1) gcc    CXXFLAGS=-O2
2) gcc    CXXFLAGS=-O2  SRCDIR=build VERIFY=1
3) gcc    CXXFLAGS=-O2  MAKEFLAGS="HAVE_RULES=yes"
4) gcc    CXXFLAGS=-O2  SRCDIR=build VERIFY=1  MAKEFLAGS="HAVE_RULES=yes"
5) clang  CXXFLAGS=-O2
6) clang  CXXFLAGS=-O2  SRCDIR=build VERIFY=1
7) clang  CXXFLAGS=-O2  MAKEFLAGS="HAVE_RULES=yes"
8) clang  CXXFLAGS=-O2  SRCDIR=build VERIFY=1  MAKEFLAGS="HAVE_RULES=yes"

Changes made to before_install:
installe libpcre3

Changes made to script:
* make and make test are now called seperately
* cppcheck also checks "build" folder (created by SRCDIR=build) if existing.
* gui is built twice, one time with HAVE_RULES=yes as qmake argument and one time without it.
* a script has been added and run which returns false if cppcheck --showtime=top5 does not return 7 lines indicating that something is broken
2014-01-12 22:47:21 +01:00
Daniel Marjamäki 424675982a dmake: use -std=c++0x instead of -std=c++11 as it's supported by earlier gcc 2014-01-12 15:38:51 +01:00
Daniel Marjamäki 50c8075b15 dmake: use -std=c++11 even if CXXFLAGS is redefined 2014-01-12 13:47:53 +01:00
Daniel Marjamäki 4224f873fd dmake: added -std=c++11 flag 2014-01-12 13:14:46 +01:00
Daniel Marjamäki d618730c96 Merge pull request #211 from matthiaskrgr/filemodes
make tools/times-tags.sh and tools/times.sh executable (mode 755).
2014-01-05 22:17:55 -08:00
Daniel Marjamäki af8f5ef57c daca2: remove aws code from daca2-report 2014-01-06 06:51:04 +01:00
Matthias Krüger bf34a0aafa make tools/times-tags.sh and tools/times.sh executable (mode 755). 2014-01-05 13:58:59 +01:00
Daniel Marjamäki 0851408a26 times.sh: Use SRCDIR to get more accurate results 2014-01-05 13:07:32 +01:00
Daniel Marjamäki cb40e83261 daca2: added --tries and --timeout in wget command 2014-01-02 16:50:12 +01:00
Daniel Marjamäki 5d31385161 daca2: fixed exitcode handling 2013-12-31 20:56:16 +01:00
Daniel Marjamäki 56a5b0d55f daca2: If cppcheck crash, the exitcode is nonzero. Write message in the report when the exitcode is nonzero. 2013-12-31 18:24:32 +01:00
Daniel Marjamäki a3a8edc00d ci: use CFGDIR flag 2013-12-28 12:17:30 +01:00
Daniel Marjamäki 9e0d7d86e9 dmake: Improved handling of CFGDIR 2013-12-28 12:15:08 +01:00
Lucas Manuel Rodriguez 4a46029ba6 Add readme.md for 'tools' directory 2013-12-27 13:58:08 -02:00
Daniel Marjamäki d3a848f2e6 Makefile: Added optional CFGDIR parameter that allows user to specify where Cppcheck will look for cfg files. 2013-12-26 18:41:51 +01:00
Daniel Marjamäki 31368d946b daca2-report: insert spaces between 'Most recently updated' items 2013-12-15 12:33:06 +01:00
Daniel Marjamäki 825174d394 ci.py: changed scp commands 2013-12-13 06:57:08 +01:00
Daniel Marjamäki 77a5ad03a6 ci: minor updates 2013-12-12 21:08:15 +01:00
Daniel Marjamäki 17099d74d6 ci.py: copy std.cfg to daca2 folder to get better results. 2013-12-12 20:10:46 +01:00
Daniel Marjamäki 663f5a14b0 daca2: avoid hang for iceowl package 2013-11-30 16:16:11 +01:00
Daniel Marjamäki 2b7835c5f9 daca2-report: Removed text about hardware running daca2 2013-11-28 19:27:37 +01:00
Daniel Marjamäki a4eeddd0f6 daca2-report: handle when datestr is None 2013-11-28 17:44:50 +01:00
Daniel Marjamäki 6b4016be42 daca2-report: get results from aws and show most recent results on web 2013-11-27 19:17:22 +01:00
Daniel Marjamäki d60c885f08 Daca2: use proper build flags in ci.py 2013-11-24 14:57:54 +01:00
Daniel Marjamäki 4e626d0907 daca2: update aws script. copy results for raspberry. 2013-11-24 14:55:49 +01:00
Daniel Marjamäki d5bb5d6b77 daca2: Change date field to date when analysis ends. 2013-11-24 10:50:16 +01:00
Daniel Marjamäki 02c299405b daca2: write number of error,warning,performance,portability,style in report 2013-11-24 10:47:12 +01:00
Daniel Marjamäki 514218da31 Daca2: Updated aws compilation flags 2013-11-23 16:38:52 +01:00
Daniel Marjamäki 0be5caf48d Daca2: updated aws script 2013-11-23 16:35:52 +01:00
Daniel Marjamäki a62a46c010 DACA2: little cleanup of aws script 2013-11-23 16:25:04 +01:00
Daniel Marjamäki a35a3236d6 Daca2: Added aws.py for secondary daca2 script 2013-11-23 16:22:11 +01:00
Daniel Marjamäki 992f61d911 ci.py: refactoring 2013-11-23 16:00:28 +01:00
Daniel Marjamäki 007e2d9dd5 daca2: handle links better 2013-11-18 17:59:47 +01:00
XhmikosR ff4cf68338 Improve daca2-report.py.
* remove empty <td>
* add meta charset
* remove double space
* remove unneeded escapes
2013-11-10 17:35:31 +02:00
Daniel Marjamäki e73acbaab6 daca2-report: graphical updates. write date when each 'folder' is updated. write some more description about the project. try to fix problem that & is not displayed properly 2013-11-04 13:18:01 +01:00
Daniel Marjamäki 46b4a19bd3 Added CI script to repo 2013-11-02 17:39:42 +01:00
Daniel Marjamäki e948f4c9ee daca2: don't remove large text files. there was some strange problem that results.txt was removed when a results.txt in a subfolder was removed. 2013-11-02 12:03:25 +01:00
Daniel Marjamäki b577b12660 daca2: skip boost to avoid hang 2013-10-28 18:09:05 +01:00
Daniel Marjamäki 9faaef840b daca2: check all extracted files 2013-10-27 07:53:23 +01:00
Daniel Marjamäki aaf5bbb7ad daca2: minor tweaks of wget and removeLargeFiles 2013-10-26 11:47:15 +02:00
Daniel Marjamäki 45e7c488a0 daca2: dont terminate when a package fails. try to continue. 2013-10-25 06:43:08 +02:00
Daniel Marjamäki 2f864dec49 daca2: fixes 2013-10-24 18:36:08 +02:00
Daniel Marjamäki ab2864e1cb daca2: use ls-lR file 2013-10-24 18:22:15 +02:00
Daniel Marjamäki fc9998e439 daca2: bailout if download fails 2013-10-24 17:39:37 +02:00
Daniel Marjamäki b15eeb0aa8 autopep8 formatting 2013-10-20 18:36:33 +02:00
Daniel Marjamäki 47766736fc daca2: handle xz compression 2013-10-20 12:45:05 +02:00
Daniel Marjamäki f58b4b61e2 daca2: improved command line flags 2013-10-20 11:28:16 +02:00
Daniel Marjamäki 17f8edfada daca2: tried to improve getpackages to be more robust 2013-10-20 11:25:31 +02:00
Daniel Marjamäki 4debaa2b92 daca2: alloc passing rev to script 2013-10-20 10:49:54 +02:00
Daniel Marjamäki 7f9f624215 daca2: more reliable ftp 2013-10-19 13:46:15 +02:00
Daniel Marjamäki c9491f952b daca2: skip flite, quick fix of possible hang 2013-10-19 09:53:23 +02:00
XhmikosR 0dba668661 daca2-report.py: use a doctype. 2013-10-18 17:37:03 +02:00
Daniel Marjamäki 88447385c2 autopep8 formatting 2013-10-18 17:35:59 +02:00
Daniel Marjamäki 072c80bde8 daca2: cleanup large files before cppcheck starts 2013-10-18 05:31:00 +02:00