BuildRequires: gcc >= 3.2
%define enablekernel 2.6.32
Conflicts: kernel < %{enablekernel}
-%ifarch i386
-%define nptl_target_cpu i486
-%else
-%define nptl_target_cpu %{_target_cpu}
-%endif
+%define target %{_target_cpu}-redhat-linux
%ifarch %{multiarcharches}
# Need STT_IFUNC support
%ifarch ppc ppc64
GCC=gcc
GXX=g++
%ifarch %{ix86}
-BuildFlags="-march=%{nptl_target_cpu} -mtune=generic"
+BuildFlags="-march=%{_target_cpu} -mtune=generic"
%endif
%ifarch i686
BuildFlags="-march=i686 -mtune=generic"
AddOns=,rtkaio$AddOns
%endif
-build_nptl()
+build()
{
-builddir=build-%{nptl_target_cpu}-$1
-shift
+builddir=build-%{target}${1:+-$1}
+${1+shift}
rm -rf $builddir
mkdir $builddir ; cd $builddir
build_CFLAGS="$BuildFlags -g -O3 $*"
--prefix=%{_prefix} \
--enable-add-ons=../%{glibcportsdir},nptl$AddOns \
--with-headers=%{_prefix}/include $EnableKernel --enable-bind-now \
- --with-tls --with-__thread --build %{nptl_target_cpu}-redhat-linux \
- --host %{nptl_target_cpu}-redhat-linux \
+ --with-tls --with-__thread --build=%{target} \
%ifarch %{multiarcharches}
--enable-multi-arch \
%endif
cd ..
}
-build_nptl linuxnptl
+build
%if %{buildxen}
-build_nptl linuxnptl-nosegneg -mno-tls-direct-seg-refs
+build nosegneg -mno-tls-direct-seg-refs
%endif
%if %{buildpower6}
AddOns="$AddOns --with-cpu=power6"
GCC="$GCC -mcpu=power6"
GXX="$GXX -mcpu=power6"
-build_nptl linuxnptl-power6
+build power6
)
%endif
-cd build-%{nptl_target_cpu}-linuxnptl
+cd build-%{target}
$GCC -static -L. -Os -g ../fedora/glibc_post_upgrade.c -o glibc_post_upgrade.%{_target_cpu} \
-DNO_SIZE_OPTIMIZATION \
'-DLIBTLS="/%{_lib}/tls/"' \
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT
-make -j1 install_root=$RPM_BUILD_ROOT install -C build-%{nptl_target_cpu}-linuxnptl PARALLELMFLAGS=-s
+make -j1 install_root=$RPM_BUILD_ROOT install -C build-%{target} PARALLELMFLAGS=-s
%ifnarch %{auxarches}
-cd build-%{nptl_target_cpu}-linuxnptl && \
+cd build-%{target} && \
make %{?_smp_mflags} install_root=$RPM_BUILD_ROOT install-locales -C ../localedata objdir=`pwd` && \
cd ..
%endif
%define nosegneg_subdir_base i686
%define nosegneg_subdir i686/nosegneg
%define nosegneg_subdir_up ../..
-cd build-%{nptl_target_cpu}-linuxnptl-nosegneg
+cd build-%{target}-nosegneg
destdir=$RPM_BUILD_ROOT/%{_lib}/%{nosegneg_subdir}
mkdir -p $destdir
for lib in libc math/libm nptl/libpthread rt/librt nptl_db/libthread_db
libbase=${lib#*/}
libbaseso=$(basename $RPM_BUILD_ROOT/%{_lib}/${libbase}-*.so)
# Only install if different from base lib
- if cmp -s ${lib}.so ../build-%{nptl_target_cpu}-linuxnptl/${lib}.so; then
+ if cmp -s ${lib}.so ../build-%{target}/${lib}.so; then
ln -sf %{nosegneg_subdir_up}/$libbaseso $destdir/$libbaseso
else
cp -a ${lib}.so $destdir/$libbaseso
destdir=$RPM_BUILD_ROOT/%{_lib}/rtkaio/%{nosegneg_subdir}
mkdir -p $destdir
librtkaioso=$(basename $RPM_BUILD_ROOT/%{_lib}/librt-*.so | sed s/librt-/librtkaio-/)
-if cmp -s rtkaio/librtkaio.so ../build-%{nptl_target_cpu}-linuxnptl/rtkaio/librtkaio.so; then
+if cmp -s rtkaio/librtkaio.so ../build-%{target}/rtkaio/librtkaio.so; then
ln -s %{nosegneg_subdir_up}/$librtkaioso $destdir/$librtkaioso
else
cp -a rtkaio/librtkaio.so $destdir/$librtkaioso
%endif
%if %{buildpower6}
-cd build-%{nptl_target_cpu}-linuxnptl-power6
+cd build-%{target}-power6
destdir=$RPM_BUILD_ROOT/%{_lib}/power6
mkdir -p ${destdir}
for lib in libc math/libm nptl/libpthread rt/librt nptl_db/libthread_db
chmod 644 $RPM_BUILD_ROOT%{_prefix}/%{_lib}/gconv/gconv-modules.cache
# Install the upgrade program
-install -m 700 build-%{nptl_target_cpu}-linuxnptl/glibc_post_upgrade.%{_target_cpu} \
+install -m 700 build-%{target}/glibc_post_upgrade.%{_target_cpu} \
$RPM_BUILD_ROOT/usr/sbin/glibc_post_upgrade.%{_target_cpu}
strip -g $RPM_BUILD_ROOT%{_prefix}/%{_lib}/*.o
rm locale-archive || :
# Intentionally we do not pass --alias-file=, aliases will be added
# by build-locale-archive.
-$olddir/build-%{nptl_target_cpu}-linuxnptl/elf/ld.so \
- --library-path $olddir/build-%{nptl_target_cpu}-linuxnptl/ \
- $olddir/build-%{nptl_target_cpu}-linuxnptl/locale/localedef \
+$olddir/build-%{target}/elf/ld.so \
+ --library-path $olddir/build-%{target}/ \
+ $olddir/build-%{target}/locale/localedef \
--prefix ${RPM_BUILD_ROOT} --add-to-archive \
*_*
rm -rf *_*
cd fedora
$GCC -Os -g -static -o build-locale-archive build-locale-archive.c \
- ../build-%{nptl_target_cpu}-linuxnptl/locale/locarchive.o \
- ../build-%{nptl_target_cpu}-linuxnptl/locale/md5.o \
+ ../build-%{target}/locale/locarchive.o \
+ ../build-%{target}/locale/md5.o \
-DDATADIR=\"%{_datadir}\" -DPREFIX=\"%{_prefix}\" \
- -L../build-%{nptl_target_cpu}-linuxnptl
+ -L../build-%{target}
install -m 700 build-locale-archive $RPM_BUILD_ROOT/usr/sbin/build-locale-archive
$GCC -Os -g -static -o tzdata-update tzdata-update.c \
- -L../build-%{nptl_target_cpu}-linuxnptl
+ -L../build-%{target}
install -m 700 tzdata-update $RPM_BUILD_ROOT/usr/sbin/tzdata-update
cd ..
export TIMEOUTFACTOR=16
parent=$$
echo ====================TESTING=========================
-cd build-%{nptl_target_cpu}-linuxnptl
+cd build-%{target}
( make %{?_smp_mflags} -k check PARALLELMFLAGS=-s 2>&1
sleep 10s
teepid="`ps -eo ppid,pid,command | awk '($1 == '${parent}' && $3 ~ /^tee/) { print $2 }'`"
cd ..
%if %{buildxen}
echo ====================TESTING -mno-tls-direct-seg-refs=============
-cd build-%{nptl_target_cpu}-linuxnptl-nosegneg
+cd build-%{target}-nosegneg
( make %{?_smp_mflags} -k check PARALLELMFLAGS=-s 2>&1
sleep 10s
teepid="`ps -eo ppid,pid,command | awk '($1 == '${parent}' && $3 ~ /^tee/) { print $2 }'`"
%endif
%if %{buildpower6}
echo ====================TESTING -mcpu=power6=============
-cd build-%{nptl_target_cpu}-linuxnptl-power6
+cd build-%{target}-power6
( if [ -d ../power6emul ]; then
export LD_PRELOAD=`cd ../power6emul; pwd`/\$LIB/power6emul.so
fi