Imported gnome-build.
This is the GNOME Build Framework (GBF).
This commit is contained in:
parent
e9ec1d2a34
commit
126775d61f
7 changed files with 527 additions and 0 deletions
1
devel/gnome-build/DESCR
Normal file
1
devel/gnome-build/DESCR
Normal file
|
@ -0,0 +1 @@
|
|||
This is the GNOME Build Framework (GBF).
|
34
devel/gnome-build/Makefile
Normal file
34
devel/gnome-build/Makefile
Normal file
|
@ -0,0 +1,34 @@
|
|||
# $NetBSD: Makefile,v 1.1.1.1 2007/01/04 02:51:02 rillig Exp $
|
||||
#
|
||||
|
||||
DISTNAME= gnome-build-0.1.3
|
||||
CATEGORIES= devel gnome
|
||||
MASTER_SITES= ${MASTER_SITE_GNOME:=sources/gnome-build/0.1/}
|
||||
EXTRACT_SUFX= .tar.bz2
|
||||
|
||||
MAINTAINER= rillig@NetBSD.org
|
||||
HOMEPAGE= http://www.gnome.org/projects/devtools/
|
||||
COMMENT= Project management components for GNOME development
|
||||
|
||||
BL3_DEPENDS+= devel/gal
|
||||
BL3_DEPENDS+= devel/gdl
|
||||
BL3_DEPENDS+= devel/libbonobo
|
||||
BL3_DEPENDS+= devel/libgnome
|
||||
BL3_DEPENDS+= devel/libgnomeui
|
||||
BL3_DEPENDS+= devel/oaf
|
||||
BL3_DEPENDS+= devel/pango
|
||||
BL3_DEPENDS+= x11/gtk2
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
USE_LIBTOOL= yes
|
||||
USE_TOOLS+= pkg-config perl:run
|
||||
|
||||
PKGCONFIG_OVERRIDE+= gnome-build-1.0.pc.in
|
||||
|
||||
REPLACE_PERL+= src/backends/libgbf_am/gbf-am-parse.in
|
||||
REPLACE_PERL+= src/backends/libgbf_mkfile/gbf-mkfile-parse.in
|
||||
|
||||
.for d in ${BL3_DEPENDS}
|
||||
. include "../../${d}/buildlink3.mk"
|
||||
.endfor
|
||||
.include "../../mk/bsd.pkg.mk"
|
71
devel/gnome-build/PLIST
Normal file
71
devel/gnome-build/PLIST
Normal file
|
@ -0,0 +1,71 @@
|
|||
@comment $NetBSD: PLIST,v 1.1.1.1 2007/01/04 02:51:02 rillig Exp $
|
||||
bin/gbf-am-parse
|
||||
bin/gbf-mkfile-parse
|
||||
include/gnome-build-1.0/gbf/gbf-backend.h
|
||||
include/gnome-build-1.0/gbf/gbf-build-info.h
|
||||
include/gnome-build-1.0/gbf/gbf-project-model.h
|
||||
include/gnome-build-1.0/gbf/gbf-project-util.h
|
||||
include/gnome-build-1.0/gbf/gbf-project-view.h
|
||||
include/gnome-build-1.0/gbf/gbf-project.h
|
||||
include/gnome-build-1.0/gbf/gbf-tree-data.h
|
||||
include/gnome-build-1.0/gbf/gbf-widgets.h
|
||||
include/gnome-build-1.0/gbf/glue-plugin.h
|
||||
lib/gnome-build-1.0/backends/gbf-am.server
|
||||
lib/gnome-build-1.0/backends/gbf-mkfile.server
|
||||
lib/gnome-build-1.0/backends/libgbf-am.la
|
||||
lib/gnome-build-1.0/backends/libgbf-mkfile.la
|
||||
lib/libgbf-1.la
|
||||
lib/libgbf-widgets-1.la
|
||||
lib/pkgconfig/gnome-build-1.0.pc
|
||||
share/gnome-build/GBF/AmFiles.pm
|
||||
share/gnome-build/GBF/General.pm
|
||||
share/gnome-build/GBF/Make.pm
|
||||
share/gnome-build/glade/create_dialogs.glade
|
||||
share/gnome-build/glade/gbf-am-dialogs.glade
|
||||
share/locale/am/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/az/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/be/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/ca/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/cs/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/de/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/el/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/en_CA/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/en_GB/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/es/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/fi/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/fr/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/gl/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/hr/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/hu/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/it/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/ja/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/lv/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/mk/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/ml/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/ms/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/nb/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/ne/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/nl/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/pa/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/pl/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/pt/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/pt_BR/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/ru/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/rw/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/sk/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/sq/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/sr/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/sr@Latn/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/sv/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/uk/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/vi/LC_MESSAGES/gbf-1.mo
|
||||
share/locale/zh_CN/LC_MESSAGES/gbf-1.mo
|
||||
share/pixmaps/gbf-build.png
|
||||
share/pixmaps/gbf-install.png
|
||||
@dirrm share/gnome-build/glade
|
||||
@dirrm share/gnome-build/GBF
|
||||
@dirrm share/gnome-build
|
||||
@dirrm lib/gnome-build-1.0/backends
|
||||
@dirrm lib/gnome-build-1.0
|
||||
@dirrm include/gnome-build-1.0/gbf
|
||||
@dirrm include/gnome-build-1.0
|
8
devel/gnome-build/distinfo
Normal file
8
devel/gnome-build/distinfo
Normal file
|
@ -0,0 +1,8 @@
|
|||
$NetBSD: distinfo,v 1.1.1.1 2007/01/04 02:51:02 rillig Exp $
|
||||
|
||||
SHA1 (gnome-build-0.1.3.tar.bz2) = 2261b865296647a16efc97fa8c5554aa597f7766
|
||||
RMD160 (gnome-build-0.1.3.tar.bz2) = 8ff1ebc87a64343f87acd56fd550ebc111f1b238
|
||||
Size (gnome-build-0.1.3.tar.bz2) = 444539 bytes
|
||||
SHA1 (patch-aa) = e4f1d3b55db03b0e6db86158b2b16bd4ba594037
|
||||
SHA1 (patch-ab) = a85e1668824b9f62e2e413861c010ade19824918
|
||||
SHA1 (patch-ac) = 5a7ca1a63080d145e5b8263656d2fbe2be639d1f
|
196
devel/gnome-build/patches/patch-aa
Normal file
196
devel/gnome-build/patches/patch-aa
Normal file
|
@ -0,0 +1,196 @@
|
|||
$NetBSD: patch-aa,v 1.1.1.1 2007/01/04 02:51:02 rillig Exp $
|
||||
|
||||
Replaced the GNU regular expressions with POSIX regular expressions,
|
||||
since the latter are more portable.
|
||||
|
||||
--- src/backends/libgbf_am/gbf-am-build.c.orig 2004-01-17 22:34:56.000000000 +0100
|
||||
+++ src/backends/libgbf_am/gbf-am-build.c 2007-01-04 03:16:49.000000000 +0100
|
||||
@@ -38,10 +38,11 @@ typedef struct {
|
||||
GList *callbacks;
|
||||
|
||||
/* Regex structures. */
|
||||
- struct re_pattern_buffer dir_buf;
|
||||
- struct re_pattern_buffer warn_buf;
|
||||
- struct re_pattern_buffer err_buf;
|
||||
- struct re_registers reg;
|
||||
+ regex_t dir_buf;
|
||||
+ regex_t warn_buf;
|
||||
+ regex_t err_buf;
|
||||
+#define N_GROUPS 5 /* 1 + maximum number of groups + 1 */
|
||||
+ regmatch_t reg[N_GROUPS];
|
||||
|
||||
/* Build info. */
|
||||
char *build_dir;
|
||||
@@ -55,12 +56,9 @@ build_info_free (BuildInfo *info)
|
||||
|
||||
if (info->build_dir)
|
||||
g_free (info->build_dir);
|
||||
- if (info->dir_buf.fastmap)
|
||||
- g_free (info->dir_buf.fastmap);
|
||||
- if (info->warn_buf.fastmap)
|
||||
- g_free (info->warn_buf.fastmap);
|
||||
- if (info->err_buf.fastmap)
|
||||
- g_free (info->err_buf.fastmap);
|
||||
+ regfree (&info->dir_buf);
|
||||
+ regfree (&info->warn_buf);
|
||||
+ regfree (&info->err_buf);
|
||||
g_free (info);
|
||||
}
|
||||
|
||||
@@ -79,33 +77,36 @@ build_msg (BuildInfo *info,
|
||||
}
|
||||
}
|
||||
|
||||
+/* Returns a copy of the ''n''th captured group. */
|
||||
+#define GBF_GETGROUP(n) \
|
||||
+ g_strndup (line + info->reg[n].rm_so, \
|
||||
+ info->reg[n].rm_eo - info->reg[n].rm_so)
|
||||
+
|
||||
static void
|
||||
parse_output (BuildInfo *info,
|
||||
const char *line)
|
||||
{
|
||||
- int line_length = strlen (line);
|
||||
+ size_t line_length = strlen (line);
|
||||
+ int n;
|
||||
|
||||
/* Check for directory changes. */
|
||||
- if (re_search (&info->dir_buf, line, line_length, 0,
|
||||
- line_length, &info->reg) != -1) {
|
||||
- if (info->reg.num_regs >= 2) {
|
||||
- if (info->build_dir)
|
||||
- g_free (info->build_dir);
|
||||
- info->build_dir = g_strndup (line + info->reg.start[1],
|
||||
- info->reg.end[1] - info->reg.start[1]);
|
||||
- }
|
||||
+ if (regexec (&info->dir_buf, line, N_GROUPS, info->reg, 0) == 0) {
|
||||
+ g_assert (info->reg[1].rm_so != -1 && info->reg[2].rm_so == -1);
|
||||
+ if (info->build_dir)
|
||||
+ g_free (info->build_dir);
|
||||
+ info->build_dir = GBF_GETGROUP(1);
|
||||
}
|
||||
|
||||
/* Check for warnings & errors. */
|
||||
- if (re_search (&info->warn_buf, line, line_length, 0,
|
||||
- line_length, &info->reg) != -1) {
|
||||
+ if (regexec (&info->warn_buf, line, N_GROUPS, info->reg, 0) == 0) {
|
||||
GbfBuildWarning *warn;
|
||||
char *text;
|
||||
|
||||
+ g_assert (info->reg[3].rm_so != -1 && info->reg[4].rm_so == -1);
|
||||
+
|
||||
/* Create new warning. */
|
||||
warn = g_new0 (GbfBuildWarning, 1);
|
||||
- text = g_strndup (line + info->reg.start[1],
|
||||
- info->reg.end[1] - info->reg.start[1]);
|
||||
+ text = GBF_GETGROUP(1);
|
||||
if (text[0] != '/') { /* only prepend build_dir if path not absolute */
|
||||
warn->filename = g_strconcat (info->build_dir, "/", text, NULL);
|
||||
g_free (text);
|
||||
@@ -113,25 +114,21 @@ parse_output (BuildInfo *info,
|
||||
warn->filename = text;
|
||||
}
|
||||
|
||||
- text = g_strndup (line + info->reg.start[2],
|
||||
- info->reg.end[2] - info->reg.start[2]);
|
||||
+ text = GBF_GETGROUP(2);
|
||||
warn->line = atoi (text);
|
||||
g_free (text);
|
||||
- warn->warning = g_strndup (line + info->reg.start[3],
|
||||
- info->reg.end[3] - info->reg.start[3]);
|
||||
+ warn->warning = GBF_GETGROUP(3);
|
||||
warn->output = g_strdup (line);
|
||||
|
||||
build_msg (info, GBF_BUILD_WARNING, warn);
|
||||
/* FIXME: We should free warn here, and make copy in gbf-build-info.c. */
|
||||
- } else if (re_search (&info->err_buf, line, line_length, 0,
|
||||
- line_length, &info->reg) != -1) {
|
||||
+ } else if (regexec (&info->err_buf, line, N_GROUPS, info->reg, 0) == 0) {
|
||||
GbfBuildError *err;
|
||||
char *text;
|
||||
|
||||
/* Create new error. */
|
||||
err = g_new0 (GbfBuildError, 1);
|
||||
- text = g_strndup (line + info->reg.start[1],
|
||||
- info->reg.end[1] - info->reg.start[1]);
|
||||
+ text = GBF_GETGROUP(1);
|
||||
if (text[0] != '/') { /* only prepend build_dir if path not absolute */
|
||||
err->filename = g_strconcat (info->build_dir, "/", text, NULL);
|
||||
g_free (text);
|
||||
@@ -139,12 +136,10 @@ parse_output (BuildInfo *info,
|
||||
err->filename = text;
|
||||
}
|
||||
|
||||
- text = g_strndup (line + info->reg.start[2],
|
||||
- info->reg.end[2] - info->reg.start[2]);
|
||||
+ text = GBF_GETGROUP(2);
|
||||
err->line = atoi (text);
|
||||
g_free (text);
|
||||
- err->error = g_strndup (line + info->reg.start[3],
|
||||
- info->reg.end[3] - info->reg.start[3]);
|
||||
+ err->error = GBF_GETGROUP(3);
|
||||
err->output = g_strdup (line);
|
||||
|
||||
build_msg (info, GBF_BUILD_ERROR, err);
|
||||
@@ -153,6 +148,7 @@ parse_output (BuildInfo *info,
|
||||
build_msg (info, GBF_BUILD_OUTPUT, (gpointer)line);
|
||||
}
|
||||
}
|
||||
+#undef GBF_GETGROUP(n)
|
||||
|
||||
static gboolean
|
||||
build_output_cb (GIOChannel *chan,
|
||||
@@ -192,24 +188,10 @@ build_output_cb (GIOChannel *chan,
|
||||
}
|
||||
|
||||
static gboolean
|
||||
-compile_pattern (struct re_pattern_buffer *buf,
|
||||
+compile_pattern (regex_t *buf,
|
||||
const char *pattern)
|
||||
{
|
||||
- memset (buf, 0, sizeof (struct re_pattern_buffer));
|
||||
- buf->translate = NULL;
|
||||
- buf->fastmap = g_malloc (256);
|
||||
- buf->allocated = 0;
|
||||
- buf->buffer = NULL;
|
||||
- buf->can_be_null = 0;
|
||||
- buf->no_sub = 0;
|
||||
-
|
||||
- if (!re_compile_pattern (pattern, strlen (pattern), buf)) {
|
||||
- if (re_compile_fastmap (buf) != 0) {
|
||||
- g_warning ("IMPORTANT REGEX FAILED TO CREASTE FASTMAP");
|
||||
- g_free (buf->fastmap);
|
||||
- buf->fastmap = NULL;
|
||||
- }
|
||||
- } else {
|
||||
+ if (regcomp(buf, pattern, REG_EXTENDED) != 0) {
|
||||
g_warning ("IMPORTANT REGEX FAILED TO COMPILE");
|
||||
return FALSE;
|
||||
}
|
||||
@@ -234,7 +216,6 @@ gbf_build_run (GbfAmProject *project,
|
||||
char *tmp, *msg;
|
||||
int output, err, pid;
|
||||
GIOChannel *out_channel, *err_channel;
|
||||
- reg_syntax_t old_options;
|
||||
GError *error = NULL;
|
||||
const char *charset;
|
||||
GNode *g_node;
|
||||
@@ -347,9 +328,6 @@ gbf_build_run (GbfAmProject *project,
|
||||
info->build_dir = NULL;
|
||||
|
||||
/* Intialize regexs. */
|
||||
- old_options = re_syntax_options;
|
||||
- re_syntax_options = RE_SYNTAX_EGREP;
|
||||
-
|
||||
if (!compile_pattern (&info->dir_buf, dir_regex) ||
|
||||
!compile_pattern (&info->warn_buf, warn_regex) ||
|
||||
!compile_pattern (&info->err_buf, err_regex)) {
|
||||
@@ -360,8 +338,6 @@ gbf_build_run (GbfAmProject *project,
|
||||
return -1;
|
||||
}
|
||||
|
||||
- re_syntax_options = old_options;
|
||||
-
|
||||
g_signal_emit_by_name (G_OBJECT (project), "build_start");
|
||||
|
||||
tmp = g_strjoinv (" ", (char **) argv);
|
191
devel/gnome-build/patches/patch-ab
Normal file
191
devel/gnome-build/patches/patch-ab
Normal file
|
@ -0,0 +1,191 @@
|
|||
$NetBSD: patch-ab,v 1.1.1.1 2007/01/04 02:51:02 rillig Exp $
|
||||
|
||||
Replaced the GNU regular expressions with POSIX regular expressions,
|
||||
since the latter are more portable.
|
||||
|
||||
--- src/backends/libgbf_mkfile/gbf-mkfile-build.c.orig 2005-09-22 13:18:46.000000000 +0200
|
||||
+++ src/backends/libgbf_mkfile/gbf-mkfile-build.c 2007-01-04 03:28:10.000000000 +0100
|
||||
@@ -43,10 +43,11 @@ typedef struct {
|
||||
GList *callbacks;
|
||||
|
||||
/* Regex structures. */
|
||||
- struct re_pattern_buffer dir_buf;
|
||||
- struct re_pattern_buffer warn_buf;
|
||||
- struct re_pattern_buffer err_buf;
|
||||
- struct re_registers reg;
|
||||
+ regex_t dir_buf;
|
||||
+ regex_t warn_buf;
|
||||
+ regex_t err_buf;
|
||||
+#define N_GROUPS 5 /* 1 + maximum number of groups + 1 */
|
||||
+ regmatch_t reg[N_GROUPS];
|
||||
|
||||
/* Build info. */
|
||||
char *build_dir;
|
||||
@@ -60,12 +61,9 @@ build_info_free (BuildInfo *info)
|
||||
|
||||
if (info->build_dir)
|
||||
g_free (info->build_dir);
|
||||
- if (info->dir_buf.fastmap)
|
||||
- g_free (info->dir_buf.fastmap);
|
||||
- if (info->warn_buf.fastmap)
|
||||
- g_free (info->warn_buf.fastmap);
|
||||
- if (info->err_buf.fastmap)
|
||||
- g_free (info->err_buf.fastmap);
|
||||
+ regfree (&info->dir_buf);
|
||||
+ regfree (&info->warn_buf);
|
||||
+ regfree (&info->err_buf);
|
||||
g_free (info);
|
||||
}
|
||||
|
||||
@@ -84,6 +82,11 @@ build_msg (BuildInfo *info,
|
||||
}
|
||||
}
|
||||
|
||||
+/* Returns a copy of the ''n''th captured group. */
|
||||
+#define GBF_GETGROUP(n) \
|
||||
+ g_strndup (line + info->reg[n].rm_so, \
|
||||
+ info->reg[n].rm_eo - info->reg[n].rm_so)
|
||||
+
|
||||
static void
|
||||
parse_output (BuildInfo *info,
|
||||
const char *line)
|
||||
@@ -91,26 +94,20 @@ parse_output (BuildInfo *info,
|
||||
int line_length = strlen (line);
|
||||
|
||||
/* Check for directory changes. */
|
||||
- if (re_search (&info->dir_buf, line, line_length, 0,
|
||||
- line_length, &info->reg) != -1) {
|
||||
- if (info->reg.num_regs >= 2) {
|
||||
- if (info->build_dir)
|
||||
- g_free (info->build_dir);
|
||||
- info->build_dir = g_strndup (line + info->reg.start[1],
|
||||
- info->reg.end[1] - info->reg.start[1]);
|
||||
- }
|
||||
+ if (regexec (&info->dir_buf, line, N_GROUPS, info->reg, 0) == 0) {
|
||||
+ g_assert(info->reg[1].rm_so != -1);
|
||||
+ g_free (info->build_dir);
|
||||
+ info->build_dir = GBF_GETGROUP(1);
|
||||
}
|
||||
|
||||
/* Check for warnings & errors. */
|
||||
- if (re_search (&info->warn_buf, line, line_length, 0,
|
||||
- line_length, &info->reg) != -1) {
|
||||
+ if (regexec (&info->warn_buf, line, N_GROUPS, info->reg, 0) == 0) {
|
||||
GbfBuildWarning *warn;
|
||||
char *text;
|
||||
|
||||
/* Create new warning. */
|
||||
warn = g_new0 (GbfBuildWarning, 1);
|
||||
- text = g_strndup (line + info->reg.start[1],
|
||||
- info->reg.end[1] - info->reg.start[1]);
|
||||
+ text = GBF_GETGROUP(1);
|
||||
if (text[0] != '/') { /* only prepend build_dir if path not absolute */
|
||||
warn->filename = g_strconcat (info->build_dir, "/", text, NULL);
|
||||
g_free (text);
|
||||
@@ -118,25 +115,21 @@ parse_output (BuildInfo *info,
|
||||
warn->filename = text;
|
||||
}
|
||||
|
||||
- text = g_strndup (line + info->reg.start[2],
|
||||
- info->reg.end[2] - info->reg.start[2]);
|
||||
+ text = GBF_GETGROUP(2);
|
||||
warn->line = atoi (text);
|
||||
g_free (text);
|
||||
- warn->warning = g_strndup (line + info->reg.start[3],
|
||||
- info->reg.end[3] - info->reg.start[3]);
|
||||
+ warn->warning = GBF_GETGROUP(3);
|
||||
warn->output = g_strdup (line);
|
||||
|
||||
build_msg (info, GBF_BUILD_WARNING, warn);
|
||||
/* FIXME: We should free warn here, and make copy in gbf-build-info.c. */
|
||||
- } else if (re_search (&info->err_buf, line, line_length, 0,
|
||||
- line_length, &info->reg) != -1) {
|
||||
+ } else if (regexec(&info->err_buf, line, N_GROUPS, info->reg, 0) == 0) {
|
||||
GbfBuildError *err;
|
||||
char *text;
|
||||
|
||||
/* Create new error. */
|
||||
err = g_new0 (GbfBuildError, 1);
|
||||
- text = g_strndup (line + info->reg.start[1],
|
||||
- info->reg.end[1] - info->reg.start[1]);
|
||||
+ text = GBF_GETGROUP(1);
|
||||
if (text[0] != '/') { /* only prepend build_dir if path not absolute */
|
||||
err->filename = g_strconcat (info->build_dir, "/", text, NULL);
|
||||
g_free (text);
|
||||
@@ -144,12 +137,10 @@ parse_output (BuildInfo *info,
|
||||
err->filename = text;
|
||||
}
|
||||
|
||||
- text = g_strndup (line + info->reg.start[2],
|
||||
- info->reg.end[2] - info->reg.start[2]);
|
||||
+ text = GBF_GETGROUP(2);
|
||||
err->line = atoi (text);
|
||||
g_free (text);
|
||||
- err->error = g_strndup (line + info->reg.start[3],
|
||||
- info->reg.end[3] - info->reg.start[3]);
|
||||
+ err->error = GBF_GETGROUP(3);
|
||||
err->output = g_strdup (line);
|
||||
|
||||
build_msg (info, GBF_BUILD_ERROR, err);
|
||||
@@ -158,6 +149,7 @@ parse_output (BuildInfo *info,
|
||||
build_msg (info, GBF_BUILD_OUTPUT, (gpointer)line);
|
||||
}
|
||||
}
|
||||
+#undef GBF_GETGROUP
|
||||
|
||||
static gboolean
|
||||
build_output_cb (GIOChannel *chan,
|
||||
@@ -197,24 +189,10 @@ build_output_cb (GIOChannel *chan,
|
||||
}
|
||||
|
||||
static gboolean
|
||||
-compile_pattern (struct re_pattern_buffer *buf,
|
||||
+compile_pattern (regex_t *buf,
|
||||
const char *pattern)
|
||||
{
|
||||
- memset (buf, 0, sizeof (struct re_pattern_buffer));
|
||||
- buf->translate = NULL;
|
||||
- buf->fastmap = g_malloc (256);
|
||||
- buf->allocated = 0;
|
||||
- buf->buffer = NULL;
|
||||
- buf->can_be_null = 0;
|
||||
- buf->no_sub = 0;
|
||||
-
|
||||
- if (!re_compile_pattern (pattern, strlen (pattern), buf)) {
|
||||
- if (re_compile_fastmap (buf) != 0) {
|
||||
- g_warning ("IMPORTANT REGEX FAILED TO CREASTE FASTMAP");
|
||||
- g_free (buf->fastmap);
|
||||
- buf->fastmap = NULL;
|
||||
- }
|
||||
- } else {
|
||||
+ if (regcomp(buf, pattern, REG_EXTENDED) != 0) {
|
||||
g_warning ("IMPORTANT REGEX FAILED TO COMPILE");
|
||||
return FALSE;
|
||||
}
|
||||
@@ -239,7 +217,6 @@ gbf_build_run (GbfMkfileProject *proj
|
||||
char *tmp, *msg;
|
||||
int output, err, pid;
|
||||
GIOChannel *out_channel, *err_channel;
|
||||
- reg_syntax_t old_options;
|
||||
GError *error = NULL;
|
||||
const char *charset;
|
||||
GNode *g_node;
|
||||
@@ -342,9 +319,6 @@ gbf_build_run (GbfMkfileProject *proj
|
||||
info->build_dir = NULL;
|
||||
|
||||
/* Intialize regexs. */
|
||||
- old_options = re_syntax_options;
|
||||
- re_syntax_options = RE_SYNTAX_EGREP;
|
||||
-
|
||||
if (!compile_pattern (&info->dir_buf, dir_regex) ||
|
||||
!compile_pattern (&info->warn_buf, warn_regex) ||
|
||||
!compile_pattern (&info->err_buf, err_regex)) {
|
||||
@@ -355,8 +329,6 @@ gbf_build_run (GbfMkfileProject *proj
|
||||
return -1;
|
||||
}
|
||||
|
||||
- re_syntax_options = old_options;
|
||||
-
|
||||
g_signal_emit_by_name (G_OBJECT (project), "build_start");
|
||||
|
||||
tmp = g_strjoinv (" ", (char **) argv);
|
26
devel/gnome-build/patches/patch-ac
Normal file
26
devel/gnome-build/patches/patch-ac
Normal file
|
@ -0,0 +1,26 @@
|
|||
$NetBSD: patch-ac,v 1.1.1.1 2007/01/04 02:51:02 rillig Exp $
|
||||
|
||||
Tags: for-upstream
|
||||
|
||||
Did you know that gcc has a -Wformat=2 option?
|
||||
|
||||
--- src/backends/libgbf_mkfile/gbf-mkfile-properties.c.orig 2005-09-22 13:18:46.000000000 +0200
|
||||
+++ src/backends/libgbf_mkfile/gbf-mkfile-properties.c 2007-01-04 03:29:10.000000000 +0100
|
||||
@@ -197,7 +197,7 @@ on_group_widget_destroy (GtkWidget *wid,
|
||||
gbf_mkfile_project_set_group_config (project, group_id, new_config, &err);
|
||||
if (err)
|
||||
{
|
||||
- g_warning (err->message);
|
||||
+ g_warning ("%s", err->message);
|
||||
g_error_free (err);
|
||||
}
|
||||
g_object_unref (table);
|
||||
@@ -290,7 +290,7 @@ on_target_widget_destroy (GtkWidget *wid
|
||||
gbf_mkfile_project_set_target_config (project, target_id, new_config, &err);
|
||||
if (err)
|
||||
{
|
||||
- g_warning (err->message);
|
||||
+ g_warning ("%s", err->message);
|
||||
g_error_free (err);
|
||||
}
|
||||
g_object_unref (table);
|
Loading…
Reference in a new issue