- update to elfutils-0.56.

- have debug sub-subpackage use external, not internal, elfutils.

CVS patchset: 5863
CVS date: 2002/11/15 18:01:47
This commit is contained in:
jbj 2002-11-15 18:01:47 +00:00
parent 62d158f87b
commit 5e12066479
36 changed files with 465 additions and 2048 deletions

View File

@ -20,6 +20,8 @@
- add error message on glob failure (#76012).
- add _javadir/_javadocdir/_javaclasspath macros.
- fix: bash must have functional libtermcap.so.2.
- update to elfutils-0.56.
- have debug sub-subpackage use external, not internal, elfutils.
4.0.4 -> 4.1:
- loosely wire beecrypt library into rpm.

View File

@ -7,7 +7,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2002-11-12 16:47-0500\n"
"POT-Creation-Date: 2002-11-13 13:25-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 2001-07-24 10:02+0100\n"
"Last-Translator: Milan Kerslager <kerslage@linux.cz>\n"
"Language-Team: Czech <cs@li.org>\n"
@ -725,7 +725,7 @@ msgstr "Nemohu p
msgid "Could not open %s: %s\n"
msgstr "Nemohu otevøít %s: %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr "Nemohu zapsat balíèek: %s\n"
@ -755,7 +755,7 @@ msgstr "Nemohu p
msgid "Unable to write payload to %s: %s\n"
msgstr "Nemohu zapsat payload do %s: %s\n"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "Zapsáno: %s\n"
@ -2169,71 +2169,71 @@ msgstr "zdrojov
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "%s: scriptlet %s selhal (%d), pøeskakuji %s-%s-%s\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr "provedení %s skripletu z %s-%s-%s selhalo, návratový kód: %d\n"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "%s: %s-%s-%s obsahuje %d souborù, test = %d\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, fuzzy, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr "%s: scriptlet %s selhal (%d), pøeskakuji %s-%s-%s\n"
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "Nemohu pøeèíst hlavièku z %s: %s\n"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr "u¾ivatel %s neexistuje - pou¾it u¾ivatel root\n"
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr "skupina %s neexistuje - pou¾ita skupina root\n"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "rozbalování archívu selhalo %s%s: %s\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr " na souboru "
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "nemohu otevøít %s: %s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "%s selhalo\n"
@ -2288,7 +2288,7 @@ msgid "can't query %s: %s\n"
msgstr "nemohu provést dotaz %s: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2622,7 +2622,7 @@ msgstr ""
msgid "found %d source and %d binary packages\n"
msgstr "vytvoøení zdrojového a binárního balíèku z <tar_soubor>"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2657,7 +2657,7 @@ msgstr "nemohu vytvo
msgid "Installing %s\n"
msgstr "øádek: %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 2001-04-05 23:03GMT\n"
"Last-Translator: Claus Hindsgaul <claus_h@image.dk>\n"
"Language-Team: Danish <dansk@klid.dk>\n"
@ -722,7 +722,7 @@ msgstr "Kunne ikke l
msgid "Could not open %s: %s\n"
msgstr "Kunne ikke åbne %s: %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr "Kunne ikke skrive pakke: %s\n"
@ -752,7 +752,7 @@ msgstr "Kunne ikke l
msgid "Unable to write payload to %s: %s\n"
msgstr "Kunne ikke skrive pakkeindhold til %s: %s\n"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "Skrev: %s\n"
@ -2181,72 +2181,72 @@ msgstr "kildepakke indeholder ingen .spec-fil\n"
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "overspringer installation af %s-%s-%s, %%pre-småskript fejlede rc %d\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr ""
"kørsel af småskriptet %s fra %s-%s-%s mislykkedes, afslutningsstatus %d\n"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "pakke: %s-%s-%s filer test = %d\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "Kunne ikke læse hoved fra %s: %s\n"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr "bruger %s eksisterer ikke - bruger root\n"
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr "gruppe %s eksisterer ikke - bruger root\n"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "udpakning af arkiv mislykkedes%s%s: %s\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr " for fil "
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "kunne ikke åbne %s: %s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "%s mislykkedes\n"
@ -2301,7 +2301,7 @@ msgid "can't query %s: %s\n"
msgstr "kunne ikke forespørge %s: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2635,7 +2635,7 @@ msgstr "filen %s kr
msgid "found %d source and %d binary packages\n"
msgstr "fandt %d kilde- og %d binærpakker\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2669,7 +2669,7 @@ msgstr "kunne ikke
msgid "Installing %s\n"
msgstr "Installerer %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -37,7 +37,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 1998-08-03 18:02+02:00\n"
"Last-Translator: Karl Eichwalder <ke@SuSE.DE>\n"
"Language-Team: German <de@li.org>\n"
@ -809,7 +809,7 @@ msgid "Could not open %s: %s\n"
msgstr "Öffnen von %s fehlgeschlagen\n"
# , c-format
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, fuzzy, c-format
msgid "Unable to write package: %s\n"
msgstr "Nicht möglich %s zu schreiben"
@ -844,7 +844,7 @@ msgstr "Nicht m
msgid "Unable to write payload to %s: %s\n"
msgstr "Nicht möglich %s zu schreiben"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr ""
@ -2340,74 +2340,74 @@ msgstr "Anfrage nach Paket, das die Datei <DATEI> besitzt"
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "Fehler: überspringe %s - Übertragung fehlgeschlagen - %s\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr "Ausführung des Skripts fehlgeschlagen"
# FIXME shared, besser: "mit anderen geteilte ..."
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "Paket %s-%s-%s beinhaltet geteilte Dateien\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
# , c-format
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "Nicht möglich %s zu schreiben"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1892
#: lib/psm.c:1897
#, fuzzy, c-format
msgid "group %s does not exist - using root\n"
msgstr "Gruppe %s beinhaltet kein einziges Paket\n"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, fuzzy, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "öffnen von %s fehlgeschlagen: %s\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr ""
# , c-format
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "Öffnen von %s fehlgeschlagen: %s"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "pgp fehlgeschlagen"
@ -2464,7 +2464,7 @@ msgid "can't query %s: %s\n"
msgstr "Fehler: kann %s nicht öffnen\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, fuzzy, c-format
msgid "open of %s failed: %s\n"
@ -2805,7 +2805,7 @@ msgstr ""
msgid "found %d source and %d binary packages\n"
msgstr "Gruppe %s beinhaltet kein einziges Paket\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2840,7 +2840,7 @@ msgstr "Fehler: kann %s nicht
msgid "Installing %s\n"
msgstr "Installiere %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 1998-05-02 21:41:47-0400\n"
"Last-Translator: Raimo Koski <rkoski@pp.weppi.fi>\n"
"Language-Team: Finnish <linux@sot.com>\n"
@ -735,7 +735,7 @@ msgstr "%s:n kirjoitus ei onnistu"
msgid "Could not open %s: %s\n"
msgstr "%s:n avaus epäonnistui\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, fuzzy, c-format
msgid "Unable to write package: %s\n"
msgstr "%s:n kirjoitus ei onnistu"
@ -765,7 +765,7 @@ msgstr "%s:n kirjoitus ei onnistu"
msgid "Unable to write payload to %s: %s\n"
msgstr "%s:n kirjoitus ei onnistu"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr ""
@ -2224,71 +2224,71 @@ msgstr "kysy pakettia, jonka omistuksessa <tiedosto> on"
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "virhe: ohitan %s:n, siirto epäonnistui - %s\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr "skriptin ajo epäonnistui"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "paketti %s-%s-%s sisältää jaettuja tiedostoja\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "%s:n kirjoitus ei onnistu"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1892
#: lib/psm.c:1897
#, fuzzy, c-format
msgid "group %s does not exist - using root\n"
msgstr "ryhmässä %s ei ole paketteja\n"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, fuzzy, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "%s:n avaus ei onnistunut: %s\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr ""
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "en voinut avata %s: %s"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "pgp epäonnistui"
@ -2345,7 +2345,7 @@ msgid "can't query %s: %s\n"
msgstr "virhe: en voi avata %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, fuzzy, c-format
msgid "open of %s failed: %s\n"
@ -2677,7 +2677,7 @@ msgstr ""
msgid "found %d source and %d binary packages\n"
msgstr "ryhmässä %s ei ole paketteja\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2712,7 +2712,7 @@ msgstr "virhe: en voi avata %s\n"
msgid "Installing %s\n"
msgstr "Asennan: %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -757,7 +757,7 @@ msgstr "impossible d'ouvrir: %s\n"
msgid "Could not open %s: %s\n"
msgstr "impossible d'ouvrir: %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, fuzzy, c-format
msgid "Unable to write package: %s\n"
msgstr "impossible d'ouvrir: %s\n"
@ -787,7 +787,7 @@ msgstr "impossible d'ouvrir: %s\n"
msgid "Unable to write payload to %s: %s\n"
msgstr "impossible d'ouvrir: %s\n"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr ""
@ -2264,71 +2264,71 @@ msgstr ""
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr ""
#: lib/psm.c:1196
#: lib/psm.c:1201
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr ""
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "aucun package n'a t spcifi pour l'installation"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "impossible d'ouvrir: %s\n"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1940
#: lib/psm.c:1945
#, fuzzy, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "La construction a chou.\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr ""
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "impossible d'ouvrir: %s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "La construction a chou.\n"
@ -2385,7 +2385,7 @@ msgid "can't query %s: %s\n"
msgstr "impossible d'ouvrir: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, fuzzy, c-format
msgid "open of %s failed: %s\n"
@ -2717,7 +2717,7 @@ msgstr ""
msgid "found %d source and %d binary packages\n"
msgstr ""
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2751,7 +2751,7 @@ msgstr "impossible d'ouvrir: %s\n"
msgid "Installing %s\n"
msgstr ""
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.1\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 2001-01-13 22:31+0100\n"
"Last-Translator: Jesús Bravo Álvarez <jba@pobox.com>\n"
"Language-Team: Galician <trasno@ceu.fi.udc.es>\n"
@ -701,7 +701,7 @@ msgstr ""
msgid "Could not open %s: %s\n"
msgstr ""
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr ""
@ -731,7 +731,7 @@ msgstr ""
msgid "Unable to write payload to %s: %s\n"
msgstr ""
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr ""
@ -2095,70 +2095,70 @@ msgstr ""
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr ""
#: lib/psm.c:1196
#: lib/psm.c:1201
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr ""
#: lib/psm.c:1603
#: lib/psm.c:1608
#, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr ""
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
msgid "Unable to reload signature header\n"
msgstr ""
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr ""
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr ""
#: lib/psm.c:2138
#: lib/psm.c:2143
#, c-format
msgid "%s failed on file %s: %s\n"
msgstr ""
#: lib/psm.c:2141
#: lib/psm.c:2146
#, c-format
msgid "%s failed: %s\n"
msgstr ""
@ -2212,7 +2212,7 @@ msgid "can't query %s: %s\n"
msgstr ""
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2538,7 +2538,7 @@ msgstr ""
msgid "found %d source and %d binary packages\n"
msgstr ""
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
msgid "Failed dependencies:\n"
msgstr ""
@ -2571,7 +2571,7 @@ msgstr ""
msgid "Installing %s\n"
msgstr ""
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 2001-07-12 13:25+0000\n"
"Last-Translator: Richard Allen <ra@hp.is>\n"
"Language-Team: is <kde-isl@mmedia.is>\n"
@ -708,7 +708,7 @@ msgstr "Get ekki lesi
msgid "Could not open %s: %s\n"
msgstr ""
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr "Get ekki ritað í pakka: %s\n"
@ -738,7 +738,7 @@ msgstr "Get ekki lesi
msgid "Unable to write payload to %s: %s\n"
msgstr "Get ekki ritað innihald í %s: %s\n"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "Skrifaði: %s\n"
@ -2121,71 +2121,71 @@ msgstr "pakkinn inniheldur enga .spec skr
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr ""
#: lib/psm.c:1196
#: lib/psm.c:1201
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr ""
#: lib/psm.c:1603
#: lib/psm.c:1608
#, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr ""
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "Get ekki lesið haus úr %s: %s\n"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr ""
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr ""
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "gat ekki opnað %s: %s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "%s brást\n"
@ -2239,7 +2239,7 @@ msgid "can't query %s: %s\n"
msgstr ""
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2566,7 +2566,7 @@ msgstr ""
msgid "found %d source and %d binary packages\n"
msgstr ""
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2600,7 +2600,7 @@ msgstr ""
msgid "Installing %s\n"
msgstr ""
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 1999-12-01 22:49 +JST\n"
"Last-Translator: Kanda Mitsuru <kanda@nn.iij4u.or.jp>\n"
"Language-Team: JRPM <jrpm@linux.or.jp>\n"
@ -751,7 +751,7 @@ msgstr "
msgid "Could not open %s: %s\n"
msgstr "%s のオープンに失敗しました\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, fuzzy, c-format
msgid "Unable to write package: %s\n"
msgstr "パッケージの書き込みに失敗しました: %s"
@ -781,7 +781,7 @@ msgstr "
msgid "Unable to write payload to %s: %s\n"
msgstr "パッケージの書き込みに失敗しました: %s"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "書き込み中: %s\n"
@ -2260,72 +2260,72 @@ msgstr "
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "%s をスキップします - 転送失敗 - %s\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr "スクリプトの実行に失敗"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "パッケージ: %s-%s-%s ファイルテスト = %d\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "アイコンを読むことができません: %s"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, fuzzy, c-format
msgid "user %s does not exist - using root\n"
msgstr "ユーザ %s は存在しません - root を使用します"
#: lib/psm.c:1892
#: lib/psm.c:1897
#, fuzzy, c-format
msgid "group %s does not exist - using root\n"
msgstr "グループ %s は存在しません - root を使用します"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, fuzzy, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "ファイル %s のアーカイブの伸長に失敗 %s%s: %s"
#: lib/psm.c:1941
#: lib/psm.c:1946
#, fuzzy
msgid " on file "
msgstr "ファイル上"
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "%s のオープンに失敗: %s"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "%s 失敗"
@ -2381,7 +2381,7 @@ msgid "can't query %s: %s\n"
msgstr "%s を削除(unlink)できません: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2717,7 +2717,7 @@ msgstr "
msgid "found %d source and %d binary packages\n"
msgstr "%d 個のソースと %d 個のバイナリパッケージが見つかりました\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2751,7 +2751,7 @@ msgstr "%s
msgid "Installing %s\n"
msgstr "%s をインストール中\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.4\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 2002-03-04 17:17+0900\n"
"Last-Translator: Jong-Hoon Ryu <redhat4u@netian.com>\n"
"Language-Team: GNU Translation project <ko@li.org>\n"
@ -715,7 +715,7 @@ msgstr "
msgid "Could not open %s: %s\n"
msgstr "%s(을)를 열 수 없음: %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr "패키지를 작성할 수 없음: %s\n"
@ -745,7 +745,7 @@ msgstr "%s
msgid "Unable to write payload to %s: %s\n"
msgstr "%s에 payload를 작성할 수 없음: %s\n"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "작성: %s\n"
@ -2153,75 +2153,75 @@ msgstr "
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr ""
"%s: %s 스크립틀릿(scriptlet)이 실패했습니다 (%d), %s-%s-%s(을)를 생략합니다\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr ""
"%2$s-%3$s-%4$s의 %1$s 스크립틀릿(scriptlet) 실행에 실패했습니다, 종료 상황 %5"
"$d\n"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "%s: %s-%s-%s에 %d의 파일이 있습니다, 테스트 = %d\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, fuzzy, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
"%s: %s 스크립틀릿(scriptlet)이 실패했습니다 (%d), %s-%s-%s(을)를 생략합니다\n"
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "서명(signature) 헤더를 다시 읽어올 수 없습니다.\n"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr "%s 사용자가 존재하지 않습니다 - root를 이용합니다\n"
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr "%s 그룹이 존재하지 않습니다 - root를 이용합니다\n"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "아카이브를 푸는데 실패함%s%s: %s\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr " 다음 파일의 "
#: lib/psm.c:2138
#: lib/psm.c:2143
#, c-format
msgid "%s failed on file %s: %s\n"
msgstr "%2$s 파일의 %1$s(이)가 실패함: %3$s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, c-format
msgid "%s failed: %s\n"
msgstr "%s(이)가 실패함: %s\n"
@ -2276,7 +2276,7 @@ msgid "can't query %s: %s\n"
msgstr "%s(을)를 질의할 수 없음: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2610,7 +2610,7 @@ msgstr "%s
msgid "found %d source and %d binary packages\n"
msgstr "%d의 소스와 %d의 바이너리 패키지가 검색되었습니다\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2644,7 +2644,7 @@ msgstr "%s(
msgid "Installing %s\n"
msgstr "%s(을)를 설치합니다\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 2001-06-27 12:24+0200\n"
"Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
"Language-Team: Norwegian <no@li.org>\n"
@ -719,7 +719,7 @@ msgstr "Kunne ikke
msgid "Could not open %s: %s\n"
msgstr "Kunne ikke åpne %s: %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr "Kunne ikke skrive pakke: %s\n"
@ -749,7 +749,7 @@ msgstr "Kunne ikke lese \"payload\" fra %s: %s\n"
msgid "Unable to write payload to %s: %s\n"
msgstr "Kunne ikke skrive \"payload\" til %s: %s\n"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "Skrev: %s\n"
@ -2147,71 +2147,71 @@ msgstr "kildepakke inneholder ikke en .spec-fil\n"
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr ""
#: lib/psm.c:1196
#: lib/psm.c:1201
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr ""
#: lib/psm.c:1603
#: lib/psm.c:1608
#, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr ""
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "Kunne ikke åpne spec fil %s: %s\n"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr ""
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr ""
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "klarte ikke å åpne %s: %s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "%s feilet\n"
@ -2266,7 +2266,7 @@ msgid "can't query %s: %s\n"
msgstr "kan ikke spørre på %s: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2595,7 +2595,7 @@ msgstr "fil %s trenger en nyere versjon av RPM\n"
msgid "found %d source and %d binary packages\n"
msgstr "fant %d kilde- og %d binærpakker\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2629,7 +2629,7 @@ msgstr "kan ikke
msgid "Installing %s\n"
msgstr "Installerer %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -8,7 +8,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 1999-05-25 17:00+0100\n"
"Last-Translator: Pawe³ Dziekoñski <pdziekonski@mml.ch.pwr.wroc.pl>\n"
"Language-Team: Polish <pl@li.org>\n"
@ -742,7 +742,7 @@ msgstr "Nie mo
msgid "Could not open %s: %s\n"
msgstr "Nie mo¿na otworzyæ %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, fuzzy, c-format
msgid "Unable to write package: %s\n"
msgstr "Nie mo¿na zapisaæ pakietu: %s"
@ -772,7 +772,7 @@ msgstr "Nie mo
msgid "Unable to write payload to %s: %s\n"
msgstr "Nie mo¿na zapisaæ pakietu: %s"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "Zapisano: %s\n"
@ -2225,71 +2225,71 @@ msgstr "pakiet
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "%s pomijany - transmisja %s nie powiod³a siê\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr "wykonanie skryptu nie powiod³o siê"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "pakiet: %s-%s-%s test plików = %d\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "Nie mo¿na odczytaæ ikony: %s"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, fuzzy, c-format
msgid "user %s does not exist - using root\n"
msgstr "u¿ytkownik %s nie istnieje - u¿yto konta root"
#: lib/psm.c:1892
#: lib/psm.c:1897
#, fuzzy, c-format
msgid "group %s does not exist - using root\n"
msgstr "grupa %s nie istnieje - u¿yto grupy root"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, fuzzy, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "rozpakowanie archiwum nie powiod³o siê %s%s: %s"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr " na pliku "
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "nie mo¿na otworzyæ %s: %s"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "%s nie powiod³o siê"
@ -2345,7 +2345,7 @@ msgid "can't query %s: %s\n"
msgstr "nie mo¿na odwi±zaæ %s: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2678,7 +2678,7 @@ msgstr "plik %s wymaga nowszej wersji RPM\n"
msgid "found %d source and %d binary packages\n"
msgstr "znaleziono %d pakietów ¼ród³owych i %d binarnych\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2712,7 +2712,7 @@ msgstr "nie mo
msgid "Installing %s\n"
msgstr "Instalacja %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 2002-02-14 10:51+0000\n"
"Last-Translator: José Nuno Coelho Sanarra Pires <jncp@rnl.ist.utl.pt>\n"
"Language-Team: pt <morais@kde.org\n"
@ -725,7 +725,7 @@ msgstr "N
msgid "Could not open %s: %s\n"
msgstr "Não consigo aceder ao %s: %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr "Não consegui gravar o pacote: %s\n"
@ -755,7 +755,7 @@ msgstr "N
msgid "Unable to write payload to %s: %s\n"
msgstr "Não consegui escrever o conteúdo de %s: %s\n"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "Gravei: %s\n"
@ -2168,72 +2168,72 @@ msgstr "o pacote de c
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "%s: %s script falhou (%d), a saltar %s-%s-%s\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr ""
"a execução do 'scriptlet' %s do %s-%s-%s falhou com código de erro %d\n"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "%s: %s-%s-%s tem %d ficheiros, teste = %d\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, fuzzy, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr "%s: %s script falhou (%d), a saltar %s-%s-%s\n"
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "Não consegui reler o cabeçalho do assinatura.\n"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr "o utilizador %s não existe - a usar o root\n"
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr "o grupo %s não existe - a usar o root\n"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "a abertura do pacote falhou%s%s: %s\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr " no ficheiro "
#: lib/psm.c:2138
#: lib/psm.c:2143
#, c-format
msgid "%s failed on file %s: %s\n"
msgstr "%s falhou no ficheiro %s: %s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, c-format
msgid "%s failed: %s\n"
msgstr "%s falhou: %s\n"
@ -2288,7 +2288,7 @@ msgid "can't query %s: %s\n"
msgstr "não consigo pesquisar o %s: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2622,7 +2622,7 @@ msgstr "o %s precisa duma vers
msgid "found %d source and %d binary packages\n"
msgstr "encontrados %d pacotes com código-fonte e %d binários\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2656,7 +2656,7 @@ msgstr "n
msgid "Installing %s\n"
msgstr "A instalar o %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -4,7 +4,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8-bit\n"
@ -801,7 +801,7 @@ msgid "Could not open %s: %s\n"
msgstr "No consegui abrir: %s\n"
# , c-format
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, fuzzy, c-format
msgid "Unable to write package: %s\n"
msgstr "No consegui abrir: %s\n"
@ -836,7 +836,7 @@ msgstr "No consegui abrir: %s\n"
msgid "Unable to write payload to %s: %s\n"
msgstr "No consegui abrir: %s\n"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr ""
@ -2352,73 +2352,73 @@ msgstr "pesquise o pacote ao qual <arquivo> pertence"
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr ""
#: lib/psm.c:1196
#: lib/psm.c:1201
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr ""
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "no foi passado pacote para instalao"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
# , c-format
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "No consegui abrir: %s\n"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1940
#: lib/psm.c:1945
#, fuzzy, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "Construo falhou.\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr ""
# , c-format
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "No consegui abrir: %s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "Construo falhou.\n"
@ -2476,7 +2476,7 @@ msgid "can't query %s: %s\n"
msgstr "No consegui abrir: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, fuzzy, c-format
msgid "open of %s failed: %s\n"
@ -2852,7 +2852,7 @@ msgstr ""
msgid "found %d source and %d binary packages\n"
msgstr ""
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2889,7 +2889,7 @@ msgstr "No consegui abrir: %s\n"
msgid "Installing %s\n"
msgstr ""
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 1999-04-10 12:00+EST\n"
"Last-Translator: Cristian Gafton <gafton@redhat.com>\n"
"Language-Team: Romanian <ro@li.org>\n"
@ -701,7 +701,7 @@ msgstr ""
msgid "Could not open %s: %s\n"
msgstr ""
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr ""
@ -731,7 +731,7 @@ msgstr ""
msgid "Unable to write payload to %s: %s\n"
msgstr ""
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr ""
@ -2095,70 +2095,70 @@ msgstr ""
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr ""
#: lib/psm.c:1196
#: lib/psm.c:1201
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr ""
#: lib/psm.c:1603
#: lib/psm.c:1608
#, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr ""
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
msgid "Unable to reload signature header\n"
msgstr ""
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr ""
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr ""
#: lib/psm.c:2138
#: lib/psm.c:2143
#, c-format
msgid "%s failed on file %s: %s\n"
msgstr ""
#: lib/psm.c:2141
#: lib/psm.c:2146
#, c-format
msgid "%s failed: %s\n"
msgstr ""
@ -2212,7 +2212,7 @@ msgid "can't query %s: %s\n"
msgstr ""
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2538,7 +2538,7 @@ msgstr ""
msgid "found %d source and %d binary packages\n"
msgstr ""
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
msgid "Failed dependencies:\n"
msgstr ""
@ -2571,7 +2571,7 @@ msgstr ""
msgid "Installing %s\n"
msgstr ""
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -7,7 +7,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -707,7 +707,7 @@ msgstr ""
msgid "Could not open %s: %s\n"
msgstr ""
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr ""
@ -737,7 +737,7 @@ msgstr ""
msgid "Unable to write payload to %s: %s\n"
msgstr ""
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr ""
@ -2101,70 +2101,70 @@ msgstr ""
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr ""
#: lib/psm.c:1196
#: lib/psm.c:1201
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr ""
#: lib/psm.c:1603
#: lib/psm.c:1608
#, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr ""
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
msgid "Unable to reload signature header\n"
msgstr ""
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr ""
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr ""
#: lib/psm.c:2138
#: lib/psm.c:2143
#, c-format
msgid "%s failed on file %s: %s\n"
msgstr ""
#: lib/psm.c:2141
#: lib/psm.c:2146
#, c-format
msgid "%s failed: %s\n"
msgstr ""
@ -2218,7 +2218,7 @@ msgid "can't query %s: %s\n"
msgstr ""
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2544,7 +2544,7 @@ msgstr ""
msgid "found %d source and %d binary packages\n"
msgstr ""
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
msgid "Failed dependencies:\n"
msgstr ""
@ -2577,7 +2577,7 @@ msgstr ""
msgid "Installing %s\n"
msgstr ""
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 2002-08-27 13:36-0400\n"
"Last-Translator: Eugene Kanter, <eugene@blackcatlinux.com>\n"
"Language-Team: Black Cat Linux Team <blackcat-support@blackcatlinux.com>\n"
@ -725,7 +725,7 @@ msgstr "
msgid "Could not open %s: %s\n"
msgstr "îÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ %s: %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr "îÅ×ÏÚÍÏÖÎÏ ÚÁÐÉÓÁÔØ ÐÁËÅÔ: %s\n"
@ -755,7 +755,7 @@ msgstr "
msgid "Unable to write payload to %s: %s\n"
msgstr "îÅ×ÏÚÍÏÖÎÏ ÚÁÐÉÓÁÔØ ÓÏÄÅÒÖÉÍÏÅ × %s: %s\n"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "úÁÐÉÓÁÎ: %s\n"
@ -2143,70 +2143,70 @@ msgstr "
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr "%s: waitpid(%d) rc %d status %x\n"
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr "%s: %s(%s-%s-%s) ÐÒÏÐÕÓËÁÅÔÓÑ ÌÉÛÎÉÊ \"%s\".\n"
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr "%s: %s(%s-%s-%s) %sÚÁÐÕÓË ÓÉÎÈÒÏÎÎÏÇÏ ÓÃÅÎÁÒÉÑ\n"
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
#: lib/psm.c:1190
#: lib/psm.c:1195
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "%s(%s-%s-%s) ÏÛÉÂËÁ ÓÃÅÎÁÒÉÑ, waitpid(%d) rc %d: %s\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr "%s(%s-%s-%s) ÏÛÉÂËÁ ×ÙÐÏÌÎÅÎÉÑ ÓÃÅÎÁÒÉÑ, ËÏÄ ×ÏÚ×ÒÁÔÁ %d\n"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "%s: %s ÓÏÄÅÒÖÉÔ %d ÆÁÊÌÏ×, ÒÅÚÕÌØÔÁÔ ÐÒÏ×ÅÒËÉ: %d\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr "%s: %s ÏÛÉÂËÁ ÓÃÅÎÁÒÉÑ (%d), ÐÒÏÐÕÓËÁÅÔÓÑ %s\n"
#: lib/psm.c:1837
#: lib/psm.c:1842
msgid "Unable to reload signature header\n"
msgstr "îÅ×ÏÚÍÏÖÎÏ ÐÅÒÅÚÁÇÒÕÚÉÔØ ÚÁÇÏÌÏ×ÏË ÐÏÄÐÉÓÉ\n"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr "ÐÏÌØÚÏ×ÁÔÅÌØ %s ÎÅ ÓÕÝÅÓÔ×ÕÅÔ - ÉÓÐÏÌØÚÕÅÔÓÑ root\n"
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr "ÇÒÕÐÐÁ %s ÎÅ ÓÕÝÅÓÔ×ÕÅÔ - ÉÓÐÏÌØÚÕÅÔÓÑ root\n"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "ÒÁÓÐÁËÏ×ËÁ ÁÒÈÉ×Á ÎÅ ÕÄÁÌÁÓØ%s%s: %s\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr " ÎÁ ÆÁÊÌÅ "
#: lib/psm.c:2138
#: lib/psm.c:2143
#, c-format
msgid "%s failed on file %s: %s\n"
msgstr "%s ÏÛÉÂËÁ ÎÁ ÆÁÊÌÅ %s: %s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, c-format
msgid "%s failed: %s\n"
msgstr "%s ÎÅ ÕÄÁÌÏÓØ: %s\n"
@ -2260,7 +2260,7 @@ msgid "can't query %s: %s\n"
msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÚÁÐÒÏÓÉÔØ %s: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2589,7 +2589,7 @@ msgstr "
msgid "found %d source and %d binary packages\n"
msgstr "ÎÁÊÄÅÎÏ %d ÉÓÈÏÄÎÙÈ É %d ÂÉÎÁÒÎÙÈ ÐÁËÅÔÏ×\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
msgid "Failed dependencies:\n"
msgstr "îÅÕÄÏ×ÌÅÔ×ÏÒÅÎÎÙÅ ÚÁ×ÉÓÉÍÏÓÔÉ:\n"
@ -2622,7 +2622,7 @@ msgstr "
msgid "Installing %s\n"
msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr "ïÔËÁÔ ÐÁËÅÔÏ× (+%d/-%d) ÎÁ %-24.24s (0x%08x):\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 1999-04-08 21:37+02:00\n"
"Last-Translator: Stanislav Meduna <stano@eunet.sk>\n"
"Language-Team: Slovak <sk-i18n@rak.isternet.sk>\n"
@ -739,7 +739,7 @@ msgstr "Nie je mo
msgid "Could not open %s: %s\n"
msgstr "Otvorenie %s zlyhalo\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, fuzzy, c-format
msgid "Unable to write package: %s\n"
msgstr "Nie je mo¾né zapísa» balík: %s"
@ -769,7 +769,7 @@ msgstr "Nie je mo
msgid "Unable to write payload to %s: %s\n"
msgstr "Nie je mo¾né zapísa» balík: %s"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "Zapísané: %s\n"
@ -2223,71 +2223,71 @@ msgstr "zdrojov
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "%s vynechané - prenos zlyhal - %s\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr "vykonanie skriptu zlyhalo"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "balík: %s-%s-%s test súborov = %d\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "Nie je mo¾né preèíta» ikonu: %s"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, fuzzy, c-format
msgid "user %s does not exist - using root\n"
msgstr "pou¾ívateµ %s neexistuje - pou¾ije sa root"
#: lib/psm.c:1892
#: lib/psm.c:1897
#, fuzzy, c-format
msgid "group %s does not exist - using root\n"
msgstr "skupina %s neexistuje - pou¾ije sa root"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, fuzzy, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "rozbalenie archívu zlyhalo%s%s: %s"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr " pre súbor "
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "nepodarilo sa otvori» %s: %s"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "%s zlyhalo"
@ -2343,7 +2343,7 @@ msgid "can't query %s: %s\n"
msgstr "zmazanie %s zlyhalo: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, fuzzy, c-format
msgid "open of %s failed: %s\n"
@ -2676,7 +2676,7 @@ msgstr ""
msgid "found %d source and %d binary packages\n"
msgstr "nájdených %d zdrojových a %d binárnych balíkov\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2710,7 +2710,7 @@ msgstr "nie je mo
msgid "Installing %s\n"
msgstr "In¹taluje sa %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,12 +1,12 @@
# -*- mode:po; coding:iso-latin-2; -*- Slovenian messages for Redhat pkg. mngr.
# Copyright (C) 2000 Free Software Foundation, Inc.
# Primo¾ Peterlin <primoz.peterlin@biofiz.mf.uni-lj.si>, 2000.
# $Id: sl.po,v 1.324 2002/11/08 22:27:35 jbj Exp $
# $Id: sl.po,v 1.325 2002/11/15 18:02:19 jbj Exp $
#
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 2000-10-08 19:05+0200\n"
"Last-Translator: Grega Fajdiga <gregor.fajdiga@telemach.net>\n"
"Language-Team: Slovenian <sl@li.org>\n"
@ -738,7 +738,7 @@ msgstr "Ikone %s ni mo
msgid "Could not open %s: %s\n"
msgstr "Ni mo¾no odpreti %s: %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, fuzzy, c-format
msgid "Unable to write package: %s\n"
msgstr "Ni mo¾no zapisati paketa: %s"
@ -768,7 +768,7 @@ msgstr "Ikone %s ni mo
msgid "Unable to write payload to %s: %s\n"
msgstr "Ni mo¾no zapisati paketa %s: %s"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "Zapisano: %s\n"
@ -2223,71 +2223,71 @@ msgstr "izvorni paket ne vsebuje datoteke .spec"
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "preskoèeno - %s - prenos neuspe¹en - %s\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr "skript se ni uspe¹no izvedel"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "paket: %s-%s-%s datoteke test = %d\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "Ikone %s ni mo¾no prebrati: %s"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, fuzzy, c-format
msgid "user %s does not exist - using root\n"
msgstr "uporabnik %s ne obstaja - uporabljam root"
#: lib/psm.c:1892
#: lib/psm.c:1897
#, fuzzy, c-format
msgid "group %s does not exist - using root\n"
msgstr "skupina %s ne obstaja - uporabljam root"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, fuzzy, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "raz¹iritev arhiva je bilo neuspe¹no%s%s: %s"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr " za datoteko "
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "neuspe¹no odpiranje %s: %s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "%s neuspe¹en"
@ -2343,7 +2343,7 @@ msgid "can't query %s: %s\n"
msgstr "ni mo¾no poizvedeti o %s: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2678,7 +2678,7 @@ msgstr "datoteka %s zahteva novej
msgid "found %d source and %d binary packages\n"
msgstr "najdeno %d izvornih in %d binarnih paketov\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2712,7 +2712,7 @@ msgstr "ni mo
msgid "Installing %s\n"
msgstr "Name¹èanje %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=iso-8859-2\n"
"Content-Transfer-Encoding: 8bit\n"
@ -728,7 +728,7 @@ msgstr "Ne mogu da upi
msgid "Could not open %s: %s\n"
msgstr "neuspelo otvaranje %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, fuzzy, c-format
msgid "Unable to write package: %s\n"
msgstr "Ne mogu da upi¹em %s"
@ -758,7 +758,7 @@ msgstr "Ne mogu da upi
msgid "Unable to write payload to %s: %s\n"
msgstr "Ne mogu da upi¹em %s"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr ""
@ -2215,71 +2215,71 @@ msgstr "upit nad paketom koji ima <datoteku>"
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "gre¹ka: preskaèem %s - neuspelo preno¹enje - %s\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr "neuspelo izvr¹avanje skripta"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "paket %s-%s-%s sadr¾i deljene datoteke\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr ""
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "Ne mogu da upi¹em %s"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr ""
#: lib/psm.c:1892
#: lib/psm.c:1897
#, fuzzy, c-format
msgid "group %s does not exist - using root\n"
msgstr "grupa %s ne sadr¾i nijedan paket\n"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, fuzzy, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "neuspelo otvaranje %s: %s\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr ""
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "neuspelo otvaranje %s: %s"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "PGP omanuo"
@ -2336,7 +2336,7 @@ msgid "can't query %s: %s\n"
msgstr "gre¹ka: ne mogu da otvorim %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, fuzzy, c-format
msgid "open of %s failed: %s\n"
@ -2668,7 +2668,7 @@ msgstr ""
msgid "found %d source and %d binary packages\n"
msgstr "grupa %s ne sadr¾i nijedan paket\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2703,7 +2703,7 @@ msgstr "gre
msgid "Installing %s\n"
msgstr "Instaliram %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.1\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 2002-08-19 22:26+0200\n"
"Last-Translator: Göran Uddeborg <goeran@uddeborg.pp.se>\n"
"Language-Team: Swedish <sv@li.org>\n"
@ -716,7 +716,7 @@ msgstr "Kan inte l
msgid "Could not open %s: %s\n"
msgstr "Kunde inte öppna %s: %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr "Kunde inte skriva paket: %s\n"
@ -746,7 +746,7 @@ msgstr "Kan inte l
msgid "Unable to write payload to %s: %s\n"
msgstr "Kan inte skriva last till %s: %s\n"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "Skrev: %s\n"
@ -2126,70 +2126,70 @@ msgstr "k
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "%s: %s-skript misslyckades (%d), hoppar över %s\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr "körning av %s-skript från %s-%s-%s misslyckades, slutstatus %d\n"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "%s: %s har %d filer, test = %d\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr "%s: %s-skript misslyckades (%d), hoppar över %s\n"
#: lib/psm.c:1837
#: lib/psm.c:1842
msgid "Unable to reload signature header\n"
msgstr "Kan inte läsa om signaturhuvud\n"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr "användare %s finns inte - använder root\n"
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr "grupp %s finns inte - använder root\n"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "uppackning av arkiv misslyckades%s%s: %s\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr " vid fil "
#: lib/psm.c:2138
#: lib/psm.c:2143
#, c-format
msgid "%s failed on file %s: %s\n"
msgstr "%s misslyckades på fil %s: %s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, c-format
msgid "%s failed: %s\n"
msgstr "%s misslyckades: %s\n"
@ -2243,7 +2243,7 @@ msgid "can't query %s: %s\n"
msgstr "kan inte fråga %s: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2571,7 +2571,7 @@ msgstr "filen %s beh
msgid "found %d source and %d binary packages\n"
msgstr "hittade %d käll- och %d binärpaket\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
msgid "Failed dependencies:\n"
msgstr "Ouppfyllda beroenden:\n"
@ -2604,7 +2604,7 @@ msgstr "kan inte
msgid "Installing %s\n"
msgstr "Installerar %s\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr "Återställer paket (+%d/-%d) till %-24.24s (0x%08x):\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: rpm 4.0.3\n"
"POT-Creation-Date: 2002-11-08 14:27-0500\n"
"POT-Creation-Date: 2002-11-13 13:20-0500\n"
"PO-Revision-Date: 2001-07-05 08:02+300\n"
"Last-Translator: Nilgun Belma Buguner <nilgun@technologist.com>\n"
"Language-Team: Turkish <tr@li.org>\n"
@ -730,7 +730,7 @@ msgstr "%s'den ba
msgid "Could not open %s: %s\n"
msgstr "%s açýlamadý: %s\n"
#: build/pack.c:629 lib/psm.c:1825
#: build/pack.c:629 lib/psm.c:1830
#, c-format
msgid "Unable to write package: %s\n"
msgstr "paket yazýlamadý: %s\n"
@ -760,7 +760,7 @@ msgstr "%s'den payload okunamad
msgid "Unable to write payload to %s: %s\n"
msgstr "%s'e payload yazýlamadý: %s\n"
#: build/pack.c:710 lib/psm.c:2130
#: build/pack.c:710 lib/psm.c:2135
#, c-format
msgid "Wrote: %s\n"
msgstr "Yazýldý: %s\n"
@ -2187,71 +2187,71 @@ msgstr "kaynak paketi .spec dosyas
msgid "%s: waitpid(%d) rc %d status %x\n"
msgstr ""
#: lib/psm.c:996
#: lib/psm.c:1001
#, c-format
msgid "%s: %s(%s-%s-%s) skipping redundant \"%s\".\n"
msgstr ""
#: lib/psm.c:1004
#: lib/psm.c:1009
#, c-format
msgid "%s: %s(%s-%s-%s) %ssynchronous scriptlet start\n"
msgstr ""
#: lib/psm.c:1167
#: lib/psm.c:1172
#, c-format
msgid "%s: %s(%s-%s-%s)\texecv(%s) pid %d\n"
msgstr ""
#: lib/psm.c:1190
#: lib/psm.c:1195
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, waitpid(%d) rc %d: %s\n"
msgstr "%s: %s betiði baþarýsýz (%d), %s-%s-%s atlanýyor\n"
#: lib/psm.c:1196
#: lib/psm.c:1201
#, fuzzy, c-format
msgid "%s(%s-%s-%s) scriptlet failed, exit status %d\n"
msgstr "%s betiðinin %s-%s-%s'den icrasý baþarýsýz, çýkýþta durum %d\n"
#: lib/psm.c:1603
#: lib/psm.c:1608
#, fuzzy, c-format
msgid "%s: %s has %d files, test = %d\n"
msgstr "%s: %s-%s-%s %d dosya içeriyor, test = %d\n"
#: lib/psm.c:1728
#: lib/psm.c:1733
#, fuzzy, c-format
msgid "%s: %s scriptlet failed (%d), skipping %s\n"
msgstr "%s: %s betiði baþarýsýz (%d), %s-%s-%s atlanýyor\n"
#: lib/psm.c:1837
#: lib/psm.c:1842
#, fuzzy
msgid "Unable to reload signature header\n"
msgstr "%s'den baþlýk okunamadý: %s\n"
#: lib/psm.c:1883
#: lib/psm.c:1888
#, c-format
msgid "user %s does not exist - using root\n"
msgstr "kullanýcý %s yok - root kullanýlacak\n"
#: lib/psm.c:1892
#: lib/psm.c:1897
#, c-format
msgid "group %s does not exist - using root\n"
msgstr "grup %s yok - root kullanýlacak\n"
#: lib/psm.c:1940
#: lib/psm.c:1945
#, c-format
msgid "unpacking of archive failed%s%s: %s\n"
msgstr "arþiv paketi açýlýrken baþarýsýz%s%s: %s\n"
#: lib/psm.c:1941
#: lib/psm.c:1946
msgid " on file "
msgstr " dosyada "
#: lib/psm.c:2138
#: lib/psm.c:2143
#, fuzzy, c-format
msgid "%s failed on file %s: %s\n"
msgstr "%s açýlamadý: %s\n"
#: lib/psm.c:2141
#: lib/psm.c:2146
#, fuzzy, c-format
msgid "%s failed: %s\n"
msgstr "%s baþarýsýz\n"
@ -2306,7 +2306,7 @@ msgid "can't query %s: %s\n"
msgstr "%s sorgulanamýyor: %s\n"
#: lib/query.c:569 lib/query.c:616 lib/rpminstall.c:123 lib/rpminstall.c:458
#: lib/rpminstall.c:589 lib/rpminstall.c:997 lib/rpmts.c:441
#: lib/rpminstall.c:589 lib/rpminstall.c:1002 lib/rpmts.c:441
#: tools/rpmgraph.c:127 tools/rpmgraph.c:164
#, c-format
msgid "open of %s failed: %s\n"
@ -2639,7 +2639,7 @@ msgstr "%s dosyas
msgid "found %d source and %d binary packages\n"
msgstr "%d kaynak ve %d icra edilebilir paketi bulundu\n"
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1217
#: lib/rpminstall.c:631 lib/rpminstall.c:801 lib/rpminstall.c:1227
#: tools/rpmgraph.c:202
#, fuzzy
msgid "Failed dependencies:\n"
@ -2673,7 +2673,7 @@ msgstr "%s a
msgid "Installing %s\n"
msgstr "%s kuruluyor\n"
#: lib/rpminstall.c:1211
#: lib/rpminstall.c:1221
#, c-format
msgid "Rollback packages (+%d/-%d) to %-24.24s (0x%08x):\n"
msgstr ""

View File

@ -16,7 +16,7 @@ Name: rpm
%define version @VERSION@
Version: %{version}
%{expand: %%define rpm_version %{version}}
Release: 0.8
Release: 0.9
Group: System Environment/Base
Source: ftp://ftp.rpm.org/pub/rpm/dist/rpm-4.0.x/rpm-%{rpm_version}.tar.gz
Copyright: GPL
@ -87,6 +87,7 @@ Summary: Python bindings for apps which will manipulate RPM packages.
Group: Development/Libraries
Requires: rpm = %{rpm_version}
Requires: python >= %{with_python_version}
Requires: elfutils >= 0.55
%description python
The rpm-python package contains a module that permits applications
@ -401,10 +402,8 @@ exit 0
%rpmattr %{__prefix}/lib/rpm/rpm[bt]
%rpmattr %{__prefix}/lib/rpm/rpmdeps
%rpmattr %{__prefix}/lib/rpm/striptofile
%rpmattr %{__prefix}/lib/rpm/trpm
%rpmattr %{__prefix}/lib/rpm/u_pkg.sh
%rpmattr %{__prefix}/lib/rpm/unstripfile
%rpmattr %{__prefix}/lib/rpm/vpkg-provides.sh
%rpmattr %{__prefix}/lib/rpm/vpkg-provides2.sh
@ -482,6 +481,10 @@ exit 0
%{__prefix}/include/popt.h
%changelog
* Fri Nov 15 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.9
- update to elfutils-0.56.
- have debug sub-subpackage use external, not internal, elfutils.
* Wed Nov 13 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.8
- fix: bash must have functional libtermcap.so.2.

View File

@ -6,6 +6,7 @@ fi
# Strip ELF binaries
for f in `find $RPM_BUILD_ROOT -type f \( -perm -0100 -or -perm -0010 -or -perm -0001 \) -exec file {} \; | \
grep -v "^${RPM_BUILD_ROOT}/\?usr/lib/debug" | \
grep -v ' shared object,' | \
sed -n -e 's/^\(.*\):[ ]*ELF.*, not stripped/\1/p'`; do
strip -g $f || :

View File

@ -7,6 +7,7 @@ fi
# Strip .comment and .note sections (the latter only if it is not allocated)
# for already stripped elf files in the build root
for f in `find $RPM_BUILD_ROOT -type f \( -perm -0100 -or -perm -0010 -or -perm -0001 \) -exec file {} \; | \
grep -v "^${RPM_BUILD_ROOT}/\?usr/lib/debug" | \
sed -n -e 's/^\(.*\):[ ]*ELF.*, stripped/\1/p'`; do
note="-R .note"
if objdump -h $f | grep '^[ ]*[0-9]*[ ]*.note[ ]' -A 1 | \

View File

@ -11,6 +11,7 @@ fi
# Please note we don't restrict our search to executable files because
# our libraries are not (should not be, at least) +x.
for f in `find $RPM_BUILD_ROOT -type f -a -exec file {} \; | \
grep -v "^${RPM_BUILD_ROOT}/\?usr/lib/debug" | \
grep ' shared object,' | \
sed -n -e 's/^\(.*\):[ ]*ELF.*, not stripped/\1/p'`; do
strip --strip-unneeded $f

View File

@ -9,7 +9,6 @@ fi
LISTFILE=$BUILDDIR/debugfiles.list
SOURCEFILE=$BUILDDIR/debugsources.list
touch $BUILDDIR/.debug_saved_mode
echo -n > $SOURCEFILE
# Strip ELF binaries
@ -19,13 +18,8 @@ for f in `find $RPM_BUILD_ROOT -type f \( -perm -0100 -or -perm -0010 -or -perm
OUTPUTDIR=${RPM_BUILD_ROOT}/usr/lib/debug${BASEDIR}
mkdir -p ${OUTPUTDIR}
echo extracting debug info from $f
#save old mode
chmod --reference=$f $BUILDDIR/.debug_saved_mode
#make sure we have write perms
chmod u+w $f
/usr/lib/rpm/debugedit -b $RPM_BUILD_DIR -d /usr/src/debug -l $SOURCEFILE $f
chmod --reference=$BUILDDIR/.debug_saved_mode $f
/usr/lib/rpm/striptofile -g -u -o $OUTPUTDIR $f || :
eu-strip -f $OUTPUTDIR/`basename $f`.debug $f || :
done
mkdir -p ${RPM_BUILD_ROOT}/usr/src/debug

View File

@ -15,7 +15,7 @@ INCLUDES = -I. \
@INCPATH@ \
-I$(top_srcdir)/misc
EXTRA_DIST = rpminject.c rpmsort.c sections.h utils.h hashtab.h
EXTRA_DIST = rpminject.c rpmsort.c hashtab.h
EXTRA_PROGRAMS = rpminject rpmsort
@ -32,7 +32,7 @@ noinst_PROGRAMS = \
convertdb1 dump dumpdb rpmarchive rpmheader rpmlead rpmsignature
pkgbindir = @RPMCONFIGDIR@
pkgbin_PROGRAMS = debugedit javadeps rpmcache rpmdeps striptofile unstripfile
pkgbin_PROGRAMS = debugedit javadeps rpmcache rpmdeps
bin_PROGRAMS = rpmgraph
@ -56,8 +56,4 @@ rpminject_LDFLAGS = @LDFLAGS_STATIC@
rpmsort_SOURCES = rpmsort.c
rpmsort_LDFLAGS = @LDFLAGS_STATIC@
striptofile_SOURCES = striptofile.c sections.c utils.c
unstripfile_SOURCES = unstripfile.c sections.c utils.c
$(PROGRAMS): $(LDADD)

View File

@ -113,7 +113,7 @@ strptr (DSO *dso, int sec, off_t offset)
if (offset >= 0 && offset < dso->shdr[sec].sh_size)
{
data = NULL;
while ((data = elf_getdata (scn, data)) != NULL)
while ((data = elf_rawdata (scn, data)) != NULL)
{
if (data->d_buf
&& offset >= data->d_off
@ -578,8 +578,8 @@ edit_attributes (DSO *dso, unsigned char *ptr, struct abbrev_tag *t, int phase)
memcpy (dir + dest_len, dir + base_len,
strlen (dir + base_len) + 1);
}
elf_flagdata (debug_sections[DEBUG_STR].elf_data, ELF_C_SET,
ELF_F_DIRTY);
elf_flagdata (debug_sections[DEBUG_STR].elf_data,
ELF_C_SET, ELF_F_DIRTY);
}
}
@ -689,9 +689,9 @@ edit_dwarf2 (DSO *dso, int n)
}
scn = dso->scn[i];
data = elf_getdata (scn, NULL);
data = elf_rawdata (scn, NULL);
assert (data != NULL && data->d_buf != NULL);
assert (elf_getdata (scn, data) == NULL);
assert (elf_rawdata (scn, data) == NULL);
assert (data->d_off == 0);
assert (data->d_size == dso->shdr[i].sh_size);
debug_sections[j].data = data->d_buf;
@ -827,7 +827,6 @@ edit_dwarf2 (DSO *dso, int n)
}
}
elf_flagscn (dso->scn[n], ELF_C_SET, ELF_F_DIRTY);
return 0;
}
@ -850,21 +849,7 @@ fdopen_dso (int fd, const char *name)
int i;
DSO *dso = NULL;
static int section_cmp (const void *A, const void *B)
{
int *a = (int *) A;
int *b = (int *) B;
if (dso->shdr[*a].sh_offset < dso->shdr[*b].sh_offset)
return -1;
if (dso->shdr[*a].sh_offset > dso->shdr[*b].sh_offset)
return 1;
if (*a < *b)
return -1;
return *a > *b;
}
elf = elf_begin (fd, ELF_C_RDWR, NULL);
elf = elf_begin (fd, ELF_C_RDWR_MMAP, NULL);
if (elf == NULL)
{
error (0, 0, "cannot open ELF file: %s", elf_errmsg (-1));
@ -944,6 +929,7 @@ main (int argc, char *argv[])
poptContext optCon; /* context for parsing command-line options */
int nextopt;
const char **args;
struct stat stat_buf;
char *p;
optCon = poptGetContext("debugedit", argc, (const char **)argv,
@ -1013,6 +999,15 @@ main (int argc, char *argv[])
exit (1);
}
if (stat(file, &stat_buf) < 0)
{
fprintf (stderr, "Failed to open input file '%s': %s\n", file, strerror(errno));
exit (1);
}
/* Make sure we can read and write */
chmod (file, stat_buf.st_mode | S_IRUSR | S_IWUSR);
fd = open (file, O_RDWR);
if (fd < 0)
{
@ -1044,9 +1039,20 @@ main (int argc, char *argv[])
}
}
elf_update (dso->elf, ELF_C_WRITE);
elf_end (dso->elf);
if (elf_update (dso->elf, ELF_C_WRITE) < 0)
{
fprintf (stderr, "Failed to write file: %s\n", elf_errmsg (elf_errno()));
exit (1);
}
if (elf_end (dso->elf) < 0)
{
fprintf (stderr, "elf_end failed: %s\n", elf_errmsg (elf_errno()));
exit (1);
}
close (fd);
/* Restore old access rights */
chmod (file, stat_buf.st_mode);
poptFreeContext (optCon);

View File

@ -1,456 +0,0 @@
/* Needed for libelf */
#define _FILE_OFFSET_BITS 64
#include "system.h"
#include "sections.h"
#include "utils.h"
#include "debug.h"
typedef struct {
Elf32_Word debug_section;
Elf32_Word name;
Elf32_Off orig_offset;
} UnstripInfoSection32;
typedef struct {
Elf64_Word debug_section;
Elf64_Word name;
Elf64_Off orig_offset;
} UnstripInfoSection64;
typedef struct {
Elf32_Off orig_e_shoff;
Elf32_Off n_sections;
UnstripInfoSection32 sections[1];
} UnstripInfo32;
typedef struct {
Elf64_Off orig_e_shoff;
Elf64_Off n_sections;
UnstripInfoSection64 sections[1];
} UnstripInfo64;
static uint32_t
elf_32_to_file (uint32_t x, int file_is_little_endian)
{
volatile uint32_t out;
unsigned char *outbytes;
outbytes = (unsigned char *)&out;
if (file_is_little_endian)
{
outbytes[0] = (x >> 0) & 0xff;
outbytes[1] = (x >> 8) & 0xff;
outbytes[2] = (x >> 16) & 0xff;
outbytes[3] = (x >> 24) & 0xff;
}
else /* big endian */
{
outbytes[0] = (x >> 24) & 0xff;
outbytes[1] = (x >> 16) & 0xff;
outbytes[2] = (x >> 8) & 0xff;
outbytes[3] = (x >> 0) & 0xff;
}
return out;
}
static uint64_t
elf_64_to_file (uint64_t x, int file_is_little_endian)
{
volatile uint64_t out;
unsigned char *outbytes;
int i;
outbytes = (unsigned char *)&out;
if (file_is_little_endian)
{
for (i = 0; i < 8; i++)
outbytes[i] = (x >> (8*i)) & 0xff;
}
else /* big endian */
{
for (i = 0; i < 8; i++)
outbytes[7-i] = (x >> (8*i)) & 0xff;
}
return out;
}
static Elf32_Word
word32_to_file (Elf32_Word x, Elf *elf)
{
Elf32_Ehdr *ehdr = elf32_getehdr (elf);
return elf_32_to_file (x, ehdr->e_ident[EI_DATA] & ELFDATA2LSB);
}
static Elf32_Off
off32_to_file (Elf32_Off x, Elf *elf)
{
Elf32_Ehdr *ehdr = elf32_getehdr (elf);
return elf_32_to_file (x, ehdr->e_ident[EI_DATA] & ELFDATA2LSB);
}
static Elf64_Word
word64_to_file (Elf64_Word x, Elf *elf)
{
Elf64_Ehdr *ehdr = elf64_getehdr (elf);
return elf_32_to_file (x, ehdr->e_ident[EI_DATA] & ELFDATA2LSB);
}
static Elf64_Off
off64_to_file (Elf64_Off x, Elf *elf)
{
Elf64_Ehdr *ehdr = elf64_getehdr (elf);
return elf_64_to_file (x, ehdr->e_ident[EI_DATA] & ELFDATA2LSB);
}
static uint32_t
elf_32_from_file (uint32_t x, int file_is_little_endian)
{
unsigned char *inbytes;
inbytes = (unsigned char *)&x;
if (file_is_little_endian)
{
return
(inbytes[0] << 0) |
(inbytes[1] << 8) |
(inbytes[2] << 16) |
(inbytes[3] << 24);
}
else /* big endian */
{
return
(inbytes[0] << 24) |
(inbytes[1] << 16) |
(inbytes[2] << 8) |
(inbytes[3] << 0);
}
}
static uint64_t
elf_64_from_file (uint64_t x, int file_is_little_endian)
{
unsigned char *inbytes;
inbytes = (unsigned char *)&x;
if (file_is_little_endian)
{
return
((uint64_t)inbytes[0] << 0) |
((uint64_t)inbytes[1] << 8) |
((uint64_t)inbytes[2] << 16) |
((uint64_t)inbytes[3] << 24) |
((uint64_t)inbytes[4] << 32) |
((uint64_t)inbytes[5] << 40) |
((uint64_t)inbytes[6] << 48) |
((uint64_t)inbytes[7] << 56);
}
else /* big endian */
{
return
((uint64_t)inbytes[0] << 56) |
((uint64_t)inbytes[1] << 48) |
((uint64_t)inbytes[2] << 40) |
((uint64_t)inbytes[3] << 32) |
((uint64_t)inbytes[4] << 24) |
((uint64_t)inbytes[5] << 16) |
((uint64_t)inbytes[6] << 8) |
((uint64_t)inbytes[7] << 0);
}
}
static Elf32_Word
word32_from_file (Elf32_Word x, Elf *elf)
{
Elf32_Ehdr *ehdr = elf32_getehdr (elf);
return elf_32_from_file (x, ehdr->e_ident[EI_DATA] & ELFDATA2LSB);
}
static Elf32_Off
off32_from_file (Elf32_Off x, Elf *elf)
{
Elf32_Ehdr *ehdr = elf32_getehdr (elf);
return elf_32_from_file (x, ehdr->e_ident[EI_DATA] & ELFDATA2LSB);
}
static Elf64_Word
word64_from_file (Elf64_Word x, Elf *elf)
{
Elf64_Ehdr *ehdr = elf64_getehdr (elf);
return elf_32_from_file (x, ehdr->e_ident[EI_DATA] & ELFDATA2LSB);
}
static Elf64_Off
off64_from_file (Elf64_Off x, Elf *elf)
{
Elf64_Ehdr *ehdr = elf64_getehdr (elf);
return elf_64_from_file (x, ehdr->e_ident[EI_DATA] & ELFDATA2LSB);
}
static void
unstrip_info_to_data32 (UnstripInfo *info,
Elf *elf,
Elf_Data *data)
{
UnstripInfo32 *info32;
int i;
data->d_align = 4;
data->d_size =
/* orig_e_shoff */ sizeof (Elf32_Off) +
/* n_sections */ sizeof (Elf32_Off) +
/* sections */ info->n_sections * sizeof (UnstripInfoSection32);
data->d_buf = calloc (1, data->d_size);
info32 = (UnstripInfo32 *) data->d_buf;
info32->orig_e_shoff = off32_to_file (info->orig_e_shoff, elf);
info32->n_sections = off32_to_file (info->n_sections, elf);
for (i = 0; i < info->n_sections; i++)
{
info32->sections[i].debug_section = word32_to_file (info->sections[i].debug_section, elf);
info32->sections[i].name = word32_to_file (info->sections[i].name, elf);
info32->sections[i].orig_offset = off32_to_file (info->sections[i].orig_offset, elf);
}
}
static void
unstrip_info_to_data64 (UnstripInfo *info,
Elf *elf,
Elf_Data *data)
{
UnstripInfo64 *info64;
int i;
data->d_align = 8;
data->d_size =
/* orig_e_shoff */ sizeof (Elf64_Off) +
/* n_sections */ sizeof (Elf64_Off) +
/* sections */ info->n_sections * sizeof (UnstripInfoSection64);
data->d_buf = calloc (1, data->d_size);
info64 = (UnstripInfo64 *) data->d_buf;
info64->orig_e_shoff = off64_to_file (info->orig_e_shoff, elf);
info64->n_sections = off64_to_file (info->n_sections, elf);
for (i = 0; i < info->n_sections; i++)
{
info64->sections[i].debug_section = word64_to_file (info->sections[i].debug_section, elf);
info64->sections[i].name = word64_to_file (info->sections[i].name, elf);
info64->sections[i].orig_offset = off64_to_file (info->sections[i].orig_offset, elf);
}
}
void
unstrip_info_to_data (UnstripInfo *info,
Elf *elf,
Elf_Data *data)
{
GElf_Ehdr ehdr;
data->d_type = ELF_T_BYTE;
data->d_off = 0;
gelf_getehdr (elf, &ehdr);
if (ehdr.e_ident[EI_CLASS] == ELFCLASS32)
unstrip_info_to_data32 (info, elf, data);
else if (ehdr.e_ident[EI_CLASS] == ELFCLASS64)
unstrip_info_to_data64 (info, elf, data);
else
fprintf (stderr, "Warning. unsupported elf class\n");
}
static void
unstrip_info_from_data32 (UnstripInfo *info,
Elf *elf,
Elf_Data *data)
{
UnstripInfo32 *info32;
int i;
info32 = (UnstripInfo32 *) data->d_buf;
info->orig_e_shoff = off32_from_file (info32->orig_e_shoff, elf);
info->n_sections = off32_from_file (info32->n_sections, elf);
info->sections = calloc (info->n_sections, sizeof (UnstripInfoSection));
for (i = 0; i < info->n_sections; i++)
{
info->sections[i].debug_section = word32_from_file (info32->sections[i].debug_section, elf);
info->sections[i].name = word32_from_file (info32->sections[i].name, elf);
info->sections[i].orig_offset = off32_from_file (info32->sections[i].orig_offset, elf);
}
}
static void
unstrip_info_from_data64 (UnstripInfo *info,
Elf *elf,
Elf_Data *data)
{
UnstripInfo64 *info64;
int i;
info64 = (UnstripInfo64 *) data->d_buf;
info->orig_e_shoff = off64_from_file (info64->orig_e_shoff, elf);
info->n_sections = off64_from_file (info64->n_sections, elf);
info->sections = calloc (info->n_sections, sizeof (UnstripInfoSection));
for (i = 0; i < info->n_sections; i++)
{
info->sections[i].debug_section = word64_from_file (info64->sections[i].debug_section, elf);
info->sections[i].name = word64_from_file (info64->sections[i].name, elf);
info->sections[i].orig_offset = off64_from_file (info64->sections[i].orig_offset, elf);
}
}
UnstripInfo *
unstrip_info_from_data (Elf *elf,
Elf_Data *data)
{
GElf_Ehdr ehdr;
UnstripInfo *info;
info = malloc (sizeof (UnstripInfo));
gelf_getehdr (elf, &ehdr);
if (ehdr.e_ident[EI_CLASS] == ELFCLASS32)
unstrip_info_from_data32 (info, elf, data);
else if (ehdr.e_ident[EI_CLASS] == ELFCLASS64)
unstrip_info_from_data64 (info, elf, data);
else
fprintf (stderr, "Warning. unsupported elf class\n");
return info;
}
static void
debug_link_to_data32 (DebugLink *debuglink,
Elf *elf,
Elf_Data *data)
{
size_t namelen_aligned;
char *p;
data->d_align = 4;
namelen_aligned = align_up (strlen(debuglink->filename) + 1, 4);
data->d_size =
/* name */ namelen_aligned +
/* checksum */ sizeof (Elf32_Word);
data->d_buf = calloc (1, data->d_size);
strcpy (data->d_buf, debuglink->filename);
p = ((char *)data->d_buf) + namelen_aligned;
*(Elf32_Word *)p = word32_to_file (debuglink->checksum, elf);
}
static void
debug_link_to_data64 (DebugLink *debuglink,
Elf *elf,
Elf_Data *data)
{
size_t namelen_aligned;
char *p;
data->d_align = 4;
namelen_aligned = align_up (strlen(debuglink->filename) + 1, 4);
data->d_size =
/* name */ namelen_aligned +
/* checksum */ sizeof (Elf64_Word);
data->d_buf = calloc (1, data->d_size);
strcpy (data->d_buf, debuglink->filename);
p = ((char *)data->d_buf) + namelen_aligned;
*(Elf64_Word *)p = word64_to_file (debuglink->checksum, elf);
}
void
debug_link_to_data (DebugLink *debuglink, Elf *elf, Elf_Data *data)
{
GElf_Ehdr ehdr;
data->d_type = ELF_T_BYTE;
data->d_off = 0;
gelf_getehdr (elf, &ehdr);
if (ehdr.e_ident[EI_CLASS] == ELFCLASS32)
debug_link_to_data32 (debuglink, elf, data);
else if (ehdr.e_ident[EI_CLASS] == ELFCLASS64)
debug_link_to_data64 (debuglink, elf, data);
else
fprintf (stderr, "Warning. unsupported elf class\n");
}
static void
debug_link_from_data32 (DebugLink *debuglink,
Elf *elf,
Elf_Data *data)
{
size_t namelen_aligned;
char *p;
debuglink->filename = strdup (data->d_buf);
namelen_aligned = align_up (strlen (debuglink->filename) + 1, 4);
p = ((char *)data->d_buf) + namelen_aligned;
debuglink->checksum = word32_from_file (*(Elf32_Word *)p, elf);
}
static void
debug_link_from_data64 (DebugLink *debuglink,
Elf *elf,
Elf_Data *data)
{
size_t namelen_aligned;
char *p;
debuglink->filename = strdup (data->d_buf);
namelen_aligned = align_up (strlen (debuglink->filename) + 1, 4);
p = ((char *)data->d_buf) + namelen_aligned;
debuglink->checksum = word64_from_file (*(Elf64_Word *)p, elf);
}
DebugLink *
debug_link_from_data (Elf *elf, Elf_Data *data)
{
GElf_Ehdr ehdr;
DebugLink *debuglink;
debuglink = malloc (sizeof (DebugLink));
gelf_getehdr (elf, &ehdr);
if (ehdr.e_ident[EI_CLASS] == ELFCLASS32)
debug_link_from_data32 (debuglink, elf, data);
else if (ehdr.e_ident[EI_CLASS] == ELFCLASS64)
debug_link_from_data64 (debuglink, elf, data);
else
fprintf (stderr, "Warning. unsupported elf class\n");
return debuglink;
}

View File

@ -1,31 +0,0 @@
#ifndef SECTIONS_H
#define SECTIONS_H
#include <gelf.h>
typedef struct {
GElf_Word debug_section; /* Section index in debug file. */
GElf_Word name; /* offset in original/debug-file shstrtab */
GElf_Off orig_offset;
} UnstripInfoSection;
typedef struct {
GElf_Off orig_e_shoff;
GElf_Off n_sections;
UnstripInfoSection *sections;
} UnstripInfo;
typedef struct {
char *filename;
GElf_Word checksum;
} DebugLink;
#define DEBUGLINKNAME ".gnu_debuglink"
#define UNSTRIPINFONAME ".gnu_unstripinfo"
void debug_link_to_data (DebugLink *debuglink, Elf *elf, Elf_Data *data);
DebugLink *debug_link_from_data (Elf *elf, Elf_Data *data);
void unstrip_info_to_data (UnstripInfo *info, Elf *elf, Elf_Data *data);
UnstripInfo *unstrip_info_from_data (Elf *elf, Elf_Data *data);
#endif /* SECTIONS_H */

View File

@ -1,539 +0,0 @@
/* Needed for libelf */
#define _FILE_OFFSET_BITS 64
#include "system.h"
#include <elf.h>
#include <libelf.h>
#include <gelf.h>
#include <popt.h>
#include "sections.h"
#include "utils.h"
#include "debug.h"
char *output_dir = NULL;
int keep_strtab = 0;
int keep_all_section_headers = 1;
int add_unstrip_info = 0;
#if defined(NhUNUSED)
static void
copy_to_file(Elf *elf, Elf *out_elf)
{
GElf_Ehdr ehdr;
GElf_Phdr phdr;
Elf_Scn *section, *out_section;
GElf_Shdr section_header;
Elf_Data *data, *out_data;
int i;
elf_flagelf (out_elf, ELF_C_SET, ELF_F_LAYOUT);
gelf_getehdr (elf, &ehdr);
/* copy elf header: */
gelf_newehdr(out_elf, ehdr.e_ident[EI_CLASS]);
ehdr.e_phnum = 0;
gelf_update_ehdr (out_elf, &ehdr);
section = NULL;
while ((section = elf_nextscn(elf, section)) != NULL)
{
out_section = elf_newscn(out_elf);
/* Copy section header */
gelf_getshdr (section, &section_header);
gelf_update_shdr(out_section, &section_header);
/* Copy data */
data = NULL;
while ((data = elf_rawdata (section, data)))
{
out_data = elf_newdata (out_section);
out_data->d_buf = data->d_buf;
out_data->d_type = data->d_type;
out_data->d_size = data->d_size;
out_data->d_off = data->d_off;
out_data->d_align = section_header.sh_addralign;
out_data->d_version = data->d_version;
}
}
}
#endif
static void
strip_to_file(Elf *elf, Elf *out_elf, DebugLink *debuglink)
{
GElf_Ehdr ehdr;
GElf_Ehdr out_ehdr;
GElf_Phdr phdr;
Elf_Scn *section, *out_section;
GElf_Shdr section_header;
Elf_Data *data, *out_data;
unsigned char *section_strtab;
size_t *section_map;
int keep_section;
int changed_offsets;
GElf_Off last_offset;
int i;
int debuglink_name = 0;
elf_flagelf (out_elf, ELF_C_SET, ELF_F_LAYOUT);
gelf_getehdr (elf, &ehdr);
/* copy elf header: */
gelf_newehdr(out_elf, ehdr.e_ident[EI_CLASS]);
gelf_update_ehdr(out_elf, &ehdr);
section_map = calloc(ehdr.e_shnum, sizeof (size_t));
/* Locate section header strtab */
section = elf_getscn(elf, ehdr.e_shstrndx);
data = elf_getdata(section, NULL);
section_strtab = data->d_buf;
/* Copy program headers: */
gelf_newphdr(out_elf, ehdr.e_phnum);
for (i = 0; i < ehdr.e_phnum; i++)
{
gelf_getphdr (elf, i, &phdr);
gelf_update_phdr (out_elf, i, &phdr);
}
/* Copy section headers */
changed_offsets = 0;
last_offset = 0;
section = NULL;
while ((section = elf_nextscn(elf, section)) != NULL)
{
char *section_name;
gelf_getshdr (section, &section_header);
section_name = section_strtab + section_header.sh_name;
keep_section =
!string_has_prefix (section_name, ".stab") &&
!string_has_prefix (section_name, ".debug") &&
(keep_strtab ||
(!keep_strtab &&
!string_has_prefix (section_name, ".symtab") &&
!string_has_prefix (section_name, ".strtab")));
if (keep_section)
{
out_section = elf_newscn(out_elf);
section_map[elf_ndxscn(section)] = elf_ndxscn(out_section);
/* Update offset if necessary */
if (changed_offsets)
section_header.sh_offset = align_up (last_offset, section_header.sh_addralign);
/* Copy data */
data = NULL;
out_data = NULL;
while ((data = elf_rawdata (section, data)))
{
out_data = elf_newdata(out_section);
/* Add ".debuglink" to section header strtab */
if (ehdr.e_shstrndx == elf_ndxscn(section))
{
out_data->d_size = data->d_size + strlen (DEBUGLINKNAME) + 1;
out_data->d_buf = malloc (out_data->d_size);
memcpy (out_data->d_buf, data->d_buf, data->d_size);
strcpy (out_data->d_buf + data->d_size, DEBUGLINKNAME);
section_header.sh_size = MAX (section_header.sh_size, out_data->d_off + out_data->d_size);
changed_offsets = 1;
debuglink_name = data->d_size;
}
else
{
out_data->d_buf = data->d_buf;
out_data->d_size = data->d_size;
}
out_data->d_off = data->d_off;
out_data->d_type = data->d_type;
out_data->d_align = section_header.sh_addralign;
out_data->d_version = data->d_version;
}
last_offset = section_header.sh_offset + section_header.sh_size;
/* Write section header */
gelf_update_shdr(out_section, &section_header);
}
else
changed_offsets = 1;
}
/* Add debuglink section header */
out_section = elf_newscn(out_elf);
section_header.sh_name = debuglink_name;
section_header.sh_type = SHT_PROGBITS;
section_header.sh_flags = 0;
section_header.sh_addr = 0;
section_header.sh_addralign = 4;
section_header.sh_offset = align_up (last_offset, section_header.sh_addralign);
section_header.sh_size = 0;
section_header.sh_link = 0;
section_header.sh_info = 0;
section_header.sh_entsize = 0;
out_data = elf_newdata(out_section);
debug_link_to_data (debuglink, elf, out_data);
section_header.sh_size = out_data->d_size;
last_offset = section_header.sh_offset + section_header.sh_size;
gelf_update_shdr(out_section, &section_header);
/* Update section header stringtab ref */
gelf_getehdr (out_elf, &out_ehdr);
out_ehdr.e_shstrndx = section_map[out_ehdr.e_shstrndx];
out_ehdr.e_shoff = align_up (last_offset, 8);
gelf_update_ehdr(out_elf, &out_ehdr);
/* Update section header links */
out_section = NULL;
while ((out_section = elf_nextscn(out_elf, out_section)) != NULL)
{
gelf_getshdr (out_section, &section_header);
section_header.sh_link = section_map[section_header.sh_link];
if (section_header.sh_type == SHT_REL ||
section_header.sh_type == SHT_RELA)
section_header.sh_info = section_map[section_header.sh_info];
gelf_update_shdr(out_section, &section_header);
}
}
static void
copy_debuginfo_to_file(Elf *elf, Elf *out_elf)
{
GElf_Ehdr ehdr;
Elf_Scn *section, *out_section;
GElf_Shdr section_header;
GElf_Shdr out_section_header;
Elf_Data *data, *out_data;
GElf_Phdr phdr;
unsigned char *section_strtab;
int keep_section;
UnstripInfo *info;
int unstripinfo_name = 0;
int i;
info = malloc (sizeof (UnstripInfo));
if (gelf_getehdr (elf, &ehdr) == NULL)
{
fprintf (stderr, "Not an elf binary, exiting\n");
exit (1);
}
gelf_newehdr(out_elf, ehdr.e_ident[EI_CLASS]);
/* copy elf header: */
gelf_update_ehdr(out_elf, &ehdr);
info->orig_e_shoff = ehdr.e_shoff;
info->n_sections = ehdr.e_shnum;
info->sections = calloc (info->n_sections, sizeof (UnstripInfoSection));
/* Locate section header strtab */
section = elf_getscn(elf, ehdr.e_shstrndx);
data = elf_getdata(section, NULL);
section_strtab = data->d_buf;
/* Copy section headers */
section = NULL;
while ((section = elf_nextscn(elf, section)) != NULL)
{
char *section_name;
size_t section_index;
GElf_Off last_offset;
gelf_getshdr (section, &section_header);
section_index = elf_ndxscn(section);
info->sections[section_index].name = section_header.sh_name;
info->sections[section_index].orig_offset = section_header.sh_offset;
info->sections[section_index].debug_section = 0;
section_name = section_strtab + section_header.sh_name;
keep_section =
string_has_prefix (section_name, ".stab") ||
string_has_prefix (section_name, ".debug") ||
string_has_prefix (section_name, ".symtab") ||
string_has_prefix (section_name, ".strtab") ||
section_index == ehdr.e_shstrndx;
if (keep_section)
{
out_section = elf_newscn(out_elf);
info->sections[section_index].debug_section = elf_ndxscn(out_section);
memset (&out_section_header, 0, sizeof(out_section_header));
out_section_header.sh_name = section_header.sh_name;
out_section_header.sh_type = section_header.sh_type;
out_section_header.sh_flags = section_header.sh_flags;
out_section_header.sh_addr = section_header.sh_addr;
out_section_header.sh_offset = section_header.sh_offset;
out_section_header.sh_size = section_header.sh_size;
out_section_header.sh_link = section_header.sh_link;
out_section_header.sh_info = section_header.sh_info;
out_section_header.sh_addralign = section_header.sh_addralign;
out_section_header.sh_entsize = section_header.sh_entsize;
gelf_update_shdr(out_section, &out_section_header);
/* Copy data */
data = NULL;
last_offset = 0;
while ((data = elf_rawdata (section, data)))
{
out_data = elf_newdata(out_section);
if (ehdr.e_shstrndx == elf_ndxscn(section))
{
out_data->d_size = data->d_size + strlen (UNSTRIPINFONAME) + 1;
out_data->d_buf = malloc (out_data->d_size);
memcpy (out_data->d_buf, data->d_buf, data->d_size);
strcpy (out_data->d_buf + data->d_size, UNSTRIPINFONAME);
unstripinfo_name = data->d_size;
}
else
{
out_data->d_buf = data->d_buf;
out_data->d_size = data->d_size;
}
out_data->d_off = data->d_off;
out_data->d_type = data->d_type;
out_data->d_align = section_header.sh_addralign;
out_data->d_version = data->d_version;
}
}
else if (keep_all_section_headers)
{
out_section = elf_newscn(out_elf);
info->sections[section_index].debug_section = 0;
section_header.sh_type = SHT_NOBITS;
gelf_update_shdr(out_section, &section_header);
if ((data = elf_rawdata (section, data)))
{
out_data = elf_newdata(out_section);
out_data->d_buf = NULL;
out_data->d_size = data->d_size;
out_data->d_off = data->d_off;
out_data->d_type = data->d_type;
out_data->d_align = section_header.sh_addralign;
out_data->d_version = data->d_version;
}
}
}
/* Add unlinkinfo section header */
if (add_unstrip_info)
{
out_section = elf_newscn(out_elf);
section_header.sh_name = unstripinfo_name;
section_header.sh_type = SHT_PROGBITS;
section_header.sh_flags = 0;
section_header.sh_addr = 0;
section_header.sh_addralign = 4;
section_header.sh_link = 0;
section_header.sh_info = 0;
section_header.sh_entsize = 0;
out_data = elf_newdata(out_section);
unstrip_info_to_data (info, elf, out_data);
gelf_update_shdr(out_section, &section_header);
}
/* Update section header stringtab ref */
gelf_getehdr (out_elf, &ehdr);
ehdr.e_shstrndx = info->sections[ehdr.e_shstrndx].debug_section;
gelf_update_ehdr(out_elf, &ehdr);
/* Update section header links */
out_section = NULL;
while ((out_section = elf_nextscn(out_elf, out_section)) != NULL)
{
gelf_getshdr (out_section, &out_section_header);
out_section_header.sh_link = info->sections[out_section_header.sh_link].debug_section;
gelf_update_shdr(out_section, &out_section_header);
}
}
static struct poptOption optionsTable[] = {
{ "output-dir", 'o', POPT_ARG_STRING, &output_dir, 0,
"directory to store result", "/usr/lib/debug" },
{ "strip-debug", 'g', POPT_ARG_NONE, &keep_strtab, 0,
"Remove debugging symbols only, keep symbols", 0 },
{ "unstrip-info", 'u', POPT_ARG_NONE, &add_unstrip_info, 0,
"Add unstripping information to the debug file", 0 },
POPT_AUTOHELP
{ NULL, 0, 0, NULL, 0 }
};
int
main (int argc, char *argv[])
{
Elf *elf, *out_elf;
int fd, out;
const char *origname;
char *origname_base;
char *debugname, *strippedname;
DebugLink *debuglink;
poptContext optCon; /* context for parsing command-line options */
int nextopt;
const char **args;
struct stat stat_buf;
optCon = poptGetContext("striptofile", argc, (const char **)argv,
optionsTable, 0);
while ((nextopt = poptGetNextOpt (optCon)) > 0 || nextopt == POPT_ERROR_BADOPT)
/* do nothing */ ;
if (nextopt != -1)
{
fprintf (stderr, "Error on option %s: %s.\nRun '%s --help' to see a full list of available command line options.\n",
poptBadOption (optCon, 0),
poptStrerror (nextopt),
argv[0]);
exit (1);
}
args = poptGetArgs (optCon);
if (args == NULL || args[0] == NULL || args[1] != NULL)
{
poptPrintHelp(optCon, stdout, 0);
exit (1);
}
origname = args[0];
if (output_dir)
{
origname_base = path_basename (origname);
debugname = strconcat (output_dir, "/", origname_base, ".debug", NULL);
free (origname_base);
}
else
debugname = strconcat (origname, ".debug", NULL);
strippedname = strconcat (origname, ".XXXXXX", NULL);
if (elf_version(EV_CURRENT) == EV_NONE)
{
fprintf (stderr, "library out of date\n");
exit (1);
}
fd = open (origname, O_RDONLY);
if (fd < 0)
{
fprintf (stderr, "Failed to open input file: %s\n", origname);
exit (1);
}
elf = elf_begin (fd, ELF_C_READ, NULL);
if (elf == NULL)
{
fprintf (stderr, "Failed to elf_begin input file: %s\n", origname);
exit (1);
}
/* Create debug file: */
out = open (debugname, O_RDWR | O_TRUNC | O_CREAT, 0644);
if (out < 0)
{
fprintf (stderr, "Failed to open output file: %s\n", debugname);
exit (1);
}
out_elf = elf_begin (out, ELF_C_WRITE_MMAP, NULL);
if (out_elf == NULL)
{
fprintf (stderr, "Failed to elf_begin output file: %s\n", debugname);
exit (1);
}
copy_debuginfo_to_file (elf, out_elf);
if (elf_update (out_elf, ELF_C_WRITE) < 0)
{
fprintf (stderr, "Failed to write debug file: %s\n", elf_errmsg (elf_errno()));
exit (1);
}
elf_end (out_elf);
close (out);
debuglink = malloc (sizeof (DebugLink));
debuglink->filename = path_basename (debugname);
debuglink->checksum = crc32_file (debugname);
/* Create stripped file: */
out = mkstemp (strippedname);
if (out < 0)
{
fprintf (stderr, "Failed to open output file: %s\n", strippedname);
exit (1);
}
/* Copy access rights */
if (fstat(fd, &stat_buf) == 0)
fchmod(out, stat_buf.st_mode);
out_elf = elf_begin (out, ELF_C_WRITE, NULL);
if (out_elf == NULL)
{
fprintf (stderr, "Failed to elf_begin output file: %s\n", strippedname);
exit (1);
}
strip_to_file (elf, out_elf, debuglink);
if (elf_update (out_elf, ELF_C_WRITE) < 0)
{
fprintf (stderr, "Failed to write stripped file: %s\n", elf_errmsg (elf_errno()));
exit (1);
}
elf_end (out_elf);
close (out);
elf_end (elf);
close (fd);
if (rename (strippedname, origname) != 0)
fprintf(stderr, "unable to write to %s\n", origname);
unlink (strippedname);
poptFreeContext (optCon);
return 0;
}

View File

@ -1,369 +0,0 @@
/* Needed for libelf */
#define _FILE_OFFSET_BITS 64
#include "system.h"
#include <elf.h>
#include <libelf.h>
#include <gelf.h>
#include "sections.h"
#include "utils.h"
#include "debug.h"
static DebugLink *
read_debuglink (Elf *elf)
{
GElf_Ehdr ehdr;
Elf_Scn *section;
GElf_Shdr section_header;
Elf_Data *data;
unsigned char *section_strtab;
if (gelf_getehdr (elf, &ehdr) == NULL)
{
printf ("Not an elf binary, exiting\n");
exit (1);
}
/* Locate section header strtab */
section = elf_getscn (elf, ehdr.e_shstrndx);
data = elf_getdata (section, NULL);
section_strtab = data->d_buf;
section = NULL;
while ((section = elf_nextscn (elf, section)) != NULL)
{
char *section_name;
gelf_getshdr (section, &section_header);
section_name = section_strtab + section_header.sh_name;
if (strcmp (section_name, DEBUGLINKNAME) == 0)
{
data = elf_rawdata (section, NULL);
return debug_link_from_data (elf, data);
}
}
return NULL;
}
static Elf_Scn *
find_section (Elf *elf, const unsigned char *name, const unsigned char *strtab)
{
Elf_Scn *section;
GElf_Shdr section_header;
const unsigned char *section_name;
section = NULL;
while ((section = elf_nextscn (elf, section)) != NULL)
{
gelf_getshdr (section, &section_header);
section_name = strtab + section_header.sh_name;
if (strcmp (section_name, name) == 0)
break;
}
return section;
}
static size_t
find_in_strtab (char *name, char *strtab, size_t strtab_len)
{
int name_len, i;
name_len = strlen (name);
for (i = 0; i < strtab_len - (name_len + 1); i++)
if (strcmp (strtab+i, name) == 0)
return i;
return 0;
}
static void
unstrip_file (Elf *elf, Elf *debug_elf, Elf *out_elf)
{
UnstripInfo *info;
GElf_Ehdr ehdr, debug_ehdr;
GElf_Phdr phdr;
GElf_Shdr section_header;
Elf_Scn *section, *out_section;
Elf_Data *data, *out_data;
unsigned char *section_strtab;
size_t section_strtab_len;
unsigned char *debug_section_strtab;
size_t debug_section_strtab_len;
size_t *debug_section_map;
size_t *stripped_section_map;
char *section_name;
int i;
size_t new_strtab_index;
elf_flagelf (out_elf, ELF_C_SET, ELF_F_LAYOUT);
gelf_getehdr (elf, &ehdr);
if (gelf_getehdr (debug_elf, &debug_ehdr) == NULL)
{
printf ("debug file not an elf binary, exiting\n");
exit (1);
}
/* copy elf header: */
gelf_newehdr (out_elf, ehdr.e_ident[EI_CLASS]);
gelf_update_ehdr (out_elf, &ehdr);
/* Copy program headers: */
gelf_newphdr (out_elf, ehdr.e_phnum);
for (i = 0; i < ehdr.e_phnum; i++)
{
gelf_getphdr (elf, i, &phdr);
gelf_update_phdr(out_elf, i, &phdr);
}
/* Locate section header strtabs */
section = elf_getscn (elf, ehdr.e_shstrndx);
data = elf_getdata (section, NULL);
section_strtab = data->d_buf;
section_strtab_len = data->d_size;
section = elf_getscn (debug_elf, debug_ehdr.e_shstrndx);
data = elf_getdata (section, NULL);
debug_section_strtab = data->d_buf;
debug_section_strtab_len = data->d_size;
/* Read unlinkinfo */
info = NULL;
section = find_section (debug_elf, UNSTRIPINFONAME, debug_section_strtab);
if (section)
{
data = elf_rawdata (section, NULL);
info = unstrip_info_from_data (elf, data);
}
if (info == NULL)
{
printf ("Can't find unstrip info in debug file\n");
exit (1);
}
/* Construct backward section index maps */
debug_section_map = calloc (info->n_sections, sizeof (size_t));
for (i = 0; i < info->n_sections; i++)
{
if (info->sections[i].debug_section > 0)
debug_section_map[info->sections[i].debug_section] = i;
}
stripped_section_map = calloc (ehdr.e_shnum, sizeof (size_t));
section = NULL;
while ((section = elf_nextscn(elf, section)) != NULL)
{
gelf_getshdr (section, &section_header);
section_name = section_strtab + section_header.sh_name;
for (i = 0; i < info->n_sections; i++)
{
char *debug_section_name;
debug_section_name = debug_section_strtab + info->sections[i].name;
/* If section name is same as an original section, and the original
* section is not in debugfile, use this section */
if (info->sections[i].debug_section == 0 &&
strcmp (debug_section_name, section_name) == 0)
{
stripped_section_map[elf_ndxscn(section)] = i;
break;
}
}
}
/* combine sections */
new_strtab_index = 0;
for (i = 0; i < info->n_sections; i++)
{
if (info->sections[i].debug_section != 0)
{
section = elf_getscn(debug_elf, info->sections[i].debug_section);
out_section = elf_newscn(out_elf);
/* Copy section header */
gelf_getshdr (section, &section_header);
section_header.sh_offset = info->sections[i].orig_offset;
section_header.sh_link = debug_section_map[section_header.sh_link];
if (section_header.sh_type == SHT_REL ||
section_header.sh_type == SHT_RELA)
section_header.sh_info = stripped_section_map[section_header.sh_info];
/* Copy data */
data = NULL;
while ((data = elf_rawdata (section, data)))
{
out_data = elf_newdata (out_section);
/* TODO: remove .unstripinfo for shstrtab */
out_data->d_buf = data->d_buf;
out_data->d_type = data->d_type;
out_data->d_size = data->d_size;
if (debug_ehdr.e_shstrndx == info->sections[i].debug_section)
{
new_strtab_index = i;
if (strcmp (data->d_buf + data->d_size - (strlen(UNSTRIPINFONAME) + 1), UNSTRIPINFONAME) == 0)
{
out_data->d_size -= strlen(UNSTRIPINFONAME) + 1;
section_header.sh_size = out_data->d_size;
}
}
out_data->d_off = data->d_off;
out_data->d_align = section_header.sh_addralign;
out_data->d_version = data->d_version;
}
gelf_update_shdr(out_section, &section_header);
}
else
{
section_name = debug_section_strtab + info->sections[i].name;
section = find_section (elf, section_name, section_strtab);
if (section)
{
out_section = elf_newscn(out_elf);
/* Copy section header */
gelf_getshdr (section, &section_header);
section_header.sh_offset = info->sections[i].orig_offset;
section_header.sh_link = stripped_section_map[section_header.sh_link];
if (section_header.sh_type == SHT_REL ||
section_header.sh_type == SHT_RELA)
section_header.sh_info = stripped_section_map[section_header.sh_info];
section_header.sh_name = find_in_strtab (section_name, debug_section_strtab, debug_section_strtab_len);
gelf_update_shdr (out_section, &section_header);
/* Copy data */
data = NULL;
while ((data = elf_rawdata (section, data)))
{
out_data = elf_newdata (out_section);
out_data->d_buf = data->d_buf;
out_data->d_type = data->d_type;
out_data->d_size = data->d_size;
out_data->d_off = data->d_off;
out_data->d_align = section_header.sh_addralign;
out_data->d_version = data->d_version;
}
}
}
}
gelf_getehdr (out_elf, &ehdr);
ehdr.e_shstrndx = new_strtab_index;
ehdr.e_shoff = info->orig_e_shoff;
gelf_update_ehdr (out_elf, &ehdr);
}
int
main (int argc, char *argv[])
{
Elf *elf, *debug_elf, *out_elf;
int fd, debug_fd, out;
char *origname, *unstrippedname;
DebugLink *debuglink;
if (elf_version(EV_CURRENT) == EV_NONE)
{
printf ("library out of date\n");
exit (1);
}
if (argc != 2)
{
printf ("usage: unstriptofile filename\n");
exit (1);
}
origname = argv[1];
fd = open (origname, O_RDONLY);
if (fd < 0)
{
printf ("Failed to open input file\n");
exit (1);
}
elf = elf_begin (fd, ELF_C_READ, NULL);
if (elf == NULL)
{
printf ("Failed to elf_begin input file\n");
exit (1);
}
debuglink = read_debuglink (elf);
if (debuglink == NULL)
{
printf ("Cannot find .debuglink section in input file\n");
exit (1);
}
if (debuglink->checksum != crc32_file (debuglink->filename))
{
printf ("Invalid checksum for debug file. File has been modified.\n");
exit (1);
}
debug_fd = open (debuglink->filename, O_RDONLY);
if (debug_fd < 0)
{
printf ("Failed to open debug file\n");
exit (1);
}
debug_elf = elf_begin (debug_fd, ELF_C_READ, NULL);
if (debug_elf == NULL)
{
printf ("Failed to elf_begin debug file\n");
exit (1);
}
unstrippedname = malloc (strlen (origname) + strlen (".unstripped") + 1);
strcpy (unstrippedname, origname);
strcat (unstrippedname, ".unstripped");
out = open (unstrippedname, O_RDWR | O_TRUNC | O_CREAT, 0644);
if (out < 0)
{
printf ("Failed to open output file\n");
exit (1);
}
out_elf = elf_begin (out, ELF_C_WRITE, NULL);
if (out_elf == NULL)
{
printf ("Failed to elf_begin output file\n");
exit (1);
}
unstrip_file (elf, debug_elf, out_elf);
elf_update (out_elf, ELF_C_WRITE);
elf_end (out_elf);
close (out);
elf_end (debug_elf);
close (debug_fd);
elf_end (elf);
close (fd);
return 0;
}

View File

@ -1,180 +0,0 @@
/* Needed for libelf */
#define _FILE_OFFSET_BITS 64
#include "system.h"
#include <stdarg.h>
#include "utils.h"
#include "debug.h"
static char *
my_stpcpy (char *dest,
const char *src)
{
do
{
*dest++ = *src;
}
while (*src++ != '\0');
return dest - 1;
}
char *
strconcat (const char *string1, ...)
{
size_t l;
va_list args;
char *s;
char *concat;
char *ptr;
l = 1 + strlen (string1);
va_start (args, string1);
s = va_arg (args, char*);
while (s)
{
l += strlen (s);
s = va_arg (args, char*);
}
va_end (args);
concat = malloc (sizeof (char) * l);
ptr = concat;
ptr = my_stpcpy (ptr, string1);
va_start (args, string1);
s = va_arg (args, char*);
while (s)
{
ptr = my_stpcpy (ptr, s);
s = va_arg (args, char*);
}
va_end (args);
return concat;
}
char *
path_basename (const char *filename)
{
char *slash;
slash = strrchr (filename, '/');
if (slash)
return strdup (slash + 1);
else
return strdup (filename);
}
off_t
align_up (off_t offset, size_t alignment)
{
if (alignment == 0)
return offset;
return offset + (alignment - (offset % alignment)) % alignment;
}
int
string_has_prefix (char *string, char *prefix)
{
while (*prefix != 0 && *string != 0 && *string == *prefix)
{
string++;
prefix++;
}
if (*prefix == 0)
return 1;
return 0;
}
/* Table computed with Mark Adler's makecrc.c utility. */
static const unsigned int crc32_table[256] =
{
0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419,
0x706af48f, 0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4,
0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07,
0x90bf1d91, 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de,
0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856,
0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9,
0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4,
0xa2677172, 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b,
0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, 0x32d86ce3,
0x45df5c75, 0xdcd60dcf, 0xabd13d59, 0x26d930ac, 0x51de003a,
0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599,
0xb8bda50f, 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924,
0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190,
0x01db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f,
0x9fbfe4a5, 0xe8b8d433, 0x7807c9a2, 0x0f00f934, 0x9609a88e,
0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01,
0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed,
0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950,
0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3,
0xfbd44c65, 0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2,
0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a,
0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5,
0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c, 0x270241aa, 0xbe0b1010,
0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f,
0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17,
0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, 0x9abfb3b6,
0x03b6e20c, 0x74b1d29a, 0xead54739, 0x9dd277af, 0x04db2615,
0x73dc1683, 0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8,
0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, 0xf00f9344,
0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb,
0x196c3671, 0x6e6b06e7, 0xfed41b76, 0x89d32be0, 0x10da7a5a,
0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5,
0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1,
0xa6bc5767, 0x3fb506dd, 0x48b2364b, 0xd80d2bda, 0xaf0a1b4c,
0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef,
0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236,
0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe,
0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31,
0x2cd99e8b, 0x5bdeae1d, 0x9b64c2b0, 0xec63f226, 0x756aa39c,
0x026d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713,
0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, 0x92d28e9b,
0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, 0x86d3d2d4, 0xf1d4e242,
0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1,
0x18b74777, 0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c,
0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, 0xa00ae278,
0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7,
0x4969474d, 0x3e6e77db, 0xaed16a4a, 0xd9d65adc, 0x40df0b66,
0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9,
0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605,
0xcdd70693, 0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8,
0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b,
0x2d02ef8d
};
static unsigned int crc32 (unsigned int crc, unsigned char *buf, size_t len)
{
unsigned char *end;
crc = ~crc & 0xffffffff;
for (end = buf + len; buf < end; ++buf)
crc = crc32_table[(crc ^ *buf) & 0xff] ^ (crc >> 8);
return ~crc & 0xffffffff;
}
unsigned int
crc32_file (const char *filename)
{
unsigned int crc = 0;
int fd;
char buffer[1024*8];
ssize_t count;
fd = open (filename, O_RDONLY);
if (fd < 0)
return 0;
while ((count = read (fd, buffer, sizeof (buffer))) > 0)
crc = crc32 (crc, buffer, count);
close (fd);
return crc;
}

View File

@ -1,12 +0,0 @@
#ifndef UTILS_H
#define UTILS_H
#include <stdlib.h>
char *strconcat (const char *string1, ...);
off_t align_up (off_t offset, size_t alignment);
int string_has_prefix (char *string, char *prefix);
unsigned int crc32_file (const char *filename);
char *path_basename (const char *filename);
#endif /* UTILS_H */