aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2025-04-28 08:43:49 +0000
committerLaurent Bercot <ska@appnovation.com>2025-04-28 08:43:49 +0000
commita5d1e7f6dd3f616feeee6c9b585f97da8ee3046b (patch)
tree6595d22c456d81a12afbb6867529bfb396460947
parent315aeacc8208cf6084c333a3a8fb04f8deb54cb8 (diff)
downloadnsss-a5d1e7f6dd3f616feeee6c9b585f97da8ee3046b.tar.gz
Latest batch of fixes
Signed-off-by: Laurent Bercot <ska@appnovation.com>
-rw-r--r--INSTALL4
-rw-r--r--doc/libnsss/index.html6
-rw-r--r--doc/nsswitch.html2
-rw-r--r--package/configure-snippets/configure_extra_checks1
-rwxr-xr-xtools/configure.template16
-rwxr-xr-xtools/gen-configure.el1
-rwxr-xr-xtools/gen-dotpc.sh2
7 files changed, 22 insertions, 10 deletions
diff --git a/INSTALL b/INSTALL
index b5c8ab6..5844335 100644
--- a/INSTALL
+++ b/INSTALL
@@ -11,8 +11,8 @@ Build Instructions
s6 version 2.13.2.0 or later: https://skarnet.org/software/s6/
This software will run on any operating system that implements
-POSIX.1-2008, available at:
- https://pubs.opengroup.org/onlinepubs/9699919799/
+POSIX.1-2024, available at:
+ https://pubs.opengroup.org/onlinepubs/9799919799/
* Standard usage
diff --git a/doc/libnsss/index.html b/doc/libnsss/index.html
index bbe5029..0ec9698 100644
--- a/doc/libnsss/index.html
+++ b/doc/libnsss/index.html
@@ -93,8 +93,8 @@ implementation of the above standard functions, as
Application programs can use the internal API directly, or
the prefixed <tt>nsss_</tt> functions directly. Most programs,
however, will simply use the standard
-<a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/pwd.h.html">pwd.h</a>,
-<a href="http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/grp.h.html">grp.h</a> or
+<a href="http://pubs.opengroup.org/onlinepubs/9799919799/basedefs/pwd.h.html">pwd.h</a>,
+<a href="http://pubs.opengroup.org/onlinepubs/9799919799/basedefs/grp.h.html">grp.h</a> or
<a href="http://man7.org/linux/man-pages/man3/getspnam.3.html">shadow.h</a>
interfaces. nsss provides a version of these standard headers: if an
application is built with these headers, then <tt>getpwnam()</tt>
@@ -165,7 +165,7 @@ sysdeps directory. </li>
<ul>
<li> nsss-all, nsss-switch and nsss-unix implement the
-<a href="http://pubs.opengroup.org/onlinepubs/9699919799/functions/getpwnam.html">POSIX
+<a href="http://pubs.opengroup.org/onlinepubs/9799919799/functions/getpwnam.html">POSIX
layer</a> of user database access, plus a few
<a href="http://man7.org/linux/man-pages/man3/getpwent_r.3.html">GNU extensions</a>. </li>
<li> The <a href="nsss-unix.html">nsss/nsss-unix.h</a> header
diff --git a/doc/nsswitch.html b/doc/nsswitch.html
index 3e40eca..c08ea74 100644
--- a/doc/nsswitch.html
+++ b/doc/nsswitch.html
@@ -38,7 +38,7 @@ In other words, it's crap. Here's why.
<em>nsswitch</em> works by reading a configuration file,
<tt>/etc/nsswitch.conf</tt>, and depending on what it reads in this
file, loading one or more shared libraries, via
-<a href="http://pubs.opengroup.org/onlinepubs/9699919799/functions/dlopen.html">dlopen()</a>,
+<a href="http://pubs.opengroup.org/onlinepubs/9799919799/functions/dlopen.html">dlopen()</a>,
into the application. These shared libraries, for instance
<tt>/lib/libnss_files-2.19.so</tt>, are provided by the NSS implementation
(glibc on Linux). This mechanism has drawbacks.
diff --git a/package/configure-snippets/configure_extra_checks b/package/configure-snippets/configure_extra_checks
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/package/configure-snippets/configure_extra_checks
@@ -0,0 +1 @@
+
diff --git a/tools/configure.template b/tools/configure.template
index dd449d0..54e5ea1 100755
--- a/tools/configure.template
+++ b/tools/configure.template
@@ -23,6 +23,7 @@ Fine tuning of the installation directories:
--libexecdir=DIR package-scoped executables [EPREFIX/libexec]
--libdir=DIR static library files [PREFIX/lib]
--includedir=DIR C header files [PREFIX/include]
+ --sysconfdir=DIR global configuration files [PREFIX/etc]
--pkgconfdir=DIR pkg-config .pc files [PREFIX/lib/pkgconfig]
${configure_help_install}
If no --prefix option is given, by default libdir (but not dynlibdir) will be
@@ -141,6 +142,7 @@ libexecdir='$exec_prefix/libexec'
bindir='$exec_prefix/bin'
libdir='$prefix/lib'
includedir='$prefix/include'
+sysconfdir='$prefix/etc'
pkgconfdir='$prefix/lib/pkgconfig'
shebangdir='$bindir'
sysdeps='$prefix/lib/skalibs/sysdeps'
@@ -177,10 +179,11 @@ for arg ; do
--bindir=*) bindir=${arg#*=} ;;
--libdir=*) libdir=${arg#*=} ;;
--includedir=*) includedir=${arg#*=} ;;
+ --sysconfdir=*) sysconfdir=${arg#*=} ;;
--pkgconfigdir=*) pkgconfigdir=${arg#*=} ;;
--with-sysdeps=*) sysdeps=${arg#*=} manualsysdeps=true ;;
--with-include=*) var=${arg#*=} ; stripdir var ; addincpath="$addincpath -I$var" ; depincpath="${depincpath}${depincpath:+ }-I$var" ;;
- --with-lib=*) var=${arg#*=} ; stripdir var ; addlibspath="$addlibspath -L$var" ; deplibpath="${deplibpath}${deplibpath:+ }-I$var" ; vpaths="$vpaths $var" ;;
+ --with-lib=*) var=${arg#*=} ; stripdir var ; addlibspath="$addlibspath -L$var" ; deplibpath="${deplibpath}${deplibpath:+ }-L$var" ; vpaths="$vpaths $var" ;;
--with-dynlib=*) var=${arg#*=} ; stripdir var ; addlibdpath="$addlibdpath -L$var" ; vpathd="$vpathd $var" ;;
--with-pkgconfig=*) pkgconf=${arg#*=} ;;
--with-pkgconfig) pkgconf=${PKG_CONFIG:-pkg-config} ;;
@@ -231,7 +234,7 @@ fi
# Expand installation directories
stripdir prefix
-for i in exec_prefix dynlibdir libexecdir bindir libdir includedir pkgconfdir sysdeps sproot ${configure_expand_dirs} ; do
+for i in exec_prefix dynlibdir libexecdir bindir libdir includedir sysconfdir pkgconfdir sysdeps sproot ${configure_expand_dirs} ; do
eval tmp=\${$i}
eval $i=$tmp
stripdir $i
@@ -240,7 +243,7 @@ done
# Process deps-build
if test -n "$pkgconf" || $pcw || $slashpackage ; then
oldifs="$IFS"
- while IFS=" " read cond usedinlibs pkg ver libs ; do
+ while IFS=" " read cond usedinlibs pkg ver libs ; do
IFS="$oldifs"
eval "cond=$cond; usedinlibs=$usedinlibs"
if $cond ; then
@@ -418,6 +421,8 @@ else
LDFLAGS_NOSHARED="${LDFLAGS_NOSHARED}${addlibdpath}"
fi
+${configure_extra_checks}
+
echo "Creating config.mak..."
cmdline=$(quote "$0")
for i ; do cmdline="$cmdline $(quote "$i")" ; done
@@ -436,6 +441,7 @@ libexecdir := $libexecdir
bindir := $bindir
libdir := $libdir
includedir := $includedir
+sysconfdir := $sysconfdir
pkgconfdir := $pkgconfdir
sysdeps := $sysdeps
slashpackage := $slashpackage
@@ -513,14 +519,18 @@ EOF
if $slashpackage ; then
echo "#define ${package_macro_name}_BINPREFIX \"$bindir/\""
echo "#define ${package_macro_name}_EXTBINPREFIX \"$extbinprefix/\""
+ echo "#define ${package_macro_name}_EXTLIBEXECPREFIX \"$extbinprefix/\""
elif $abspath ; then
echo "#define ${package_macro_name}_BINPREFIX \"$bindir/\""
echo "#define ${package_macro_name}_EXTBINPREFIX \"$bindir/\""
+ echo "#define ${package_macro_name}_EXTLIBEXECPREFIX \"$libexecdir/\""
else
echo "#define ${package_macro_name}_BINPREFIX \"\""
echo "#define ${package_macro_name}_EXTBINPREFIX \"\""
+ echo "#define ${package_macro_name}_EXTLIBEXECPREFIX \"$libexecdir/\""
fi
echo "#define ${package_macro_name}_LIBEXECPREFIX \"$libexecdir/\""
+echo "#define ${package_macro_name}_SYSCONFPREFIX \"$sysconfdir/\""
${configure_generate_configh}
echo
echo "#endif"
diff --git a/tools/gen-configure.el b/tools/gen-configure.el
index 2017dc2..577d86f 100755
--- a/tools/gen-configure.el
+++ b/tools/gen-configure.el
@@ -16,6 +16,7 @@ multisubstitute
importas -uS configure_case_lines
importas -uS configure_expand_dirs
importas -uS configure_slashpackage_other
+ importas -uS configure_extra_checks
importas -uS configure_generate_make
importas -uS configure_generate_configh
}
diff --git a/tools/gen-dotpc.sh b/tools/gen-dotpc.sh
index 63c8929..802c78e 100755
--- a/tools/gen-dotpc.sh
+++ b/tools/gen-dotpc.sh
@@ -85,7 +85,7 @@ echo "includedir=${includedir}"
echo "libdir=${libdir}"
echo "dynlibdir=${dynlibdir}"
echo
-echo "Name: ${library}"
+echo "Name: lib${library}"
echo "Version: ${version}"
echo "Description: ${description:-The ${library} library.}"
echo "URL: ${url:-https://skarnet.org/software/${package}/}"