[PATCH] mpatch: add missing file

Gregory Szorc gregory.szorc at gmail.com
Thu Sep 8 10:37:41 EDT 2016


I sent it a few weeks ago after I couldn't build @ with PyPy. You may want to verify the content matches.

> On Sep 8, 2016, at 01:07, Maciej Fijalkowski <fijall at gmail.com> wrote:
> 
> ups, it seems this has been committed (?)
> 
>> On Thu, Sep 8, 2016 at 10:04 AM, Maciej Fijalkowski <fijall at gmail.com> wrote:
>> # HG changeset patch
>> # User fijal
>> # Date 1473321829 -7200
>> #      Thu Sep 08 10:03:49 2016 +0200
>> # Node ID e812104013b1281b24dff50dd902897d24b0e29f
>> # Parent  64e432c2740087b7c042346f55af9512ead0f849
>> mpatch: add missing file
>> 
>> diff --git a/setup_mpatch_cffi.py b/setup_mpatch_cffi.py
>> new file mode 100644
>> --- /dev/null
>> +++ b/setup_mpatch_cffi.py
>> @@ -0,0 +1,36 @@
>> +
>> +from __future__ import absolute_import
>> +
>> +import os
>> +import cffi
>> +
>> +ffi = cffi.FFI()
>> +mpatch_c = os.path.join(os.path.join(os.path.dirname(__file__), 'mercurial',
>> +                                     'mpatch.c'))
>> +ffi.set_source("_mpatch_cffi", open(mpatch_c).read(),
>> +               include_dirs=["mercurial"])
>> +ffi.cdef("""
>> +
>> +struct mpatch_frag {
>> +       int start, end, len;
>> +       const char *data;
>> +};
>> +
>> +struct mpatch_flist {
>> +       struct mpatch_frag *base, *head, *tail;
>> +};
>> +
>> +extern "Python" struct mpatch_flist* cffi_get_next_item(void*, ssize_t);
>> +
>> +int mpatch_decode(const char *bin, ssize_t len, struct mpatch_flist** res);
>> +ssize_t mpatch_calcsize(size_t len, struct mpatch_flist *l);
>> +void mpatch_lfree(struct mpatch_flist *a);
>> +static int mpatch_apply(char *buf, const char *orig, size_t len,
>> +                        struct mpatch_flist *l);
>> +struct mpatch_flist *mpatch_fold(void *bins,
>> +                       struct mpatch_flist* (*get_next_item)(void*, ssize_t),
>> +                       ssize_t start, ssize_t end);
>> +""")
>> +
>> +if __name__ == '__main__':
>> +    ffi.compile()
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel


More information about the Mercurial-devel mailing list