aboutsummaryrefslogtreecommitdiff
path: root/lib/libpam
diff options
context:
space:
mode:
authorGlen Barber <gjb@FreeBSD.org>2016-04-16 02:32:12 +0000
committerGlen Barber <gjb@FreeBSD.org>2016-04-16 02:32:12 +0000
commit0edd2576c0e07f525c80e4aa5ff24350b55f18b7 (patch)
treea8871301d693c6d33d43cd3171b1ee4783fec0e4 /lib/libpam
parent010855174aaafbf3c0fee918f12e843089b58b6f (diff)
parentd1ad1a7394330d70efc2f2c58862a02dd8900acf (diff)
downloadsrc-0edd2576c0e07f525c80e4aa5ff24350b55f18b7.tar.gz
src-0edd2576c0e07f525c80e4aa5ff24350b55f18b7.zip
MFH
Sponsored by: The FreeBSD Foundation
Notes
Notes: svn path=/projects/release-pkg/; revision=298092
Diffstat (limited to 'lib/libpam')
-rw-r--r--lib/libpam/Makefile9
-rw-r--r--lib/libpam/libpam/Makefile14
-rw-r--r--lib/libpam/modules/Makefile1
-rw-r--r--lib/libpam/modules/Makefile.inc7
-rw-r--r--lib/libpam/static_libpam/Makefile (renamed from lib/libpam/static_modules/Makefile)20
-rw-r--r--lib/libpam/static_libpam/Makefile.depend (renamed from lib/libpam/static_modules/Makefile.depend)0
6 files changed, 25 insertions, 26 deletions
diff --git a/lib/libpam/Makefile b/lib/libpam/Makefile
index 5c3a2ae60cc5..fa73b95b140d 100644
--- a/lib/libpam/Makefile
+++ b/lib/libpam/Makefile
@@ -24,8 +24,11 @@
#
# $FreeBSD$
-# The modules must be built first, because they are built into the
-# static version of libpam.
-SUBDIR+= modules libpam static_modules
+# The modules link in libpam. They build the static modules as well.
+SUBDIR+= libpam modules
+SUBDIR_DEPEND_modules= libpam
+SUBDIR+= static_libpam
+SUBDIR_DEPEND_static_libpam= modules
+SUBDIR_PARALLEL=
.include <bsd.subdir.mk>
diff --git a/lib/libpam/libpam/Makefile b/lib/libpam/libpam/Makefile
index c7122c72abda..531feab83b44 100644
--- a/lib/libpam/libpam/Makefile
+++ b/lib/libpam/libpam/Makefile
@@ -39,7 +39,11 @@ PACKAGE=lib${LIB}
OPENPAM= ${.CURDIR}/../../../contrib/openpam
.PATH: ${OPENPAM}/include ${OPENPAM}/lib/libpam ${OPENPAM}/doc/man
-LIB= pam
+# static_libpam will build libpam.a
+.if !defined(LIB)
+SHLIB= pam
+.endif
+
MK_PROFILE=no
SRCS= openpam_asprintf.c \
@@ -99,7 +103,7 @@ SRCS= openpam_asprintf.c \
# Local additions
SRCS+= pam_debug_log.c
-MAN= openpam.3 \
+MAN?= openpam.3 \
openpam_borrow_cred.3 \
openpam_free_data.3 \
openpam_free_envlist.3 \
@@ -151,10 +155,10 @@ MAN= openpam.3 \
pam_vprompt.3 \
pam.conf.5
-MLINKS= pam.conf.5 pam.d.5
+MLINKS?= pam.conf.5 pam.d.5
CSTD?= c99
-CFLAGS+= -I${.CURDIR} -I${OPENPAM}/include
+CFLAGS+= -I${OPENPAM}/include
CFLAGS+= -DLIB_MAJ=${SHLIB_MAJOR}
CFLAGS+= -DHAVE_DLFUNC=1
CFLAGS+= -DHAVE_FDLOPEN=1
@@ -173,7 +177,7 @@ HEADERS= security/openpam.h \
ADD_HEADERS= security/pam_mod_misc.h
# Headers
-INCS= ${HEADERS} ${ADD_HEADERS}
+INCS?= ${HEADERS} ${ADD_HEADERS}
INCSDIR= ${INCLUDEDIR}/security
.include <src.opts.mk>
diff --git a/lib/libpam/modules/Makefile b/lib/libpam/modules/Makefile
index cacf0115da7a..ee1359bd3acc 100644
--- a/lib/libpam/modules/Makefile
+++ b/lib/libpam/modules/Makefile
@@ -27,5 +27,6 @@
.include "modules.inc"
SUBDIR= ${MODULES}
+SUBDIR_PARALLEL=
.include <bsd.subdir.mk>
diff --git a/lib/libpam/modules/Makefile.inc b/lib/libpam/modules/Makefile.inc
index 2da5a7b524ad..899c3cbbc8f6 100644
--- a/lib/libpam/modules/Makefile.inc
+++ b/lib/libpam/modules/Makefile.inc
@@ -7,14 +7,7 @@ MK_PROFILE= no
CFLAGS+= -I${PAMDIR}/include -I${.CURDIR}/../../libpam
-# This is nasty.
-# For the static case, libpam.a depends on the modules.
-# For the dynamic case, the modules depend on libpam.so.N
-.if defined(_NO_LIBPAM_SO_YET)
-NO_PIC=
-.else
SHLIB_NAME?= ${LIB}.so.${SHLIB_MAJOR}
LIBADD+= pam
-.endif
.include "../Makefile.inc"
diff --git a/lib/libpam/static_modules/Makefile b/lib/libpam/static_libpam/Makefile
index 429e6601e620..f7180e93ef05 100644
--- a/lib/libpam/static_modules/Makefile
+++ b/lib/libpam/static_libpam/Makefile
@@ -35,15 +35,17 @@
#
# $FreeBSD$
-OPENPAM= ${.CURDIR:H:H:H}/contrib/openpam
-.PATH: ${OPENPAM}/lib
-.PATH: ${OPENPAM}/lib/libpam
+.PATH: ${.CURDIR}/../libpam
-all:
-
-SRCS = openpam_static.c
+# Only build the static library.
+LIB= pam
+NO_PIC=
+# Avoid redundancy with the master Makefile.
MAN=
+INCS=
+MLINKS=
+MK_TESTS= no
#
# Static modules
@@ -61,11 +63,7 @@ STATICOBJS+= openpam_static_modules.o
CLEANFILES+= openpam_static.o \
openpam_static_modules.o
-.include <bsd.prog.mk>
-
-.if empty(_SKIP_BUILD)
openpam_static_modules.o: openpam_static.o ${STATIC_MODULES}
${LD} -o ${.TARGET} -r --whole-archive ${.ALLSRC}
-all: ${STATICOBJS}
-.endif
+.include "${.CURDIR}/../libpam/Makefile"
diff --git a/lib/libpam/static_modules/Makefile.depend b/lib/libpam/static_libpam/Makefile.depend
index 373bac45e6da..373bac45e6da 100644
--- a/lib/libpam/static_modules/Makefile.depend
+++ b/lib/libpam/static_libpam/Makefile.depend