badvpn-win32.nix 934 B

123456789101112131415161718192021222324252627282930
  1. { stdenv, cmake, pkgconfig, openssl, nspr, nss, debug ? false }:
  2. let
  3. compileFlags = "-O3 ${stdenv.lib.optionalString (!debug) "-DNDEBUG"}";
  4. in
  5. stdenv.mkDerivation {
  6. name = "badvpn";
  7. src = stdenv.lib.cleanSource ./.;
  8. nativeBuildInputs = [ cmake pkgconfig ];
  9. buildInputs = [ openssl nspr nss ];
  10. NIX_CFLAGS_COMPILE = "-I${nspr.crossDrv}/include/nspr -I${nss.crossDrv}/include/nss";
  11. preConfigure = ''
  12. cmakeFlagsArray=( "-DCMAKE_BUILD_TYPE=" "-DCMAKE_C_FLAGS=${compileFlags}" "-DCMAKE_SYSTEM_NAME=Windows" );
  13. '';
  14. postInstall = ''
  15. for lib in eay32; do
  16. cp ${openssl.crossDrv}/bin/lib$lib.dll $out/bin/
  17. done
  18. for lib in nspr4 plc4 plds4; do
  19. cp ${nspr.crossDrv}/lib/lib$lib.dll $out/bin/
  20. done
  21. for lib in nss3 nssutil3 smime3 ssl3; do
  22. cp ${nss.crossDrv}/lib/$lib.dll $out/bin/
  23. done
  24. '';
  25. }