diff options
author | Emil Velikov <emil.velikov@collabora.com> | 2017-02-20 11:18:58 +0000 |
---|---|---|
committer | Uli Schlachter <psychon@znc.in> | 2017-03-01 17:42:40 +0100 |
commit | 8340ebd656c7e1a5b6d31170c1f3c87df043e793 (patch) | |
tree | 0da84379a074c2e047c9c7cf2ea3c8331223d6a6 /pthread-stubs.pc.in | |
parent | 816ca2affbd5a9d2e551851de4d0a26ec080d948 (diff) | |
download | xcb-pthread-stubs-8340ebd656c7e1a5b6d31170c1f3c87df043e793.tar.gz |
Rework the pthread-stub design
The current design handles the most common use-cases, although it causes
breakage on others (when a pthreads liked library is dlopened). Refer to
the README for further details.
The new design, makes pthread-stubs a "meta" package which _never_
provides a library but only a .pc file.
pthread-stubs checks if the run-time (libc or otherwise) expose
lightweight pthread symbols to link against and defaults to a full blown
pthread.
This way projects can use the Cflags/Libs without having to know the
details. Alternatively they can directly link against the pthread
implementation, although that might bring unwarranted overhead.
v2:
- Remove m4 macro, always use -pthread and document why.
- Sort the symbol list, document how it's derived what is allowed and
what not.
- Rework the README to start from current state of afairs to past ones.
- Document platforms that are 'safe' and ones that are not.
v3:
- Add SVN note about -pthread + Cygwin/mingw/mingw-w64
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Acked-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Uli Schlachter <psychon@znc.in>
Diffstat (limited to 'pthread-stubs.pc.in')
-rw-r--r-- | pthread-stubs.pc.in | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/pthread-stubs.pc.in b/pthread-stubs.pc.in index 6900598..d256d77 100644 --- a/pthread-stubs.pc.in +++ b/pthread-stubs.pc.in @@ -3,6 +3,7 @@ exec_prefix=@exec_prefix@ libdir=@libdir@ Name: pthread stubs -Description: Stubs missing from libc for standard pthread functions +Description: Meta package for pthread symbols - defaults to heavyweight ones if the C runtime does not provide lightweight ones. Version: @PACKAGE_VERSION@ +Cflags: @PKG_CONFIG_CFLAGS@ Libs: @PKG_CONFIG_LIBS@ |