tic.h revision 7c478bd95313f5f23a4c958a745db2134aa03244
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright (c) 1996, by Sun Microsystems, Inc.
* All rights reserved.
*/
#pragma ident "%Z%%M% %I% %E% SMI"
/*
* tic.h Terminal Information Compiler
*
* Copyright 1990, 1992 by Mortice Kern Systems Inc. All rights reserved.
*
* Portions of this code Copyright 1982 by Pavel Curtis.
*
*/
#ifndef tic_h
#define tic_h 1
#ifdef M_RCSID
#ifndef lint
static char const tic_h_rcsID[] = "$Header: /rd/src/tic/rcs/tic.h 1.11 1995/06/22 20:03:36 ant Exp $";
#endif
#endif
#include <mks.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <term.h>
#include <time.h>
extern char *_cmdname;
/* Exit Status */
#define SUCCESS 0
#define NOT_DEFINED 1
#define USAGE 2
#define BAD_TERMINAL 3
#define NOT_VALID 4
#define ERROR 5
#define TERM_NAMES_LENGTH 128
#define TERM_ENTRY_LENGTH 4096
extern int term_names; /* string offset */
extern char *string_table;
extern char *source_file;
#ifdef _XOPEN_CURSES
/*
* MKS XCurses to be conforming has to avoid name space pollution
* by using reserved prefixes. Map the pre-XCurses names to the
* new ones.
*/
#define BOOLCOUNT __COUNT_BOOL
#define NUMCOUNT __COUNT_NUM
#define STRCOUNT __COUNT_STR
#define boolnames __m_boolnames
#define boolcodes __m_boolcodes
#define boolfnames __m_boolfnames
#define numnames __m_numnames
#define numcodes __m_numcodes
#define numfnames __m_numfnames
#define strnames __m_strnames
#define strcodes __m_strcodes
#define strfnames __m_strfnames
#define __t_term_header terminfo_header_t
#define TERMINFO_MAGIC __TERMINFO_MAGIC
#endif
extern int check_only;
extern char *destination; /* destination directory for object files */
extern int curr_line; /* current line # in input */
extern long curr_file_pos; /* file offset of current line */
extern int debug_level; /* level of debugging output */
if (level <= debug_level) \
/*
* These are the types of tokens returned by the scanner.
* The first three are also used in the hash table of capability
* names. The scanner returns one of these values after loading
* the specifics into the global structure curr_token.
*/
#define BOOLEAN 0 /* Boolean capability */
/*
* The global structure in which the specific parts of a
* scanned token are returned.
*/
typedef struct token {
char *tk_name; /* name of capability */
int tk_valnumber; /* value of capability (if a number) */
char *tk_valstring; /* value of capability (if a string) */
} token;
extern token curr_token;
/*
* Functions
*/
extern void reset_input ANSI((void));
extern int warnings;
#define syserr_abort err_abort
#endif /* tic_h */