autotools: get the PAM support from master working on linux and freebsd

This commit is contained in:
Jon Trulson
2021-06-02 17:16:37 -06:00
parent a277fcb340
commit 2a3e91383b
9 changed files with 104 additions and 12 deletions

View File

@@ -2,6 +2,14 @@ SUBDIRS = config
bin_PROGRAMS = dtlogin dtgreet dtchooser
if HAS_PAM_LIBRARY
PAM_LIB = -lpam
DTPAMSVCLIB = @LIBPAMSVC@
else
PAM_LIB =
DTPAMSVCLIB =
endif
XDMDIR = $(CDE_LOGFILES_TOP)
DEF_SERVER = $(XBINDIR)/X
@@ -22,7 +30,7 @@ dtlogin_SOURCES = access.c account.c auth.c genauth.c daemon.c dm.c \
dpylist.c error.c file.c mitauth.c protodpy.c policy.c \
reset.c server.c session.c socket.c util.c \
verify.c sysauth.c fontpath.c qualify.c choose.c netaddr.c \
xdmcp.c
xdmcp.c $(PAM_SRCS)
# We play a game here with resources.o (dtlogin). It needs special options.
noinst_LIBRARIES = libresource.a
@@ -49,7 +57,7 @@ dtchooser_SOURCES = chooser.c dtchooser.c vglogo.c vgutil.c vgcallback.c \
vglang.c
dtlogin_LDADD = libresource.a @DTCLIENTLIBS@ -lXau -lXmu -lXext -lXdmcp \
$(FREETYPE_LIBS) $(XTOOLLIB) $(TIRPCLIB)
$(FREETYPE_LIBS) $(XTOOLLIB) $(TIRPCLIB) $(DTPAMSVCLIB) $(PAM_LIB)
dtgreet_LDADD = $(DTCLIENTLIBS) $(FREETYPE_LIBS) $(XTOOLLIB)

View File

@@ -4,12 +4,24 @@ AM_CPPFLAGS = -DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
-DCDE_LOGFILES_TOP=$(CDE_LOGFILES_TOP) \
-DKORNSHELL=$(KSH)
CPP_TARGETS = 0060.dtsysenv Dtlogin Xaccess Xconfig Xconfig.con \
Xconfig.nc Xfailsafe Xreset Xresources Xresources.ive \
Xservers Xservers.con Xservers.nc Xsession Xsession.ive \
Xsetup Xstartup current.session display.current.session \
display.home.session dtlslocale dtprofile home.session \
sys.dtprofile
if LINUX
AM_CPPFLAGS += -DXPROJECTROOT="/usr" -Dlinux -D__linux__
endif
if FREEBSD
AM_CPPFLAGS += -DFREEBSD -DXPROJECTROOT="/usr/local" -D__FreeBSD__
PAM_AUTHENTICATION_MODULE = /usr/local/lib/security/pam_pwauth_suid.so
AM_CPPFLAGS += -DPAM_AUTHENTICATION_MODULE=$(PAM_AUTHENTICATION_MODULE)
CPP_TARGETS += pam.d.dtlogin
endif
if SOLARIS
@@ -22,20 +34,15 @@ endif
if NETBSD
AM_CPPFLAGS += -DXPROJECTROOT="/usr/X11R7" -D__NetBSD__
PAM_AUTHENTICATION_MODULE = /usr/pkg/lib/security/pam_pwauth_suid.so
AM_CPPFLAGS += -DPAM_AUTHENTICATION_MODULE=$(PAM_AUTHENTICATION_MODULE)
CPP_TARGETS += pam.d.dtlogin
endif
if BSD
AM_CPPFLAGS += -DCSRG_BASED
endif
CPP_TARGETS = 0060.dtsysenv Dtlogin Xaccess Xconfig Xconfig.con \
Xconfig.nc Xfailsafe Xreset Xresources Xresources.ive \
Xservers Xservers.con Xservers.nc Xsession Xsession.ive \
Xsetup Xstartup current.session display.current.session \
display.home.session dtlslocale dtprofile home.session \
sys.dtprofile
BUILT_SOURCES = $(CPP_TARGETS)
CLEANFILES = $(CPP_TARGETS)
@@ -149,3 +156,7 @@ home.session: home.session.src
$(RM) $@
$(GENCPP) -P -DXCOMM=# $(AM_CPPFLAGS) $< > $@
pam.d.dtlogin: pam.d.dtlogin.src
$(RM) $@
$(GENCPP) -P -DXCOMM=# $(AM_CPPFLAGS) $< > $@