This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

replacing linuxthreads with NPTL


  just for fun, i'm going to try to tweak my mini.sh script to build
using NPTL instead of linuxthreads, so i'm curious if this is the
right way to start.

  first, i applied the glibc-5070_all_cross-compile-nptl.patch to
glibc-2.3.5, which applied cleanly, followed by these first few steps
in the build process (haven't done the entire process, i want to do
this step-by-step and trap mistakes early).

  as far as i can tell, there is no difference in the first two steps
of the crosstool process -- installing the sanitized headers or
building binutils, right?

  the first difference deals with installing the glibc headers where
the old configure command contained:

        CC=gcc \
        ${GLIBC_SRC_DIR}/configure \
                --build=${HOST} \
                --host=${TARGET} \
                --prefix=/usr \
                --without-cvs \
                --with-headers=${HEADERS_DIR} \
                --without-__thread \
		--disable-sanity-checks

while the new configure command was:

        CC=gcc \
        ${GLIBC_SRC_DIR}/configure \
                --build=${HOST} \
                --host=${TARGET} \
                --prefix=/usr \
                --without-cvs \
                --with-headers=${HEADERS_DIR} \
                --with-__thread \
                --enable-add-ons=nptl

and that's the only difference i could identify.  (is there anything
i'm missing?)

  i built both ways and diff'ed the directories.  apart from numerous
slightly different files, the major difference i saw was the set of
files that were installed under NPTL:

$ diff -r sh3.old sh3 | grep Only
Only in sh3/build/build-glibc-headers: libpthread.map
Only in sh3/build/build-glibc-headers: libthread_db.map
Only in sh3/build/build-glibc-headers: nptl
Only in sh3/tools/sh3-unknown-linux-gnu/sys-root/usr/include/bits: semaphore.h
Only in sh3/tools/sh3-unknown-linux-gnu/sys-root/usr/include: pthread.h
Only in sh3/tools/sh3-unknown-linux-gnu/sys-root/usr/include: semaphore.h
Only in sh3/tools/sh3-unknown-linux-gnu/sys-root/usr/include: thread_db.h

  the above makes me fairly happy since it matches what i expected to
see -- thread-related files that weren't installed before.

  does this make sense so far?

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]