sapling/eden/scm/edenscm/mercurial/bdiff.h
Adam Simpkins 5ffa268af2 use absolute includes for the native cext modules
Summary:
Update the C files under edenscm/mercurial/cext to use absolute includes from
the repository root.  Also update a few of the libraries in edenscm/mercurial
that the cext code depends on.

This makes these files easier to build with Buck in fbsource, and reduces the
number of places where we have to use deprecated Buck functionality to help
find these headers.  This also allows autodeps to work with the build targets
for these rules.

Reviewed By: xavierd

Differential Revision: D19958221

fbshipit-source-id: e6e471583a795ba5773bae5f16ed582c9c5fd57e
2020-02-19 13:05:06 -08:00

42 lines
899 B
C

/*
* Portions Copyright (c) Facebook, Inc. and its affiliates.
*
* This software may be used and distributed according to the terms of the
* GNU General Public License version 2.
*/
/*
* Copyright Matt Mackall <mpm@selenic.com> and others
*
* This software may be used and distributed according to the terms of
* the GNU General Public License, incorporated herein by reference.
*/
#ifndef _HG_BDIFF_H_
#define _HG_BDIFF_H_
#include "eden/scm/edenscm/mercurial/compat.h"
struct bdiff_line {
int hash, n, e;
ssize_t len;
const char* l;
};
struct bdiff_hunk;
struct bdiff_hunk {
int a1, a2, b1, b2;
struct bdiff_hunk* next;
};
int bdiff_splitlines(const char* a, ssize_t len, struct bdiff_line** lr);
int bdiff_diff(
struct bdiff_line* a,
int an,
struct bdiff_line* b,
int bn,
struct bdiff_hunk* base);
void bdiff_freehunks(struct bdiff_hunk* l);
#endif