summaryrefslogtreecommitdiffstats
path: root/lib/libkse
diff options
context:
space:
mode:
authordeischen <deischen@FreeBSD.org>2007-05-13 14:12:40 +0000
committerdeischen <deischen@FreeBSD.org>2007-05-13 14:12:40 +0000
commitbf3a79274dac1f6f74c4a1d126e3fb098ac9fc6c (patch)
treecedba41bbd60d21fa5e0f68f5e71c480784553bb /lib/libkse
parentb8fdd70fefcae4b85366907c61409d531b3ec165 (diff)
downloadFreeBSD-src-bf3a79274dac1f6f74c4a1d126e3fb098ac9fc6c.zip
FreeBSD-src-bf3a79274dac1f6f74c4a1d126e3fb098ac9fc6c.tar.gz
Enable symbol versioning by default. Use WITHOUT_SYMVER to disable it.
Warning, after symbol versioning is enabled, going back is not easy (use WITHOUT_SYMVER at your own risk). Change the default thread library to libthr. There most likely still needs to be a version bump for at least the thread libraries. If necessary, this will happen later.
Diffstat (limited to 'lib/libkse')
-rw-r--r--lib/libkse/Makefile27
-rw-r--r--lib/libkse/thread/thr_private.h2
2 files changed, 17 insertions, 12 deletions
diff --git a/lib/libkse/Makefile b/lib/libkse/Makefile
index e043e6d..dee03db 100644
--- a/lib/libkse/Makefile
+++ b/lib/libkse/Makefile
@@ -7,12 +7,14 @@
# To included legacy CSRG sccsid strings, add -DLIBC_SCCS and -DSYSLIBC_SCCS
# (for system call stubs) to CFLAGS below. -DSYSLIBC_SCCS affects just the
# system call stubs.
-.if ${MACHINE_ARCH} == "sparc64"
-LIB=kse
-.else
-LIB=pthread
+
+.if defined(DEFAULT_THREAD_LIB) && (${DEFAULT_THREAD_LIB} == "libpthread")
SHLIBDIR?= /lib
.endif
+
+.include <bsd.own.mk>
+
+LIB=kse
SHLIB_MAJOR= 2
CFLAGS+=-DPTHREAD_KERNEL
CFLAGS+=-I${.CURDIR}/../libc/include -I${.CURDIR}/thread \
@@ -37,13 +39,6 @@ CFLAGS+=-D_PTHREADS_INVARIANTS -Wall
VERSION_MAP=${.CURDIR}/pthread.map
-.if defined(SYMVER_ENABLED)
-# Remove this if library version is bumped and LIBPTHREAD_1_0
-# compatability hacks are removed (see thread/thr_private.h).
-LDFLAGS+=-Wl,-zmuldefs
-CFLAGS+=-DSYMBOL_VERSIONING
-.endif
-
PRECIOUSLIB=
.include "${.CURDIR}/arch/${MACHINE_ARCH}/Makefile.inc"
@@ -51,4 +46,14 @@ PRECIOUSLIB=
.include "${.CURDIR}/sys/Makefile.inc"
.include "${.CURDIR}/thread/Makefile.inc"
+.if ${DEFAULT_THREAD_LIB} == "libpthread"
+SYMLINKS+=lib${LIB}.a ${LIBDIR}/libpthread.a
+.if !defined(NO_PIC)
+SYMLINKS+=lib${LIB}.so ${LIBDIR}/libpthread.so
+.endif
+.if ${MK_PROFILE} != "no"
+SYMLINKS+=lib${LIB}_p.a ${LIBDIR}/libpthread_p.a
+.endif
+.endif
+
.include <bsd.lib.mk>
diff --git a/lib/libkse/thread/thr_private.h b/lib/libkse/thread/thr_private.h
index 8d302fc..878c0cf 100644
--- a/lib/libkse/thread/thr_private.h
+++ b/lib/libkse/thread/thr_private.h
@@ -64,7 +64,7 @@
* LIBTHREAD_1_0, we need to provide a compatible interface for
* those symbols.
*/
-#if defined(SYMBOL_VERSIONING) && defined(PIC)
+#if 0
#define SYM_LT10(sym) __CONCAT(sym, _lt10)
#define SYM_FB10(sym) __CONCAT(sym, _fb10)
#define SYM_FBP10(sym) __CONCAT(sym, _fbp10)
OpenPOWER on IntegriCloud