build-bazel-package: added rm of extra local folders for toolchain configuration...
[NixPkgs.git] / pkgs / by-name / pm / pmccabe / package.nix
blob9f3982397daec37f3508625fa4bfb49126b434d5
2   lib,
3   stdenv,
4   fetchurl,
5 }:
7 stdenv.mkDerivation rec {
8   pname = "pmccabe";
9   version = "2.6";
11   src = fetchurl {
12     url = "http://http.debian.net/debian/pool/main/p/pmccabe/pmccabe_${version}.tar.gz";
13     sha256 = "0a3h1b9fb87c82d5fbql5lc4gp338pa5s9i66dhw7zk8jdygx474";
14   };
16   patches = [
17     ./getopt_on_darwin.patch
18   ];
20   configurePhase = ''
21     sed -i -r Makefile \
22       -e 's,/usr/,/,g' \
23       -e "s,^DESTDIR =.*$,DESTDIR = $out," \
24       -e "s,^INSTALL = install.*$,INSTALL = install," \
25       -e "s,^all:.*$,all: \$(PROGS),"
26   '';
28   checkPhase = "make test";
30   doCheck = true;
32   meta = with lib; {
33     description = "McCabe-style function complexity and line counting for C and C++";
34     homepage = "https://people.debian.org/~bame/pmccabe/";
35     license = licenses.gpl2Plus;
37     longDescription = ''
38       pmccabe calculates McCabe-style cyclomatic complexity for C and
39       C++ source code.  Per-function complexity may be used for
40       spotting likely trouble spots and for estimating testing
41       effort.
43       pmccabe also includes a non-commented line counter, decomment which
44       only removes comments from source code; codechanges, a program to
45       calculate the amount of change which has occurred between two source
46       trees or files; and vifn, to invoke vi given a function name rather
47       than a file name.
48     '';
49     maintainers = with maintainers; [ peterhoeg ];
50     platforms = platforms.unix;
51   };