Print this page
3764 Semantic of nawk's print statement changed

@@ -20,12 +20,10 @@
 # fields enclosed by brackets "[]" replaced with your own identifying
 # information: Portions Copyright [yyyy] [name of copyright owner]
 #
 # CDDL HEADER END
 #
-# ident "%Z%%M% %I%     %E% SMI"
-#
 # mkterm.awk
 #
 # XCurses Library
 #
 # Copyright 1990, 1995 by Mortice Kern Systems Inc.  All rights reserved.

@@ -47,27 +45,31 @@
 print " *"
 print " * Copyright 1990, 1995 by Mortice Kern Systems Inc.  All rights reserved."
 print " *"
 printf " * $Header%s\n", "$"
 print " */"
-print
+print ""
 print "#ifndef __term_h__"
 print "#define __term_h__\t1"
-print
+print ""
 print "#define _XOPEN_CURSES"
-print
+print ""
 print "#ifndef NCCS"
 print "#include <termios.h>"
 print "#endif"
 print "#ifndef STDIN_FILENO"
 print "#include <sys/types.h>"
 print "#include <unistd.h>"
 print "#endif"
-print
+print ""
 print "#define __TERM cur_term->"
 }
 
+/^#/ || /^$/ {
+        next
+}
+
 $4 == "bool" {
         printf "#define %-30s __TERM _bool[%d]\n", $1, BoolCount++
 }
 
 $4 == "number" {

@@ -77,15 +79,15 @@
 $4 == "str" {
         printf "#define %-30s __TERM _str[%d]\n", $1, StringCount++
 }
 
 END {
-print
+print ""
 printf "#define __COUNT_BOOL\t\t%d\n", BoolCount
 printf "#define __COUNT_NUM\t\t%d\n", NumberCount
 printf "#define __COUNT_STR\t\t%d\n", StringCount
-print
+print ""
 print "/*"
 print " * MKS Header format for terminfo database files."
 print " *"
 print " * The header consists of six short integers, stored using VAX/PDP style"
 print " * byte swapping (least-significant byte first).  The integers are"

@@ -99,22 +101,22 @@
 print " *"
 print " * Between the boolean and number sections, a null byte is inserted, if"
 print " * necessary, to ensure that the number section begins on an even byte"
 print " * offset.  All short integers are aligned on a short word boundary."
 print " */"
-print
+print ""
 print "#define __TERMINFO_MAGIC\t\t0432"
-print
+print ""
 print "typedef struct {"
 print "\tshort magic;"
 print "\tshort name_size;"
 print "\tshort bool_count;"
 print "\tshort num_count;"
 print "\tshort str_count;"
 print "\tshort str_size;"
 print "} terminfo_header_t;"
-print
+print ""
 print "/*"
 print " * The following __MOVE_ constants are indices into the _move[] member"
 print " * of a SCREEN structure.  The array is used by m_mvcur() for cursor"
 print " * motion costs and initialized by newterm()."
 print " *"

@@ -125,20 +127,20 @@
 print "#define __MOVE_DOWN\t\t1"
 print "#define __MOVE_LEFT\t\t2"
 print "#define __MOVE_RIGHT\t\t3"
 print "#define __MOVE_TAB\t\t4"
 print "#define __MOVE_BACK_TAB\t\t5"
-print
+print ""
 print "#define __MOVE_MAX_RELATIVE\t6"
-print
+print ""
 print "/*"
 print " * These should have fixed costs."
 print " */"
 print "#define __MOVE_RETURN\t\t6"
 print "#define __MOVE_HOME\t\t7"
 print "#define __MOVE_LAST_LINE\t8"
-print
+print ""
 print "/*"
 print " * These have worst case cost based on moving the maximum possible"
 print " * value for a parameter given the screen size."
 print " */"
 print "#define __MOVE_N_UP\t\t9"

@@ -146,24 +148,24 @@
 print "#define __MOVE_N_LEFT\t\t11"
 print "#define __MOVE_N_RIGHT\t\t12"
 print "#define __MOVE_ROW\t\t13"
 print "#define __MOVE_COLUMN\t\t14"
 print "#define __MOVE_ROW_COLUMN\t15"
-print
+print ""
 print "#define __MOVE_MAX\t\t16"
-print
+print ""
 print "/*"
 print " * For a cursor motion to be used there must be a base-cost of at least 1."
 print " */"
 print "#define __MOVE_INFINITY\t\t1000"
-print
+print ""
 print "#define __TERM_ISATTY_IN\t0x0001\t/* Input is a terminal */"
 print "#define __TERM_ISATTY_OUT\t0x0002\t/* Output is a terminal */"
 print "#define __TERM_HALF_DELAY\t0x0004\t/* halfdelay() has priority. */"
 print "#define __TERM_INSERT_MODE\t0x0008\t/* Terminal is in insert mode. */"
 print "#define __TERM_NL_IS_CRLF\t0x8000\t/* Newline is mapped on output. */"
-print
+print ""
 print "/***"
 print " *** Opaque data type.  Keep your grubby mits off."
 print " ***/"
 print "typedef struct {"
 print "\tint _ifd;\t\t\t/* Input file descriptor */"

@@ -185,23 +187,23 @@
 print "\tstruct {"
 print "\t\tchar *_seq;"
 print "\t\tshort _cost;"
 print "\t} _move[__MOVE_MAX];"
 print "} TERMINAL;"
-print
+print ""
 print "extern TERMINAL *cur_term;"
-print
+print ""
 print "extern char *__m_boolnames[];"
 print "extern char *__m_boolcodes[];"
 print "extern char *__m_boolfnames[];"
 print "extern char *__m_numnames[];"
 print "extern char *__m_numcodes[];"
 print "extern char *__m_numfnames[];"
 print "extern char *__m_strnames[];"
 print "extern char *__m_strcodes[];"
 print "extern char *__m_strfnames[];"
-print
+print ""
 print "#ifndef _XOPEN_SOURCE"
 print "/*"
 print " * Old System V array names."
 print " */"
 print "#define boolnames\t__m_boolnames"

@@ -212,53 +214,53 @@
 print "#define numfnames\t__m_numfnames"
 print "#define strnames\t__m_strnames"
 print "#define strcodes\t__m_strcodes"
 print "#define strfnames\t__m_strfnames"
 print "#endif /* _XOPEN_SOURCE */"
-print
+print ""
 print "/*"
 print " * Exposed internal functions."
 print " */"
 print "extern int __m_putchar(int);"
 print "extern int __m_mvcur(int, int, int, int, int (*)(int));"
 print "extern int __m_read_terminfo(const char *, TERMINAL *);"
 print "extern int __m_setupterm(const char *, int, int, int *);"
-print
+print ""
 print "/*"
 print " * Globals"
 print " */"
 print "extern int del_curterm(TERMINAL *);"
 print "extern TERMINAL *set_curterm(TERMINAL *);"
 print "extern int restartterm(const char *, int, int *);"
 print "extern int setupterm(const char *, int, int *);"
-print
+print ""
 print "extern int tgetent(char *, char *);"
 print "extern int tgetflag(const char *);"
 print "extern int tgetnum(const char *);"
 print "extern char *tgetstr(const char *, char **);"
 print "extern char *tgoto(const char *, int, int);"
-print
+print ""
 print "extern int tigetflag(const char *);"
 print "extern int tigetnum(const char *);"
 print "extern char *tigetstr(const char *);"
-print
+print ""
 print "extern int putp(const char *);"
 print "extern const char *tparm("
 print "\tconst char *, long, long, long, long, long, long, long, long, long);"
 print "extern int tputs(const char *, int, int (*)(int));"
-print
+print ""
 print "#ifndef _XOPEN_SOURCE_EXTENDED"
-print
+print ""
 print "#define putp(str)\t\ttputs(str,1,__m_putchar)"
 print "#define del_term\t\tdel_curterm"
 print "#define setterm(t)\t\tsetupterm(t,STDOUT_FILENO,(int *) 0)"
 print "#define tgoto(cm,c,r)\t\ttparm((char *)(cm), (long)(r), (long)(c))"
-print
+print ""
 print "#ifndef _XOPEN_SOURCE"
 print "#define beehive_glitch\t\tno_esc_ctrlc"
 print "#define teleray_glitch\t\tdest_tabs_magic_smso"
 print "#endif /* _XOPEN_SOURCE */"
-print
+print ""
 print "#endif /* _XOPEN_SOURCE_EXTENDED */"
-print
+print ""
 print "#endif /* __term_h__ */"
 }