1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
8 SDESC[standard]= Vim-like browser
9 HOMEPAGE= https://fanglingsu.github.io/vimb/
13 SITES[main]= GITHUB/fanglingsu:vimb:3.6.0
14 DISTFILE[1]= generated:main
16 SPKGS[standard]= single
18 OPTIONS_AVAILABLE= none
19 OPTIONS_STANDARD= none
21 BUILD_DEPENDS= glib:dev:standard
23 libsoup-2.4:dev:standard
24 BUILDRUN_DEPENDS= webkit2:complete:api40
26 USES= desktop-utils:single gmake pkgconfig zlib:build
28 GNOME_COMPONENTS= pango cairo gtk3
30 LICENSE= GPLv3+:single
31 LICENSE_TERMS= single:{{WRKDIR}}/TERMS
32 LICENSE_FILE= GPLv3+:{{WRKSRC}}/LICENSE
33 LICENSE_AWK= TERMS:"^\#include"
34 LICENSE_SOURCE= TERMS:{{WRKSRC}}/src/main.c
37 FPC_EQUIVALENT= www/vimb
43 VAR_OPSYS[sunos]= LDFLAGS=-lsocket
47 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/vimb
48 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/vimb/webext_main.so
51 ${MKDIR} ${WRKSRC}/.git
52 ${TOUCH} ${WRKSRC}/.git/index
55 ${REINPLACE_CMD} -e '/_XOPEN_SOURCE/ s/500/600/' ${WRKSRC}/config.mk
57 [FILE:411:descriptions/desc.single]
58 Vimb is a fast and lightweight vim like web browser based on the webkit
59 web browser engine and the GTK toolkit. Vimb is modal like the great vim
60 editor and also easily configurable during runtime. Vimb is mostly
61 keyboard driven and does not detract you from your daily work.
63 If your are familiar with vim or have some experience with pentadactyl the
64 use of vimb would be a breeze, if not we missed our target.
68 a8db68df98841f07cbf9b2aa026e5105aab83f809da1d1663defff81250d921e 144750 fanglingsu-vimb-3.6.0.tar.gz
71 [FILE:90:manifests/plist.single]
73 lib/vimb/webext_main.so
74 share/applications/vimb.desktop
75 share/man/man1/vimb.1.gz
78 [FILE:951:patches/patch-src_file-storage.c]
79 --- src/file-storage.c.orig 2020-01-02 22:17:49 UTC
80 +++ src/file-storage.c
82 #include <glib/gstdio.h>
84 #include "file-storage.h"
89 @@ -85,6 +86,11 @@ gboolean file_storage_append(FileStorage
95 + lock.l_whence = SEEK_SET;
101 @@ -96,11 +102,13 @@ gboolean file_storage_append(FileStorage
104 if ((f = fopen(storage->file_path, "a+"))) {
105 - flock(fileno(f), LOCK_EX);
106 + lock.l_type = F_WRLCK;
107 + fcntl(fileno(f), F_SETLKW, &lock);
108 va_start(args, format);
109 vfprintf(f, format, args);
111 - flock(fileno(f), LOCK_UN);
112 + lock.l_type = F_UNLCK;
113 + fcntl(fileno(f), F_SETLK, &lock);
119 [FILE:809:patches/patch-src_history.c]
120 --- src/history.c.orig 2020-01-02 22:17:49 UTC
122 @@ -259,8 +259,14 @@ static GList *load(FileStorage *s)
123 static void write_to_file(GList *list, const char *file)
128 + lock.l_whence = SEEK_SET;
131 if ((f = fopen(file, "w"))) {
132 - flock(fileno(f), LOCK_EX);
133 + lock.l_type = F_WRLCK;
134 + fcntl(fileno(f), F_SETLKW, &lock);
136 /* overwrite the history file with new unique history items */
137 for (GList *link = list; link; link = link->next) {
138 @@ -272,7 +278,8 @@ static void write_to_file(GList *list, c
142 - flock(fileno(f), LOCK_UN);
143 + lock.l_type = F_UNLCK;
144 + fcntl(fileno(f), F_SETLK, &lock);
150 [FILE:1502:patches/patch-src_util.c]
151 --- src/util.c.orig 2020-01-02 22:17:49 UTC
153 @@ -197,15 +197,22 @@ gboolean util_file_append(const char *fi
159 + lock.l_whence = SEEK_SET;
163 if (file && (f = fopen(file, "a+"))) {
164 - flock(fileno(f), LOCK_EX);
165 + lock.l_type = F_WRLCK;
166 + fcntl(fileno(f), F_SETLKW, &lock);
168 va_start(args, format);
169 vfprintf(f, format, args);
172 - flock(fileno(f), LOCK_UN);
173 + lock.l_type = F_UNLCK;
174 + fcntl(fileno(f), F_SETLK, &lock);
178 @@ -225,13 +232,19 @@ gboolean util_file_prepend(const char *f
188 + lock.l_whence = SEEK_SET;
191 content = util_get_file_contents(file, NULL);
192 if ((f = fopen(file, "w"))) {
193 - flock(fileno(f), LOCK_EX);
194 + lock.l_type = F_WRLCK;
195 + fcntl(fileno(f), F_SETLKW, &lock);
197 va_start(args, format);
198 /* write new content to the file */
199 @@ -241,7 +254,8 @@ gboolean util_file_prepend(const char *f
200 /* append previous file content */
203 - flock(fileno(f), LOCK_UN);
204 + lock.l_type = F_UNLCK;
205 + fcntl(fileno(f), F_SETLK, &lock);