Commit Graph
18 Commits
Author SHA1 Message Date
Lev Kujawski 356ac2f327 Purge unused Freetype dependency from CDE
config/cf/{DragonFly,OpenBSD,darwin}.cf: Remove Freetype imake settings
config/cf/darwinLib.tmpl: Do not link against Freetype
debian/control: Remove Freetype and Xft dependencies
*/Imakefile: Purge Freetype includes

lib/DtWidget/ComboBoxP.h
lib/DtWidget/SpinBoxP.h
programs/dtfile/ChangeDirP.c
programs/dtlogin/vgcallback.c
    Undefine USE_XFT so Motif 2.3 doesn't pull in Freetype

CDE included Freetype and Xft solely to satisfy builds of Motif with
Xft support enabled. However, as CDE only supports bitmap fonts, this
dependency was entirely superfluous and unnecessarily broke backwards
compatibility with older systems.
2021-06-02 19:56:26 -06:00
Lev Kujawski 1f52f5ca81 Avoid Global Offset Table (GOT) limits by enabling -fPIC on the BSDs.
config/cf/bsdLib.rules: Switch -fpic to -fPIC
lib/DtXinerama/Imakefile: Use $(PICFLAGS) instead of -fpic

Several tickets have been opened by users encountering the low 8KiB
GOT limit on SPARC systems running BSD. This change makes CDE builds
on BSD more consistent with those on Linux, where -fPIC has been the
default without any reported issues.
2021-06-02 19:56:26 -06:00
Lev Kujawski a6ea2a2d52 Centralize catgets() calls through MsgCat
CDE has relied upon catgets() implementations following a relaxed
interpretation of the XPG internationalization standard that ignored
-1, the standard error value returned by catopen, as the catalog
argument. However, this same behavior causes segmentation faults with
the musl C library.

This patch:

- Centralizes (with the exception of ToolTalk) all calls to catopen(),
  catgets(), and catclose() through MsgCat within the DtSvc library.
- Prevents calls to catgets() and catclose() that rely upon
  undefined behavior.
- Eliminates a number of bespoke catgets() wrappers, including multiple
  redundant caching implementations designed to work around a design
  peculiarity in HP/UX.
- Eases building CDE without XPG internationalization support by providing
  the appropriate macros.
2021-06-02 19:55:15 -06:00
Lev Kujawski 3379999106 dtinfo: rename the CATGETS macro to MCATGETS 2021-06-02 19:51:24 -06:00
Lev Kujawski fc1d29be81 config/cf/Imake.cf: Define AArch64Architecture on the BSDs. 2021-06-02 19:51:24 -06:00
Lev Kujawski 9a695e9411 dtprintinfo: don't use rresvport() on Linux systems using the musl C library
Disable binding a privileged client port with rresvport() on Linux
systems using the musl C library, where that function is
unsupported. If there is a need for XPrint support, a BSD-licensed
implementation of rresvport() is available in the portable edition of
OpenSSH.
2021-01-30 17:22:27 -07:00
Lev Kujawski f7227e1b74 dtinfo: Include config.h for the definition of u_int
Also, properly include unistd.h as a system header.
2021-01-30 17:22:12 -07:00
Lev Kujawski c2d2accbad dtinfo: the musl C library requires the inclusion of the POSIX fcntl header 2021-01-30 17:21:57 -07:00
Lev Kujawski 668b9c19a3 dtdocbook/instant: the musl C library does not define MAXNAMLEN
Use the POSIX alternative NAME_MAX instead.
2021-01-30 17:21:16 -07:00
Lev Kujawski 21491c0e52 imake: fix warnings on PowerPC builds
Also correct a compile failure occurring within DtMmdb's
atoi_pearson.C by defining PowerPC as a big endian platform.
2021-01-30 17:20:59 -07:00
Lev Kujawski e54ee036ac Fix incompatibilites between the Desktop Korn Shell and the musl C library:
- Only check for POSIX's termios.h when deciding to use the POSIX terminal interfaces.
- Check for C99's va_copy in addition to __va_copy.
2021-01-23 16:39:44 -07:00
Lev Kujawski 225522cc6b Define time_t within AccessI.h by including <time.h>. 2021-01-15 18:33:26 -07:00
Lev Kujawski 325132735b Use the C99 standard va_copy if possible for compatibility with the musl C library. 2021-01-10 18:08:00 -07:00
Lev Kujawski 13c173d22c On Linux, use SVR4's (now POSIX) mktime() instead of BSD's non-standard timelocal(). 2021-01-10 18:08:00 -07:00
Lev Kujawski 0e282a0ad7 On Linux, use the SVR4 (now POSIX) signal and locking interfaces instead of the non-standard BSD equivalents. 2021-01-10 18:08:00 -07:00
Lev Kujawski 5c801a07a0 Hide FILE internals from the musl C library that conflict with the Desktop Korn Shell's SFIO. 2021-01-10 18:08:00 -07:00
Lev Kujawski d14d956c00 Rename functions within ToolTalk that conflict with the musl C library headers. 2021-01-10 18:08:00 -07:00
Lev Kujawski 5d5523fd6a Define _DtPLATFORM_MAX_LEN for C libraries (including musl) that do not provide the SVID SYS_NMLN definition. Use sizeof() to replace another #ifdef. 2021-01-10 18:08:00 -07:00