threads and NPTL, step by step
Robert P. J. Day
rpjday@mindspring.com
Wed Nov 9 17:17:00 GMT 2005
at the risk of flogging this horse further, i want to step through
the build stages and get feedback on various build and configure
options at each stage, to see where i've messed up and to help me
(and, ideally, others) understand what's required at each stage.
the goal is to build an NPTL-aware toolchain, and here's what i've
got in my mini script so far (we'll do this a little at a time).
first, installing the kernel headers and building and installing
binutils:
--- code ---
do_kernel_headers() {
echo "Stage: kernel headers."
rm -rf ${HEADERS_DIR}
mkdir -p ${HEADERS_DIR}
HEADERS_SRC_DIR=${UNPACK_DIR}/linux-libc-headers-${HEADERS_VERSION}
cp -r ${HEADERS_SRC_DIR}/include/linux ${HEADERS_DIR}
cp -r ${HEADERS_SRC_DIR}/include/asm-${ARCH} ${HEADERS_DIR}/asm
}
do_kernel_headers
do_binutils() {
echo "Stage: binutils."
BINUTILS_SRC_DIR=${UNPACK_DIR}/binutils-${BINUTILS_VERSION}
rm -rf ${BUILD_DIR}/build-binutils
mkdir -p ${BUILD_DIR}/build-binutils
cd ${BUILD_DIR}/build-binutils
${BINUTILS_SRC_DIR}/configure \
--host=${HOST} \
--target=${TARGET} \
--prefix=${PREFIX} \
--with-sysroot=${SYSROOT_DIR} \
--disable-nls
make all install
}
do_binutils
--- end code ---
note that there's *nothing* in those steps that needs to be aware
that we're building with NPTL, right?
however, what about installing the glibc headers? this is what i
have so far, is it correct? have i misconfigured it for what i'm
after?
--- code ---
do_glibc_headers() {
echo "Stage: glibc headers."
GLIBC_SRC_DIR=${UNPACK_DIR}/glibc-${GLIBC_VERSION}
rm -rf ${BUILD_DIR}/build-glibc-headers
mkdir -p ${BUILD_DIR}/build-glibc-headers
cd ${BUILD_DIR}/build-glibc-headers
CC=gcc \
${GLIBC_SRC_DIR}/configure \
--build=${HOST} \
--host=${TARGET} \
--prefix=/usr \
--without-cvs \
--with-headers=${HEADERS_DIR} \
--with-tls \
--with-__thread \
--enable-add-ons=nptl
make \
cross_compiling=yes \
install_root=${SYSROOT_DIR} \
CFLAGS=-DBOOTSTRAP_GCC \
install-headers
}
do_glibc_headers
--- end code ---
thoughts before we go any further? can i simplify this even more?
what i'm after is the *simplest* recipe for doing this that's still
correct.
rday
------
Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
More information about the crossgcc
mailing list