about summary refs log tree commit diff
path: root/pkgs/applications/misc/yate/default.nix
blob: b67c69224c573bed06b8844eb5368343435978ea (plain) (blame)
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
args: with args;

let inherit (args.composableDerivation) composableDerivation edf wwf; in

composableDerivation {} ( fixed : {

  name = "yate2";

  src = fetchurl {
    url = http://yate.null.ro/tarballs/yate2/yate2.tar.gz;
    sha256 = "0nniicfal3nqkz9swzrxsmyq04cy6xd2dwrngwbjzv0ra5x2p415";
  };

  # TODO zaptel ? postgres ?
  buildInputs = [qt openssl autoconf automake pkgconfig];

  # /dev/null is used when linking which is a impure path for the wrapper
  preConfigure = "
  
  sed -i 's@,/dev/null@@' configure
  "; 

  # --unresolved-symbols=ignore-in-shared-libs makes ld no longer find --library=yate? Why?
  preBuild = ''
    export NIX_LDFLAGS="-L$TMP/yate $NIX_LDFLAGS"
    find . -type f -iname Makefile | xargs sed -i \
      -e 's@-Wl,--unresolved-symbols=ignore-in-shared-libs@@' \
      -e 's@-Wl,--retain-symbols-file@@'
  '';

  meta = { 
    description = "YATE - Yet Another Telephony Engine";
    homepage = http://yate.null.ro/;
    license = ["GPL" "MPL"]; # Yate's license is GPL with an exception for linking with OpenH323 and PWlib (licensed under MPL).
    maintainers = [args.lib.maintainers.marcweber];
    platforms = args.lib.platforms.linux;
  };

} )