Como corrigir uma compilação ao tentar corrigir o arquivo original?

2

Estou tentando criar um pacote do Bugzilla 4 em um PPA do Launchpad. Continue recebendo um patch malformado e refiz o patch do ground up inúmeras vezes sem sucesso. Um dos logs pode ser visto aqui (é muito longo, por isso ctrl + f para a palavra fail / ed). O erro se refere às seguintes linhas no meu código:

diff -Naur bugzilla-srcdir.orig//Bugzilla.pm bugzilla-srcdir/Bugzilla.pm
--- bugzilla-srcdir.orig//Bugzilla.pm   2010-11-12 10:27:20.664915051 +0100
+++ bugzilla-srcdir/Bugzilla.pm 2010-11-12 10:28:19.721916586 +0100
@@ -144,7 +144,7 @@
        if (!i_am_cgi()
            && grep { $_ eq $script } SHUTDOWNHTML_EXIT_SILENTLY)
        {
-            exit;
+            exit(0);
        }

        # For security reasons, log out users when Bugzilla is down.
@@ -178,7 +178,7 @@
         $template->process("global/message.$extension.tmpl", $vars, $t_output)
             || ThrowTemplateError($template->error);
         print $t_output . "\n";
-        exit;
+        exit(1);
     }
 }

diff -Naur bugzilla-srcdir.orig//chart.cgi bugzilla-srcdir/chart.cgi
--- bugzilla-srcdir.orig//chart.cgi 2010-11-12 10:26:25.625929357 +0100
+++ bugzilla-srcdir/chart.cgi   2010-11-12 10:28:19.721916586 +0100
@@ -79,7 +79,7 @@
if (grep(/^cmd-/, $cgi->param())) {
    my $params = $cgi->canonicalise_query("format", "ctype", "action");
    print $cgi->redirect("query.cgi?format=" . $cgi->param('query_format') .
                                               ($params ? "&$params" : ""));
-    exit;
+    exit(0);
}

my $action = $cgi->param('action');
@@ -102,7 +102,7 @@
if ($action eq "search") {
    my $params = $cgi->canonicalise_query("format", "ctype", "action");
    print $cgi->redirect("buglist.cgi" . ($params ? "?$params" : ""));
-    exit;
+    exit(0);
}

$user->in_group(Bugzilla->params->{"chartgroup"})
@@ -233,9 +233,9 @@
else {
        ThrowUserError('unknown_action', {action => $action});
}

-exit;
+exit(0);

# Find any selected series and return either the first or all of them.
sub getAndValidateSeriesIDs {

Ignore os timestamps, pois usei a fonte de empacotamento do Bugzilla 3.6 no Ubuntu Natty.

    
por Tamer 25.04.2011 / 22:31

1 resposta

2

O patch que você está tentando aplicar na ramificação possui vários fragmentos de patch com espaço em branco incorreto ou contagens de linha. Ambos farão com que o pacote não seja aplicado.

No exemplo acima, o primeiro hunk tem um espaço ausente da maioria das linhas, fazendo com que ele não corresponda à origem. O segundo arquivo tem linhas que não são precedidas por um único espaço, fazendo com que o patch tente & amp; interpretá-lo como informação de patch. Depois que esses erros forem corrigidos, há vários outros para corrigir no patch.

    
por ajmitch 26.04.2011 / 04:46