Daniel Marjamki
45cf562212
matchcompiler: fixed find(simple)match compiler problems.
2013-06-02 13:57:25 +02:00
Daniel Marjamki
35b13da3a5
matchcompiler: find(simple)match doesn't work well. the compiled functions are not static => the wrong function can be executed. this is a quick fix that just disable find(simple)match compiled patterns.
2013-06-02 12:41:34 +02:00
Frank Zingsheim
650027a07a
Fixed #4797 (matchcompiler.py cannot handle overloaded findsimplematch and findmatch)
2013-05-15 18:18:58 +02:00
Daniel Marjamäki
e1fd003e2d
makefile: make it possible to turn on matchcompiler verifications with 'VERIFY=1'
2013-05-15 13:04:19 +02:00
XhmikosR
ae73466f97
Python scripts: PEP8 fixes
2013-03-03 09:59:16 +01:00
PKEuS
2ad38c8701
Updated matchcompiler to support %cop%
2013-03-01 02:52:44 -08:00
Daniel Marjamäki
c07576e07e
dmake: generating unix makefile from windows. Ticket: #3887
...
When you commit the generated Makefile from windows you must probably be careful about the line endings.
2013-02-24 03:30:58 -08:00
Stefan Naewe
26ddf07366
tools/dmake: update with MINGW32 support
...
Signed-off-by: Stefan Naewe <stefan.naewe@googlemail.com>
2013-02-08 12:15:41 +01:00
Daniel Marjamäki
0a88a136ca
Reduce: Added --cfg command
2013-01-27 03:20:24 +01:00
Daniel Marjamäki
89b54cb2c9
reduce: reduce structs/enums/etc better
2013-01-20 09:05:50 +01:00
Daniel Marjamäki
d87d54339d
reduce: fix output
2013-01-17 21:02:52 +01:00
Thomas Jarosch
4fb6751d08
MC: Enable compiled matches for Token::findmatch() and Token::findsimplematch()
...
Speed is exactly the same and the --verify mode of the
match compiler ensured everything works as expected.
2013-01-16 21:50:32 +01:00
Thomas Jarosch
9f9c654621
MC: Implement verify mode for compiled Token::findmatch patterns
2013-01-14 11:18:33 +01:00
Thomas Jarosch
63e18d6b1c
MC: Split _replaceTokenFindMatch() into two small functions
2013-01-14 11:06:59 +01:00
Thomas Jarosch
017783a77e
MC: Save one indentation level
2013-01-14 11:06:55 +01:00
Thomas Jarosch
06a7d301e2
MC: Switch to assertEqual function from python's unittest
2013-01-14 11:06:40 +01:00
Thomas Jarosch
3bb8237cdc
MC: Turn MatchCompiler tests into python unit test
2013-01-14 11:06:33 +01:00
Thomas Jarosch
c0044122f4
Add self test for _replaceTokenFindMatch
2013-01-12 15:28:38 +01:00
Thomas Jarosch
ff9e864a07
Add self test for replaceTokenMatch
2013-01-12 15:28:38 +01:00
Thomas Jarosch
a7377f180a
Quote output of _assertEquals()
...
It's easier to detect trailing spaces this way.
2013-01-12 15:28:38 +01:00
Thomas Jarosch
4038d4b562
Place main code into own function
2013-01-12 15:28:38 +01:00
Thomas Jarosch
fdcfbd5ff9
Add missing copyright header
2013-01-10 11:10:45 +01:00
Thomas Jarosch
6bd7463c54
Add local copy of argparse module to support python 2.6 / python 3.0
2013-01-09 21:30:53 +01:00
Edoardo Prezioso
6236e1dc38
Token::Match: removed harmless special code for initial '!!foo' patterns.
2013-01-09 20:13:33 +01:00
Thomas Jarosch
de36324d62
Match compiler: Add cmdline handling
2013-01-09 19:41:03 +01:00
Thomas Jarosch
97e1e50139
Match compiler: Workaround broken code generation for "!!foo" patterns
...
This is just meant for the upcoming release.
2013-01-09 19:25:24 +01:00
Thomas Jarosch
e1be85a552
Match compiler: Be more user friendly on how to invoke it
2013-01-09 19:22:40 +01:00
Thomas Jarosch
ade0b741b7
Match compiler: Create 'build' directory if needed
2013-01-09 19:15:13 +01:00
Thomas Jarosch
982503f457
Match compiler: Workaround broken optimizations in verify mode
...
If the match compiler uses the 'verify' mode and we
compile with -O2, some tests comparing the on-the-fly-parser
to the compiled match fail.
Small functions are inlined by the -O2 compile flag.
If we disable function inlining and still compile with -O2,
everything is back to normal.
gdb didn't show anything useful during the mismatch
since the needed variables are optimized out. Once
we start printing them, the problem vanishes, too.
-> Can only be diagnosed at the x86 assembly level.
The problem vanished by switching the invocation order
of Token::Match() and the compiled match, so just swap them.
Also add commented out helper code
to better diagnose mismatch problems.
2013-01-09 19:03:42 +01:00
Daniel Marjamäki
9ecc74e845
tools/reduce: change default timeout to 5 minutes no matter if --hang is used or not.
2013-01-08 07:10:14 +01:00
Thomas Jarosch
9970414a2f
Match compiler: Implement 'verify mode' for Token::Match
...
Verify mode runs the same ::Match pattern on a token
using the on-the-fly parser and the compiled match parser.
The result is compared and we abort on mismatch.
Already detected an error in our test suite, needs investigation.
2013-01-07 22:27:57 +01:00
Thomas Jarosch
9b51d81e99
Match compiler: Split _replaceTokenMatch() into two small functions
2013-01-07 21:39:49 +01:00
Daniel Marjamäki
7657b84c44
reduce: rename stdout to print to avoid name clash
2013-01-07 18:45:29 +01:00
Thomas Jarosch
3918948dd5
Match compiler: Aggregate match functions with the same pattern / function call signature
...
Reduces the number of generated functions from 2290 to 1916.
2013-01-04 04:47:01 +01:00
Thomas Jarosch
5f09cb2e4d
Match compiler: Store matchFunctions and matchStrs in the class instead of passing it around
2013-01-04 03:56:21 +01:00
Thomas Jarosch
542c6e82d3
Match compiler: Cosmetic changes after running pylint
2013-01-04 03:44:04 +01:00
Thomas Jarosch
71a236b3df
Match compiler: Turn code into a python class
...
This will make passing around internal states a lot easier
2013-01-04 03:38:40 +01:00
Thomas Jarosch
f9c752667e
Match compiler: Inline generated pattern match code for Token::findmatch
...
Verified the output in build/ stayed the same
if Token::findmatch support is disabled.
2013-01-04 03:13:22 +01:00
Thomas Jarosch
4b386986fc
Match compiler: Check varid on first use like Token::Match does
2013-01-04 01:14:52 +01:00
Thomas Jarosch
5d5efdf99f
Match compiler: Add support for Token::findmatch
...
(still disabled for performance reasons)
2013-01-04 01:01:57 +01:00
Thomas Jarosch
241d23ba8e
Remove reduce tool in 'make clean'
2013-01-03 21:59:28 +01:00
Thomas Jarosch
4a2d2f78ef
tools/reduce: Remove unused variable detected by cppcheck
...
[reduce.cpp:475]: (style) Variable 'decl' is assigned a value that is never used.
2013-01-03 21:38:47 +01:00
Thomas Jarosch
7417144784
Match compiler: Compile Token::findsimplematch() calls
...
Disabled for now as it runs slowers than before.
2013-01-03 19:33:37 +01:00
Daniel Marjamäki
76c8887f5f
tools/reduce: remove cast in function parameter
2013-01-03 18:28:20 +01:00
Daniel Marjamäki
16612d010d
tools/reduce: improvements to make it possible to reduce code that hangs
2013-01-03 15:22:54 +01:00
Daniel Marjamäki
ed803b302b
reduce: remove more stuff. unneeded #define , unneeded constructors, unneeded #ifndef etc
2013-01-02 17:08:04 +01:00
Daniel Marjamäki
1f3628a2fe
reduce: remove more code blocks
2013-01-02 15:37:41 +01:00
Daniel Marjamäki
28d5ad9d21
dmake: fixed reduce compilation
2013-01-02 15:36:17 +01:00
Daniel Marjamäki
7f2d9cb7eb
dmake: fixed compilation of reduce
2013-01-02 14:43:31 +01:00
Daniel Marjamäki
9877b77291
dmake: use 'make reduce' to compile the reduce program
2013-01-02 13:30:06 +01:00
Daniel Marjamäki
e0a902e071
tools/reduce: various improvements to remove more code
2013-01-01 20:18:31 +01:00
Reijo Tomperi
5d5f7085bf
Updating year 2012 -> 2013 to .cpp and .h files and man page.
2013-01-01 18:29:08 +02:00
Daniel Marjamäki
f2f8780504
tools/reduce: better handling of #include
2013-01-01 16:18:06 +01:00
Daniel Marjamäki
e824f76ed7
tools/reduce: removing blocks of code that contain #if,#else,#endif
2013-01-01 14:33:32 +01:00
Daniel Marjamäki
6ee32943f2
tools/reduce: speedup, terminate checking when error is found
2013-01-01 13:56:37 +01:00
Thomas Jarosch
62b05193c4
MC: Split convertFile() function into smaller pieces
...
Output of build/ stayed the same.
2012-12-31 15:30:27 +01:00
Thomas Jarosch
311630ac1c
Match compiler: Python syntax simplification
...
Output in build/ stayed the same
2012-12-31 15:03:00 +01:00
Thomas Jarosch
51cff0cb9b
Match compiler: Speed up Token comparison with string literals. Ticket #4451
...
"Cache" string literals as C++ std::string objects.
The string length gets cached and so we don't need to
call strlen() on the literals at runtime.
2012-12-31 14:45:16 +01:00
Daniel Marjamäki
676b5a15a6
reduce: Added simple command line tool that reduces code for a false positive.
2012-12-31 12:41:36 +01:00
Thomas Jarosch
3c915b534d
Match compiler: Collect and cache plain C-strings
...
Profiler runs with gperftools showed we were spending
a lot of time in strlen() even with compiled match patterns.
If you compare a std::string with a plain C-string,
the comparison operator needs to calculate the length
of the C-string via strlen().
We can avoid this by turning all C-strings into C++ strings,
which cache the string length internally.
The match compiler has been adapted to collect all
C-strings during compilation and aggregate them.
Benchmark on the 'rpm' code base on a Core i7 920 box:
cppcheck without matchcompiler:
real 0m30.977s
cppcheck with previous matchcompiler:
real 0m28.157s
cppcheck with cached C-strings:
real 0m17.823s
2012-12-30 23:24:28 +01:00
Thomas Jarosch
fe5ee76165
Match compiler: No need to handle %num% twice
2012-12-30 20:33:49 +01:00
Thomas Jarosch
33f4bd0298
Silence cppcheck warning
2012-12-25 15:28:58 +01:00
Thomas Jarosch
3d0b4a9f7e
Add execute permissions to matchcompiler.py on linux
2012-12-25 13:18:24 +01:00
Thomas Jarosch
a2885a1759
Python 3 compatibility for the helper scripts
...
print() is a function in python 3.
Works with pyhton 2.x, too.
2012-12-25 13:12:58 +01:00
Daniel Marjamäki
3b3fe1c616
matchcompiler: throw InternalError if Token::Match is called with the varid 0
2012-12-19 06:45:05 +01:00
XhmikosR
9f11c01450
apply astyle
2012-12-15 09:46:02 +01:00
Daniel Marjamäki
b6786c87b4
matchcompiler: handle %varid%
2012-12-14 16:59:37 +01:00
Daniel Marjamäki
7c931960bd
Merge pull request #123 from Keruspe/master
...
build: Fix sources location
2012-12-11 11:13:39 -08:00
Marc-Antoine Perennou
cd9782472f
build: rename LIBDIR to SRCDIR
...
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2012-12-11 09:30:37 +01:00
Daniel Marjamäki
2d8ed65d43
compiled Token::Match patterns: refactorings,improvements
2012-12-10 20:28:11 +01:00
Daniel Marjamäki
a11ec4a5ee
matchcompiler: replaced regular expression with simple code that parses the code better
2012-12-08 19:29:16 +01:00
Daniel Marjamäki
9fcfb38a1c
matchcompiler: merged regular expressions to a single expression
2012-12-08 16:22:55 +01:00
Daniel Marjamäki
bef0cf149b
matchcompiler: reverted changes so the 'make test' works again
2012-12-08 07:41:18 +01:00
Daniel Marjamäki
9bd222970e
matchcompiler: fixed hang. don't know why it hangs.
2012-12-04 23:38:49 +01:00
Daniel Marjamäki
ae7846bf7e
matchcompiler: added some selftests for findMatchPattern
2012-12-04 22:57:52 +01:00
Daniel Marjamäki
514d06b015
Makefile: minor cleanup
2012-12-03 06:34:43 +01:00
Daniel Marjamäki
94930c3bd7
Compiled Token::Match patterns: let 'make clean' cleanup compiled patterns
2012-12-02 13:42:48 +01:00
Daniel Marjamäki
ef5eece286
Compiled Token::Match patterns: extended match patterns and refactored the script a little
2012-12-02 13:39:59 +01:00
Daniel Marjamäki
d630d34b62
Compiled Token::Match patterns. Added python script solution. Python is required to build with compiled patterns. To build cppcheck with compiled patterns use 'make LIBDIR=build'.
2012-12-02 12:36:55 +01:00
Daniel Marjamäki
29263e63fe
times: added shell script that executes previous tags
2012-11-30 12:12:04 +01:00
Daniel Marjamäki
ea9f0718b0
tools/times: minor tweaks
2012-11-27 12:20:23 +01:00
Daniel Marjamäki
b200e1c430
tools/times: tweaked shell script to work better
2012-11-27 07:24:18 +01:00
Daniel Marjamäki
1ebab4a442
tools/times: added simple scripts to generate time stats for cppcheck
2012-11-27 06:08:26 +01:00
XhmikosR
941945bf42
missing tab to space
2012-09-29 18:02:34 +02:00
XhmikosR
9b5c245899
tabs to spaces, remove trailing spaces and extra empty lines at the end of files
2012-09-29 13:49:16 +02:00
Daniel Marjamäki
ce862e02aa
dmake: New version of TinyXml needs -DTIXML_USE_STL define in linux
2012-09-09 13:08:04 +02:00
Edoardo Prezioso
826d5bb00b
Since the GCC -Wconversion warnings are fixed (at least on a x86-64 environment), enable it in the Makefile.
2012-07-18 00:50:30 +02:00
Kimmo Varis
fe9e6130cf
Add general PRO file for console builds.
...
It is easier to maintain PRO files when we keep all the console-
build specific general options in one file. For example changes to
compiler options affect to all console builds.
2012-06-18 09:28:32 +03:00
Daniel Marjamäki
f98179a835
astyle formatting
2012-06-18 06:41:04 +02:00
Kimmo Varis
7b603813d7
dmake: Apply small fix from Dan.
...
This fixes the potential (but not likely to happen) case when
file list is empty. Dan suggested this change when reviewing my
earlier patch.
2012-06-11 22:09:09 +03:00
Kimmo Varis
734d4af007
Tests: Generate test file listing with dmake.
...
Use dmake to generate a test/testfiles.pri with all the files
containing tests. The testfiles.pri is included by the test/test.pro,
which compiles the test runner. This automates the test file listing
instead of former way to hand-edit the file list.
Fixes ticket #3885 (dmake needs to create a list of test files for qmake)
2012-06-11 22:05:55 +03:00
Kimmo Varis
be21a44dd2
Tools: Adding a tools.pro to build dmake.
2012-06-11 14:45:32 +03:00
Daniel Marjamäki
16427b40b9
dmake: move . this fixes compiler errors when compiling with some old gcc 3.X compiler
2012-02-26 10:18:21 +01:00
Edoardo Prezioso
f37f13c3ad
Fixed typo in make file generation.
2012-02-17 20:12:41 +01:00
Daniel Marjamäki
f183954150
dmake: keep some dummy debug code in release Makefiles to make the debug/release more similar
2012-02-12 03:30:58 +01:00
Edoardo Prezioso
f20e88fcc5
tools/dmake.cpp: nitpicky reorder of commented warnings in alphabet order with uncommented ones.
2012-01-03 15:10:32 +01:00
Reijo Tomperi
8cae17fda8
Update year to 2012
2012-01-01 01:05:37 +02:00
Daniel Marjamäki
5cc5330d95
extracttests.py: reverted last change. see comments on github.
2011-12-07 21:49:34 +01:00
Daniel Marjamäki
ab348387b5
extracttests.py: python 3 compatibility updates
2011-12-07 17:05:24 +01:00
Daniel Marjamäki
e9546c5042
extracttests.py: create output folders if they dont exist
2011-12-04 21:46:56 +01:00
Daniel Marjamäki
8e9097bce7
extractpython.py: cleanup
2011-12-02 19:08:04 +01:00
Daniel Marjamäki
712ca42985
extracttests: refactorings. dont include dynamic strings in the listing
2011-12-02 18:33:17 +01:00
Daniel Marjamäki
ca9dbfc031
extracttests.py : improved errors.txt output
2011-11-29 21:35:57 +01:00
Akio Idehara
baa97d53fc
Fixed #3346 (cygwin detection for _GLIBCXX_DEBUG in Makefile)
2011-11-29 20:35:56 +01:00
Daniel Marjamäki
932680994d
removed old extracttests.cpp
2011-11-29 17:43:23 +01:00
Daniel Marjamäki
16ae2f49ca
extracttests.py: minor code fixes of --code handling
2011-11-29 10:13:37 +01:00
Daniel Marjamäki
7624313808
extracttests.py: added option to output test files
2011-11-28 22:17:06 +01:00
Daniel Marjamäki
c0770f0823
extracttests.py: improved command line parser
2011-11-27 17:11:38 +01:00
Daniel Marjamäki
ac06f34627
extracttests.py: cleaned up the code for parsing of command line
2011-11-27 15:24:13 +01:00
Daniel Marjamäki
681e4ba314
extracttests.py: exit if wrong command line is given
2011-11-27 14:11:15 +01:00
Daniel Marjamäki
ce2be7cbe3
extracttests.py: reduce line lengths
2011-11-27 13:49:20 +01:00
Daniel Marjamäki
370018d313
extracttests.py: close input file
2011-11-27 11:43:13 +01:00
Daniel Marjamäki
54eeb76a71
extracttests.py: renamed 'str' to 'string'
2011-11-27 11:40:23 +01:00
Daniel Marjamäki
0c54f88dd0
extracttests.py: added docstrings. added navigation links.
2011-11-27 11:35:01 +01:00
Daniel Marjamäki
db186b2c25
extracttests.py: allow user to see 'error cases only'
2011-11-27 10:26:35 +01:00
Daniel Marjamäki
315ce1db40
extracttests.py: added function 'trimname'
2011-11-27 08:32:07 +01:00
Daniel Marjamäki
52caadf957
extracttests.py: Added a little help info
2011-11-27 08:13:11 +01:00
Daniel Marjamäki
9c626b941a
extracttests.py: Added tool for extracting test information
2011-11-27 08:06:11 +01:00
Edoardo Prezioso
433f4640a9
Fix some GCC warnings regarding the sign conversion.
2011-10-30 18:34:49 +01:00
Ville Skyttä
b69ad0fefc
Makefile: Use pcre-config to get include/lib paths etc
2011-10-28 21:20:19 +02:00
Daniel Marjamäki
17aea0a997
dmake: disabled -Wunreachable-code because there was too many warnings
2011-10-24 07:09:14 +02:00
Edoardo Prezioso
df5d26901c
Add new warning option to check for dead code and change the order of some struct members to reduce structure padding.
2011-10-24 03:02:00 +02:00
Edoardo Prezioso
12f6ce46f8
Add more warnings and fix the ones reported by them.
2011-10-22 15:05:43 +02:00
Daniel Marjamäki
34e2a2ad66
Makefile: Disable rules by default
2011-10-17 20:18:36 +02:00
Daniel Marjamäki
6f8e42a5af
changed the astyle formatting flags
2011-10-13 20:53:06 +02:00
Kimmo Varis
80ba3d6a92
Merge pull request #32 from rpavlik/qmake-configure-rules
...
Qmake configure rules
2011-08-19 13:00:34 -07:00
Edoardo Prezioso
f62d1d0122
Fixed #3017 (set HAVE_RULES to yes only if HAVE_RULES is undefined when executing make.)
2011-08-19 00:28:31 +02:00
Ryan Pavlik
50b0e95314
put the rules logic in its own .pri file, and allow easier override
2011-08-18 15:42:19 -05:00
Ryan Pavlik
33b5970c91
use the qmake config setting HAVE_RULES to enable/disable pcre rules support,
...
defaulting to on except on Windows.
2011-08-18 12:13:21 -05:00
Daniel Marjamäki
d336e91049
Makefile: Added the -D_GLIBCXX_DEBUG flag again to get checked stl during debug
2011-08-14 18:57:48 +02:00
Kimmo Varis
d698e24746
dmake: Fix build in Windows.
2011-08-11 23:41:35 +03:00
Kimmo Varis
3eb11e7bdf
Tools: Update VS project file.
2011-08-11 23:40:10 +03:00
Kimmo Varis
a382a6938b
Tools: fix Makefile
...
tools/ Makefile contained errmsg target whose source does not
exist anymore. And it didn't have a target for extracttests.
Removed the errmsg target and added new target for extracttests.
Ticket: #2988 (In tools, make error: no rule to make target `errmsg.cpp', needed by `errmsg'.)
2011-08-10 23:58:54 +03:00
Felix Geyer
e49763b14f
Ticket: #2823 (cppcheck fails to build with system tinymxl and -Wl,--as-needed)
2011-06-19 20:56:12 +03:00
Kimmo Varis
a6c35cb828
Fix tools/Makefile permissions.
2011-06-18 11:08:40 +03:00
seb777
c73506009b
Merge branch 'master' of http://github.com/danmar/cppcheck
2011-05-02 19:55:34 +02:00
Kimmo Varis
c7d99fe9a7
Remove ErrorLogger::reportStatus() method.
...
The ErrorLogger::reportStatus() is not lib code interface. The CLI
code does the looping through file list and gives one file at a
time for the core code. Hence lib has no any idea about the
progress and it can't provide such information.
Also the recent commit (6d858b6
) caused a GUI build failure by
adding CLI code dependency to GUI. Which is big no-no.
This is admittedly a hack. But it allow us to build all modules
again.
2011-04-27 23:27:02 +03:00
Daniel Marjamäki
29a7b3bafd
dmake: fixed compiler error
2011-04-27 17:57:03 +02:00
Greg Hewgill
7ae4896703
Makefile: handle case where LDFLAGS is already defined (in dmake)
2011-04-23 00:20:38 +12:00
Daniel Marjamäki
712e285bd6
Makefile: added option for compiling with/without rules
2011-04-19 20:53:40 +02:00
Reijo Tomperi
485ff0b472
"#ifndef" can't be used in Makefile (it is considered a commented line). Replaced it with "ifndef".
2011-04-11 22:54:29 +03:00
Daniel Marjamäki
5058cc6aa1
Reverted non-CMake changes in previous 'Added CMake files' commit
2011-03-25 07:59:48 +01:00
Markus Elfring
9301ee28a8
Added CMake files
2011-03-25 07:14:53 +01:00
Sebastien Debrard
48cc875bdf
fix compilation error
2011-03-23 01:27:08 +01:00
Sebastien Debrard
8f6af5c6da
fix compile error
2011-03-23 01:25:47 +01:00
Daniel Marjamäki
8caf96be63
FileLister: Moved back the code into a single cpp file
2011-03-20 14:25:11 +01:00
Daniel Marjamäki
f5ebd779f8
GCC: Disabled the -Wsign-conversion. It is quite noisy.
2011-02-17 22:28:36 +01:00
Daniel Marjamäki
805773663e
Build: Renamed HAVE_DEPENDENCIES to HAVE_RULES
2011-02-14 19:37:58 +01:00
Daniel Marjamäki
27febb062b
cppcheck: Added HAVE_DEPENDENCIES define. Cppcheck cli can be compiled without dependencies.
2011-02-12 08:06:59 +01:00
Daniel Marjamäki
227a6100f7
astyle formatting
2011-02-11 19:31:37 +01:00
Reijo Tomperi
a71204b8e3
Change "tinyxml/tinyxml.h" includes into <tinyxml.h> and modify dmake to work with it.
...
This should allow usage of libtinyxml-dev or such libraries without modifications to code or makefile.
2011-02-10 22:35:48 +02:00
Robert Reif
90495d52d2
fix dmake.cpp cppcheck message: Include file: ../cli/fileLister_win32.h not found.
2011-02-09 21:32:20 -05:00
Reijo Tomperi
73e746cfd8
Change Makefile to allow another external library to be used instead of bundled one.
...
E.g. make TINYXML="-ltinyxml" can be used to compile with libtinyxml-dev instead of
externals/tinyxml (but won't compile yet, because of #include "tinyxml/tinyxml.h" in the code).
2011-02-09 01:06:51 +02:00
Kimmo Varis
3fc0d0f03e
Run dmake to update Makefile.
2011-02-02 14:36:45 +02:00
Kimmo Varis
800d8d1e05
Cleanup makefile a bit.
...
Align object file lists first line. Remove excessive use of tabs.
2011-01-31 09:18:35 +02:00
Daniel Marjamäki
07e097561c
dmake and Makefile updates
2011-01-21 20:51:01 +01:00
Kimmo Varis
b8b2e3fae9
Move filelister* to cli.
...
Ticket #2445 (Move FileLister classes from LIB to CLI).
2011-01-18 19:58:49 +02:00
Reijo Tomperi
226b605774
Change year 2010 -> 2011 in license texts.
2011-01-09 21:33:36 +02:00
Daniel Marjamäki
a9aa6375b7
gcc: disabled -Wconversion again - too many warnings
2011-01-01 09:16:31 +01:00
Daniel Marjamäki
eb59bd5fd6
Added -Wconversion compiler flag. The ASSERT_EQUALS_DOUBLE was added that can be used when comparing double values.
2010-12-30 22:56:53 +01:00
Peter Pentchev
121cb043a7
Makefile: honor the C preprocessor flags in CPPFLAGS. Ticket: #2254
2010-12-26 18:12:14 +01:00
Kimmo Varis
4ebdbec621
Update dmake to use basepath in lib.pri.
2010-12-18 17:11:19 +02:00
Ettl Martin
7d1b2254d3
fixed mistake from previous commit. changes path from test/tinyxml to external/tinyxml; Thanks to kimmov.
2010-12-13 14:47:53 +01:00
Ettl Martin
515b4cce1c
dmake: added test/tinyxml path to make clean
2010-12-13 13:44:40 +01:00
Daniel Marjamäki
48241c81f8
dmake: add include path '../externals' to lib.pri in case the pcre.h is placed there.
2010-12-12 17:26:13 +01:00
Daniel Marjamäki
2d3865a671
Add support for user defined rules
2010-12-12 11:56:22 +01:00
Daniel Marjamäki
81cac166d6
FileLister: minor cleanup
2010-11-09 19:11:43 +01:00
Lauri Nurmi
91e66e74d0
Fixed #2099 (Show an error if none of the given paths was found)
2010-10-22 17:09:50 +02:00
Pete Johns
4f0cda235a
Added tags file for faster code navigation.
...
[Helpful for newbies like me]
2010-10-12 23:08:34 +11:00
Pete Johns
97a68bdcee
Added `check` target.
...
Runs the test as per `make test`, but with less verbosity.
-g GCC-style errors
-q quiet tests
2010-09-26 13:29:23 +10:00
Reijo Tomperi
8a7989c824
Makefile improvements related to clean, dmake and man targets.
2010-09-22 21:25:27 +03:00
Pete Johns
4934cfa622
Wrapped variables in conditions
...
This allows CXX and CXXFLAGS to be overridden without patching. Added PREFIX for MacPorts compatibility, allowing staging to $(DESTDIR)$(PREFIX)/bin, leaving original behaviour unchanged.
Exit early if run in incorrect directory or if Makefile cannot be written.
2010-09-20 21:16:09 +10:00
Kimmo Varis
ed656e02e4
Fix compiling tests in Linux.
...
For Linux I needed to add cmdlineparser object file to test target
linking definitions in dmake.
2010-09-06 22:45:29 +03:00
Daniel Marjamäki
f476cc12f8
Disabled the -Wconversion. There are too many compiler warnings currently when using it.
2010-08-15 08:58:27 +02:00
Daniel Marjamäki
5e1168fc5c
dmake: removed _GLIBCXX_DEBUG because it doesn't work in cygwin. added -Wconversion
2010-08-13 21:31:04 +02:00
Daniel Marjamäki
adc47f1820
Fixed #1487 (fix gcc compiler warnings)
2010-08-06 21:02:43 +02:00
Daniel Marjamäki
1a5a1002b6
updated dmake. updated Makefile (includes cleanup).
2010-07-27 15:25:03 +02:00
Reijo Tomperi
0c61454b3f
Added test case deadlock_with_many_errors() for ticket #1650
...
http://sourceforge.net/apps/trac/cppcheck/ticket/1650
The test case is currently commented out, because it would cause tests to hang also.
2010-06-18 00:42:01 +03:00
Daniel Marjamäki
8504863636
dmake: updated compiler flags in release mode. only -Wall.
2010-05-08 12:57:44 +02:00
Daniel Marjamäki
c718a7c595
astyle: Update to astyle 1.24
2010-04-15 20:08:51 +02:00
Reijo Tomperi
35d2a27b9c
Update copyright year in all source files
2010-04-13 22:23:17 +03:00
Reijo Tomperi
eb79e5f918
Enable -Wshadow in Makefile
2010-04-11 14:57:03 +03:00
Daniel Marjamäki
0cad22314e
Reverted 'astyle fix'. Those changes are not in sync with my astyle configuration/setup.
2010-04-02 07:30:58 +02:00
Martin Ettl
193aa7d1d3
astyle fix
2010-04-02 02:21:53 +02:00
Daniel Marjamäki
9e393fd92e
Makefile: Added flag -Wno-long-long compiler flag to suppress warnings about long long
2010-03-31 21:47:51 +02:00
Daniel Marjamäki
f7662b094d
astyle formatting
2010-03-13 08:05:07 +01:00
Daniel Marjamäki
48a63e4c35
gcc: removed -Wlogical-op that is not supported by old GCC
2010-03-13 08:03:30 +01:00
Kimmo Varis
66448b41ac
Restore and fix tools Makefile. Fix include lines.
2010-03-11 22:55:31 +02:00
Kimmo Varis
b746e9d4be
Fix dmake for Windows.
2010-03-11 22:30:06 +02:00
Kimmo Varis
a7996ab252
Fix compiling in Linux. Fix compiling dmake.
2010-03-11 22:15:15 +02:00
Daniel Marjamäki
2c210b8ff9
dmake,qmake: temporarily removed -Wsign-conversion
2010-03-09 11:10:34 +01:00
Daniel Marjamäki
2ba3f59fc8
dmake, qmake: more sensitive compiler and runtime
2010-03-09 08:24:52 +01:00
Daniel Marjamäki
cffe20a440
dmake: debug/release mode, more gcc warnings
2010-03-09 08:10:05 +01:00
Kimmo Varis
5b2c6129df
Add VS project file for building dmake.
2010-03-04 21:09:37 +02:00
Reijo Tomperi
01c5bdfc68
Add TODO test case for #1452 (Simplify goto better)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/1452
2010-02-24 22:55:16 +02:00
Daniel Marjamäki
5254822bed
dmake: generate the lib/lib.pri file
2010-02-23 21:27:01 +01:00
Daniel Marjamäki
209024adcb
tools/Makefile: fixed so the dmake can be built
2010-02-23 18:43:10 +01:00
Daniel Marjamäki
56e67d38ff
Readded man/install to the Makefile
2010-02-23 18:37:46 +01:00
Daniel Marjamäki
2befb74a07
astyle formatting
2010-02-20 09:14:15 +01:00
Daniel Marjamäki
a9bd7296b7
dmake: simplified a little
2010-02-19 17:35:38 +01:00
Daniel Marjamäki
744c385097
Revert "removed tools/dmake and Makefile. Please use cmake from now on."
...
This reverts commit cfacd5fe10
.
2010-01-23 09:54:51 +01:00
Daniel Marjamäki
cfacd5fe10
removed tools/dmake and Makefile. Please use cmake from now on.
2010-01-22 20:57:30 +01:00
Reijo Tomperi
7596e76a79
Added 'make man' to Makefile
2009-11-22 16:43:55 +02:00
Daniel Marjamäki
293631745a
extracttests: astyle formatting
2009-11-09 20:40:58 +01:00
Daniel Marjamäki
45c3ba3c28
extracttests: minor updates
2009-11-09 20:36:13 +01:00
Daniel Marjamäki
ed9ee554da
extracttests: extract more tests
2009-11-08 08:00:22 +01:00
Daniel Marjamäki
c98976cc9b
extracttests: extract to cpp instead and don't generate the Makefile - it's easier to use a simple standard Makefile instead.
2009-11-07 19:52:10 +01:00
Daniel Marjamäki
b9ebdee2f5
extracttests: Added a simple program for extracting testcode from our unit testing
2009-11-07 18:04:45 +01:00
Reijo Tomperi
3be9f2e6cc
astyle fix
2009-10-27 11:10:59 +02:00
Daniel Marjamäki
27761a6edc
Restructuring: Updated the dependency walker
2009-10-26 22:36:36 +01:00
Daniel Marjamäki
09859c1019
refactoring the folder structure
2009-10-25 12:49:06 +01:00
Reijo Tomperi
fdde2182b9
Fix GPL comments in all files. ">." was missing from the end.
2009-09-27 18:08:31 +03:00
Daniel Marjamäki
03f3ee62a0
cleanup: removed deprecated files. security checking and errmsg
2009-07-12 19:18:38 +02:00
Reijo Tomperi
8b0e481d46
Refactoring: Rename member functions to follow naming guidelines.
2009-07-05 23:16:43 +03:00
Reijo Tomperi
58eda6e978
Fix ticket #325 (Replace developer names in source files with AUTHORS file)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/325
2009-05-30 08:48:12 +03:00
Slava Semushin
4bd1c3fb00
Propagate static and const modifiers.
...
No functional change.
2009-05-22 21:20:32 +07:00
Daniel Marjamäki
3c1c33669e
refactoring: The errmsg is no longer supposed to generate the errorLogger code
2009-03-21 10:15:46 +01:00
Daniel Marjamäki
33df121567
added and integrated checkautovariables that gscacco created
2009-03-19 20:55:50 +01:00
Vesa Pikki
3d6e3d38bb
Applied a patch by Mike Frysinger
...
The proper variable to use for the C++ compiler is $(CXX). Also, when
linking objects, $(LDFLAGS) should be used.
2009-03-09 19:35:43 +02:00
Reijo Tomperi
017e10e10b
Fix ticket #141 (changed the makefile), changing compiler is now easier in the makefile.
...
http://apps.sourceforge.net/trac/cppcheck/ticket/141
2009-03-07 01:45:27 +02:00
Reijo Tomperi
015143b56c
Copyright fixes
2009-03-01 19:59:13 +00:00
Reijo Tomperi
fc8f47145a
Copyrights updated
2009-03-01 19:52:33 +00:00
Reijo Tomperi
f6848f14ad
Fixed another --style problem with our code
2009-03-01 19:38:17 +00:00
Reijo Tomperi
d098b62975
Use reference instead of string copy (fixes some --style warnings from our code)
2009-03-01 19:30:51 +00:00
Reijo Tomperi
033a82d3f2
Members of ErrorLogger::ErrorMessage made public for better access to them.
2009-02-22 11:29:33 +00:00
Daniel Marjamäki
15e86db3ed
buffer overrun: Added checking of strncat
2009-02-20 21:00:59 +00:00
Reijo Tomperi
61587c42ae
Fix ticket #113 (Add support for multi core CPUs and -w parameter to specifify amount of worker threads)
2009-02-20 19:40:42 +00:00
Reijo Tomperi
4fc774deda
Multicore cpu support for Linux (currently disabled and compiling produces warnings)
...
"no errors" output removed.
2009-02-19 22:21:18 +00:00
Daniel Marjamäki
efeaac736d
security: added simple gui checking
2009-02-19 17:57:27 +00:00
Daniel Marjamäki
4e1f19a366
input validation: added checking
2009-02-19 08:03:14 +00:00
Daniel Marjamäki
2b04c94b95
stl push_back: Added check (invalid iterator)
2009-02-18 19:57:43 +00:00
Reijo Tomperi
7ef9e870cd
Code comments updated
2009-02-14 22:00:19 +00:00
Reijo Tomperi
d1e9efc66a
Fix ticket #104 (Change (error) Uninitialized member variable -> (style) Member variable not initialized in the constructor)
2009-02-14 08:52:03 +00:00
Daniel Marjamäki
eda1290e40
dangerous usage of erase: added check
2009-02-11 05:08:29 +00:00
Reijo Tomperi
9b9223480d
Refactoring: reportErr takes now only one parameter, ErrorLogger::ErrorMessage, which contains all required information and also some help
...
functions for formatting it for output.
2009-02-10 21:51:52 +00:00
Daniel Marjamäki
c1638996f9
STL: added check for iterator usage
2009-02-10 19:40:21 +00:00
Reijo Tomperi
5721e4469b
stlOutOfBounds error message created
2009-02-10 19:36:49 +00:00
Reijo Tomperi
1373e14bc9
Fix ticket #93 (Write xml results into error stream instead of results.xml file.) and also refactor the
...
code to use ErrorLogger::reportErr() for all errors, for both xml and plain text. And move xml formatting
from Cppcheck to CppcheckExecutor.
2009-02-09 20:51:04 +00:00
Reijo Tomperi
fb3c81dcd9
Fix ticket #80 (refactoring: classes ErrorMessage and ErrorLogger), note that errormessage and errorlogger were merged, errormessage.* is no more.
2009-02-08 21:20:35 +00:00
Daniel Marjamäki
1637e867de
mismatching allocation size: moved to error suite
2009-02-08 18:34:04 +00:00
Daniel Marjamäki
3c289e52c5
memory allocation: check for mismatching size
2009-02-07 10:54:39 +00:00
Daniel Marjamäki
03acc12977
mismathing allocation and deallocation: moved to error checks
2009-02-06 18:24:01 +00:00
Reijo Tomperi
a06861948b
Fixed: Ticket #78 Change (always) into (error) in error messages
2009-02-05 21:06:32 +00:00
Daniel Marjamäki
aeb573d529
returning pointer to local array
2009-02-04 18:49:19 +00:00
Daniel Marjamäki
385c28a02e
xml: generating better xml output
2009-02-01 18:00:47 +00:00
Daniel Marjamäki
eb9563faed
astyle formatting
2009-02-01 16:39:29 +00:00
Daniel Marjamäki
d29d7e60a9
errmsg: refactoring the error messages
2009-02-01 15:47:36 +00:00
Daniel Marjamäki
2784faab42
removed unused function definition for stringifySeverity
2009-01-31 19:05:17 +00:00
Daniel Marjamäki
81174a4817
mismatching allocation / deallocation: moved to --all
2009-01-31 17:54:31 +00:00
Daniel Marjamäki
f6f72fc022
errmsg: output severity in messages. a fix to track severity in the memory leaks check
2009-01-31 13:57:27 +00:00
Daniel Marjamäki
3457b38d7a
errmsg: write severity in the message
2009-01-31 08:33:31 +00:00
Daniel Marjamäki
6ce23670e5
sprintf overlapping data: added extra text that is shown if --verbose is given
2009-01-26 19:14:46 +00:00
Daniel Marjamäki
3d61334a8c
errmsg: Moved 'function parameter parname is passed by value' to the style checks
2009-01-26 18:32:00 +00:00
Daniel Marjamäki
e691ade8e6
Build: Enabled the Wextra flag when building cppcheck
2009-01-22 21:16:50 +00:00
Nicolas Le Cam
42c608b6f0
Remove checks that are already covered well by most compilers (Unreachable Code; Assignment in Condition; Unused Variable).
2009-01-21 21:31:47 +00:00
Reijo Tomperi
176dd41306
Fixed Ticket #40 , Check copyright texts in files, now that we have new developers.
2009-01-21 20:04:20 +00:00
Nicolas Le Cam
cec57b76d3
errmsg: Don't create unused parameters
2009-01-19 19:50:00 +00:00
Daniel Marjamäki
8780fbf8bb
bounds checking: Added error message "snprintf size is out of bounds"
2009-01-17 13:09:02 +00:00
Daniel Marjamäki
a5e2787f72
errmsg: added varname to the message "deallocating a deallocated pointer"
2009-01-17 11:15:46 +00:00
Daniel Marjamäki
4cfb8ad1cb
memory leaks: Added checking of deallocate to see that the pointer isn't deallocated already
2009-01-15 20:34:39 +00:00
Daniel Marjamäki
8bbd4b9401
str plus char: Added check and error message for str + ch
2009-01-15 16:57:51 +00:00
Daniel Marjamäki
03cfe18c9b
errmsg: Added 'condition is always true/false'
2009-01-14 19:43:28 +00:00
Daniel Marjamäki
c8a5bd16a1
errmsg: Added 'assignment in if-condition'
2009-01-13 17:56:45 +00:00
Daniel Marjamäki
aa592387e6
errmsg: refactoring
2009-01-13 06:25:36 +00:00
Daniel Marjamäki
cc65242626
errmsg: added message about bad usage of char variable
2009-01-12 18:52:43 +00:00
Daniel Marjamäki
fdf5b215f9
errmsg: Added message for 'incomplete statement'
2009-01-12 17:46:24 +00:00
Daniel Marjamäki
a5eb8894d4
errmsg: Added messages for 'variable is not used / not read / not assigned'
2009-01-12 17:40:20 +00:00
Daniel Marjamäki
13e2396345
errmsg: Added message 'function parameter is passed by value'
2009-01-12 17:32:53 +00:00
Daniel Marjamäki
df689b454c
errmsg: added message 'unreachable code below return'
2009-01-12 17:28:04 +00:00
Daniel Marjamäki
a0ef840138
errmsg: Added 'unused struct member'
2009-01-12 17:21:25 +00:00
Daniel Marjamäki
03888046d8
errmsg: Made the 'unsigned division' a style error
2009-01-12 17:14:03 +00:00
Daniel Marjamäki
980b10bfc9
errmsg: Added 'unsigned division'
2009-01-12 17:12:14 +00:00
Daniel Marjamäki
17d4c2b980
errmsg: Added message 'Overlapping data buffer'
2009-01-12 06:52:50 +00:00
Daniel Marjamäki
ae861852e2
errmsg: Added "found redundant if - 'if (condition);'
2009-01-12 06:44:47 +00:00
Daniel Marjamäki
9d8af10583
errmsg: the "unused function" message shall not take any Tokenizer nor Token parameters
2009-01-11 08:10:51 +00:00
Daniel Marjamäki
3d8791eebd
errmsg: added "unused function"
2009-01-11 06:44:32 +00:00
Daniel Marjamäki
631e202027
dmake: Minor updates. Moved target "all" a little. Handle the change 937 where "make test" also executes testrunner
2009-01-11 06:17:54 +00:00
Daniel Marjamäki
1e6b54b2c5
errmsg: added "mismatching allocation and deallocation"
2009-01-10 19:30:41 +00:00
Daniel Marjamäki
47a7c915fa
errmsg: Added error messages for "Array index out of bounds" and "Buffer overrun"
2009-01-10 19:23:21 +00:00
Daniel Marjamäki
897c02e3ed
errmsg: added error message about virtual destructors
2009-01-10 18:03:56 +00:00
Daniel Marjamäki
6acb123f1d
errmsg: Added "operator= should return something
2009-01-10 17:57:31 +00:00
Daniel Marjamäki
1fc5f5485f
errmsg: Added "Using 'memset' on class"
2009-01-10 17:51:03 +00:00
Daniel Marjamäki
7b10b0ff4d
errmsg: Added "Unused private function ..."
2009-01-10 17:35:41 +00:00
Daniel Marjamäki
dc6317878e
errmsg: Added "uninitialized member variable"
2009-01-10 17:11:47 +00:00
Daniel Marjamäki
a2a8378749
astyle: updated the code style
2009-01-10 14:29:59 +00:00
Daniel Marjamäki
0c3c00daec
errmsg: Added errormessage for 'the class 'classname' doesn't have a constructor'
2009-01-10 13:08:44 +00:00
Daniel Marjamäki
41a73e3b1e
errmsg: bug fix
2009-01-10 12:03:18 +00:00
Daniel Marjamäki
8842172821
errmsg: reformatted with astyle
2009-01-10 11:17:00 +00:00
Daniel Marjamäki
713b0c7cdd
errmsg: The generated code is compliant with the astyle formatting
2009-01-10 07:43:15 +00:00
Daniel Marjamäki
01ec1b15fe
dmake: minor fixes. The tools binaries will be put in the tools folder
2009-01-10 07:38:11 +00:00
Daniel Marjamäki
f83741503e
make: updated the make so that the tools are built with "make all". And added the errormessage.h generator to the makefile also
2009-01-09 19:28:55 +00:00
Daniel Marjamäki
7851b1042f
errormessage: added error message ErrorMessage::dangerousUsageStrtol
2009-01-09 19:15:54 +00:00
Daniel Marjamäki
38286a7d57
dmake: don't generate Makefile if there are no src files
2009-01-09 18:13:00 +00:00
Reijo Tomperi
66547e7ddf
Fixed make install from the generated makefile
2009-01-08 21:02:03 +00:00
Daniel Marjamäki
5d0f8f0cfa
errormessage: Added a few more messages for checkother.cpp
2009-01-08 20:56:51 +00:00
Reijo Tomperi
4dfc3a9c3d
Added license text to errormessage.h (via code tha generates it) and also mention that it is generated by machine
2009-01-08 20:51:07 +00:00
Daniel Marjamäki
3bdb3064b0
tools/errmsg: some refactoring
2009-01-08 17:29:44 +00:00
Daniel Marjamäki
80c7e00e84
tools: Added headers to source files
2009-01-08 06:22:14 +00:00
Daniel Marjamäki
5b86188c45
tools: updated the code style
2009-01-07 15:17:02 +00:00
Daniel Marjamäki
149ab87931
tools/dmake: A few simple fixes. Commited the new Makefile
2009-01-06 20:12:59 +00:00
Daniel Marjamäki
2b671fef16
tools: dmake added a tool for maintaining the Makefile
2009-01-06 20:04:20 +00:00
Daniel Marjamäki
0ac9d34d70
tools/errmsg: minor fixes
2009-01-06 17:22:35 +00:00
Daniel Marjamäki
a62d3da857
tools/errmsg: code correction
2009-01-06 17:20:19 +00:00
Daniel Marjamäki
934b251ec6
tools/errmsg: generate documentation
2009-01-06 17:09:27 +00:00
Daniel Marjamäki
59a644b4b1
tools/errmsg: generate the function to use when determining if a check should be done or not
2009-01-06 16:25:42 +00:00
Daniel Marjamäki
31f95aeec9
tools: Added a folder where we can keep small usable utilities
2009-01-06 15:02:34 +00:00