Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 28 Nov 2007 15:10:22 -0600
From:      Brooks Davis <brooks@freebsd.org>
To:        freebsd-arch@freebsd.org
Subject:   RFC: libkse*.a in 7.0
Message-ID:  <20071128211022.GA74762@lor.one-eyed-alien.net>

next in thread | raw e-mail | index | archive | help

--yrj/dFKFPuw6o+aM
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

A number of people have proposed a direction in 8.0 that would remove
support for the syscalls and kernel data structures required by libkse.
Apparently this would enable significant simplification of portions of
the kernel, but I have no deeply held personal opinion.  The intent is
that if that happens, alternate versions of the necessicary dynamic
libraries will be supplied in updated compat#x packages.  This will
address most consumers.  The one set of consumers that would not be
addressed is those who have statically linked, threaded binaries using
libkse.

Kris and I realized that if we went that route, life would be
significantly easier if it was difficult to create statically linked,
binaries using libkse under FreeBSD 7.x.  As a result I would like
to commit and MFC the following patch which disables building and
installing libkse*.a in the default case.  This would mean that
significant effort would be required to create a statically linked
application that uses the KSE syscalls.

I believe that removing libkse*.a has little downside and leaves the way
open for either removing or enhancing the KSE system and is the right
thing to do.

-- Brooks

--- /home/brooks/working/freebsd/p4/freebsd/lib/libkse/Makefile	2007-10-29 =
10:43:55.000000000 -0500
+++ lib/libkse/Makefile	2007-11-20 20:39:22.000000000 -0600
@@ -10,12 +10,15 @@
=20
 .include <bsd.own.mk>
=20
-.if (${DEFAULT_THREAD_LIB} =3D=3D "libkse" || ${MK_LIBTHR} =3D=3D "no") &&=
 \
-    ${SHLIBDIR} =3D=3D "/usr/lib"
+.if (${DEFAULT_THREAD_LIB} =3D=3D "libkse" || ${MK_LIBTHR} =3D=3D "no")
+LIB=3Dkse
+.if ${SHLIBDIR} =3D=3D "/usr/lib"
 SHLIBDIR=3D /lib
 .endif
+.else
+SHLIB=3Dkse
+.endif
=20
-LIB=3Dkse
 SHLIB_MAJOR=3D 3
 CFLAGS+=3D-DPTHREAD_KERNEL
 CFLAGS+=3D-I${.CURDIR}/../libc/include -I${.CURDIR}/thread \
--- /home/brooks/working/freebsd/p4/freebsd/ObsoleteFiles.inc	2007-11-18 04=
:16:28.000000000 -0600
+++ ObsoleteFiles.inc	2007-11-20 20:37:39.000000000 -0600
@@ -14,6 +14,12 @@
 # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS las=
t.
 #
=20
+# 200711XX: Disabled installing static versions of libkse by default
+.if ${DEFAULT_THREAD_LIB} !=3D "libkse" && ${MK_LIBTHR} !=3D "no"
+OLD_FILES+=3Dusr/lib/libkse.a
+OLD_FILES+=3Dusr/lib/libkse_p.a
+OLD_FILES+=3Dusr/lib/libkse_pic.a
+.endif
 # 20071108: Removed very crunch OLDCARD support file
 OLD_FILES+=3Detc/defaults/pccard.conf
 # 20071104: Removed bsdlabel, fdisk and gpt from rescue on ia64.

--yrj/dFKFPuw6o+aM
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (FreeBSD)

iD8DBQFHTdk9XY6L6fI4GtQRAp/kAKDUnMXL1A5WBpvjR67qFKco/OVy3wCfYEfy
IJyQ8hDs72ADfzvPxIz3TGU=
=qnCD
-----END PGP SIGNATURE-----

--yrj/dFKFPuw6o+aM--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20071128211022.GA74762>