home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / unix / volume1 / pcurses / patch1 < prev    next >
Internet Message Format  |  1986-11-30  |  26KB

  1. Date: 31-Dec-84 08:30:10-EST
  2. From: decvax!ncoast!root  (Rich Garrett - Root)
  3. Subject: A shell script and Makefile modification for Terminfo
  4.  
  5. I have spent the past week attempting to compile terminfo for our Model
  6. 16 running Xenix.  Catching the 4.2 dependencies was bad enough, but
  7. we have the problem reported with PDP-11's, where the preprocessor couldn't
  8. hack the number of #defines in term.h.  The following shar archive contains
  9. a modified Makefile, a shell script `ifmkdef', and two header files,
  10. term1.h and term2.h, which resolve the problem.  Compilation is quite
  11. a bit slower, but at least it compiles.
  12.  
  13. The makefile modification changes the .c.o action to perform some fancy
  14. footwork to change a #include "term.h" to two hidden (from cpp) references
  15. to term?.h (one to term1.h, the other to term2.h), pass it through cpp,
  16. unmask term1.h, cpp the source again, unmask term2.h, and compile.  The
  17. shell script resolves a communications problem between the first and
  18. second invocations of cpp, as term.h normally checks for #define FILE
  19. to see if stdio has been loaded, but the first cpp run strips FILE so
  20. we must re-add it.  It could be in makefile, but unless you've fixed
  21. your make, it makes make die out -- and we don't have source, Microsoft
  22. being what it is.
  23.  
  24. The only help I can offer on other 4.2 sneakies at present is to grep
  25. the sources for SIGTSTP, FIONREAD, and TIOCGLTC; or am I the only non-
  26. Berkeleyite crazy enough to try to compile this thing?  :-)
  27.  
  28. --bsa (..decvax!cwruecmp!ncoast!bsa)  Brandon Allbery
  29.  
  30. -----------------------------cut here--------------------------------------
  31. : This is a shar archive.  Extract with sh not csh.
  32. echo 'sh - term1.h'
  33. sed 's/^X//' <<'________This_Is_The_END________' >term1.h
  34. X/*
  35. X**    term.h -- Definition of struct term
  36. X*/
  37. X
  38. X#ifndef SGTTY
  39. X#    include "curses.h"
  40. X#endif
  41. X
  42. X#ifdef SINGLE
  43. X#    define CUR _first_term.
  44. X#else
  45. X#    define CUR cur_term->
  46. X#endif
  47. X
  48. X
  49. X#define auto_left_margin               CUR Booleans[0]
  50. X#define auto_right_margin              CUR Booleans[1]
  51. X#define beehive_glitch                 CUR Booleans[2]
  52. X#define ceol_standout_glitch           CUR Booleans[3]
  53. X#define eat_newline_glitch             CUR Booleans[4]
  54. X#define erase_overstrike               CUR Booleans[5]
  55. X#define generic_type                   CUR Booleans[6]
  56. X#define hard_copy                      CUR Booleans[7]
  57. X#define has_meta_key                   CUR Booleans[8]
  58. X#define has_status_line                CUR Booleans[9]
  59. X#define insert_null_glitch             CUR Booleans[10]
  60. X#define memory_above                   CUR Booleans[11]
  61. X#define memory_below                   CUR Booleans[12]
  62. X#define move_insert_mode               CUR Booleans[13]
  63. X#define move_standout_mode             CUR Booleans[14]
  64. X#define over_strike                    CUR Booleans[15]
  65. X#define status_line_esc_ok             CUR Booleans[16]
  66. X#define teleray_glitch                 CUR Booleans[17]
  67. X#define tilde_glitch                   CUR Booleans[18]
  68. X#define transparent_underline          CUR Booleans[19]
  69. X#define xon_xoff                       CUR Booleans[20]
  70. X#define columns                        CUR Numbers[0]
  71. X#define init_tabs                      CUR Numbers[1]
  72. X#define lines                          CUR Numbers[2]
  73. X#define lines_of_memory                CUR Numbers[3]
  74. X#define magic_cookie_glitch            CUR Numbers[4]
  75. X#define padding_baud_rate              CUR Numbers[5]
  76. X#define virtual_terminal               CUR Numbers[6]
  77. X#define width_status_line              CUR Numbers[7]
  78. X#define num_labels                     CUR Numbers[8]
  79. X#define label_height                   CUR Numbers[9]
  80. X#define label_width                    CUR Numbers[10]
  81. X#define back_tab                       CUR Strings[0]
  82. X#define bell                           CUR Strings[1]
  83. X#define carriage_return                CUR Strings[2]
  84. X#define change_scroll_region           CUR Strings[3]
  85. X#define clear_all_tabs                 CUR Strings[4]
  86. X#define clear_screen                   CUR Strings[5]
  87. X#define clr_eol                        CUR Strings[6]
  88. X#define clr_eos                        CUR Strings[7]
  89. X#define column_address                 CUR Strings[8]
  90. X#define command_character              CUR Strings[9]
  91. X#define cursor_address                 CUR Strings[10]
  92. X#define cursor_down                    CUR Strings[11]
  93. X#define cursor_home                    CUR Strings[12]
  94. X#define cursor_invisible               CUR Strings[13]
  95. X#define cursor_left                    CUR Strings[14]
  96. X#define cursor_mem_address             CUR Strings[15]
  97. X#define cursor_normal                  CUR Strings[16]
  98. X#define cursor_right                   CUR Strings[17]
  99. X#define cursor_to_ll                   CUR Strings[18]
  100. X#define cursor_up                      CUR Strings[19]
  101. X#define cursor_visible                 CUR Strings[20]
  102. X#define delete_character               CUR Strings[21]
  103. X#define delete_line                    CUR Strings[22]
  104. X#define dis_status_line                CUR Strings[23]
  105. X#define down_half_line                 CUR Strings[24]
  106. X#define enter_alt_charset_mode         CUR Strings[25]
  107. X#define enter_blink_mode               CUR Strings[26]
  108. X#define enter_bold_mode                CUR Strings[27]
  109. X#define enter_ca_mode                  CUR Strings[28]
  110. X#define enter_delete_mode              CUR Strings[29]
  111. X#define enter_dim_mode                 CUR Strings[30]
  112. X#define enter_insert_mode              CUR Strings[31]
  113. X#define enter_secure_mode              CUR Strings[32]
  114. X#define enter_protected_mode           CUR Strings[33]
  115. X#define enter_reverse_mode             CUR Strings[34]
  116. X#define enter_standout_mode            CUR Strings[35]
  117. X#define enter_underline_mode           CUR Strings[36]
  118. X#define erase_chars                    CUR Strings[37]
  119. X#define exit_alt_charset_mode          CUR Strings[38]
  120. X#define exit_attribute_mode            CUR Strings[39]
  121. X#define exit_ca_mode                   CUR Strings[40]
  122. X#define exit_delete_mode               CUR Strings[41]
  123. X#define exit_insert_mode               CUR Strings[42]
  124. X#define exit_standout_mode             CUR Strings[43]
  125. X#define exit_underline_mode            CUR Strings[44]
  126. X#define flash_screen                   CUR Strings[45]
  127. X#define form_feed                      CUR Strings[46]
  128. X#define from_status_line               CUR Strings[47]
  129. X#define init_1string                   CUR Strings[48]
  130. X#define init_2string                   CUR Strings[49]
  131. X#define init_3string                   CUR Strings[50]
  132. X#define init_file                      CUR Strings[51]
  133. X#define insert_character               CUR Strings[52]
  134. X#define insert_line                    CUR Strings[53]
  135. X#define insert_padding                 CUR Strings[54]
  136. X#define key_backspace                  CUR Strings[55]
  137. X#define key_catab                      CUR Strings[56]
  138. X#define key_clear                      CUR Strings[57]
  139. X#define key_ctab                       CUR Strings[58]
  140. X#define key_dc                         CUR Strings[59]
  141. X#define key_dl                         CUR Strings[60]
  142. X#define key_down                       CUR Strings[61]
  143. X#define key_eic                        CUR Strings[62]
  144. X#define key_eol                        CUR Strings[63]
  145. X#define key_eos                        CUR Strings[64]
  146. X#define key_f0                         CUR Strings[65]
  147. X#define key_f1                         CUR Strings[66]
  148. ________This_Is_The_END________
  149. echo 'sh - term2.h'
  150. sed 's/^X//' <<'________This_Is_The_END________' >term2.h
  151. X#define SGTTY struct sgttyb
  152. X#define CUR _first_term.    /* if you #undef'd SINGLE, chenge this */
  153.  
  154. X#define key_f10                        CUR Strings[67]
  155. X#define key_f2                         CUR Strings[68]
  156. X#define key_f3                         CUR Strings[69]
  157. X#define key_f4                         CUR Strings[70]
  158. X#define key_f5                         CUR Strings[71]
  159. X#define key_f6                         CUR Strings[72]
  160. X#define key_f7                         CUR Strings[73]
  161. X#define key_f8                         CUR Strings[74]
  162. X#define key_f9                         CUR Strings[75]
  163. X#define key_home                       CUR Strings[76]
  164. X#define key_ic                         CUR Strings[77]
  165. X#define key_il                         CUR Strings[78]
  166. X#define key_left                       CUR Strings[79]
  167. X#define key_ll                         CUR Strings[80]
  168. X#define key_npage                      CUR Strings[81]
  169. X#define key_ppage                      CUR Strings[82]
  170. X#define key_right                      CUR Strings[83]
  171. X#define key_sf                         CUR Strings[84]
  172. X#define key_sr                         CUR Strings[85]
  173. X#define key_stab                       CUR Strings[86]
  174. X#define key_up                         CUR Strings[87]
  175. X#define keypad_local                   CUR Strings[88]
  176. X#define keypad_xmit                    CUR Strings[89]
  177. X#define lab_f0                         CUR Strings[90]
  178. X#define lab_f1                         CUR Strings[91]
  179. X#define lab_f10                        CUR Strings[92]
  180. X#define lab_f2                         CUR Strings[93]
  181. X#define lab_f3                         CUR Strings[94]
  182. X#define lab_f4                         CUR Strings[95]
  183. X#define lab_f5                         CUR Strings[96]
  184. X#define lab_f6                         CUR Strings[97]
  185. X#define lab_f7                         CUR Strings[98]
  186. X#define lab_f8                         CUR Strings[99]
  187. X#define lab_f9                         CUR Strings[100]
  188. X#define meta_off                       CUR Strings[101]
  189. X#define meta_on                        CUR Strings[102]
  190. X#define newline                        CUR Strings[103]
  191. X#define pad_char                       CUR Strings[104]
  192. X#define parm_dch                       CUR Strings[105]
  193. X#define parm_delete_line               CUR Strings[106]
  194. X#define parm_down_cursor               CUR Strings[107]
  195. X#define parm_ich                       CUR Strings[108]
  196. X#define parm_index                     CUR Strings[109]
  197. X#define parm_insert_line               CUR Strings[110]
  198. X#define parm_left_cursor               CUR Strings[111]
  199. X#define parm_right_cursor              CUR Strings[112]
  200. X#define parm_rindex                    CUR Strings[113]
  201. X#define parm_up_cursor                 CUR Strings[114]
  202. X#define pkey_key                       CUR Strings[115]
  203. X#define pkey_local                     CUR Strings[116]
  204. X#define pkey_xmit                      CUR Strings[117]
  205. X#define print_screen                   CUR Strings[118]
  206. X#define prtr_off                       CUR Strings[119]
  207. X#define prtr_on                        CUR Strings[120]
  208. X#define repeat_char                    CUR Strings[121]
  209. X#define reset_1string                  CUR Strings[122]
  210. X#define reset_2string                  CUR Strings[123]
  211. X#define reset_3string                  CUR Strings[124]
  212. X#define reset_file                     CUR Strings[125]
  213. X#define restore_cursor                 CUR Strings[126]
  214. X#define row_address                    CUR Strings[127]
  215. X#define save_cursor                    CUR Strings[128]
  216. X#define scroll_forward                 CUR Strings[129]
  217. X#define scroll_reverse                 CUR Strings[130]
  218. X#define set_attributes                 CUR Strings[131]
  219. X#define set_tab                        CUR Strings[132]
  220. X#define set_window                     CUR Strings[133]
  221. X#define tab                            CUR Strings[134]
  222. X#define to_status_line                 CUR Strings[135]
  223. X#define underline_char                 CUR Strings[136]
  224. X#define up_half_line                   CUR Strings[137]
  225. X#define init_prog                      CUR Strings[138]
  226. X#define key_a1                         CUR Strings[139]
  227. X#define key_a3                         CUR Strings[140]
  228. X#define key_b2                         CUR Strings[141]
  229. X#define key_c1                         CUR Strings[142]
  230. X#define key_c3                         CUR Strings[143]
  231. X#define prtr_non                       CUR Strings[144]
  232. X#define char_padding                   CUR Strings[145]
  233. X#define acs_chars                      CUR Strings[146]
  234. X#define plab_norm                      CUR Strings[147]
  235. X
  236. X
  237. Xstruct term
  238. X{
  239. X   char     *term_names;    /* offset in str_table of terminal names */
  240. X   char     *str_table;    /* pointer to string table */
  241. X   short Filedes;    /* file description being written to */
  242. X   SGTTY Ottyb,        /* original state of the terminal */
  243. X     Nttyb;        /* current state of the terminal */
  244. X
  245. X   char         Booleans[21];
  246. X   short     Numbers[11];
  247. X   char         *Strings[148];
  248. X};
  249. X
  250. Xstruct term    _first_term;
  251. Xstruct term    *cur_term;
  252. X
  253. X#define BOOLCOUNT 21
  254. X#define NUMCOUNT  11
  255. X#define STRCOUNT  148
  256. ________This_Is_The_END________
  257. echo 'sh - Makefile'
  258. sed 's/^X//' <<'________This_Is_The_END________' >Makefile
  259. X#*********************************************************************
  260. X#                         COPYRIGHT NOTICE                           *
  261. X#*********************************************************************
  262. X#        This software is copyright (C) 1982 by Pavel Curtis         *
  263. X#                                                                    *
  264. X#        Permission is granted to reproduce and distribute           *
  265. X#        this file by any means so long as no fee is charged         *
  266. X#        above a nominal handling fee and so long as this            *
  267. X#        notice is always included in the copies.                    *
  268. X#                                                                    *
  269. X#        Other rights are reserved except as explicitly granted      *
  270. X#        by written permission of the author.                        *
  271. X#                Pavel Curtis                                        *
  272. X#                Computer Science Dept.                              *
  273. X#                405 Upson Hall                                      *
  274. X#                Cornell University                                  *
  275. X#                Ithaca, NY 14853                                    *
  276. X#                                                                    *
  277. X#                Ph- (607) 256-4934                                  *
  278. X#                                                                    *
  279. X#                Pavel.Cornell@Udel-Relay   (ARPAnet)                *
  280. X#                decvax!cornell!pavel       (UUCPnet)                *
  281. X#********************************************************************/
  282. X
  283. X# RCSid: $Header:   RCS/Makefile.v  Revision 2.2  82/10/25  15:28:23  pavel  Exp$
  284. X
  285. XSRCDIR= /etc/term
  286. XCFLAGS= -O -DSRCDIR='"$(SRCDIR)"'
  287. XDFLAGS= -g -DTRACE -DSRCDIR='"$(SRCDIR)"'
  288. X
  289. XSRCS=    comp_main.c comp_hash.c comp_captab.c comp_scan.c comp_error.c \
  290. X    comp_parse.c read_entry.c \
  291. X    dump.c dump_names.c  \
  292. X    lib_setup.c lib_fixterm.c lib_tparm.c lib_tputs.c \
  293. X    lib_unctrl.c lib_raw.c lib_vidattr.c lib_trace.c lib_data.c \
  294. X    lib_beep.c lib_doupdate.c lib_refresh.c lib_initscr.c lib_newwin.c \
  295. X    lib_addch.c lib_addstr.c lib_scroll.c lib_clreol.c lib_touchwin.c \
  296. X    lib_mvcur.c lib_delwin.c lib_endwin.c lib_clrbot.c lib_move.c \
  297. X    lib_printw.c lib_scanw.c lib_erase.c lib_getch.c lib_options.c \
  298. X    lib_box.c lib_clear.c lib_delch.c lib_deleteln.c lib_insch.c \
  299. X    lib_insertln.c lib_getstr.c lib_mvwin.c lib_longname.c lib_tstp.c \
  300. X    lib_newterm.c lib_set_term.c lib_overlay.c lib_scrreg.c
  301. X
  302. X#
  303. X# Normal, optimised object files
  304. X#
  305. XLIBOBJS= lib_setup.o lib_fixterm.o lib_tparm.o read_entry.o lib_tputs.o \
  306. X    lib_unctrl.o lib_raw.o lib_vidattr.o lib_trace.o lib_data.o lib_beep.o \
  307. X    lib_doupdate.o lib_refresh.o lib_initscr.o lib_newwin.o lib_addch.o \
  308. X    lib_addstr.o lib_scroll.o lib_clreol.o lib_touchwin.o lib_mvcur.o \
  309. X    lib_delwin.o lib_endwin.o lib_clrbot.o lib_move.o lib_printw.o \
  310. X    lib_scanw.o lib_erase.o lib_getch.o lib_options.o \
  311. X    lib_box.o lib_clear.o lib_delch.o lib_deleteln.o lib_insch.o \
  312. X    lib_insertln.o lib_getstr.o lib_mvwin.o lib_longname.o lib_tstp.o \
  313. X    lib_newterm.o lib_set_term.o lib_overlay.o lib_scrreg.o
  314. X
  315. X#
  316. X# Debugging (tracing) object files
  317. X#
  318. XDLIBOBJS= lib_setup.d lib_fixterm.d lib_tparm.d read_entry.d lib_tputs.d \
  319. X    lib_unctrl.d lib_raw.d lib_vidattr.d lib_trace.d lib_data.d lib_beep.d \
  320. X    lib_doupdate.d lib_refresh.d lib_initscr.d lib_newwin.d lib_addch.d \
  321. X    lib_addstr.d lib_scroll.d lib_clreol.d lib_touchwin.d lib_mvcur.d \
  322. X    lib_delwin.d lib_endwin.d lib_clrbot.d lib_move.d lib_printw.d \
  323. X    lib_scanw.d lib_erase.d lib_getch.d lib_options.d \
  324. X    lib_box.d lib_clear.d lib_delch.d lib_deleteln.d lib_insch.d \
  325. X    lib_insertln.d lib_getstr.d lib_mvwin.d lib_longname.d lib_tstp.d \
  326. X    lib_newterm.d lib_set_term.d lib_overlay.d lib_scrreg.d
  327. X
  328. X#
  329. X# Profiled Optimised object files
  330. X#
  331. XPLIBOBJS= lib_setup.p lib_fixterm.p lib_tparm.p read_entry.p lib_tputs.p \
  332. X    lib_unctrl.p lib_raw.p lib_vidattr.p lib_trace.p lib_data.p lib_beep.p \
  333. X    lib_doupdate.p lib_refresh.p lib_initscr.p lib_newwin.p lib_addch.p \
  334. X    lib_addstr.p lib_scroll.p lib_clreol.p lib_touchwin.p lib_mvcur.p \
  335. X    lib_delwin.p lib_endwin.p lib_clrbot.p lib_move.p lib_printw.p \
  336. X    lib_scanw.p lib_erase.p lib_getch.p lib_options.p \
  337. X    lib_box.p lib_clear.p lib_delch.p lib_deleteln.p lib_insch.p \
  338. X    lib_insertln.p lib_getstr.p lib_mvwin.p lib_longname.p lib_tstp.p \
  339. X    lib_newterm.p lib_set_term.p lib_overlay.p lib_scrreg.p
  340. X
  341. XCOMPOBJS= comp_main.o comp_hash.o comp_captab.o comp_scan.o comp_error.o \
  342. X    comp_parse.o read_entry.o
  343. X
  344. X.SUFFIXES: .d .p
  345. X
  346. X.c.d:
  347. X    -mv $*.o $*.O
  348. X    cc -c $(DFLAGS) $*.c
  349. X    mv $*.o $*.d
  350. X    -mv $*.O $*.o
  351. X
  352. X.c.p:
  353. X    -mv $*.o $*.O
  354. X    cc -pg -c $(CFLAGS) $*.c
  355. X    mv $*.o $*.p
  356. X    -mv $*.O $*.o
  357. X
  358. X.c.o:
  359. X    sed 's/^\(#include[     ]\)"term.h"/%(@)\1"$$.h"`%(#)\1"term2.h"/' <$*.c | tr '`' '\012' >$$.c
  360. X    cc -P $(CFLAGS) $$.c
  361. X    sh ifmkdef $$.c term1.h >$$.h
  362. X    sed '/^#/d; s/^%(@)//' <$$.i >$$.c
  363. X    cc -P $(CFLAGS) $$.c
  364. X    sed 's/^%(#)//' <$$.i >$$.c
  365. X    cc -c $(CFLAGS) $$.c
  366. X    mv $$.o $*.o
  367. X    rm $$.c $$.i
  368. X
  369. Xall:    compile dump lib dlib
  370. X
  371. Xinstall: all
  372. X    sed -e 's/clude *"curses.h" *$$/clude <ncurses.h>/' term.h > /usr/include/term.h
  373. X    sed -e 's/^#include *"terminfo.h" *$$/#include <terminfo.h>/' curses.h > /usr/include/ncurses.h
  374. X    cp terminfo.h /usr/include/terminfo.h
  375. X    cp unctrl.h /usr/include/unctrl.h
  376. X    cp compile $(SRCDIR)/compile
  377. X    cp dump $(SRCDIR)/dump
  378. X    cp libcurses.a /usr/lib/libncurses.a
  379. X    cp libdcurses.a /usr/lib/libdcurses.a
  380. X    ranlib /usr/lib/libncurses.a
  381. X    ranlib /usr/lib/libdcurses.a
  382. X
  383. Xlib:    libcurses.a    
  384. Xlibcurses.a:    ${LIBOBJS}
  385. X    ar rv libcurses.a ${LIBOBJS}
  386. X    ranlib libcurses.a
  387. X
  388. Xdlib:    libdcurses.a    
  389. Xlibdcurses.a:    ${DLIBOBJS}
  390. X    ar rv libdcurses.a ${DLIBOBJS}
  391. X    ranlib libdcurses.a
  392. X
  393. Xplib:    libpcurses.a    
  394. Xlibpcurses.a:    ${PLIBOBJS}
  395. X    ar rv libpcurses.a ${PLIBOBJS}
  396. X    ranlib libpcurses.a
  397. X
  398. Xcompile: ${COMPOBJS}
  399. X    cc -o compile ${COMPOBJS}
  400. X
  401. Xdump: dump.o dump_names.o read_entry.o
  402. X    cc -o dump dump.o dump_names.o read_entry.o
  403. X
  404. Xlint: ${SRCS}
  405. X    lint ${DFLAGS} ${SRCS} > lint.out
  406. X
  407. Xterm.h: Caps MKterm.h.awk
  408. X    awk -f MKterm.h.awk Caps > term.h
  409. X
  410. Xcomp_captab.c: Caps MKcaptab.awk
  411. X    awk -f MKcaptab.awk Caps > comp_captab.c
  412. X
  413. Xdump.o: dump.c term.h compiler.h
  414. X
  415. Xdump_names.c: Caps MKnames.awk
  416. X    awk -f MKnames.awk Caps
  417. X    cat boolnames numnames strnames > dump_names.c
  418. X    -rm -f boolnames numnames strnames
  419. X
  420. Xclean:
  421. X    -rm -f *.[od] term.h comp_captab.c tags dump_names.c
  422. X
  423. Xtags:    *.c *.h
  424. X    ctags *.c *.h
  425. X
  426. Xdepend:    ${SRCS}
  427. X    grep "^#include" ${SRCS} \
  428. X        | sed 's/\([^:]*\).c:[^"]*"\([^"]*\)".*/\1.o: \2/' \
  429. X        | sed '/#include/d' > makedep
  430. X    echo '/^# DO NOT DELETE THIS LINE/+2,$$d' > eddep
  431. X    echo '$$r makedep' > eddep
  432. X    echo '/^# DO NOT DELETE THIS LINE/+2,$$s/\.o/.d/' > eddep
  433. X    echo '$$r makedep' > eddep
  434. X    echo 'w' > eddep
  435. X    cp Makefile Makefile.bak
  436. X    ex - Makefile < eddep
  437. X    rm makedep eddep
  438. X    echo > Makefile
  439. X    echo "# DEPENDENCIES MUST END AT END OF FILE" > Makefile
  440. X    echo "# IF YOU PUT STUFF HERE, IT WILL GO AWAY" > Makefile
  441. X    echo "# See make depend, above" > Makefile
  442. X
  443. X# DO NOT DELETE THIS LINE - make depend needs it
  444. X
  445. Xcomp_main.d: compiler.h
  446. Xcomp_hash.d: compiler.h
  447. Xcomp_hash.d: term.h
  448. Xcomp_captab.d: compiler.h
  449. Xcomp_captab.d: term.h
  450. Xcomp_scan.d: compiler.h
  451. Xcomp_error.d: compiler.h
  452. Xcomp_parse.d: compiler.h
  453. Xcomp_parse.d: term.h
  454. Xcomp_parse.d: object.h
  455. Xread_entry.d: term.h
  456. Xread_entry.d: object.h
  457. Xdump.d: compiler.h
  458. Xdump.d: term.h
  459. Xlib_setup.d: curses.h
  460. Xlib_setup.d: curses.priv.h
  461. Xlib_setup.d: term.h
  462. Xlib_fixterm.d: curses.h
  463. Xlib_fixterm.d: curses.priv.h
  464. Xlib_fixterm.d: term.h
  465. Xlib_tparm.d: curses.h
  466. Xlib_tparm.d: curses.priv.h
  467. Xlib_tparm.d: term.h
  468. Xlib_tputs.d: curses.h
  469. Xlib_tputs.d: curses.priv.h
  470. Xlib_tputs.d: term.h
  471. Xlib_raw.d: curses.h
  472. Xlib_raw.d: curses.priv.h
  473. Xlib_raw.d: term.h
  474. Xlib_vidattr.d: curses.h
  475. Xlib_vidattr.d: curses.priv.h
  476. Xlib_vidattr.d: term.h
  477. Xlib_trace.d: term.h
  478. Xlib_trace.d: curses.h
  479. Xlib_trace.d: curses.priv.h
  480. Xlib_data.d: curses.priv.h
  481. Xlib_data.d: curses.h
  482. Xlib_data.d: term.h
  483. Xlib_beep.d: curses.h
  484. Xlib_beep.d: curses.priv.h
  485. Xlib_beep.d: term.h
  486. Xlib_doupdate.d: curses.h
  487. Xlib_doupdate.d: curses.priv.h
  488. Xlib_doupdate.d: term.h
  489. Xlib_refresh.d: curses.h
  490. Xlib_refresh.d: curses.priv.h
  491. Xlib_initscr.d: curses.h
  492. Xlib_initscr.d: curses.priv.h
  493. Xlib_newwin.d: term.h
  494. Xlib_newwin.d: curses.h
  495. Xlib_newwin.d: curses.priv.h
  496. Xlib_addch.d: curses.h
  497. Xlib_addch.d: curses.priv.h
  498. Xlib_addch.d: unctrl.h
  499. Xlib_addstr.d: curses.h
  500. Xlib_addstr.d: curses.priv.h
  501. Xlib_scroll.d: curses.h
  502. Xlib_scroll.d: curses.priv.h
  503. Xlib_clreol.d: curses.h
  504. Xlib_clreol.d: curses.priv.h
  505. Xlib_touchwin.d: curses.h
  506. Xlib_touchwin.d: curses.priv.h
  507. Xlib_mvcur.d: term.h
  508. Xlib_mvcur.d: curses.h
  509. Xlib_mvcur.d: curses.priv.h
  510. Xlib_delwin.d: curses.h
  511. Xlib_delwin.d: curses.priv.h
  512. Xlib_endwin.d: term.h
  513. Xlib_endwin.d: curses.h
  514. Xlib_endwin.d: curses.priv.h
  515. Xlib_clrbot.d: curses.h
  516. Xlib_clrbot.d: curses.priv.h
  517. Xlib_move.d: curses.h
  518. Xlib_move.d: curses.priv.h
  519. Xlib_printw.d: curses.h
  520. Xlib_printw.d: curses.priv.h
  521. Xlib_scanw.d: curses.h
  522. Xlib_scanw.d: curses.priv.h
  523. Xlib_erase.d: curses.h
  524. Xlib_erase.d: curses.priv.h
  525. Xlib_getch.d: curses.h
  526. Xlib_getch.d: curses.priv.h
  527. Xlib_options.d: term.h
  528. Xlib_options.d: curses.h
  529. Xlib_options.d: curses.priv.h
  530. Xlib_box.d: curses.h
  531. Xlib_box.d: curses.priv.h
  532. Xlib_clear.d: curses.h
  533. Xlib_clear.d: curses.priv.h
  534. Xlib_delch.d: curses.h
  535. Xlib_delch.d: curses.priv.h
  536. Xlib_delch.d: term.h
  537. Xlib_deleteln.d: curses.h
  538. Xlib_deleteln.d: curses.priv.h
  539. Xlib_insch.d: curses.h
  540. Xlib_insch.d: curses.priv.h
  541. Xlib_insertln.d: curses.h
  542. Xlib_insertln.d: curses.priv.h
  543. Xlib_getstr.d: curses.h
  544. Xlib_getstr.d: curses.priv.h
  545. Xlib_getstr.d: unctrl.h
  546. Xlib_mvwin.d: curses.h
  547. Xlib_mvwin.d: curses.priv.h
  548. Xlib_longname.d: curses.h
  549. Xlib_longname.d: curses.priv.h
  550. Xlib_tstp.d: term.h
  551. Xlib_tstp.d: curses.h
  552. Xlib_tstp.d: curses.priv.h
  553. Xlib_newterm.d: curses.h
  554. Xlib_newterm.d: term.h
  555. Xlib_newterm.d: curses.priv.h
  556. Xlib_set_term.d: curses.h
  557. Xlib_set_term.d: curses.priv.h
  558. Xlib_set_term.d: term.h
  559. Xlib_overlay.d: curses.h
  560. Xlib_overlay.d: curses.priv.h
  561. Xlib_scrreg.d: curses.h
  562. Xlib_scrreg.d: curses.priv.h
  563. Xcomp_main.o: compiler.h
  564. Xcomp_hash.o: compiler.h
  565. Xcomp_hash.o: term.h
  566. Xcomp_captab.o: compiler.h
  567. Xcomp_captab.o: term.h
  568. Xcomp_scan.o: compiler.h
  569. Xcomp_error.o: compiler.h
  570. Xcomp_parse.o: compiler.h
  571. Xcomp_parse.o: term.h
  572. Xcomp_parse.o: object.h
  573. Xread_entry.o: term.h
  574. Xread_entry.o: object.h
  575. Xdump.o: compiler.h
  576. Xdump.o: term.h
  577. Xlib_setup.o: curses.h
  578. Xlib_setup.o: curses.priv.h
  579. Xlib_setup.o: term.h
  580. Xlib_fixterm.o: curses.h
  581. Xlib_fixterm.o: curses.priv.h
  582. Xlib_fixterm.o: term.h
  583. Xlib_tparm.o: curses.h
  584. Xlib_tparm.o: curses.priv.h
  585. Xlib_tparm.o: term.h
  586. Xlib_tputs.o: curses.h
  587. Xlib_tputs.o: curses.priv.h
  588. Xlib_tputs.o: term.h
  589. Xlib_raw.o: curses.h
  590. Xlib_raw.o: curses.priv.h
  591. Xlib_raw.o: term.h
  592. Xlib_vidattr.o: curses.h
  593. Xlib_vidattr.o: curses.priv.h
  594. Xlib_vidattr.o: term.h
  595. Xlib_trace.o: term.h
  596. Xlib_trace.o: curses.h
  597. Xlib_trace.o: curses.priv.h
  598. Xlib_data.o: curses.priv.h
  599. Xlib_data.o: curses.h
  600. Xlib_data.o: term.h
  601. Xlib_beep.o: curses.h
  602. Xlib_beep.o: curses.priv.h
  603. Xlib_beep.o: term.h
  604. Xlib_doupdate.o: curses.h
  605. Xlib_doupdate.o: curses.priv.h
  606. Xlib_doupdate.o: term.h
  607. Xlib_refresh.o: curses.h
  608. Xlib_refresh.o: curses.priv.h
  609. Xlib_initscr.o: curses.h
  610. Xlib_initscr.o: curses.priv.h
  611. Xlib_newwin.o: term.h
  612. Xlib_newwin.o: curses.h
  613. Xlib_newwin.o: curses.priv.h
  614. Xlib_addch.o: curses.h
  615. Xlib_addch.o: curses.priv.h
  616. Xlib_addch.o: unctrl.h
  617. Xlib_addstr.o: curses.h
  618. Xlib_addstr.o: curses.priv.h
  619. Xlib_scroll.o: curses.h
  620. Xlib_scroll.o: curses.priv.h
  621. Xlib_clreol.o: curses.h
  622. Xlib_clreol.o: curses.priv.h
  623. Xlib_touchwin.o: curses.h
  624. Xlib_touchwin.o: curses.priv.h
  625. Xlib_mvcur.o: term.h
  626. Xlib_mvcur.o: curses.h
  627. Xlib_mvcur.o: curses.priv.h
  628. Xlib_delwin.o: curses.h
  629. Xlib_delwin.o: curses.priv.h
  630. Xlib_endwin.o: term.h
  631. Xlib_endwin.o: curses.h
  632. Xlib_endwin.o: curses.priv.h
  633. Xlib_clrbot.o: curses.h
  634. Xlib_clrbot.o: curses.priv.h
  635. Xlib_move.o: curses.h
  636. Xlib_move.o: curses.priv.h
  637. Xlib_printw.o: curses.h
  638. Xlib_printw.o: curses.priv.h
  639. Xlib_scanw.o: curses.h
  640. Xlib_scanw.o: curses.priv.h
  641. Xlib_erase.o: curses.h
  642. Xlib_erase.o: curses.priv.h
  643. Xlib_getch.o: curses.h
  644. Xlib_getch.o: curses.priv.h
  645. Xlib_options.o: term.h
  646. Xlib_options.o: curses.h
  647. Xlib_options.o: curses.priv.h
  648. Xlib_box.o: curses.h
  649. Xlib_box.o: curses.priv.h
  650. Xlib_clear.o: curses.h
  651. Xlib_clear.o: curses.priv.h
  652. Xlib_delch.o: curses.h
  653. Xlib_delch.o: curses.priv.h
  654. Xlib_delch.o: term.h
  655. Xlib_deleteln.o: curses.h
  656. Xlib_deleteln.o: curses.priv.h
  657. Xlib_insch.o: curses.h
  658. Xlib_insch.o: curses.priv.h
  659. Xlib_insertln.o: curses.h
  660. Xlib_insertln.o: curses.priv.h
  661. Xlib_getstr.o: curses.h
  662. Xlib_getstr.o: curses.priv.h
  663. Xlib_getstr.o: unctrl.h
  664. Xlib_mvwin.o: curses.h
  665. Xlib_mvwin.o: curses.priv.h
  666. Xlib_longname.o: curses.h
  667. Xlib_longname.o: curses.priv.h
  668. Xlib_tstp.o: term.h
  669. Xlib_tstp.o: curses.h
  670. Xlib_tstp.o: curses.priv.h
  671. Xlib_newterm.o: curses.h
  672. Xlib_newterm.o: term.h
  673. Xlib_newterm.o: curses.priv.h
  674. Xlib_set_term.o: curses.h
  675. Xlib_set_term.o: curses.priv.h
  676. Xlib_set_term.o: term.h
  677. Xlib_overlay.o: curses.h
  678. Xlib_overlay.o: curses.priv.h
  679. Xlib_scrreg.o: curses.h
  680. Xlib_scrreg.o: curses.priv.h
  681. X
  682. X# DEPENDENCIES MUST END AT END OF FILE
  683. X# IF YOU PUT STUFF HERE, IT WILL GO AWAY
  684. X# See make depend, above
  685. ________This_Is_The_END________
  686. echo 'sh - ifmkdef'
  687. sed 's/^X//' <<'________This_Is_The_END________' >ifmkdef
  688. Xif grep -s 'struct sgttyb' $1
  689. Xthen cat $2
  690. Xelse echo '#define FILE struct _iobuf'; cat $2
  691. Xfi
  692. Xexit 0
  693. ________This_Is_The_END________
  694. exit 0
  695.  
  696.  
  697.  
  698.