Commit Graph

165 Commits

Author SHA1 Message Date
Jon Trulson 90e61dda5f Merge branch 'master' into autotools-conversion 2020-11-24 16:53:24 -07:00
Jon Trulson b21968f26a fix broken dev version number: 2.3.1a -> 2.3.2a 2020-11-23 17:01:37 -07:00
Peter Howkins 67f62e5a8a all: remove deprecated sys_errlist[] and replace with ANSI C strerror() 2020-11-02 05:30:08 +00:00
Jon Trulson 316ab9c9db tt: fix link order for tt_type_comp and dbck
These caused link errors on Gentoo, maybe other systems.

Patch by Peter G.
2020-03-24 11:34:51 -06:00
Jon Trulson 00dcd9c63d FreeBSD 12: get CDE to build and run
With this patch, CDE (autotools) builds and runs on fbsd 12 now.
fbsd11 should work too, but not yet tested.

You must use gmake - ie:

./configure MAKE=gmake
gmake

Seems all of the BSD's will need to use gmake for now.
2020-01-04 16:26:46 -07:00
Jon Trulson 25035724af cpp revisited: look for a cpp binary in various locations for use at runtime
Certain programs like dtlogin and tt_type_comp need access to the
system's cpp command to process certain files at runtime.  tradcpp is
not installed on most systems, and is intended for use as a imake-cpp
replacement which is all we are using it for.  We still need an
honest cpp for the CDE components to use.

Now, we look in various places for a 'cpp' command and set CPP_COMMAND
to it's value.  This way tt_type_comp and other CDE programs can do
required processing at runtime.
2019-12-04 14:28:44 -07:00
Jon Trulson cdc9eae583 Get tttypes installed correctly.
There is a problem with CPP_PROGRAM - using $CPP or $GENCPP (tradcpp)
always fails in tt_type_comp with the error:

"nclude ", line 8: syntax error

If I define it to /lib/cpp (previous hardcoded value) then it seems to
work fine.  Only the dtinfo and dtinfo_start ptypes use #include, and
therefore show this error.  Needs investigation.
2019-12-02 19:59:44 -07:00
Jon Trulson e577e8102c tt_type_comp: incorporate master CPP_PROGRAM fix into Makefile.am 2019-12-01 13:44:02 -07:00
Jon Trulson e481f4cb93 Merge branch 'master' into autotools-conversion 2019-12-01 13:31:21 -07:00
Nina Didenko 9221c55a5f tt_type_comp: use CppCmd definition
Hi.

This patch makes tt_type_comp respect CppCmd

Thanks!
2019-11-29 18:12:20 -07:00
Jon Trulson c329d5cfd7 Remove $(TIRPCINC) from all Makefile.am files - it no longer exists
Also, restructure some of the dependencies in the lib/tt binaries.  We
will link with libtt (which will include libtirpc as a dependency),
and XTOOLLIB - all the right X11 stuff without needing to add it to
every OS.  Removed several uneeded OS specializations ("if LINUX",
etc) as a result.
2019-11-20 18:52:29 -07:00
Jon Trulson af20bc2b57 changing_version_number.txt: change tooltalk.tmpl to tooltalk.inc 2019-11-19 18:15:26 -07:00
Jon Trulson 31e69340ce libtt: add -ltirpc as a dependency if we are using it
This means that when linking against libtt, libtirpc should also
automatically be linked in if we determined that we are using tirpc.

This avoids having to link every program that uses libtt (almost all
of them) from having to have a $(TIRPCLIB) added to their link
commands.
2019-11-19 18:09:21 -07:00
Jon Trulson 152f5c9a88 Merge branch 'master' into autotools-conversion after utf8-conversion 2019-11-19 11:44:33 -07:00
Jon Trulson 0d70d8b120 Set version to 2.3.1a (devel) for current master 2019-11-18 13:03:52 -07:00
Jon Trulson 82059bf240 Merge branch 'master' into autotools-conversion after 2.3.1 release 2019-11-16 16:35:56 -07:00
Jon Trulson 5fe7ee5b67 Change CDE version info for 2.3.1 release 2019-11-15 18:04:01 -07:00
Jon Trulson 1fc3284829 libtt, DtWidget: use new GENCPP 2019-10-30 19:48:04 -06:00
Jon Trulson 61ab4a5b95 DtWidget: make it build, change include/cppfile.inc a bit
cppfile.inc - don't set BUIT_SOURCES or CLEANFILES here as they
overwrite (or in case of the CLEANFILES +=...) ignore the settings.
Do those in the Makefile.am always.

