[PATCH app-xdm 1/3] config: add "Check for system libraries" section

Gaetan Nadon memsize at videotron.ca
Wed Oct 20 15:43:10 PDT 2010


This section gathers all the system libraries needed for
xdm features. They may be in standard C library on some
platforms and in discrete libraries on others.

Any xorg library is excluded from this section.
XTRANS macros will be invoked at a later time and contribute
additional libraries.

Although a function is used to search for the library, this
should not be confused with function checking (AC_CHECK_FUNC).

Sample configuration output on GNU/Linux:
checking for library containing getifaddrs... none required
checking for library containing getspnam... none required
checking for library containing setproctitle... no
checking for library containing setusercontext... no
checking for library containing pam_open_session... no
checking for library containing is_selinux_enabled... -lselinux
checking for library containing arc4random... -lbsd
checking for library containing crypt... -lcrypt

In the Makefile, libs are pre-pended:
LIBS = -lcrypt -lbsd -lselinux

Signed-off-by: Gaetan Nadon <memsize at videotron.ca>
---

This patch opens up opportunities to streamline libraries and
functions checks in this configuration file.
Additional patches will follow. 

 configure.ac |   35 +++++++++++++++++++++++++++++++++--
 1 files changed, 33 insertions(+), 2 deletions(-)

diff --git a/configure.ac b/configure.ac
index 72a08fd..0ecf897 100644
--- a/configure.ac
+++ b/configure.ac
@@ -53,6 +53,39 @@ XORG_WITH_LINT
 AC_PATH_PROG(MKTEMP_COMMAND, mktemp)
 AM_CONDITIONAL(HAVE_MKTEMP_COMMAND, test x$MKTEMP_COMMAND != x)
 
+#------------------------------------------------------------------------------
+#			Check for system libraries
+#
+# AC_SEARCH_LIBS: tests using $LIBS and tests again with each listed library.
+#                 pre-pends the found library to $LIBS.
+#
+#------------------------------------------------------------------------------
+# Function getifaddrs comes from the C library or the name service library (nsl)
+AC_SEARCH_LIBS([getifaddrs], [nsl])
+
+# Function getspnam comes from the C library, Sysmtem V -lsec, UnixWare 7 -lgen
+# or Old Linux versions -lshadow
+AC_SEARCH_LIBS([getspnam], [sec gen shadow])
+
+# Function setproctitle is in BSD -lutil or GNU/Linux -lbsd but N/A on Solaris
+AC_SEARCH_LIBS([setproctitle], [util bsd])
+
+# Function setusercontext is in BSD -lutil but N/A on Solaris or GNU/Linux
+AC_SEARCH_LIBS([setusercontext], [util])
+
+# Function pam_open_session is in -lpam
+AC_SEARCH_LIBS([pam_open_session], [pam])
+
+# Function is_selinux_enabled is in -lselinux
+AC_SEARCH_LIBS(is_selinux_enabled, [selinux])
+
+# Function arc4random is in BSD standard C or GNU/Linux -lbsd
+AC_SEARCH_LIBS([arc4random], [bsd])
+
+# Function crypt comes from the C library on GNU/Linux
+AC_SEARCH_LIBS(crypt, crypt)
+#------------------------------------------------------------------------------
+
 m4_ifdef([AM_SILENT_RULES],[HAVE_AM_SILENT_RULES=yes])
 AM_CONDITIONAL(HAVE_AM_SILENT_RULES, test x$HAVE_AM_SILENT_RULES != x)
 
@@ -400,8 +433,6 @@ fi
 
 AM_CONDITIONAL(HAS_XDM_AUTH, test x$xdmauth = xyes -a x$xdmauth_enable != xno)
 
-AC_SEARCH_LIBS(crypt, crypt)
-
 AC_SUBST(XDM_CFLAGS)
 AC_SUBST(XDM_LIBS)
 
-- 
1.6.0.4



More information about the xorg-devel mailing list