1
0
Fork 0
mirror of git://git.code.sf.net/p/cdesktopenv/code synced 2025-02-13 11:42:21 +00:00

utempter: complete the implementation

Liang Chang added utempter support to the dtterm widget in
pre-autoconf CDE.  While the code itself was merged, it was still not
"turned on" for autoconf builds.

This commit completes the implementation allowing dtterm on Linux and
the BSDs to be installed without having to be setuid root -- as long
as the libutempter headers and libraries are installed.
This commit is contained in:
Jon Trulson 2021-07-04 16:24:24 -06:00
parent 67ef980644
commit 2730367844
4 changed files with 26 additions and 4 deletions

View file

@ -377,7 +377,7 @@ fi
dnl headers
AC_HEADER_STDC
AC_CHECK_HEADERS([locale.h security/pam_appl.h])
AC_CHECK_HEADERS([locale.h security/pam_appl.h utempter.h])
dnl libraries
AC_CHECK_LIB(m, cosf)
@ -451,6 +451,13 @@ AC_CHECK_LIB(pam, pam_start,
AM_CONDITIONAL([HAS_PAM_LIBRARY], [test "x$ac_cv_lib_pam_pam_start" = "xyes"])
dnl figure out utempter support
AC_CHECK_LIB(utempter, utempter_add_record,
[SOURCE_CPP_DEFINES="${SOURCE_CPP_DEFINES} -DHAS_UTEMPTER_LIBRARY"])
AM_CONDITIONAL([HAS_UTEMPTER_LIBRARY], [test "x$ac_cv_lib_utempter_utempter_add_record" = "xyes"])
dnl Figure out TCL
SC_PATH_TCLCONFIG

View file

@ -21,4 +21,8 @@ if SOLARIS
libDtTerm_la_LIBADD += -ldl -lgen
endif
if HAS_UTEMPTER_LIBRARY
libDtTerm_la_LIBADD += -lutempter
endif
libDtTerm_la_LDFLAGS = -version-info 2:1:0

View file

@ -42,9 +42,14 @@ libTermPrim_la_SOURCES += TermPrimGetPty-svr4.c
AM_CPPFLAGS += -DSUN_ARCHITECTURE
endif
# uses CSRG_BASED...
# Use the posix pts api, like linux
if BSD
libTermPrim_la_SOURCES += TermPrimGetPty-bsd.c
libTermPrim_la_SOURCES += TermPrimGetPty-pts.c
# uses CSRG_BASED global define
endif
if FREEBSD
AM_CPPFLAGS += -DFREEBSD_ARCHITECTURE
endif
if OPENBSD
@ -52,6 +57,6 @@ AM_CPPFLAGS += -DOPENBSD_ARCHITECTURE
endif
if LINUX
libTermPrim_la_SOURCES += TermPrimGetPty-svr4.c
libTermPrim_la_SOURCES += TermPrimGetPty-pts.c
AM_CPPFLAGS += -DLINUX_ARCHITECTURE
endif

View file

@ -8,6 +8,10 @@ if BSD
dtterm_LDADD += -lutil
endif
if HAS_UTEMPTER_LIBRARY
dtterm_LDADD += -lutempter
endif
dtterm_CFLAGS = -I$(top_builddir)/lib/DtTerm/TermPrim \
-I$(top_builddir)/lib/DtTerm/Term \
-I$(top_builddir)/lib/DtTerm/TermView \
@ -45,5 +49,7 @@ dtterm.ti: terminfoChecklist
install-exec-hook:
chown root $(DESTDIR)$(bindir)/dtterm
if !HAS_UTEMPTER_LIBRARY
chmod 4755 $(DESTDIR)$(bindir)/dtterm
endif