Commit graph

64 commits

Author SHA1 Message Date
Tor Egge
71623572da Align stack address for new threads. 2004-11-22 17:57:45 +00:00
Tor Egge
fde4540874 Stop wrapping gethost* functions on 5.2-CURRENT. 2004-03-21 20:22:14 +00:00
Trevor Johnson
a1bc8c46f5 Add size data, approved by maintainers. 2004-03-20 21:03:41 +00:00
Tor Egge
deaa638071 Add option to ignore posix priority scheduling.
Add threadsafe versions of some libc functions on FreeBSD 4.x.
Register liblgcc_r_pic.a as installed for FreeBSD 5.x.
2004-02-27 23:32:55 +00:00
Tor Egge
4c557101da Fix typos in previous commit causing the previous change to effectively
be a noop.
2003-07-14 13:45:39 +00:00
Tor Egge
909179ec64 Restore gethostbyaddr_r wrapper and remove getpw{nam,uid}_r wrappers for
newer versions of FreeBSD 5.X.

Drop use of deprecated AINC variable.

Reenable use of ld(1) to restore the LINUXTHREADS_WRAP_API option.

Rename __thread to __xthread in prototypes to avoid conflict with
new gcc keyword.

Bump port revision.
2003-07-14 12:15:03 +00:00
Tor Egge
f390ff8ee2 Add new experimental option, LINUXTHREADS_WRAP_API, that adds wrapper
functions providing most of the native threads API while avoiding name
clashes by transparently prefixing all function names that directly
provide the linuxthreads API.
2003-06-09 03:48:31 +00:00
Tor Egge
87937c3ca2 Adjust to changed compilation environment (Makefiles setup) in 5.1-CURRENT.
Link with liblgcc_r when creating linuxthreads versions of shared
libraries.
2003-06-09 00:25:05 +00:00
Tor Egge
26bc6153e3 Add _spinunlock() to keep up with libc change in 5.0-CURRENT. 2003-03-27 01:29:24 +00:00
Ade Lovett
7e52725f2a Clear moonlight beckons.
Requiem mors pacem pkg-comment,
And be calm ports tree.

E Nomini Patri, E Fili, E Spiritu Sancti.
2003-03-07 06:14:21 +00:00
Tor Egge
ca5b596b05 Make detection of unsafe calls to exit() optional and not default.
Reviewed by:	mbr
2003-02-25 00:27:37 +00:00
Martin Blapp
648f6baf6f Make this buildable again on CURRENT.
Rev. 1.16 of src/sys/sys/msg.h broke the port three weeks
ago.

Reviewed by:	tor
2003-02-22 15:31:31 +00:00
Tor Egge
37cccc341b Fix build failure on 5.0-CURRENT by including necessary headers. 2002-11-19 16:07:02 +00:00
Tor Egge
1a79f51243 Bump port revision to reflect memory leak fix. 2002-09-06 15:03:19 +00:00
Tor Egge
daa134e666 Don't assume that pthread_key_t is signed, thus plugging a memory leak. 2002-09-06 15:02:24 +00:00
Tor Egge
d573a7ff4e Let main thread do an exit(1) instead of an exit(0) on unclean program
termination (multiple active threads).
2002-09-06 14:57:50 +00:00
Tor Egge
05e2e6dbaf Register PIC archives when INSTALL_PIC_ARCHIVE has been defined.
Defining INSTALL_LIBLTHREAD_PIC_ARCHIVE causes installation and
registration of PIC archive for liblthread, which can be used to
generate a shared liblthread library for a different gcc installation.
Bump port revision.
2002-06-18 20:32:21 +00:00
Tor Egge
85fb13382f Reduce number of portlint errors/warnings. 2002-06-08 20:58:53 +00:00
Tor Egge
7c73d7524c Build linuxthreads version of libstdc++ and libsupc++ under 5.0-CURRENT.
Don't misuse DESTDIR when building linuxthreads version of libgcc.
Fix varargs warning under 5.0-CURRENT.
Don't try to register profiled libraries when NOPROFILE has been specified.
Don't try to register shared libraries when NOPIC has been specified.
Bump port revision.

PR:		38876
2002-06-08 18:27:19 +00:00
Tor Egge
6e913a0e74 Remove #pragma weak usage. 2002-06-08 18:18:05 +00:00
Tor Egge
5454751631 Track changes in -current (remove register keyword, ansify). 2002-06-08 18:15:54 +00:00
Tor Egge
636bb7cc2f Fix malformed preprocessor directive. 2002-06-08 18:13:59 +00:00
Tor Egge
b20aef1bb8 Fix hang caused by a thread calling exit():
- Block cancel signal while creating new thread to avoid losing
    the signal.

  - Terminate the process with _exit(1) if it's unsafe to continue
    calling atexit functions and destructors.
2002-04-22 16:50:02 +00:00
Tor Egge
1f3d93cdba Document that FreeBSD source code is needed to build linuxthreads port.
Add sanity check for presence of needed FreeBSD source code.
Unbreak compilation on 5.0-CURRENT, DEFS.h is no longer available.
Bump port revision.
2002-03-10 01:24:23 +00:00
Tor Egge
d48c47551a Handle internal race that caused pthread_cond_timedwait() to block
waiting for a signal that wasn't sent.
2001-09-13 16:01:44 +00:00
Tor Egge
60032d4ed7 Add an optional experimental patch that reduce the number of context
switches on UP systems when the thread waiting on a condition has a
higher priority than the thread signalling the condition.

