2013-10-04 11:15:34 +04:00
|
|
|
diff -Naur rpm-5.4.10.orig/macros/mandriva rpm-5.4.10/macros/mandriva
|
|
|
|
--- rpm-5.4.10.orig/macros/mandriva 2013-09-17 17:34:34.805808860 +0400
|
|
|
|
+++ rpm-5.4.10/macros/mandriva 2013-10-03 17:06:36.947155301 +0400
|
|
|
|
@@ -32,6 +32,8 @@
|
|
|
|
# mdvbz#64914
|
|
|
|
%_rpmgio .ufdio
|
|
|
|
|
2015-05-20 12:41:07 +03:00
|
|
|
+%__urlgetfile(url, dest) (test -f `basename %1` && mkdir -p `dirname %2` && cp `basename %1` %2) || (wget %1 -O %2 || (rm -f %2 && exit 1))
|
2013-10-04 11:15:34 +04:00
|
|
|
+
|
|
|
|
# This will die as soon as remaining usage has been phased out...
|
|
|
|
%mkrel(c:) %{-c: 0.%{-c*}.}%{1}%{?subrel:.%subrel}
|
|
|
|
%manbo_mkrel() %mkrel
|
|
|
|
diff -Naur rpm-5.4.10.orig/macros/mandriva.in rpm-5.4.10/macros/mandriva.in
|
|
|
|
--- rpm-5.4.10.orig/macros/mandriva.in 2013-09-17 17:34:34.805808860 +0400
|
|
|
|
+++ rpm-5.4.10/macros/mandriva.in 2013-10-03 17:33:15.669303875 +0400
|
|
|
|
@@ -32,6 +32,8 @@
|
|
|
|
# mdvbz#64914
|
|
|
|
%_rpmgio .ufdio
|
|
|
|
|
2014-09-03 05:42:52 -04:00
|
|
|
+%__urlgetfile(url, dest) (test -f `basename %1` && cp `basename %1` %2) || (wget %1 -O %2 || (rm -f %2 && exit 1))
|
2013-10-04 11:15:34 +04:00
|
|
|
+
|
|
|
|
# This will die as soon as remaining usage has been phased out...
|
|
|
|
%mkrel(c:) %{-c: 0.%{-c*}.}%{1}%{?subrel:.%subrel}
|
|
|
|
%manbo_mkrel() %mkrel
|
|
|
|
diff -Naur rpm-5.4.10.orig/rpmio/url.c rpm-5.4.10/rpmio/url.c
|
|
|
|
--- rpm-5.4.10.orig/rpmio/url.c 2013-09-17 17:34:34.827808860 +0400
|
|
|
|
+++ rpm-5.4.10/rpmio/url.c 2013-10-03 17:49:34.590394849 +0400
|
|
|
|
@@ -446,6 +447,7 @@
|
|
|
|
/*@-observertrans@*/
|
|
|
|
if (pathp)
|
|
|
|
*pathp = path;
|
|
|
|
+
|
|
|
|
/*@=observertrans@*/
|
|
|
|
return ut;
|
|
|
|
}
|
|
|
|
@@ -602,6 +604,7 @@
|
|
|
|
const char * sfuPath = NULL;
|
|
|
|
int urlType = urlPath(url, &sfuPath);
|
|
|
|
char *result;
|
|
|
|
+ char *cmd;
|
|
|
|
|
|
|
|
if (*sfuPath == '\0')
|
|
|
|
return FTPERR_UNKNOWN;
|
|
|
|
@@ -616,17 +619,17 @@
|
|
|
|
return FTPERR_UNKNOWN;
|
|
|
|
|
|
|
|
/*@-globs -mods@*/ /* Avoid including <rpmmacro.h> everywhere for now */
|
|
|
|
- if (rpmExpandNumeric("%{?__urlgetfile:1}%{!?__urlgetfile:0}")) {
|
|
|
|
- result = rpmExpand("%{__urlgetfile ", url, " ", dest, "}", NULL);
|
|
|
|
- if (result != NULL && strcmp(result, "OK") == 0)
|
|
|
|
- rc = 0;
|
|
|
|
- else {
|
|
|
|
- rpmlog(RPMLOG_DEBUG, D_("failed to fetch URL %s via external command\n"), url);
|
|
|
|
- rc = FTPERR_UNKNOWN;
|
|
|
|
+ cmd = rpmExpand("%{?__urlgetfile:%{__urlgetfile ", url, " ", dest, "}}", NULL);
|
|
|
|
+ if (cmd != NULL && cmd[0] != '\0') {
|
|
|
|
+ rc = system(cmd);
|
|
|
|
+ if ((rc >> 8) != 0) {
|
|
|
|
+ rpmlog(RPMLOG_DEBUG, D_("failed to fetch URL %s via external command: %s: %s\n"), url, Fstrerror(sfd));
|
|
|
|
+ rc = FTPERR_UNKNOWN;
|
|
|
|
}
|
|
|
|
- result = _free(result);
|
|
|
|
- goto exit;
|
|
|
|
+ cmd = _free(cmd);
|
|
|
|
+ goto exit;
|
|
|
|
}
|
|
|
|
+
|
|
|
|
/*@=globs =mods@*/
|
|
|
|
|
|
|
|
sfd = Fopen(url, "r.ufdio");
|