cdesktopenv/cde/programs/dtksh
Patrick Georgi ef2c655f55 Use NULL instead of nullptr
NULL is standard for long enough in POSIX to always be available,
while C23 introduced nullptr as a new constant, creating a conflict
here.
2025-12-18 22:58:26 +01:00
..
examples
ksh93 Use NULL instead of nullptr 2025-12-18 22:58:26 +01:00
.gitignore Upgrade ksh93 to 1.0.3 2022-08-27 18:04:53 -06:00
DtFuncs.compat.sh
DtFuncs.sh
DtFuncs.sh.src
Dtksh
Makefile.am dtksh: enable SHOPT_ECHOPRINT 2023-02-18 15:33:09 -07:00
README-DEVELOPER
README.building
XtCvtrs.c
XtCvtrs.h
dtkcmds.c Made a workaround to not use the sh_access 2025-02-03 14:47:17 -03:00
dtkcmds.h
dtkcvt.c Made a workaround to not use the sh_access 2025-02-03 14:47:17 -03:00
dtkcvt.h
dtksh.exp
dtksh.h
dtksh.msg
extra.c
extra.h
ksh93.man
ksh93.memo
msgs.c
msgs.h
widget.c Made a workaround to not use the sh_access 2025-02-03 14:47:17 -03:00
widget.h
xmcmds.c Made a workaround to not use the sh_access 2025-02-03 14:47:17 -03:00
xmcmds.h
xmcvt.c Made a workaround to not use the sh_access 2025-02-03 14:47:17 -03:00
xmcvt.h
xmksh.h
xmwidgets.c Made a workaround to not use the sh_access 2025-02-03 14:47:17 -03:00
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.