programs/dtwm/Dtwm.defs.src: Update default Dtwm backdrop
localized/*/app-defaults/Dtwm.tmsg: Update translations to reflect change
For CDE users with sufficiently high resolution screens, the abrupt
transition towards the end of the default SkyLight backdrop image bore
a close enough resemblance to graphical corruption to spur bug
reports. This problem likely did not manifest to the original CDE
developers using the typical monitors of the 1990s.
This patch changes the default backdrop to KnitLight, which comports
well with CDE's low distraction UI while still offering something
visually interesting enough to showcase CDE's support for bitmap
backdrops. Because of the repeating pattern within KnitLight, this
problem will not occur in the future. Additionally, SkyLight will be
retained as a CDE backdrop.
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.
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.
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.
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.
Shell isn't portable, so upstream ksh93 has a "flat" function that we can use
to put binaries in a static place that doesn't require a shell command. We still
do need an intermediate setup.sh shell script due to a bug in ksh that object
files aren't being put in lib, and FEATURE not in include. We also cut out some
unused symbols, and a hpux specific implementation of dynlib (new hpux should
conform to the posix implementation anyhow.)