Usage:
1. Invoke the script as follows:
./sync-upstream.sh upstream-repo
where upstream-repo is the path to the synced upstream git repo.
2. Watch the script run. If it proceeds to building the package, then
everything seems good and you just need to test the build after it
is complete. If it exits before the build (you'll know if you read
the output of the script) then manual intervention is required to
complete the sync. This will typically happen when a patch fails
to apply on the new sources.
The fill_archive function should support being
called with a NULL fname argument. A NULL fname
argument indicates that the default archive should
be opened. We enable this by setting ah.fname to
NULL before initializing ah or calling open_archive.
This way if fname is NULL then ah.fname remains NULL
and open_archive opens the default archive.
- Allow applications to use pthread_atfork without explicitly
requiring libpthread.so. (#1013801)
- Support `--list-archive FILE' in localedef utility.
- Allow ldconfig cached objects previously marked as hard or soft
ABI to now become unmarked without raising an error. This works
around a binutils bug that caused objects to become unmarked.
(#1009145)
This patch fixes the spec file to use %{_prefix} everywhere that
is related to the package and subpackages. However, external
utilities are still referenced by their absolute path which
includes /usr.
The `Move to /usr' transition for glibc can not be completed
without support from RPM. There are too many Requires that
explicitly reference non-/usr paths in various spec files.
Reverting this patch is the only way forward until we find
a transitional way to support this.
All relevant files are not installed to /usr, with the expectation
that the distribution will provide compatibility links from the
old paths to the new paths. All uses of a bare `/usr' have been
replaced with uses of `%{_prefix}' for files installed by the
package.
Two large chunks of identical code are used to install the
non-default runtimes. This patch refactors that code into
the function `install_different' which is used to
conditionally install any libaries where different in the
new multilib (different from the default).
The find-debuginfo.sh script will return duplicate entries of
certain files even though the input is uinque. This results
in rpm build warnings like this:
~~~
Processing files: glibc-debuginfo-common-2.17.90-10.fc20.x86_64
warning: File listed twice: /usr/lib/debug/usr/sbin/build-locale-archive.debug
warning: File listed twice: /usr/lib/debug/usr/sbin/nscd.debug
warning: File listed twice: /usr/lib/debug/usr/sbin/zdump.debug
warning: File listed twice: /usr/lib/debug/usr/sbin/zic.debug
~~~
The solutions is to make the output file list uinque by post
processing it after it is output by find-debuginfo.sh.
The solution removes the warnings and produces no visible
change in the output rpms.