We still need a better way to preprocess generic files.  cppfile.inc
will only work for one file per Makefile...
2019-10-26 15:05:52 -06:00
Jon Trulson 31fec7edb5 tt: Fixup tt build for new includes locations
Some files were trying to access the global includes directy in the
build area with things like #include <api/c/tt_c.h>, which is now
wrong.  Se we fix all of those up.  tt_c.h and tttk.h are now global,
so we no longer need to root around various build dirs to find them.

TT builds again.
2019-10-25 17:37:58 -06:00
Jon Trulson 369308b737 The great includes migration of 2019 (autotools)
Ok - so one of the steps in building CDE is an early phase called the
includes phase (make includes).  At this point, all of the public
header files are exported to exports/include/Dt, DtI, ...

Then, the software is built using that include dir.

This of course does not work in autotools.  Much of the software does
things like #include <Dt/something.h>, so in order for the build to
succeed, this behavior must be represented/replicated in some way.

It seems the usual way of dealing with this is to place all public
headers (and in some projects, ALL headers) into a toplevel include
directory.

We now do this for all public headers - they have been moved from
wherever they were and placed in the appropriate spot in includes/

This will break the Imake 'make includes' phase unless the Imakefiles
are fixed (remove the HEADERS = stuff, and the incdir defines).  This
has not been done at this point since in reality, once autotools works
properly, there will be no need for the Imake stuff anymore, and I
intend to get rid of it.

This is just a warning for now - Imake builds in this tree will now
fail at the 'includes' stage.

This commit is only the migration.  In upcoming commits, libtt will be
fixed so that the hack being used before to get around this problem is
removed as there will no longer be any need.

And then the autotools work continues...
2019-10-25 17:01:34 -06:00
Jon Trulson 7c2983185d Re-fix tt_type_comp -- it doesn't actually need yacc/lex 2019-10-25 10:43:05 -06:00
Jon Trulson 9182ddfcc3 tt: fixup remaining build issues 2019-10-24 21:29:03 -06:00
Jon Trulson e8f3c6eee2 tt: get tt_type_comp to build 2019-10-24 20:55:04 -06:00
Jon Trulson bb4a2c7694 configure/Makefiles for TT: many fixups
Redo the way the main CDE libs are specified in configure.ac... The
current way could not work due to evaluation issues, and the fact that
variables like $srcdir and the like are only valid in Makefiles, not
configure.

Use @LIBNAME@ rather then $(LIBNAME) in Makefile.am files - this way
the location is always evaluated when it's run, not in configure -
which can't work for a variety of reasons.

Got some of the TT binaries to build.

