Theo dõi câu trả lời của BjornW với một bản vá.
Sau khi tải xuống và hủy lưu trữ nguồn từ:
http://doad.savannah.gnu.org/release/cvs/source/ sóng / 11.11 / 23 /
Sao chép bản vá bên dưới vào một số tệp, giả sử cvs-1.11.23.patch
, sau đó áp dụng bản vá với:
patch -d cvs-1.11.23 -p1 < cvs-1.11.23.patch
Sau đó xây dựng theo README
hướng dẫn tập tin cvs-1.11,23 :
cd cvs-1.11.23
./configure
make
make install
Đây là bản vá:
diff -r -u cvs-1.11.23/lib/getline.c cvs-1.11.23-osx/lib/getline.c
--- cvs-1.11.23/lib/getline.c 2005-04-05 06:46:05.000000000 +1000
+++ cvs-1.11.23-osx/lib/getline.c 2017-01-31 12:04:19.000000000 +1100
@@ -154,13 +154,10 @@
return ret;
}
-int
-getline (lineptr, n, stream)
- char **lineptr;
- size_t *n;
- FILE *stream;
+ssize_t
+ getline(char ** restrict lineptr, size_t * restrict linecapp, FILE * restrict stream)
{
- return getstr (lineptr, n, stream, '\n', 0, GETLINE_NO_LIMIT);
+ return (ssize_t)getstr (lineptr, linecapp, stream, '\n', 0, GETLINE_NO_LIMIT);
}
int
diff -r -u cvs-1.11.23/lib/getline.h cvs-1.11.23-osx/lib/getline.h
--- cvs-1.11.23/lib/getline.h 2005-04-05 06:46:05.000000000 +1000
+++ cvs-1.11.23-osx/lib/getline.h 2017-01-31 12:03:21.000000000 +1100
@@ -11,8 +11,8 @@
#define GETLINE_NO_LIMIT -1
-int
- getline __PROTO ((char **_lineptr, size_t *_n, FILE *_stream));
+ssize_t
+ getline(char ** restrict linep, size_t * restrict linecapp, FILE * restrict stream);
int
getline_safe __PROTO ((char **_lineptr, size_t *_n, FILE *_stream,
int limit));
/usr/bin/cvs
?