# 32-bit:
BASEURL=https://dl.dropboxusercontent.com/u/119453582/Cygwin/32bit/release
wget --no-check-certificate --no-host-directories --force-directories
--cut-dirs=5 \
${BASEURL}/cppcheck/cppcheck-1.66-1-src.tar.xz \
${BASEURL}/cppcheck/cppcheck-1.66-1.tar.xz \
${BASEURL}/cppcheck/cppcheck-debuginfo/cppcheck-debuginfo-1.66-1.tar.xz \
${BASEURL}/cppcheck/cppcheck-debuginfo/setup.hint \
${BASEURL}/cppcheck/cppcheck-gui/cppcheck-gui-1.66-1.tar.xz \
${BASEURL}/cppcheck/cppcheck-gui/setup.hint \
${BASEURL}/cppcheck/setup.hint
# 64-bit:
BASEURL=https://dl.dropboxusercontent.com/u/119453582/Cygwin/64bit/release
wget --no-check-certificate --no-host-directories --force-directories
--cut-dirs=5 \
${BASEURL}/cppcheck/cppcheck-1.66-1-src.tar.xz \
${BASEURL}/cppcheck/cppcheck-1.66-1.tar.xz \
${BASEURL}/cppcheck/cppcheck-debuginfo/cppcheck-debuginfo-1.66-1.tar.xz \
${BASEURL}/cppcheck/cppcheck-debuginfo/setup.hint \
${BASEURL}/cppcheck/cppcheck-gui/cppcheck-gui-1.66-1.tar.xz \
${BASEURL}/cppcheck/cppcheck-gui/setup.hint \
${BASEURL}/cppcheck/setup.hint
I would like to adopt cppcheck, which was orphaned by Chris Sutcliffe
last week [1]. The following notes may be of use when reviewing this
package:
I have enabled custom rules for cppcheck, which gives the user the scope
to create custom checks. This introduces a dependency on libpcre1.
I have built the Qt GUI for cppcheck, which is available as a
sub-package. cppcheck-gui is available in openSUSE [2] and ArchLinux [3].
cppcheck-gui contains a number of language translations, which are
included. However, the way that the GUI locates these translations is a
little bizarre. The user is expected to call 'cppcheck-gui
--data-dir=/path/to/translations' before using cppcheck-gui for the
first time. This would be an ideal candidate for a post-install step,
except that it has to be done by each user (not just the user performing
the install), and an X server needs to be running (even though no window
is opened). So for both of these reasons I consider that a post-install
step is not the way forward.
Instead, I have patched the GUI to always look for the translation files
in a set directory. This seems sensible, as you should just have one set
of translation files that are shared between all users. This works, but
the GUI gives a harmless warning the first time it is invoked. This is
probably a bug in the cppcheck-gui code, as the native Windows version
does the same. Otherwise, the GUI works well.
The cppcheck build scripts from openSUSE [4] and ArchLinux [5] don't
offer much inspiration - neither ship with the translation files at all,
which will just give an error when the user tries to switch languages.
So I would be very interested if anyone could find a more elegant
solution to this problem.
Finally, cppcheck contains a version of tinyxml2, which it statically
links against. Fedora has libtinyxml2 as a separate package, and their
version of cppcheck is dependant upon that. This build of cppcheck for
Cygwin contains the statically linked tinyxml2. However, it is my
intention to ITP libtinyxml2 as a separate package for future builds of
cppcheck to use.
Many thanks in advance for looking at this package,
Dave.
[1] - https://cygwin.com/ml/cygwin/2014-09/msg00289.html
[2] -
http://www.rpmseek.com/rpm/cppcheck-gui-1.63-2.4.x86_64.html?hl=com&cs=cpp:PN:0:0:1:0:0:13516864
[3] - https://www.archlinux.org/packages/community/i686/cppcheck/
[4] -
https://build.opensuse.org/package/view_file/devel:tools/cppcheck/cppcheck.spec
[5] -
https://projects.archlinux.org/svntogit/community.git/plain/trunk/PKGBUILD?h=packages/cppcheck