diff options
author | Weijia Wang <9713184+wegank@users.noreply.github.com> | 2023-04-20 10:23:17 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-20 10:23:17 +0300 |
commit | 0d9d4e984ed4dbac5428abc9ca62b7e3808ac412 (patch) | |
tree | eb9ce0e1ce8f1e22114abc505724b1656a31c391 /pkgs | |
parent | 7ea26cf75377d5635cd2f481d64695bf878e8210 (diff) | |
parent | 072cd2ab7a15b7fd475deaf5bb63405d351b82c2 (diff) |
Merge pull request #224482 from bobvanderlinden/pr-pjsip-tests
pjsip: add tests and darwin compatiblity
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/applications/networking/pjsip/default.nix | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/pkgs/applications/networking/pjsip/default.nix b/pkgs/applications/networking/pjsip/default.nix index db76d3f58611..11462dab9a1b 100644 --- a/pkgs/applications/networking/pjsip/default.nix +++ b/pkgs/applications/networking/pjsip/default.nix @@ -1,4 +1,5 @@ { lib +, testers , stdenv , fetchFromGitHub , fetchpatch @@ -11,17 +12,16 @@ , Security , python3 , pythonSupport ? true -, pjsip , runCommand }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "pjsip"; version = "2.13"; src = fetchFromGitHub { - owner = pname; + owner = finalAttrs.pname; repo = "pjproject"; - rev = version; + rev = finalAttrs.version; sha256 = "sha256-yzszmm3uIyXtYFgZtUP3iswLx4u/8UbFt80Ln25ToFE="; }; @@ -64,8 +64,8 @@ stdenv.mkDerivation rec { postInstall = '' mkdir -p $out/bin cp pjsip-apps/bin/pjsua-* $out/bin/pjsua - mkdir -p $out/share/${pname}-${version}/samples - cp pjsip-apps/bin/samples/*/* $out/share/${pname}-${version}/samples + mkdir -p $out/share/${finalAttrs.pname}-${finalAttrs.version}/samples + cp pjsip-apps/bin/samples/*/* $out/share/${finalAttrs.pname}-${finalAttrs.version}/samples '' + lib.optionalString pythonSupport '' (cd pjsip-apps/src/swig/python && \ python setup.py install --prefix=$py @@ -98,11 +98,26 @@ stdenv.mkDerivation rec { install_name_tool -id $lib "''${change_args[@]}" $lib fi done + + # Rewrite library references for all executables. + find "$out" -executable -type f | while read executable; do + install_name_tool "''${change_args[@]}" "$executable" + done ''; # We need the libgcc_s.so.1 loadable (for pthread_cancel to work) dontPatchELF = true; + passthru.tests.version = testers.testVersion { + package = finalAttrs.finalPackage; + command = "pjsua --version"; + }; + + passthru.tests.pkg-config = testers.hasPkgConfigModule { + package = finalAttrs.finalPackage; + moduleName = "libpjproject"; + }; + passthru.tests.python-pjsua2 = runCommand "python-pjsua2" { } '' ${(python3.withPackages (pkgs: [ pkgs.pjsua2 ])).interpreter} -c "import pjsua2" > $out ''; @@ -115,4 +130,4 @@ stdenv.mkDerivation rec { mainProgram = "pjsua"; platforms = platforms.linux ++ platforms.darwin; }; -} +}) |