summaryrefslogtreecommitdiff
path: root/src/tet3/inc/tcclib.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/tet3/inc/tcclib.h')
-rw-r--r--src/tet3/inc/tcclib.h98
1 files changed, 98 insertions, 0 deletions
diff --git a/src/tet3/inc/tcclib.h b/src/tet3/inc/tcclib.h
new file mode 100644
index 00000000..7b73b6b5
--- /dev/null
+++ b/src/tet3/inc/tcclib.h
@@ -0,0 +1,98 @@
+/*
+ * SCCS: @(#)tcclib.h 1.3 (98/08/28)
+ *
+ * UniSoft Ltd., London, England
+ *
+ * (C) Copyright 1996 X/Open Company Limited
+ *
+ * All rights reserved. No part of this source code may be reproduced,
+ * stored in a retrieval system, or transmitted, in any form or by any
+ * means, electronic, mechanical, photocopying, recording or otherwise,
+ * except as stated in the end-user licence agreement, without the prior
+ * permission of the copyright owners.
+ * A copy of the end-user licence agreement is contained in the file
+ * Licence which accompanies this distribution.
+ *
+ * X/Open and the 'X' symbol are trademarks of X/Open Company Limited in
+ * the UK and other countries.
+ */
+
+/************************************************************************
+
+SCCS: @(#)tcclib.h 1.3 98/08/28 TETware release 3.3
+NAME: tcclib.h
+PRODUCT: TETware
+AUTHOR: Andrew Dingwall, UniSoft Ltd.
+DATE CREATED: October 1996
+
+DESCRIPTION:
+ declarations for tcc action functions in tcclib
+
+ note that when this file is included in tcc source files,
+ it must be included AFTER tcc.h (in which TCC is defined)
+
+MODIFICATIONS:
+
+ Andrew Dingwall, UniSoft Ltd., July 1998
+ Added support for shared API libraries.
+
+************************************************************************/
+
+/*
+** cause definitions of tcc action functions always to be visible in tccd
+** and tcclib, but only visible in tcc when we are building TETware-Lite
+*/
+#ifdef TCC
+# ifdef TET_LITE /* -LITE-CUT-LINE- */
+# define INCLUDE_TCCLIB_H 1
+# else /* -START-LITE-CUT- */
+# define INCLUDE_TCCLIB_H 0
+# endif /* TET_LITE */ /* -END-LITE-CUT- */
+#else
+# define INCLUDE_TCCLIB_H 1
+#endif /* TCC */
+
+
+/* only include this stuff when required */
+#if INCLUDE_TCCLIB_H
+
+/* macro to determine which trace flag to use in TRACEn() requests */
+# ifndef NOTRACE
+# ifdef TET_LITE /* -LITE-CUT-LINE- */
+# define Ttcclib tet_Ttcc
+# else /* -START-LITE-CUT- */
+# define Ttcclib ((tet_myptype == PT_MTCC) ? tet_Ttcc : tet_Ttccd)
+# endif /* -END-LITE-CUT- */
+# endif /* !NOTRACE */
+
+/*
+** values for the flag argument to tcf_procdir()
+** these flags perform the same function as do the AV_TS_* flag values
+** (defined in avmsg.h) which may be passed to tc_tsfiles()
+*/
+# define TCF_TS_LOCAL 1 /* save files locally */
+# define TCF_TS_MASTER 2 /* transfer save files to the master system */
+
+/*
+** values for the flag argument to tcf_exec()
+** these flags perform the same function as do the AV_EXEC_* flag values
+** (defined in avmsg.h) which may be passed to tet_tcexec()
+*/
+# define TCF_EXEC_TEST 1 /* a test case */
+# define TCF_EXEC_USER 2 /* a tcmrem process (from tet_remexec()) */
+# define TCF_EXEC_MISC 3 /* any other process */
+
+/* extern function declarations */
+extern int tcf_exec PROTOLIST((char *, char **, char *, long, int, int *));
+extern int tcf_lockfile PROTOLIST((char *, int));
+extern char **tcf_lsdir PROTOLIST((char *));
+extern int tcf_mktmpdir PROTOLIST((char *, char **));
+extern int tcf_procdir PROTOLIST((char *, char *, char *[], int, int));
+extern int tcf_rmrf PROTOLIST((char *));
+extern int tcf_sharelock PROTOLIST((char *, long, int, char **));
+
+/* function called by tcf_exec() - supplied by tcc (lite) or tccd (full) */
+extern void tcc_exec_signals PROTOLIST((void));
+
+#endif /* INCLUDE_TCCLIB_H */
+