dtksh: make new ksh submodule build

This commit is contained in:
Chase
2020-08-20 20:42:18 -05:00
committed by Jon Trulson
parent 994772518a
commit 9d798ad6d0
23 changed files with 5054 additions and 1142 deletions

View File

@@ -1,10 +1,47 @@
XCOMM $TOG: Imakefile /main/15 1998/04/07 08:55:29 mgreess $
DESKTOP_VERSION_STRING = DesktopVersionString
#define IHaveSubdirs
#define PassCDebugFlags 'CDEBUGFLAGS=$(CDEBUGFLAGS)'
SUBDIRS = examples
MakeSubdirs($(SUBDIRS))
HOSTDIR = $(shell ./ksh93/bin/package host)
KSH93SRC = ./ksh93
SYS_LIBRARIES = -lm $(DYNLIBSYSLIB) $(REGEXSYSLIB) $(ICONVSYSLIB)
#ifdef LinuxArchitecture
SYS_LIBRARIES = -lm -ldl
#endif
#ifdef HPArchitecture
EXTRA_DEFINES = -Wl,-E -DHPUX_DYNLIB -Wp,-H12000
SYS_LIBRARIES = -lm -ldld
#endif
#ifdef RsArchitecture
EXTRA_DEFINES = -DDYNLIB -D_IBMRPC_
LOCAL_LDFLAGS = -bE:dtksh.exp
#endif
#ifdef SunArchitecture
.NO_PARALLEL:
EXTRA_DEFINES = -DDYNLIB
/* These need to be manually set for Solaris due to a bug in the build system */
KSH_LDFLAGS = -lm -lsocket
#endif
DEPEND_DEFINES = $(DEPENDDEFINES)
INCLUDES = -I. -I$(KSH93SRC)/include/ast -I$(KSH93SRC)/src/cmd/ksh93/include \
-I$(KSH93SRC)/src/cmd/ksh93 $(TIRPCINC)
INCLUDES = -I. -I$(KSH93SRC)/arch/$(HOSTDIR)/include/ast \
-I$(KSH93SRC)/arch/$(HOSTDIR)/src/cmd/ksh93 \
-I$(KSH93SRC)/src/cmd/ksh93/include -I$(KSH93SRC)/src/cmd/ksh93 \
-I$(KSH93SRC)/src/lib/libast/include $(TIRPCINC)
/* DEPLIBS contains the list of library depencies for a client.
* LOCAL_LIBRARIES contains the list of libraries on the link line.
@@ -17,51 +54,28 @@ INCLUDES = -I. -I$(KSH93SRC)/include/ast -I$(KSH93SRC)/src/cmd/ksh93/include \
*/
DEPLIBS = $(DEPDTHELPLIB) $(DEPDTSVCLIB) $(DEPDTWIDGETLIB) $(DEPDTPRINTLIB) \
$(DEPTTLIB) $(DEPXMLIB) $(DEPXTOOLLIB) $(DEPXLIB) \
$(KSH93SRC)/lib/libast.a
$(KSH93SRC)/arch/$(HOSTDIR)/lib/libast.a
LOCAL_LIBRARIES = $(DTHELPLIB) $(DTWIDGETLIB) $(DTSVCLIB) $(DTPRINTLIB) \
$(TTLIB) $(XMLIB) $(XTOOLLIB) $(XLIB) \
$(KSH93SRC)/lib/libcmd.a $(KSH93SRC)/lib/libast.a
$(KSH93SRC)/arch/$(HOSTDIR)/lib/libcmd.a \
$(KSH93SRC)/arch/$(HOSTDIR)/lib/libast.a \
$(KSH93SRC)/arch/$(HOSTDIR)/lib/libdll.a libshell.a
SYS_LIBRARIES = -lm $(DYNLIBSYSLIB) $(REGEXSYSLIB) $(ICONVSYSLIB)
#ifdef HPArchitecture
EXTRA_DEFINES = -Wl,-E -DHPUX_DYNLIB -Wp,-H12000
SYS_LIBRARIES = -lm -ldld
#endif
#ifdef RsArchitecture
EXTRA_DEFINES = -DDYNLIB -D_IBMRPC_
LOCAL_LDFLAGS = -bE:dtksh.exp
#endif
#if defined (SunArchitecture)
EXTRA_DEFINES = -DDYNLIB
#endif
EXTRA_DEFINES = -DDYNLIB -DKSHELL -DSHOPT_RAWONLY
EXTRA_INCLUDES = -I$(DTHELPSRC) -I$(DTPRINTSRC)
#ifdef SunArchitecture
.NO_PARALLEL:
#endif
SUIDEXECDEFINES = \
-DPROFILEPATH=\"$(CDE_CONFIGURATION_TOP)/config/profile\" \
-DSUIDPROFILEPATH=\"$(CDE_CONFIGURATION_TOP)/config/suid_profile\" \
-DSUIDEXECPATH=\"$(CDE_INSTALLATION_TOP)/bin/suid_exec\" \
-DCDE_INSTALLATION_TOP=\"$(CDE_INSTALLATION_TOP)\" -DBUILD_DTKSH
#ifdef LinuxArchitecture
SYS_LIBRARIES = -lm -ldl
#endif
#define IHaveSubdirs
#define PassCDebugFlags 'CDEBUGFLAGS=$(CDEBUGFLAGS)'
SUBDIRS = examples ksh93
KSH93OBJ = $(KSH93SRC)/ksh93.o
MakeSubdirs($(SUBDIRS))
KSH93LIBSHELL = $(KSH93SRC)/src/cmd/ksh93/libshell.a
KSH93LIBSHELL = $(KSH93SRC)/arch/$(HOSTDIR)/lib/libshell.a
PROGRAMS = dtksh
SRCS = \
userinit.c \
SRCS = init.c \
builtins.c \
widget.c \
dtkcvt.c \
@@ -76,7 +90,7 @@ SRCS = \
msgs.c
OBJS = \
$(KSH93OBJ) \
pmain.o \
libshell.a \
widget.o \
dtkcvt.o \
@@ -93,24 +107,19 @@ OBJS = \
all:: dtksh
$(KSH93SRC)/ksh93.o:
cd $(KSH93SRC); $(MAKE)
XCOMM
XCOMM Must replace standard ksh tables of builtins and aliases
XCOMM with our augmented versions.
XCOMM
libshell.a: $(KSH93SLIBSHELL) userinit.o builtins.o
libshell.a: $(KSH93LIBSHELL) init.o builtins.o
$(CP) $(KSH93LIBSHELL) libshell.a; \
ar d libshell.a userinit.o builtins.o ; \
$(AR) libshell.a userinit.o builtins.o
ar d libshell.a init.o builtins.o; \
$(AR) libshell.a init.o builtins.o
SpecialObjectRule(userinit.o,$(NULL),-DSHOPT_VSH -DKSHELL -D_TRACE_ )
SpecialObjectRule(builtins.o,$(NULL),-DSHOPT_VSH -DKSHELL -D_TRACE_ )
pmain.o:
cp ./ksh93/arch/$(HOSTDIR)/src/cmd/ksh93/pmain.o pmain.o
cp ./ksh93/arch/$(HOSTDIR)/bin/suid_exec suid_exec
SpecialObjectRule(init.o, $(NULL), -DSHOPT_STATS -DSHOPT_NAMESPACE -DSHOPT_2DMATCH -DSHOPT_PFSH -DSHOPT_MULTIBYTE -DSHOPT_BGX -DSHOPT_AUDIT '-D_API_ast=20100309' -D_PACKAGE_ast -DSHOPT_DYNAMIC -D_BLD_shell -DSHOPT_KIA -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_EDPREDICT -DSHOPT_ESH -DSHOPT_VSH -DSHOPT_FIXEDARRAY '-DERROR_CONTEXT_T=Error_context_t' -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DBUILD_DTKSH -l$(KSH93SRC)/arch/$(HOSTDIR)/lib/libcmd.a -l$(KSH93SRC)/arch/$(HOSTDIR)/lib/libast.a -l$(KSH93SRC)/arch/$(HOSTDIR)/lib/libdll.a)
SpecialObjectRule(builtins.o, $(NULL), -DSHOPT_TYPEDEF -DSHOPT_KIA -DSHOPT_PFSH -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND '-D_API_ast=20100309' -D_PACKAGE_ast -DSHOPT_BGX -DSHOPT_MULTIBYTE -D_BLD_shell -DSHOPT_DYNAMIC -DKSHELL -DSHOPT_FIXEDARRAY -DSHOPT_STATS -DSHOPT_NAMESPACE '-DERROR_CONTEXT_T=Error_context_t' -DSHOPT_ESH -DBUILD_DTKSH -l$(KSH93SRC)/arch/$(HOSTDIR)/lib/libcmd.a -l$(KSH93SRC)/arch/$(HOSTDIR)/lib/libast.a -l$(KSH93SRC)/arch/$(HOSTDIR)/lib/libdll.a)
ComplexProgramTarget($(PROGRAMS))
clean::
@echo " Cleaning ksh directories"
$(SHELL) MakeClean
rm -f suid_exec