File: build.bat

package info (click to toggle)
cppcheck 1.76.1-1
  • links: PTS
  • area: main
  • in suites: stretch
  • size: 13,608 kB
  • sloc: cpp: 140,390; python: 3,430; ansic: 2,808; xml: 670; makefile: 501; sh: 237
file content (72 lines) | stat: -rw-r--r-- 1,625 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
@echo off
REM A simple script to build different cppcheck targets from project root
REM folder. This script can be run from VS prompt or Qt prompt.
REM
REM Usage: build <target> [release|debug]
REM  where <target> is any of cppcheck/gui/tests/all
REM        release or debug is the configuration
REM  all-target builds both cppcheck and gui.
REM
REM Run the command before build.bat to enable rules using pcre:
REM   set HAVE_RULES=yes
REM
REM TODO:
REM  - run tests too

pushd %~dp0

if "%1" == "" goto help

REM Qt prompt sets QMAKESPEC
if "%QMAKESPEC%" == "" (
REM parse qmakespec to see if it's some msvc
  if "%QMAKESPEC:~6,4%" == "msvc" (
    set MAKE=nmake
  ) else (
    set MAKE=mingw32-make
  )
) else (
  set MAKE=nmake
)

if "%2" == ""        set TARGET=release
if "%2" == "debug"   set TARGET=debug
if "%2" == "release" set TARGET=release

if "%1" == "all"      goto cppcheck
if "%1" == "cppcheck" goto cppcheck
if "%1" == "gui"      goto gui
if "%1" == "tests"    goto tests
goto help

:cppcheck
pushd cli
qmake -config %TARGET% HAVE_RULES=%HAVE_RULES%
%MAKE%
popd
if "%1" == "all" goto gui
goto end

:gui
pushd gui
qmake -config %TARGET% HAVE_RULES=%HAVE_RULES%
%MAKE%
lupdate -no-obsolete gui.pro
lrelease gui.pro
popd
goto end

:tests
pushd test
qmake -config %TARGET% HAVE_RULES=%HAVE_RULES%
%MAKE%
popd
goto end

:help
echo Syntax: build ^<target^> [debug^|release]
echo   where ^<target^> is any of cppcheck/gui/tests/all
echo         debug or release define used configuration
echo   all- target builds both cppcheck and gui.

:end