Skip to content

linux-pam/linux-pam

master
Switch branches/tags
Code

Latest commit

…config files.

Fix undefined references to ${exec_prefix} in pkgconfig files on Guix.
The subsequent declarations of ${libdir} and ${includedir} in the same
files require this commit when ${prefix} is set to something other
than /usr.

When the pkgconfig files were initially provided, the two lines added
here were dropped for what seemed like a good reason. [1] In the
common case of a /usr prefix, 'configure.ac' sets ${libdir} and
possibly ${includedir} explicitly [2] so the additional lines were
then not needed.

Guix and probably Nix too, however, depart from the Filesystem
Hierarchy Standard and require the missing lines. Without those lines,
the pkgconfig files are defective on Guix. [3]

Since working systems are not affected, the lines are added for all.
The fix was confirmed for Guix. One of the files looked like this:

prefix=/gnu/store/3mcmjilqrivrpb3hvps32lnbnyrxrzr8-linux-pam-1.5.2-1.dc2f566
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=/gnu/store/3mcmjilqrivrpb3hvps32lnbnyrxrzr8-linux-pam-1.5.2-1.dc2f566/include/security

Name: PAM
Description: The primary Linux-PAM library. It is used by PAM modules and PAM-aware applications.
URL: http://www.linux-pam.org/
Version: 1.5.2
Cflags: -I${includedir}
Libs: -L${libdir} -lpam

* libpam/pam.pc.in, libpamc/pamc.pc.in, libpam_misc/pam_misc.pc.in:
  Add @Prefix@ and @exec_prefix@.

Resolves: #466

[1] #369 (comment)
[2] https://github.com/linux-pam/linux-pam/blob/40c271164dbcebfc5304d0537a42fb42e6b6803c/configure.ac#L28-L36
[3] #466
f69a604

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
ci
 
 
 
 
doc
 
 
 
 
 
 
 
 
 
 
 
 
m4
 
 
 
 
 
 
po
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Hello!

Thanks for downloading Linux-PAM.

NOTES:

How to use it is as follows:

Please look at the ci/install-dependencies.sh for the necessary
prerequisite packages to be able to build the Linux-PAM. The script
is targeted at Debian based Linux distributions so the package
names and availability might differ on other distributions.

If you check out the sources from git, install Autotools and generate
configuration scripts, ensuring you have the minimum packages installed,
the ci scripts may help here:

      ./autogen.sh

Then compile:

      ./configure --help | less
      ./configure <your-options>
      make

To make sure everything was compiled correct, run:

      make check

If a test fails, you should not continue to install this build.
These tests require a suitable file /etc/pam.d/other; if necessary,
create such a file containing, e.g., these five lines (not indented)

	#%PAM-1.0
	auth	 required	pam_deny.so
	account	 required	pam_deny.so
	password required	pam_deny.so
	session	 required	pam_deny.so


Note, if you are worried - don't even think about doing the next line
(most Linux distributions already support PAM out of the box, so if
something goes wrong with installing the code from this version your
box may stop working..)

      make install

That said, please report problems to the bug reporting database
at https://github.com/linux-pam/linux-pam/issues .

You can run additional checks after installing by executing

      make xtests

as root.

WARNING: Running "make xtests" can overwrite configuration data
or make the system insecure/unfunctional for a short time!
Backup all important data before!

To regenerate manual pages from the XML source files you need the
docbook-xsl stylesheets in version 1.69.1 or newer, older versions had
a bug which generates a broken layout.