Made a new include/cppfile.inc file that can be used to pre-process
files.  The downside is that currently you can only pre-process one
file at a time per Makefile.  Something more robust is needed, but at
least tt/bin/shell now builds.  Will need to come up with a better way.
2019-10-24 20:06:39 -06:00
Jon Trulson f55e448fc7 tt/slib: include hack 2019-10-24 17:50:02 -06:00
Jon Trulson b4295847c6 tt/tttk: play symlink games so tttk can build
With this, we can now build the tooltalk library successfully.
2019-10-24 14:29:29 -06:00
Jon Trulson ff2e991ce8 tt: create Makefile.am for tt/util 2019-10-24 14:05:03 -06:00
Jon Trulson e3028d4eff lib/tt: replace tooltalk.tmpl with tooltalk.inc in all Makefile.am files
This fixes the remaining warnings from autogen in lib/
2019-10-24 12:43:02 -06:00
Jon Trulson 4186507c72 tt shell: fix up build - use LDADD rather than AM_LDADD 2019-10-24 12:40:57 -06:00
Jon Trulson 6996d53f91 tooltalk.tmpl: restore to previous version for use with Imake
For autotools we will include lib/tt/tooltalk.inc instead.
2019-10-24 11:27:39 -06:00
Jon Trulson 03544e68ad tt: begin to get it building under autotools 2019-10-23 22:07:26 -06:00
Jon Trulson 1d7ed3a17e autotools: many fixups, SUN->SOLARIS, typos, etc
This should allow an autoregen and ./confiure to work.  We only
generate Makefiles for lib/* and ./Makefile for now.  We'll ad more as
we go along.

Make still fails as we need to figure out TT - tirpc lib, rpcgen,
etc.  But it's a start!
2019-10-23 17:34:55 -06:00
Chase 500b30b2b3 lib/tt: add automake files 2019-10-23 15:34:20 -06:00
Jon Trulson 5e05b59025 ttserver: fixup forward (vexing) fucntion decl's in main, get rid of **environ 2019-10-19 18:36:54 -06:00
wmoxam ab741a1241 'notdef' means it's not used, so we remove it 2019-10-15 20:32:13 -06:00
Jon Trulson 426a18d9ef isfname.c: remove register keyword 2019-09-11 17:48:06 -06:00
chase 90a2b2848a remove ultrix support 2018-09-30 17:27:04 -06:00
Jon Trulson 6a72e2cea8 Change version to 2.3.0a (devel) 2018-09-20 16:49:01 -06:00
chase d12ad886c1 Remove old windows support 2018-08-25 15:47:54 -06:00
Jon Trulson 3d8e76a69f Merge branch 'master' into cde-next
Need to resync before folding current cde-next into master.
2018-07-06 13:19:33 -06:00
Jon Trulson cf86199b19 Stable release: 2.3.0 2018-07-06 12:05:20 -06:00
Jon Trulson 87ad4219da Merge branch 'master' into update-with-master
Resync one last time with master for 2.3 release tomorrow.
2018-07-05 14:18:07 -06:00
Jon Trulson dc7807b13b slib/mp_rpc_server: TIRPC: force a listen() call on the server socket
With earlier versions of RPC and TIRPC it seems that svctcp_create()
calles listen() on the socket (as seen by debugger and strace).
Tooltalk expects this behavior.

However, with newer systems (ArchLinux 5/18+ and similar bleeding edge
versions of SuSE's equivalent: Tumbleweed), this behavior seems to
have changed.

ttsession goes into an infinite loop trying to accept() a connection
in the TIRPC library (via svc_getreqset()).

It appears listen() is no longer called on the socket when it is
created via svctcp_create().  The hack in this commit, always causes
listen() to be called on the socket, and seems to resolve the problem.

But it is a hack I think.  I don't know if this is the correct
behavior of svctcp_create() or we were just lucky before.
2018-07-01 19:45:09 -06:00
Jon Trulson c0388656dc tt/mini_isam: add new isam_prototypes.h include file and fix up problems
There were a variety of potential 64b problems due to the complete
lack of prototype declarations.  So, we add a file, isam_prototypes.h,
generated mostly by the 'cproto' tool.

We also fixed up some errors that having proper prototypes pointed
out, mainly in passing ints where pointers were expected and vice
versa.  The iserase() function was supposed to accept a char *, but
was defined as only accepting a char.  Fun stuff like that.
2018-06-30 20:13:39 -06:00
Jon Trulson 0d39bd186f tt/mini_isam: remove all ancient sccsid blocks 2018-06-30 19:10:10 -06:00
Jon Trulson bc7e64195e tt/mini_isam: use proper include, get rid of ultrix strdup 2018-06-30 19:00:20 -06:00
Jon Trulson d0dd809b74 lib/tt/mini_isam: remove register keyword 2018-06-27 22:26:18 -06:00
Jon Trulson b0fd79a680 tt/bin: remove register keyword 2018-06-27 22:00:56 -06:00
Jon Trulson 34436c7725 tt/lib: remove register keyword 2018-06-27 22:00:56 -06:00