- add hack to support extracting gstreamer plugin provides (#438225)

- fix another macro argument handling regression (#461180)
This commit is contained in:
Panu Matilainen 2008-09-11 12:02:10 +00:00
parent 507434f781
commit 9ba3bc75c8
3 changed files with 62 additions and 1 deletions

View File

@ -0,0 +1,16 @@
diff --git a/build/rpmfc.c b/build/rpmfc.c
index 94fb68e..525915b 100644
--- a/build/rpmfc.c
+++ b/build/rpmfc.c
@@ -1093,6 +1093,11 @@ assert(s != NULL);
free(buf);
}
+ /* Add possible GStreamer provides */
+ if (!fc->skipProv && isDSO) {
+ xx = rpmfcHelper(fc, 'P', "gstreamer");
+ }
+
exit:
soname = _free(soname);
if (elf) (void) elf_end(elf);

View File

@ -0,0 +1,37 @@
diff --git a/rpmio/macro.c b/rpmio/macro.c
index ad1f94a..1e292c6 100644
--- a/rpmio/macro.c
+++ b/rpmio/macro.c
@@ -780,7 +780,7 @@ static const char *
grabArgs(MacroBuf mb, const rpmMacroEntry me, const char * se,
const char * lastc)
{
- const char *opts, *o, *ret;
+ const char *opts, *o;
char *args = NULL;
ARGV_t argv = NULL;
int argc = 0;
@@ -792,13 +792,10 @@ grabArgs(MacroBuf mb, const rpmMacroEntry me, const char * se,
/*
* Make a copy of se up to lastc string that we can pass to argvSplit().
- * Append the results to main argv, save return value.
+ * Append the results to main argv.
*/
{ ARGV_t av = NULL;
char *s = xcalloc((lastc-se)+1, sizeof(*s));
-
- /* XXX expandMacro() expects next \0 which can be beyond lastc */
- ret = strchr(se, '\0');
memcpy(s, se, (lastc-se));
argvSplit(&av, s, " ");
@@ -884,7 +881,7 @@ grabArgs(MacroBuf mb, const rpmMacroEntry me, const char * se,
exit:
argvFree(argv);
- return ret;
+ return *lastc ? lastc + 1 : lastc;
}
/**

View File

@ -18,7 +18,7 @@
Summary: The RPM package management system Summary: The RPM package management system
Name: rpm Name: rpm
Version: %{rpmver} Version: %{rpmver}
Release: 0.%{snapver}.6 Release: 0.%{snapver}.7
Group: System Environment/Base Group: System Environment/Base
Url: http://www.rpm.org/ Url: http://www.rpm.org/
Source0: http://rpm.org/releases/testing/%{name}-%{srcver}.tar.bz2 Source0: http://rpm.org/releases/testing/%{name}-%{srcver}.tar.bz2
@ -28,6 +28,7 @@ Source1: db-%{bdbver}.tar.gz
Patch0: rpm-4.5.90-devel-autodep.patch Patch0: rpm-4.5.90-devel-autodep.patch
Patch1: rpm-4.5.90-pkgconfig-path.patch Patch1: rpm-4.5.90-pkgconfig-path.patch
Patch2: rpm-4.5.90-gstreamer-provides.patch
# XXX only create provides for pkgconfig and libtool initially # XXX only create provides for pkgconfig and libtool initially
Patch100: rpm-4.6.x-no-pkgconfig-reqs.patch Patch100: rpm-4.6.x-no-pkgconfig-reqs.patch
@ -40,6 +41,7 @@ Patch204: rpm-4.5.90-patches.patch
Patch205: rpm-4.5.90-topdir.patch Patch205: rpm-4.5.90-topdir.patch
Patch206: rpm-4.5.90-rpmbuild-dirs.patch Patch206: rpm-4.5.90-rpmbuild-dirs.patch
Patch207: rpm-4.5.90-cpio-hardlink.patch Patch207: rpm-4.5.90-cpio-hardlink.patch
Patch208: rpm-4.5.90-macro-args.patch
# These are not yet upstream # These are not yet upstream
Patch300: rpm-4.5.90-posttrans.patch Patch300: rpm-4.5.90-posttrans.patch
@ -168,6 +170,7 @@ that will manipulate RPM packages and databases.
%setup -q -n %{name}-%{srcver} %{?with_int_bdb:-a 1} %setup -q -n %{name}-%{srcver} %{?with_int_bdb:-a 1}
%patch0 -p1 -b .devel-autodep %patch0 -p1 -b .devel-autodep
%patch1 -p1 -b .pkgconfig-path %patch1 -p1 -b .pkgconfig-path
%patch2 -p1 -b .gstreamer-prov
%patch100 -p1 -b .pkgconfig-deps %patch100 -p1 -b .pkgconfig-deps
%patch200 -p1 -b .archivesize %patch200 -p1 -b .archivesize
@ -178,6 +181,7 @@ that will manipulate RPM packages and databases.
%patch205 -p1 -b .topdir %patch205 -p1 -b .topdir
%patch206 -p1 -b .rpmbuild-dirs %patch206 -p1 -b .rpmbuild-dirs
%patch207 -p1 -b .cpio-hardlink %patch207 -p1 -b .cpio-hardlink
%patch208 -p1 -b .macro-args
# needs a bit of upstream love first... # needs a bit of upstream love first...
#%patch300 -p1 -b .posttrans #%patch300 -p1 -b .posttrans
@ -356,6 +360,10 @@ exit 0
%doc doc/librpm/html/* %doc doc/librpm/html/*
%changelog %changelog
* Thu Sep 11 2008 Panu Matilainen <pmatilai@redhat.com>
- add hack to support extracting gstreamer plugin provides (#438225)
- fix another macro argument handling regression (#461180)
* Thu Sep 11 2008 Jindrich Novy <jnovy@redhat.com> * Thu Sep 11 2008 Jindrich Novy <jnovy@redhat.com>
- create directory structure for rpmbuild prior to build if it doesn't exist (#455387) - create directory structure for rpmbuild prior to build if it doesn't exist (#455387)
- create _topdir if it doesn't exist when installing SRPM - create _topdir if it doesn't exist when installing SRPM