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]

wanting to clarify building with linuxthreads versus NPTL


  as the last addition to my mini script, i want to add the ability to
select either linuxthreads, NPTL or (what the heck) no threading at
all, so i want to summarize the differences in building between all of
the above.  (i'll restrict myself to recent GNU software.)

  first, given that NPTL is now part of glibc proper, i only need to
add the glibc-linuxthreads tarball if someone selects that threading
model.  so far, so good.

  the first couple steps of the toolchain creation:

  * install kernel headers
  * build and install binutils

are identical as they have nothing to do with threads.  from there on
is what matters and i'm going based on what i think i needed to do to
build with NPTL.  one step at a time:

install glibc headers:
----------------------

  for linuxthreads, crosstool didn't appear to need to do anything in
that step.

  for NPTL, it seems i was forced to add to the configure options:

	--with-__thread
	--enable-add-ons=nptl

i'm pretty sure this was necessary as a later step would fail without
it.  does this make sense?

build bootstrap gcc:
-------------------

  for linuxthreads, it seemed that there was no need to add thread
support to the bootstrap compiler:

	--enable-threads=no

  for NPTL, however, it seemed that i needed the additional configure
options:

	--with-tls		 (not sure about this option)
	--enable-threads=posix   ("posix" is probably default)

again, does this make sense?  does the bootstrap compiler really need
thread support in the case of NPTL?

building and installing glibc:
-----------------------------

  for linuxthreads, this step in crosstool had the following
thread-related configure options:

	--without-tls
	--without-__thread
	enable-add-ons=linuxthreads

  for NPTL, though, i'm pretty sure i needed all of the following:

	--with-tls
	--with-__thread
	enable-add-ons=nptl

final gcc:
---------

  it seems both linuxthreads and NPTL just need to set
--enable-threads (with "posix" being the likely default, anyway).



any comments on the above?  i just want the build to be as simple and
straightforward as possible.

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]