forked from mirrors/nixpkgs
Merge pull request #45481 from vbgl/ocaml-piqi-safe-string
ocamlPackages.piqi{,-ocaml}: fix build with OCaml 4.06
This commit is contained in:
commit
58369d714f
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, ocaml, findlib, piqi, camlp4 }:
|
||||
{ stdenv, fetchurl, fetchpatch, ocaml, findlib, piqi, camlp4 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.7.5";
|
||||
|
@ -9,6 +9,11 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0ngz6y8i98i5v2ma8nk6mc83pdsmf2z0ks7m3xi6clfg3zqbddrv";
|
||||
};
|
||||
|
||||
patches = [ (fetchpatch {
|
||||
url = https://github.com/alavrik/piqi-ocaml/commit/336e8fdb84e77f4105e9bbb5ab545b8729101308.patch;
|
||||
sha256 = "071s4xjyr6xx95v6az2lbl2igc87n7z5jqnnbhfq2pidrxakd0la";
|
||||
})];
|
||||
|
||||
buildInputs = [ ocaml findlib piqi camlp4 ];
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{stdenv, fetchurl, ocaml, findlib, camlp4, which, ulex, easy-format, ocaml_optcomp, xmlm, base64}:
|
||||
{ stdenv, fetchurl, ocaml, findlib, which, ulex, easy-format, ocaml_optcomp, xmlm, base64 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.6.13";
|
||||
|
@ -9,10 +9,10 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1whqr2bb3gds2zmrzqnv8vqka9928w4lx6mi6g244kmbwb2h8d8l";
|
||||
};
|
||||
|
||||
buildInputs = [ocaml findlib camlp4 which ocaml_optcomp];
|
||||
buildInputs = [ ocaml findlib which ocaml_optcomp ];
|
||||
propagatedBuildInputs = [ulex xmlm easy-format base64];
|
||||
|
||||
patches = [ ./no-ocamlpath-override.patch ];
|
||||
patches = [ ./no-ocamlpath-override.patch ./safe-string.patch ];
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
|
|
13
pkgs/development/ocaml-modules/piqi/safe-string.patch
Normal file
13
pkgs/development/ocaml-modules/piqi/safe-string.patch
Normal file
|
@ -0,0 +1,13 @@
|
|||
--- a/piqilib/piqi_json_parser.mll
|
||||
+++ b/piqilib/piqi_json_parser.mll
|
||||
@@ -189,8 +189,8 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
let len = lexbuf.lex_curr_pos - lexbuf.lex_start_pos in
|
||||
let s = lexbuf.lex_buffer in
|
||||
let start = lexbuf.lex_start_pos in
|
||||
- check_adjust_utf8 v lexbuf s start len;
|
||||
- Buffer.add_substring v.buf s start len
|
||||
+ check_adjust_utf8 v lexbuf (Bytes.unsafe_to_string s) start len;
|
||||
+ Buffer.add_subbytes v.buf s start len
|
||||
|
||||
let map_lexeme f lexbuf =
|
||||
let len = lexbuf.lex_curr_pos - lexbuf.lex_start_pos in
|
Loading…
Reference in a new issue