cdesktopenv/cde/programs/dtksh
Jon Trulson 81c3c7b0eb ksh93: fix BSD builds due to iconv confusion
For the BSD's we do not want to pass CFLAGS since it includes a
-I/usr/local/incude directive.

This breaks ksh's iconv detection due to the weird way in which iconv
seems to be handled on the BSD's - both a libc impl (preferred), and a
possibly external GNU iconv impl installed in /usr/local.

/usr/local/include is added to CFLAGS by the X11/Motif detection logic
- since that is where all of the needed headers are on the BSDs.

One of the patches from Martijn Decker added CFLAGS to the ksh93 build
CCFLAGS which made this problem show up.

So until/unless that is fixed in ksh93, we will avoid sending
anything to the ksh build system except for SUIDEXECDEFINES
2022-07-09 17:50:35 -06:00
..
examples
ksh93 dtksh: Upgrade ksh93 to 1.0.0-beta.2 2021-12-28 2022-07-09 17:50:35 -06:00
.gitignore gitignore: split out dtksh gitignores into a separate dtksh/.gitignore 2022-07-09 17:50:35 -06:00
DtFuncs.compat.sh
DtFuncs.sh
DtFuncs.sh.src
Dtksh
Makefile.am ksh93: fix BSD builds due to iconv confusion 2022-07-09 17:50:35 -06:00
README-DEVELOPER
README.building
XtCvtrs.c
XtCvtrs.h
dtkcmds.c various: Window objects should be initialised to 0 not NULL 2021-12-24 10:50:28 -07:00
dtkcmds.h dtksh: Upgrade ksh93 to 1.0.0-beta.2 2021-12-28 2022-07-09 17:50:35 -06:00
dtkcvt.c dtksh: Resolve uninitialized warningsc 2021-12-24 10:50:28 -07:00
dtkcvt.h
dtksh.exp
dtksh.h dtksh: fix implicit-function-declaration warnings 2021-11-16 12:39:18 -07:00
dtksh.msg
extra.c
extra.h
ksh93.man
ksh93.memo
msgs.c
msgs.h
widget.c
widget.h
xmcmds.c dtksh: fix implicit-function-declaration warnings 2021-11-16 12:39:18 -07:00
xmcmds.h
xmcvt.c
xmcvt.h
xmksh.h
xmwidgets.c
xmwidgets.h

README.building

/* $XConsortium: README.building /main/2 1996/07/15 14:12:43 drk $ */
Since dtksh does not use anything like a normal build environment,
here are some hints.

- Make a Makefile in cdesrc/cde1/dtksh as if it were a normal
  component

- make includes; make all

  dtksh will build initially fine.

Now, if you change anything, you'll find that just typing "make"
doesn't do anything.  What you have to do is go to
cdesrc/cde1/dtksh/ksh93/ship.  Under there you'll find a distorted
version of the directory structure under ksh93.  Find the directory
that corresponds to the directory that contains your change and
remove the file "BUILT".  Now cd back up to dtksh and make, and
dtksh should remake itself.  Of course, it will recompile many
more files than you actually built, since dtksh does not use
make in any recognizable way.

In fact, it appears the best thing to do is go to cde1/dtksh
and run "ksh MakeClean" which will blow away many files and force
a clean make.

Be extremely careful: Just because you get a dtksh built at
the end does *not* mean the build was successful.  There
are several auxiliary binaries in ksh93/bin that must be built.
Make sure that ksh93/bin looks like this at the end:

urth 1331$ pwd
/scde/SunOS_sparc/opt/stable/build/cde1/dtksh/ksh93/bin
urth 1332$ ls
feature*    ksh*        proto*      silent*
ignore*     pax*        shcomp*     suid_exec*

If any of these are missing, search carefully back through
the make log looking for errors.