!47 build extra libpthreadcond.so
Merge pull request !47 from 徐会杰/master
This commit is contained in:
commit
7f8301d45c
4935
build-extra-libpthreadcond-so.patch
Normal file
4935
build-extra-libpthreadcond-so.patch
Normal file
File diff suppressed because it is too large
Load Diff
33
glibc.spec
33
glibc.spec
@ -31,6 +31,7 @@
|
|||||||
%bcond_with bootstrap
|
%bcond_with bootstrap
|
||||||
%bcond_without werror
|
%bcond_without werror
|
||||||
%bcond_without docs
|
%bcond_without docs
|
||||||
|
%bcond_with libpthreadcond
|
||||||
|
|
||||||
%ifarch %{valgrind_arches}
|
%ifarch %{valgrind_arches}
|
||||||
%bcond_without valgrind
|
%bcond_without valgrind
|
||||||
@ -59,7 +60,7 @@
|
|||||||
##############################################################################
|
##############################################################################
|
||||||
Name: glibc
|
Name: glibc
|
||||||
Version: 2.31
|
Version: 2.31
|
||||||
Release: 3
|
Release: 4
|
||||||
Summary: The GNU libc libraries
|
Summary: The GNU libc libraries
|
||||||
License: %{all_license}
|
License: %{all_license}
|
||||||
URL: http://www.gnu.org/software/glibc/
|
URL: http://www.gnu.org/software/glibc/
|
||||||
@ -92,6 +93,7 @@ Patch6013: Fix-CVE-2020-6096-002.patch
|
|||||||
Patch6014: Disable-warnings-due-to-deprecated-libselinux-symbol.patch
|
Patch6014: Disable-warnings-due-to-deprecated-libselinux-symbol.patch
|
||||||
|
|
||||||
Patch9000: delete-no-hard-link-to-avoid-all_language-package-to.patch
|
Patch9000: delete-no-hard-link-to-avoid-all_language-package-to.patch
|
||||||
|
Patch9001: build-extra-libpthreadcond-so.patch
|
||||||
|
|
||||||
Provides: ldconfig rtld(GNU_HASH) bundled(gnulib)
|
Provides: ldconfig rtld(GNU_HASH) bundled(gnulib)
|
||||||
|
|
||||||
@ -462,6 +464,15 @@ pushd $builddir
|
|||||||
make %{?_smp_mflags} -O -r %{glibc_make_flags}
|
make %{?_smp_mflags} -O -r %{glibc_make_flags}
|
||||||
popd
|
popd
|
||||||
|
|
||||||
|
##############################################################################
|
||||||
|
# Build libpthreadcond
|
||||||
|
##############################################################################
|
||||||
|
%if %{with libpthreadcond}
|
||||||
|
cd nptl_2_17
|
||||||
|
sh build_libpthreadcondso.sh %{_target_cpu} $builddir
|
||||||
|
cd ..
|
||||||
|
%endif
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
# Install glibc...
|
# Install glibc...
|
||||||
##############################################################################
|
##############################################################################
|
||||||
@ -477,6 +488,10 @@ done
|
|||||||
|
|
||||||
make -j1 install_root=$RPM_BUILD_ROOT install -C build-%{target}
|
make -j1 install_root=$RPM_BUILD_ROOT install -C build-%{target}
|
||||||
|
|
||||||
|
%if %{with libpthreadcond}
|
||||||
|
cp build-%{target}/nptl/libpthreadcond.so $RPM_BUILD_ROOT%{_libdir}
|
||||||
|
%endif
|
||||||
|
|
||||||
pushd build-%{target}
|
pushd build-%{target}
|
||||||
|
|
||||||
# notice: we can't use parallel compilation because the localedata will use "localedef" command
|
# notice: we can't use parallel compilation because the localedata will use "localedef" command
|
||||||
@ -712,6 +727,10 @@ for module in compat files dns; do
|
|||||||
done
|
done
|
||||||
grep -e "libmemusage.so" -e "libpcprofile.so" master.filelist >> glibc.filelist
|
grep -e "libmemusage.so" -e "libpcprofile.so" master.filelist >> glibc.filelist
|
||||||
|
|
||||||
|
%if %{with libpthreadcond}
|
||||||
|
echo "%{_libdir}/libpthreadcond.so" >> glibc.filelist
|
||||||
|
%endif
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
# glibc "common" sub-package
|
# glibc "common" sub-package
|
||||||
##############################################################################
|
##############################################################################
|
||||||
@ -1168,6 +1187,18 @@ fi
|
|||||||
%doc hesiod/README.hesiod
|
%doc hesiod/README.hesiod
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Aug 14 2020 Xu Huijie<546391727@qq.com> - 2.31-4
|
||||||
|
- since the new version of the pthread_cond_wait()
|
||||||
|
function has performance degradation in multi-core
|
||||||
|
scenarios, here is an extra libpthreadcond.so using
|
||||||
|
old version of the function. you can use it by adding
|
||||||
|
LD_PRELOAD=./libpthreadcond.so in front of your program
|
||||||
|
(eg: LD_PRELOAD=./libpthreadcond.so ./test).
|
||||||
|
use with-libpthreadcond to compile it.
|
||||||
|
warning:2.17 version pthread_cond_wait() does not meet
|
||||||
|
the posix standard, you should pay attention when using
|
||||||
|
it.
|
||||||
|
|
||||||
* Fri Jul 24 2020 Wang Shuo<wangshuo_1994@foxmail.com> - 2.31-3
|
* Fri Jul 24 2020 Wang Shuo<wangshuo_1994@foxmail.com> - 2.31-3
|
||||||
- backport patch to disable warnings due to deprecated libselinux
|
- backport patch to disable warnings due to deprecated libselinux
|
||||||
- symbols used by nss and nscd
|
- symbols used by nss and nscd
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user