Bump port revision.
2001-09-09 01:12:47 +00:00
Tor Egge
85ca10cdc3 Set frame pointer to 0 before calling function in child process to indicate
that the stack frame chain stops here.
2001-09-09 00:57:11 +00:00
Tor Egge
33ddbc7387 Use libc version of _flockfile() and _funlockfile() on 5.0-CURRENT. 2001-09-09 00:53:07 +00:00
Tor Egge
b55a292b53 Backout library major number bump. It wasn't needed. Additionally,
ldconfig -r didn't list the library, making it impossible for other
ports to depend on the linuxthreads port.
2001-07-01 17:36:25 +00:00
Tor Egge
71819868ea Update from version 2.1.3 to 2.2.3 of LinuxThreads. 2001-06-14 01:34:18 +00:00
Tor Egge
5f887dac56 Calling the libc .cerror from outside libc doesn't work when libc
is a shared library.  Use a copy of .cerror to avoid this problem.

PR:		24845
2001-02-26 14:15:28 +00:00
Tor Egge
3c409910e0 Use __error() from liblthread instead of the libc version. 2001-02-26 14:09:46 +00:00
Tor Egge
6938e8f7c5 Reference _flockfile to ensure that the linuxthreads version is used. 2001-02-25 09:15:19 +00:00
Tor Egge
ea51d128f0 Initialize attributes for new threads with default values when a NULL
pthread_attr_t is provided as argument to pthread_create.

liblgcc_r_pic.a no longer exists.

Put the liblgcc_r.a version of __get_eh_info() and __register_frame_info()
into the shared linuxthreads library to avoid using the incompatible
libgcc.a version.  Shared libraries that use exceptions still represent a
problem if linked before the linuxthreads library.

Compile liblgcc_r.a before the main linuxthreads library to provide
the object files that contains __get_eh_info() and __register_frame_info().

Add minimal wrappers for native thread library functions used by
5.0-CURRENT libc.  The wrappers try to call corresponding functions
in the linuxthreads library after performing argument conversion.
2001-02-20 00:34:57 +00:00
Tor Egge
3af7108f66 Take over linuxthreads port maintainership.
Approved by:	jasone
2001-02-18 21:59:43 +00:00
Maxim Sobolev
2b1a883dc4 Massive style enforcement - use ^I instead of spaces for variables identation. 2001-01-16 17:33:20 +00:00
Jason Evans
06bce9d9d7 Use the correct pthread.h when compiling liblgcc_r. Allow thread stacks
larger than 16kB.  Make sure to call global destructors during shutdown.

PR:		ports/22429
Submitted by:	tegge
2000-11-06 19:43:33 +00:00
Satoshi Asami
7acef1cd7a Change PKGDIR from pkg/ to . Also fix places where ${PKGDIR} is
spelled out (many of which are ${PKGDIR}/MESSAGE -> ${PKGMESSAGE} type
fixes that shouldn't have been necessary) and the string "/pkg/"
appear.
2000-10-08 10:23:48 +00:00
Satoshi Asami
5e5841f2cd Eliminate WRKSRC=${WRKDIR}/${PKGNAME} lines, as these will break when
PORTREVISION or PORTEPOCH are defined.

Most of these Makefiles were defining DISTNAME and WRKSRC (and
sometimes EXTRACT_SUFX) -- change those to define DISTFILES only.
Also, some of the WRKSRC lines were not even necessary, as they were
defining it to the default value.

Instigated by:	Peter Pentchev <roam@orbitel.bg> and kris
2000-09-25 12:21:43 +00:00
Jason Evans
7a90df77ff Remove call to deprecated function, dllockinit(). 2000-07-12 16:32:11 +00:00
Jason Evans
8ec27f4ca8 Fix a mistake in the directions for creating symlinks. Add instructions for
creating a gcc specs file (prompted by Dima Ruben).  Remove obsolete
information and update various tidbits.
2000-07-12 02:08:45 +00:00
Jason Evans
fbdae04681 Rather than copying the entirety of src/gnu/lib/libgcc/Makefile, .include it
and override variables as necessary.  This vastly shortens this file, makes
tracking toolchain changes more automatic, and makes the linuxthreads port
build on both -stable and -current.
2000-07-12 01:43:01 +00:00
Satoshi Asami
40c06420b7 Add lib/liblgcc_r_p.a.
Submitted by:	bento
2000-06-07 21:43:41 +00:00
Jason Evans
7f8cdb6f00 Update from version 2.1.2 to 2.1.3 of LinuxThreads. 2000-05-24 04:14:41 +00:00
Michael Haro
e78fe5bbfb portlint - mostly moving around variables. 2000-04-16 23:12:33 +00:00
Michael Haro
ed33fb7de0 PORTNAME/PORTVERSION update 2000-04-11 21:30:15 +00:00
Jason Evans
bf00c85054 Require a more recent OSVERSION, since linuxthreads uses dllockinit(),
which only very recently started to work correctly with linuxthreads.
2000-02-01 03:39:26 +00:00
Jason Evans
1f730767b7 Mark linuxthreads as requiring at least FreeBSD 4.0 and only working on
i386.
2000-01-29 11:13:43 +00:00
Jason Evans
d66ea1cc3d Back out changes to lock functions passed to dllockinit().
Don't compile the lockfile.c that comes with LinuxThreads.
2000-01-29 03:15:24 +00:00
Jason Evans
85bfda41f7 Don't use the pthreads rwlock implementation for dllockinit(), since it
causes infinite recursion while trying to initialize the internal library
state.  Instead, use a simple spinlock-based rwlock implementation.

Make minor cancellation cleanups.
2000-01-25 22:37:11 +00:00