home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / misc / volume27 / dmake / part39 < prev    next >
Encoding:
Text File  |  1992-01-29  |  40.0 KB  |  1,290 lines

  1. Newsgroups: comp.sources.misc
  2. From: dvadura@plg.waterloo.edu (Dennis Vadura)
  3. Subject:  v27i140:  dmake - dmake Version 3.8, Part39/41
  4. Message-ID: <1992Jan29.165233.1867@sparky.imd.sterling.com>
  5. X-Md4-Signature: a8d3a3f39f27da0997e8fed2eb44095b
  6. Date: Wed, 29 Jan 1992 16:52:33 GMT
  7. Approved: kent@sparky.imd.sterling.com
  8.  
  9. Submitted-by: dvadura@plg.waterloo.edu (Dennis Vadura)
  10. Posting-number: Volume 27, Issue 140
  11. Archive-name: dmake/part39
  12. Environment: Atari-ST, Coherent, Mac, MSDOS, OS/2, UNIX
  13. Supersedes: dmake: Volume 19, Issue 22-58
  14.  
  15. ---- Cut Here and feed the following to sh ----
  16. # this is dmake.shar.39 (part 39 of a multipart archive)
  17. # do not concatenate these parts, unpack them in order with /bin/sh
  18. # file dmake/unix/sysvr3/pwd/public.h continued
  19. #
  20. if test ! -r _shar_seq_.tmp; then
  21.     echo 'Please unpack part 1 first!'
  22.     exit 1
  23. fi
  24. (read Scheck
  25.  if test "$Scheck" != 39; then
  26.     echo Please unpack part "$Scheck" next!
  27.     exit 1
  28.  else
  29.     exit 0
  30.  fi
  31. ) < _shar_seq_.tmp || exit 1
  32. if test -f _shar_wnt_.tmp; then
  33. sed 's/^X//' << 'SHAR_EOF' >> 'dmake/unix/sysvr3/pwd/public.h' &&
  34. void Unlink_temp_files ANSI((CELLPTR));
  35. void Handle_result ANSI((int, int, int, CELLPTR));
  36. void Update_time_stamp ANSI((CELLPTR));
  37. int Remove_file ANSI((char *));
  38. void Parse ANSI((FILE *));
  39. int Get_line ANSI((char *, FILE *));
  40. char * Do_comment ANSI((char *, char **, int));
  41. char * Get_token ANSI((TKSTRPTR, char *, int));
  42. void Quit ANSI(());
  43. void Read_state ANSI(());
  44. void Write_state ANSI(());
  45. int Check_state ANSI((CELLPTR, STRINGPTR *, int));
  46. char* basename ANSI((char *));
  47. void Dump ANSI(());
  48. void Dump_recipe ANSI((STRINGPTR));
  49. int Parse_macro ANSI((char *, int));
  50. int Macro_op ANSI((char *));
  51. int Parse_rule_def ANSI((int *));
  52. int Rule_op ANSI((char *));
  53. void Add_recipe_to_list ANSI((char *, int, int));
  54. void Bind_rules_to_targets ANSI((int));
  55. int Set_group_attributes ANSI((char *));
  56. DFALINKPTR Match_dfa ANSI((char *));
  57. void Check_circle_dfa ANSI(());
  58. void Add_nfa ANSI((char *));
  59. char * Exec_function ANSI((char *));
  60. time_t seek_arch ANSI((char *, char *));
  61. int If_root_path ANSI((char *));
  62. void Remove_prq ANSI((CELLPTR));
  63. int runargv ANSI((CELLPTR, int, int, int, int, char *));
  64. int Wait_for_child ANSI((int, int));
  65. void Clean_up_processes ANSI(());
  66. X
  67. #endif
  68. SHAR_EOF
  69. chmod 0640 dmake/unix/sysvr3/pwd/public.h ||
  70. echo 'restore of dmake/unix/sysvr3/pwd/public.h failed'
  71. Wc_c="`wc -c < 'dmake/unix/sysvr3/pwd/public.h'`"
  72. test 5448 -eq "$Wc_c" ||
  73.     echo 'dmake/unix/sysvr3/pwd/public.h: original size 5448, current size' "$Wc_c"
  74. rm -f _shar_wnt_.tmp
  75. fi
  76. # ============= dmake/unix/sysvr3/pwd/startup.mk ==============
  77. if test -f 'dmake/unix/sysvr3/pwd/startup.mk' -a X"$1" != X"-c"; then
  78.     echo 'x - skipping dmake/unix/sysvr3/pwd/startup.mk (File already exists)'
  79.     rm -f _shar_wnt_.tmp
  80. else
  81. > _shar_wnt_.tmp
  82. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/sysvr3/pwd/startup.mk' &&
  83. # Generic UNIX DMAKE startup file.  Customize to suit your needs.
  84. # Should work for both SYSV, and BSD 4.3
  85. # See the documentation for a description of internally defined macros.
  86. #
  87. # Disable warnings for macros redefined here that were given
  88. # on the command line.
  89. __.SILENT := $(.SILENT)
  90. .SILENT   := yes
  91. X
  92. # Configuration parameters for DMAKE startup.mk file
  93. # Set these to NON-NULL if you wish to turn the parameter on.
  94. _HAVE_RCS    := yes        # yes => RCS  is installed.
  95. _HAVE_SCCS    := yes        # yes => SCCS is installed.
  96. X
  97. # Applicable suffix definitions
  98. A := .a        # Libraries
  99. E :=        # Executables
  100. F := .f        # Fortran
  101. O := .o        # Objects
  102. P := .p        # Pascal
  103. S := .s        # Assembler sources
  104. V := ,v        # RCS suffix
  105. X
  106. # Recipe execution configurations
  107. SHELL        := /bin/sh
  108. SHELLFLAGS    := -ce
  109. GROUPSHELL    := $(SHELL)
  110. GROUPFLAGS    := 
  111. SHELLMETAS    := |();&<>?*][$$:\\#`'"
  112. GROUPSUFFIX    :=
  113. DIVFILE         = $(TMPFILE)
  114. X
  115. # Standard C-language command names and flags
  116. X   CPP       := /lib/cpp        # C-preprocessor
  117. X   CC      := cc        # C-compiler and flags
  118. X   CFLAGS  +=
  119. X
  120. X   AS      := as        # Assembler and flags
  121. X   ASFLAGS += 
  122. X
  123. X   LD       = $(CC)        # Loader and flags
  124. X   LDFLAGS +=
  125. X   LDLIBS   =
  126. X
  127. # Definition of $(MAKE) macro for recursive makes.
  128. X   MAKE = $(MAKECMD) $(MFLAGS)
  129. X
  130. # Definition of Print command for this system.
  131. X   PRINT = lpr
  132. X
  133. # Language and Parser generation Tools and their flags
  134. X   YACC      := yacc        # standard yacc
  135. X   YFLAGS +=
  136. X   YTAB      := y.tab        # yacc output files name stem.
  137. X
  138. X   LEX      := lex        # standard lex
  139. X   LFLAGS +=
  140. X   LEXYY  := lex.yy        # lex output file
  141. X
  142. # Other Compilers, Tools and their flags
  143. X   PC    := pc            # pascal compiler
  144. X   RC    := f77            # ratfor compiler
  145. X   FC    := f77            # fortran compiler
  146. X
  147. X   CO       := co        # check out for RCS
  148. X   COFLAGS += -q
  149. X
  150. X   AR     := ar            # archiver
  151. X   ARFLAGS+= ruv
  152. X
  153. X   RM       := /bin/rm        # remove a file command
  154. X   RMFLAGS +=
  155. X
  156. # Implicit generation rules for making inferences.
  157. # We don't provide .yr or .ye rules here.  They're obsolete.
  158. # Rules for making *$O
  159. X   %$O : %.c ; $(CC) $(CFLAGS) -c $<
  160. X   %$O : %$P ; $(PC) $(PFLAGS) -c $<
  161. X   %$O : %$S ; $(AS) $(ASFLAGS) $<
  162. X   %$O : %.cl ; class -c $<
  163. X   %$O : %.e %.r %.F %$F
  164. X    $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
  165. X
  166. # Executables
  167. X   %$E : %$O ; $(LD) $(LDFLAGS) -o $@ $< $(LDLIBES)
  168. X
  169. # lex and yacc rules
  170. X   %.c : %.y ; $(YACC)  $(YFLAGS) $<; mv $(YTAB).c $@
  171. X   %.c : %.l ; $(LEX)   $(LFLAGS) $<; mv $(LEXYY).c $@
  172. X
  173. # This rule tells how to make *.out from it's immediate list of prerequisites
  174. # UNIX only.
  175. X   %.out :; $(LD) $(LDFLAGS) -o $@ $^ $(LDLIBS)
  176. X
  177. # RCS support
  178. .IF $(_HAVE_RCS)
  179. X   % : %$V $$(@:d)RCS/$$(@:f)$V;- $(CO) $(COFLAGS) $@
  180. X   .NOINFER : %$V $$(@:d)RCS/$$(@:f)$V
  181. .END
  182. X
  183. # SCCS support
  184. .IF $(_HAVE_SCCS)
  185. X   % : s.% ; get $<
  186. X   .NOINFER : s.%
  187. .END
  188. X
  189. # Recipe to make archive files.
  190. %$A :
  191. [
  192. X   $(AR) $(ARFLAGS) $@ $?
  193. X   $(RM) $(RMFLAGS) $?
  194. X   ranlib $@
  195. ]
  196. X
  197. # DMAKE uses this recipe to remove intermediate targets
  198. .REMOVE :; $(RM) -f $<
  199. X
  200. # AUGMAKE extensions for SYSV compatibility
  201. @B = $(@:b)
  202. @D = $(@:d)
  203. @F = $(@:f)
  204. "*B" = $(*:b)
  205. "*D" = $(*:d)
  206. "*F" = $(*:f)
  207. <B = $(<:b)
  208. <D = $(<:d)
  209. <F = $(<:f)
  210. ?B = $(?:b)
  211. ?F = $(?:f)
  212. ?D = $(?:d)
  213. X
  214. # Turn warnings back to previous setting.
  215. .SILENT := $(__.SILENT)
  216. X
  217. # Local startup file if any
  218. .INCLUDE .IGNORE: "_startup.mk"
  219. SHAR_EOF
  220. chmod 0640 dmake/unix/sysvr3/pwd/startup.mk ||
  221. echo 'restore of dmake/unix/sysvr3/pwd/startup.mk failed'
  222. Wc_c="`wc -c < 'dmake/unix/sysvr3/pwd/startup.mk'`"
  223. test 3227 -eq "$Wc_c" ||
  224.     echo 'dmake/unix/sysvr3/pwd/startup.mk: original size 3227, current size' "$Wc_c"
  225. rm -f _shar_wnt_.tmp
  226. fi
  227. # ============= dmake/unix/sysvr3/startup.mk ==============
  228. if test -f 'dmake/unix/sysvr3/startup.mk' -a X"$1" != X"-c"; then
  229.     echo 'x - skipping dmake/unix/sysvr3/startup.mk (File already exists)'
  230.     rm -f _shar_wnt_.tmp
  231. else
  232. > _shar_wnt_.tmp
  233. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/sysvr3/startup.mk' &&
  234. # Generic UNIX DMAKE startup file.  Customize to suit your needs.
  235. # Should work for both SYSV, and BSD 4.3
  236. # See the documentation for a description of internally defined macros.
  237. #
  238. # Disable warnings for macros redefined here that were given
  239. # on the command line.
  240. __.SILENT := $(.SILENT)
  241. .SILENT   := yes
  242. X
  243. # Configuration parameters for DMAKE startup.mk file
  244. # Set these to NON-NULL if you wish to turn the parameter on.
  245. _HAVE_RCS    :=            # yes => RCS  is installed.
  246. _HAVE_SCCS    := yes        # yes => SCCS is installed.
  247. X
  248. # Applicable suffix definitions
  249. A := .a        # Libraries
  250. E :=        # Executables
  251. F := .f        # Fortran
  252. O := .o        # Objects
  253. P := .p        # Pascal
  254. S := .s        # Assembler sources
  255. V := ,v        # RCS suffix
  256. X
  257. # Recipe execution configurations
  258. SHELL        := /bin/sh
  259. SHELLFLAGS    := -ce
  260. GROUPSHELL    := $(SHELL)
  261. GROUPFLAGS    := 
  262. SHELLMETAS    := |();&<>?*][$$:\\#`'"
  263. GROUPSUFFIX    :=
  264. X
  265. # Standard C-language command names and flags
  266. X   CPP       := /lib/cpp        # C-preprocessor
  267. X   CC      := cc        # C-compiler and flags
  268. X   CFLAGS   =
  269. X
  270. X   AS      := as        # Assembler and flags
  271. X   ASFLAGS  = 
  272. X
  273. X   LD       = $(CC)        # Loader and flags
  274. X   LDFLAGS  =
  275. X   LDLIBS   =
  276. X
  277. # Definition of $(MAKE) macro for recursive makes.
  278. X   MAKE = $(MAKECMD) $(MFLAGS)
  279. X
  280. # Definition of Print command for this system.
  281. X   PRINT = lp
  282. X
  283. # Language and Parser generation Tools and their flags
  284. X   YACC      := yacc        # standard yacc
  285. X   YFLAGS  =
  286. X   YTAB      := y.tab        # yacc output files name stem.
  287. X
  288. X   LEX      := lex        # standard lex
  289. X   LFLAGS  =
  290. X   LEXYY  := lex.yy        # lex output file
  291. X
  292. # Other Compilers, Tools and their flags
  293. X   PC    := pc            # pascal compiler
  294. X   RC    := f77            # ratfor compiler
  295. X   FC    := f77            # fortran compiler
  296. X
  297. X   CO       := co        # check out for RCS
  298. X   COFLAGS := -q
  299. X
  300. X   AR     := ar            # archiver
  301. X   ARFLAGS = -rv
  302. X
  303. X   RM       := /bin/rm        # remove a file command
  304. X   RMFLAGS  =
  305. X
  306. # Implicit generation rules for making inferences.
  307. # We don't provide .yr or .ye rules here.  They're obsolete.
  308. # Rules for making *$O
  309. X   %$O : %.c ; $(CC) $(CFLAGS) -c $<
  310. X   %$O : %$P ; $(PC) $(PFLAGS) -c $<
  311. X   %$O : %$S ; $(AS) $(ASFLAGS) -o $@ $<
  312. X   %$O : %.cl ; class -c $<
  313. X   %$O : %.e %.r %.f %.F %$F
  314. X    $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
  315. X
  316. # Executables
  317. X   %$E : %$O ; $(CC) $(LDFLAGS) -o $@ $< $(LDLIBES)
  318. X   %$E : %.sh; cp $< $@; chmod 0777 $@
  319. X
  320. # lex and yacc rules
  321. X   %.c : %.y %.Y ; $(YACC)  $(YFLAGS) $<; mv $(YTAB).c $@
  322. X   %.c : %.l %.L ; $(LEX)   $(LFLAGS) $<; mv $(LEXYY).c $@
  323. X
  324. # This rule tells how to make *.out from it's immediate list of prerequisites
  325. # UNIX only.
  326. X   %.out :; $(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS)
  327. X
  328. # RCS support
  329. .IF $(_HAVE_RCS)
  330. X   % : %$V $$(@:d)RCS/$$(@:f)$V;- $(CO) $(COFLAGS) $@
  331. X   .NOINFER : %$V $$(@:d)RCS/$$(@:f)$V
  332. .END
  333. X
  334. # SCCS support
  335. .IF $(_HAVE_SCCS)
  336. X   GET = get
  337. X   GFLAGS =
  338. X   % : s.% ; $(GET) $(GFLAGS) $<
  339. X   .NOINFER : s.%
  340. .END
  341. X
  342. # Recipe to make archive files.
  343. %$A :
  344. [
  345. X   $(AR) $(ARFLAGS) $@ $?
  346. X   $(RM) $(RMFLAGS) $?
  347. ]
  348. X
  349. # DMAKE uses this recipe to remove intermediate targets
  350. .REMOVE :; $(RM) -f $<
  351. X
  352. # AUGMAKE extensions for SYSV compatibility
  353. @B = $(@:b)
  354. @D = $(@:d)
  355. @F = $(@:f)
  356. "*B" = $(*:b)
  357. "*D" = $(*:d)
  358. "*F" = $(*:f)
  359. <B = $(<:b)
  360. <D = $(<:d)
  361. <F = $(<:f)
  362. ?B = $(?:b)
  363. ?F = $(?:f)
  364. ?D = $(?:d)
  365. X
  366. # Turn warnings back to previous setting.
  367. .SILENT := $(__.SILENT)
  368. X
  369. # Local startup file if any
  370. .INCLUDE .IGNORE: "_startup.mk"
  371. SHAR_EOF
  372. chmod 0640 dmake/unix/sysvr3/startup.mk ||
  373. echo 'restore of dmake/unix/sysvr3/startup.mk failed'
  374. Wc_c="`wc -c < 'dmake/unix/sysvr3/startup.mk'`"
  375. test 3285 -eq "$Wc_c" ||
  376.     echo 'dmake/unix/sysvr3/startup.mk: original size 3285, current size' "$Wc_c"
  377. rm -f _shar_wnt_.tmp
  378. fi
  379. # ============= dmake/unix/sysvr3/stdarg.h ==============
  380. if test -f 'dmake/unix/sysvr3/stdarg.h' -a X"$1" != X"-c"; then
  381.     echo 'x - skipping dmake/unix/sysvr3/stdarg.h (File already exists)'
  382.     rm -f _shar_wnt_.tmp
  383. else
  384. > _shar_wnt_.tmp
  385. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/sysvr3/stdarg.h' &&
  386. /*
  387. X * stdarg.h
  388. X *
  389. X * defines ANSI style macros for accessing arguments of a function which takes
  390. X * a variable number of arguments
  391. X *
  392. X */
  393. X
  394. #if !defined(__STDARG_H__)
  395. #define __STDARG_H__
  396. X
  397. #if !defined(_VA_LIST_) && !defined(_VA_LIST)
  398. #define _VA_LIST_
  399. #define _VA_LIST
  400. typedef char *va_list;
  401. #endif
  402. X
  403. #define va_dcl int va_alist
  404. #define va_start(ap,v)  ap = (va_list)&va_alist
  405. #define va_arg(ap,t)    ((t*)(ap += sizeof(t)))[-1]
  406. #define va_end(ap)      ap = NULL
  407. #endif
  408. SHAR_EOF
  409. chmod 0640 dmake/unix/sysvr3/stdarg.h ||
  410. echo 'restore of dmake/unix/sysvr3/stdarg.h failed'
  411. Wc_c="`wc -c < 'dmake/unix/sysvr3/stdarg.h'`"
  412. test 469 -eq "$Wc_c" ||
  413.     echo 'dmake/unix/sysvr3/stdarg.h: original size 469, current size' "$Wc_c"
  414. rm -f _shar_wnt_.tmp
  415. fi
  416. # ============= dmake/unix/sysvr3/stdlib.h ==============
  417. if test -f 'dmake/unix/sysvr3/stdlib.h' -a X"$1" != X"-c"; then
  418.     echo 'x - skipping dmake/unix/sysvr3/stdlib.h (File already exists)'
  419.     rm -f _shar_wnt_.tmp
  420. else
  421. > _shar_wnt_.tmp
  422. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/sysvr3/stdlib.h' &&
  423. #ifndef _STDLIB_INCLUDED_
  424. #define _STDLIB_INCLUDED_
  425. X
  426. extern /*GOTO*/ _exit();
  427. extern /*GOTO*/ exit();
  428. extern /*GOTO*/ abort();
  429. extern int system();
  430. extern char *getenv();
  431. extern char *calloc();
  432. extern char *malloc();
  433. extern char *realloc();
  434. X
  435. #ifndef _AIX
  436. /* The AIX compiler dies on illegal redefinition of free */
  437. extern free();
  438. #endif
  439. X
  440. extern int errno;
  441. X
  442. #ifndef EIO
  443. #    include <errno.h>
  444. #endif
  445. X
  446. #endif /* _STDLIB_INCLUDED_ */
  447. SHAR_EOF
  448. chmod 0640 dmake/unix/sysvr3/stdlib.h ||
  449. echo 'restore of dmake/unix/sysvr3/stdlib.h failed'
  450. Wc_c="`wc -c < 'dmake/unix/sysvr3/stdlib.h'`"
  451. test 428 -eq "$Wc_c" ||
  452.     echo 'dmake/unix/sysvr3/stdlib.h: original size 428, current size' "$Wc_c"
  453. rm -f _shar_wnt_.tmp
  454. fi
  455. # ============= dmake/unix/sysvr3/time.h ==============
  456. if test -f 'dmake/unix/sysvr3/time.h' -a X"$1" != X"-c"; then
  457.     echo 'x - skipping dmake/unix/sysvr3/time.h (File already exists)'
  458.     rm -f _shar_wnt_.tmp
  459. else
  460. > _shar_wnt_.tmp
  461. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/sysvr3/time.h' &&
  462. /*
  463. ** Berkeley get this wrong!
  464. */
  465. #ifndef    TIME_h
  466. #define    TIME_h
  467. X
  468. typedef    long    time_t;    /* this is the thing we use */
  469. X
  470. #endif    TIME_h
  471. X
  472. SHAR_EOF
  473. chmod 0640 dmake/unix/sysvr3/time.h ||
  474. echo 'restore of dmake/unix/sysvr3/time.h failed'
  475. Wc_c="`wc -c < 'dmake/unix/sysvr3/time.h'`"
  476. test 133 -eq "$Wc_c" ||
  477.     echo 'dmake/unix/sysvr3/time.h: original size 133, current size' "$Wc_c"
  478. rm -f _shar_wnt_.tmp
  479. fi
  480. # ============= dmake/unix/sysvr4/config.h ==============
  481. if test ! -d 'dmake/unix/sysvr4'; then
  482.     mkdir 'dmake/unix/sysvr4'
  483. fi
  484. if test -f 'dmake/unix/sysvr4/config.h' -a X"$1" != X"-c"; then
  485.     echo 'x - skipping dmake/unix/sysvr4/config.h (File already exists)'
  486.     rm -f _shar_wnt_.tmp
  487. else
  488. > _shar_wnt_.tmp
  489. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/sysvr4/config.h' &&
  490. /* RCS      -- $Header: /u2/dvadura/src/generic/dmake/src/unix/sysvr4/config.h,v 1.1 1992/01/24 03:28:35 dvadura Exp $
  491. -- SYNOPSIS -- Configurarion include file.
  492. -- 
  493. -- DESCRIPTION
  494. --     There is one of these for each specific machine configuration.
  495. --    It can be used to further tweek the machine specific sources
  496. --    so that they compile.
  497. --
  498. -- AUTHOR
  499. --      Dennis Vadura, dvadura@watdragon.uwaterloo.ca
  500. --      CS DEPT, University of Waterloo, Waterloo, Ont., Canada
  501. --
  502. -- COPYRIGHT
  503. --      Copyright (c) 1990 by Dennis Vadura.  All rights reserved.
  504. -- 
  505. --      This program is free software; you can redistribute it and/or
  506. --      modify it under the terms of the GNU General Public License
  507. --      (version 1), as published by the Free Software Foundation, and
  508. --      found in the file 'LICENSE' included with this distribution.
  509. -- 
  510. --      This program is distributed in the hope that it will be useful,
  511. --      but WITHOUT ANY WARRANTY; without even the implied warrant of
  512. --      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  513. --      GNU General Public License for more details.
  514. -- 
  515. --      You should have received a copy of the GNU General Public License
  516. --      along with this program;  if not, write to the Free Software
  517. --      Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  518. --
  519. -- LOG
  520. --     $Log: config.h,v $
  521. X * Revision 1.1  1992/01/24  03:28:35  dvadura
  522. X * dmake Version 3.8, Initial revision
  523. X *
  524. */
  525. #define _TYPES_
  526. X
  527. /* define this for configurations that don't have the coreleft function
  528. X * so that the code compiles.  To my knowledge coreleft exists only on
  529. X * Turbo C, but it is needed here since the function is used in many debug
  530. X * macros. */
  531. #define coreleft() 0L
  532. X
  533. /* Define the getcwd function that is used in the code, since BSD does
  534. X * not have getcwd, but call it getwd instead. */
  535. extern char *getcwd ANSI((char *, int));
  536. X
  537. /* Define setvbuf, SysV doesn't have one */
  538. #define setvbuf(fp, bp, type, len) setbuf( fp, NULL );
  539. X
  540. /* We don't care about CONST */
  541. #define CONST
  542. X
  543. /* a small problem with pointer to voids on some unix machines needs this */
  544. #define PVOID void *
  545. SHAR_EOF
  546. chmod 0640 dmake/unix/sysvr4/config.h ||
  547. echo 'restore of dmake/unix/sysvr4/config.h failed'
  548. Wc_c="`wc -c < 'dmake/unix/sysvr4/config.h'`"
  549. test 2123 -eq "$Wc_c" ||
  550.     echo 'dmake/unix/sysvr4/config.h: original size 2123, current size' "$Wc_c"
  551. rm -f _shar_wnt_.tmp
  552. fi
  553. # ============= dmake/unix/sysvr4/config.mk ==============
  554. if test -f 'dmake/unix/sysvr4/config.mk' -a X"$1" != X"-c"; then
  555.     echo 'x - skipping dmake/unix/sysvr4/config.mk (File already exists)'
  556.     rm -f _shar_wnt_.tmp
  557. else
  558. > _shar_wnt_.tmp
  559. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/sysvr4/config.mk' &&
  560. # This is the SysV R4 UNIX configuration file for DMAKE
  561. #    It simply modifies the values of SRC, and checks to see if
  562. #    OSENVIRONMENT is defined.  If so it includes the appropriate
  563. #    config.mk file.
  564. #
  565. # It also sets the values of .SOURCE.c and .SOURCE.h to include the local
  566. # directory.
  567. #
  568. osrdir := $(OS)$(DIRSEPSTR)$(OSRELEASE)
  569. X
  570. # The following are required sources
  571. OSDSRC := 
  572. .IF $(OSDSRC)
  573. X   SRC    += $(OSDSRC)
  574. X   .SETDIR=$(osrdir) : $(OSDSRC)
  575. .END
  576. X
  577. .SOURCE.h : $(osrdir)
  578. X
  579. # Local configuration modifications for CFLAGS, there's local SysV includes
  580. # too.
  581. CFLAGS += -I$(osrdir)
  582. X
  583. # See if we modify anything in the lower levels.
  584. .IF $(OSENVIRONMENT) != $(NULL)
  585. X   .INCLUDE .IGNORE : $(osrdir)$(DIRSEPSTR)$(OSENVIRONMENT)$(DIRSEPSTR)config.mk
  586. .END
  587. SHAR_EOF
  588. chmod 0640 dmake/unix/sysvr4/config.mk ||
  589. echo 'restore of dmake/unix/sysvr4/config.mk failed'
  590. Wc_c="`wc -c < 'dmake/unix/sysvr4/config.mk'`"
  591. test 750 -eq "$Wc_c" ||
  592.     echo 'dmake/unix/sysvr4/config.mk: original size 750, current size' "$Wc_c"
  593. rm -f _shar_wnt_.tmp
  594. fi
  595. # ============= dmake/unix/sysvr4/make.sh ==============
  596. if test -f 'dmake/unix/sysvr4/make.sh' -a X"$1" != X"-c"; then
  597.     echo 'x - skipping dmake/unix/sysvr4/make.sh (File already exists)'
  598.     rm -f _shar_wnt_.tmp
  599. else
  600. > _shar_wnt_.tmp
  601. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/sysvr4/make.sh' &&
  602. mkdir objects
  603. cc -c -I. -Iunix -Iunix/sysvr4 -O infer.c
  604. mv infer.o objects
  605. cc -c -I. -Iunix -Iunix/sysvr4 -O make.c
  606. mv make.o objects
  607. cc -c -I. -Iunix -Iunix/sysvr4 -O stat.c
  608. mv stat.o objects
  609. cc -c -I. -Iunix -Iunix/sysvr4 -O expand.c
  610. mv expand.o objects
  611. cc -c -I. -Iunix -Iunix/sysvr4 -O dmstring.c
  612. mv dmstring.o objects
  613. cc -c -I. -Iunix -Iunix/sysvr4 -O hash.c
  614. mv hash.o objects
  615. cc -c -I. -Iunix -Iunix/sysvr4 -O dag.c
  616. mv dag.o objects
  617. cc -c -I. -Iunix -Iunix/sysvr4 -O dmake.c
  618. mv dmake.o objects
  619. cc -c -I. -Iunix -Iunix/sysvr4 -O path.c
  620. mv path.o objects
  621. cc -c -I. -Iunix -Iunix/sysvr4 -O imacs.c
  622. mv imacs.o objects
  623. cc -c -I. -Iunix -Iunix/sysvr4 -O sysintf.c
  624. mv sysintf.o objects
  625. cc -c -I. -Iunix -Iunix/sysvr4 -O parse.c
  626. mv parse.o objects
  627. cc -c -I. -Iunix -Iunix/sysvr4 -O getinp.c
  628. mv getinp.o objects
  629. cc -c -I. -Iunix -Iunix/sysvr4 -O quit.c
  630. mv quit.o objects
  631. cc -c -I. -Iunix -Iunix/sysvr4 -O state.c
  632. mv state.o objects
  633. cc -c -I. -Iunix -Iunix/sysvr4 -O basename.c
  634. mv basename.o objects
  635. cc -c -I. -Iunix -Iunix/sysvr4 -O dmdump.c
  636. mv dmdump.o objects
  637. cc -c -I. -Iunix -Iunix/sysvr4 -O macparse.c
  638. mv macparse.o objects
  639. cc -c -I. -Iunix -Iunix/sysvr4 -O rulparse.c
  640. mv rulparse.o objects
  641. cc -c -I. -Iunix -Iunix/sysvr4 -O percent.c
  642. mv percent.o objects
  643. cc -c -I. -Iunix -Iunix/sysvr4 -O function.c
  644. mv function.o objects
  645. cc -c -I. -Iunix -Iunix/sysvr4 -O unix/arlib.c
  646. mv arlib.o objects
  647. cc -c -I. -Iunix -Iunix/sysvr4 -O unix/dirbrk.c
  648. mv dirbrk.o objects
  649. cc -c -I. -Iunix -Iunix/sysvr4 -O unix/rmprq.c
  650. mv rmprq.o objects
  651. cc -c -I. -Iunix -Iunix/sysvr4 -O unix/ruletab.c
  652. mv ruletab.o objects
  653. cc -c -I. -Iunix -Iunix/sysvr4 -O unix/runargv.c
  654. mv runargv.o objects
  655. cc  -o dmake  objects/infer.o objects/make.o objects/stat.o objects/expand.o objects/dmstring.o objects/hash.o objects/dag.o objects/dmake.o objects/path.o objects/imacs.o objects/sysintf.o objects/parse.o objects/getinp.o objects/quit.o objects/state.o objects/basename.o objects/dmdump.o objects/macparse.o objects/rulparse.o objects/percent.o objects/function.o objects/arlib.o objects/dirbrk.o objects/rmprq.o objects/ruletab.o objects/runargv.o 
  656. cp unix/sysvr4/startup.mk startup.mk
  657. SHAR_EOF
  658. chmod 0640 dmake/unix/sysvr4/make.sh ||
  659. echo 'restore of dmake/unix/sysvr4/make.sh failed'
  660. Wc_c="`wc -c < 'dmake/unix/sysvr4/make.sh'`"
  661. test 2153 -eq "$Wc_c" ||
  662.     echo 'dmake/unix/sysvr4/make.sh: original size 2153, current size' "$Wc_c"
  663. rm -f _shar_wnt_.tmp
  664. fi
  665. # ============= dmake/unix/sysvr4/public.h ==============
  666. if test -f 'dmake/unix/sysvr4/public.h' -a X"$1" != X"-c"; then
  667.     echo 'x - skipping dmake/unix/sysvr4/public.h (File already exists)'
  668.     rm -f _shar_wnt_.tmp
  669. else
  670. > _shar_wnt_.tmp
  671. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/sysvr4/public.h' &&
  672. /* RCS      -- $Header$
  673. -- WARNING  -- This file is AUTOMATICALLY GENERATED DO NOT EDIT IT
  674. --
  675. -- SYNOPSIS -- Local functions exported to be visible by others.
  676. --
  677. -- DESCRIPTION
  678. --      This file is generated by 'genpub'.  Function declarations
  679. --      that appear in this file are extracted by 'genpub' from
  680. --      source files.  Any function in the source file whose definition
  681. --      appears like:
  682. --
  683. --          PUBLIC return_type
  684. --          function( arg_list );
  685. --          type_expr1 arg1;
  686. --          ...
  687. --
  688. --      has its definition extracted and a line of the form:
  689. --
  690. --          return_type function ANSI((type_expr1,type_expr2,...));
  691. --
  692. --      entered into the output file.
  693. --
  694. -- AUTHOR
  695. --      Dennis Vadura, dvadura@watdragon.uwaterloo.ca
  696. --      CS DEPT, University of Waterloo, Waterloo, Ont., Canada
  697. --
  698. -- COPYRIGHT
  699. --      Copyright (c) 1990 by Dennis Vadura.  All rights reserved.
  700. -- 
  701. --      This program is free software; you can redistribute it and/or
  702. --      modify it under the terms of the GNU General Public License
  703. --      (version 1), as published by the Free Software Foundation, and
  704. --      found in the file 'LICENSE' included with this distribution.
  705. -- 
  706. --      This program is distributed in the hope that it will be useful,
  707. --      but WITHOUT ANY WARRANTY; without even the implied warrant of
  708. --      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  709. --      GNU General Public License for more details.
  710. -- 
  711. --      You should have received a copy of the GNU General Public License
  712. --      along with this program;  if not, write to the Free Software
  713. --      Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  714. --
  715. -- LOG
  716. --     $Log$
  717. */
  718. X
  719. #ifndef _DMAKE_PUBLIC_h
  720. #define _DMAKE_PUBLIC_h
  721. X
  722. void Infer_recipe ANSI((CELLPTR, CELLPTR));
  723. int Make_targets ANSI(());
  724. int Exec_commands ANSI((CELLPTR));
  725. void Print_cmnd ANSI((char *, int, int));
  726. void Pop_dir ANSI((int));
  727. void Append_line ANSI((char *, int, FILE *, char *, int, int));
  728. void Stat_target ANSI((CELLPTR, int));
  729. char * Expand ANSI((char *));
  730. char * Apply_edit ANSI((char *, char *, char *, int, int));
  731. void Map_esc ANSI((char *));
  732. char* Apply_modifiers ANSI((int, char *));
  733. char* Tokenize ANSI((char *, char *));
  734. char * _strjoin ANSI((char *, char *, int, int));
  735. char * _stradd ANSI((char *, char *, int));
  736. char * _strapp ANSI((char *, char *));
  737. char * _strdup ANSI((char *));
  738. char * _strdup2 ANSI((char *));
  739. char * _strpbrk ANSI((char *, char *));
  740. char * _strspn ANSI((char *, char *));
  741. char * _strstr ANSI((char *, char *));
  742. char * _substr ANSI((char *, char *));
  743. uint16 Hash ANSI((char *, uint32 *));
  744. HASHPTR Get_name ANSI((char *, HASHPTR *, int));
  745. HASHPTR Search_table ANSI((HASHPTR *, char *, uint16 *, uint32 *));
  746. HASHPTR Def_macro ANSI((char *, char *, int));
  747. CELLPTR Def_cell ANSI((char *));
  748. LINKPTR Add_prerequisite ANSI((CELLPTR, CELLPTR, int, int));
  749. void Clear_prerequisites ANSI((CELLPTR));
  750. int Test_circle ANSI((CELLPTR, int));
  751. STRINGPTR Def_recipe ANSI((char *, STRINGPTR, int, int));
  752. t_attr Rcp_attribute ANSI((char *));
  753. int main ANSI((int, char **));
  754. FILE * Openfile ANSI((char *, int, int));
  755. FILE * Closefile ANSI(());
  756. FILE * Search_file ANSI((char *, char **));
  757. char * Filename ANSI(());
  758. int Nestlevel ANSI(());
  759. void No_ram ANSI(());
  760. int Usage ANSI((int));
  761. int Version ANSI(());
  762. char * Get_suffix ANSI((char *));
  763. char * Build_path ANSI((char *, char *));
  764. void Make_rules ANSI(());
  765. void Create_macro_vars ANSI(());
  766. time_t Do_stat ANSI((char *, char *, char **));
  767. int Do_touch ANSI((char *, char *, char **));
  768. void Void_lib_cache ANSI((char *, char *));
  769. time_t Do_time ANSI(());
  770. int Do_cmnd ANSI((char *, int, int, CELLPTR, int, int, int));
  771. char ** Pack_argv ANSI((int, int, char *));
  772. char * Read_env_string ANSI((char *));
  773. int Write_env_string ANSI((char *, char *));
  774. void ReadEnvironment ANSI(());
  775. void Catch_signals ANSI((void (*)()));
  776. void Clear_signals ANSI(());
  777. void Prolog ANSI((int, char* []));
  778. void Epilog ANSI((int));
  779. char * Get_current_dir ANSI(());
  780. int Set_dir ANSI((char*));
  781. char Get_switch_char ANSI(());
  782. FILE* Get_temp ANSI((char **, char *, int));
  783. FILE * Start_temp ANSI((char *, CELLPTR, char **));
  784. void Open_temp_error ANSI((char *, char *));
  785. void Link_temp ANSI((CELLPTR, FILE *, char *));
  786. void Close_temp ANSI((CELLPTR, FILE *));
  787. void Unlink_temp_files ANSI((CELLPTR));
  788. void Handle_result ANSI((int, int, int, CELLPTR));
  789. void Update_time_stamp ANSI((CELLPTR));
  790. int Remove_file ANSI((char *));
  791. void Parse ANSI((FILE *));
  792. int Get_line ANSI((char *, FILE *));
  793. char * Do_comment ANSI((char *, char **, int));
  794. char * Get_token ANSI((TKSTRPTR, char *, int));
  795. void Quit ANSI(());
  796. void Read_state ANSI(());
  797. void Write_state ANSI(());
  798. int Check_state ANSI((CELLPTR, STRINGPTR *, int));
  799. char* basename ANSI((char *));
  800. void Dump ANSI(());
  801. void Dump_recipe ANSI((STRINGPTR));
  802. int Parse_macro ANSI((char *, int));
  803. int Macro_op ANSI((char *));
  804. int Parse_rule_def ANSI((int *));
  805. int Rule_op ANSI((char *));
  806. void Add_recipe_to_list ANSI((char *, int, int));
  807. void Bind_rules_to_targets ANSI((int));
  808. int Set_group_attributes ANSI((char *));
  809. DFALINKPTR Match_dfa ANSI((char *));
  810. void Check_circle_dfa ANSI(());
  811. void Add_nfa ANSI((char *));
  812. char * Exec_function ANSI((char *));
  813. time_t seek_arch ANSI((char *, char *));
  814. int If_root_path ANSI((char *));
  815. void Remove_prq ANSI((CELLPTR));
  816. int runargv ANSI((CELLPTR, int, int, int, int, char *));
  817. int Wait_for_child ANSI((int, int));
  818. void Clean_up_processes ANSI(());
  819. X
  820. #endif
  821. SHAR_EOF
  822. chmod 0640 dmake/unix/sysvr4/public.h ||
  823. echo 'restore of dmake/unix/sysvr4/public.h failed'
  824. Wc_c="`wc -c < 'dmake/unix/sysvr4/public.h'`"
  825. test 5448 -eq "$Wc_c" ||
  826.     echo 'dmake/unix/sysvr4/public.h: original size 5448, current size' "$Wc_c"
  827. rm -f _shar_wnt_.tmp
  828. fi
  829. # ============= dmake/unix/sysvr4/startup.mk ==============
  830. if test -f 'dmake/unix/sysvr4/startup.mk' -a X"$1" != X"-c"; then
  831.     echo 'x - skipping dmake/unix/sysvr4/startup.mk (File already exists)'
  832.     rm -f _shar_wnt_.tmp
  833. else
  834. > _shar_wnt_.tmp
  835. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/sysvr4/startup.mk' &&
  836. # Generic UNIX DMAKE startup file.  Customize to suit your needs.
  837. # Should work for both SYSV, and BSD 4.3
  838. # See the documentation for a description of internally defined macros.
  839. #
  840. # Disable warnings for macros redefined here that were given
  841. # on the command line.
  842. __.SILENT := $(.SILENT)
  843. .SILENT   := yes
  844. X
  845. # Configuration parameters for DMAKE startup.mk file
  846. # Set these to NON-NULL if you wish to turn the parameter on.
  847. _HAVE_RCS    :=            # yes => RCS  is installed.
  848. _HAVE_SCCS    := yes        # yes => SCCS is installed.
  849. X
  850. # Applicable suffix definitions
  851. A := .a        # Libraries
  852. E :=        # Executables
  853. F := .f        # Fortran
  854. O := .o        # Objects
  855. P := .p        # Pascal
  856. S := .s        # Assembler sources
  857. V := ,v        # RCS suffix
  858. X
  859. # Recipe execution configurations
  860. SHELL        := /bin/sh
  861. SHELLFLAGS    := -ce
  862. GROUPSHELL    := $(SHELL)
  863. GROUPFLAGS    := 
  864. SHELLMETAS    := |();&<>?*][$$:\\#`'"
  865. GROUPSUFFIX    :=
  866. X
  867. # Standard C-language command names and flags
  868. X   CPP       := /lib/cpp        # C-preprocessor
  869. X   CC      := cc        # C-compiler and flags
  870. X   CFLAGS   =
  871. X
  872. X   AS      := as        # Assembler and flags
  873. X   ASFLAGS  = 
  874. X
  875. X   LD       = $(CC)        # Loader and flags
  876. X   LDFLAGS  =
  877. X   LDLIBS   =
  878. X
  879. # Definition of $(MAKE) macro for recursive makes.
  880. X   MAKE = $(MAKECMD) $(MFLAGS)
  881. X
  882. # Definition of Print command for this system.
  883. X   PRINT = lp
  884. X
  885. # Language and Parser generation Tools and their flags
  886. X   YACC      := yacc        # standard yacc
  887. X   YFLAGS  =
  888. X   YTAB      := y.tab        # yacc output files name stem.
  889. X
  890. X   LEX      := lex        # standard lex
  891. X   LFLAGS  =
  892. X   LEXYY  := lex.yy        # lex output file
  893. X
  894. # Other Compilers, Tools and their flags
  895. X   PC    := pc            # pascal compiler
  896. X   RC    := f77            # ratfor compiler
  897. X   FC    := f77            # fortran compiler
  898. X
  899. X   CO       := co        # check out for RCS
  900. X   COFLAGS := -q
  901. X
  902. X   AR     := ar            # archiver
  903. X   ARFLAGS = -rv
  904. X
  905. X   RM       := /bin/rm        # remove a file command
  906. X   RMFLAGS  =
  907. X
  908. # Implicit generation rules for making inferences.
  909. # We don't provide .yr or .ye rules here.  They're obsolete.
  910. # Rules for making *$O
  911. X   %$O : %.c ; $(CC) $(CFLAGS) -c $<
  912. X   %$O : %$P ; $(PC) $(PFLAGS) -c $<
  913. X   %$O : %$S ; $(AS) $(ASFLAGS) -o $@ $<
  914. X   %$O : %.cl ; class -c $<
  915. X   %$O : %.e %.r %.f %.F %$F
  916. X    $(FC) $(RFLAGS) $(EFLAGS) $(FFLAGS) -c $<
  917. X
  918. # Executables
  919. X   %$E : %$O ; $(CC) $(LDFLAGS) -o $@ $< $(LDLIBES)
  920. X   %$E : %.sh; cp $< $@; chmod 0777 $@
  921. X
  922. # lex and yacc rules
  923. X   %.c : %.y %.Y ; $(YACC)  $(YFLAGS) $<; mv $(YTAB).c $@
  924. X   %.c : %.l %.L ; $(LEX)   $(LFLAGS) $<; mv $(LEXYY).c $@
  925. X
  926. # This rule tells how to make *.out from it's immediate list of prerequisites
  927. # UNIX only.
  928. X   %.out :; $(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS)
  929. X
  930. # RCS support
  931. .IF $(_HAVE_RCS)
  932. X   % : %$V $$(@:d)RCS/$$(@:f)$V;- $(CO) $(COFLAGS) $@
  933. X   .NOINFER : %$V $$(@:d)RCS/$$(@:f)$V
  934. .END
  935. X
  936. # SCCS support
  937. .IF $(_HAVE_SCCS)
  938. X   GET = get
  939. X   GFLAGS =
  940. X   % : s.% ; $(GET) $(GFLAGS) $<
  941. X   .NOINFER : s.%
  942. .END
  943. X
  944. # Recipe to make archive files.
  945. %$A :
  946. [
  947. X   $(AR) $(ARFLAGS) $@ $?
  948. X   $(RM) $(RMFLAGS) $?
  949. ]
  950. X
  951. # DMAKE uses this recipe to remove intermediate targets
  952. .REMOVE :; $(RM) -f $<
  953. X
  954. # AUGMAKE extensions for SYSV compatibility
  955. @B = $(@:b)
  956. @D = $(@:d)
  957. @F = $(@:f)
  958. "*B" = $(*:b)
  959. "*D" = $(*:d)
  960. "*F" = $(*:f)
  961. <B = $(<:b)
  962. <D = $(<:d)
  963. <F = $(<:f)
  964. ?B = $(?:b)
  965. ?F = $(?:f)
  966. ?D = $(?:d)
  967. X
  968. # Turn warnings back to previous setting.
  969. .SILENT := $(__.SILENT)
  970. X
  971. # Local startup file if any
  972. .INCLUDE .IGNORE: "_startup.mk"
  973. SHAR_EOF
  974. chmod 0640 dmake/unix/sysvr4/startup.mk ||
  975. echo 'restore of dmake/unix/sysvr4/startup.mk failed'
  976. Wc_c="`wc -c < 'dmake/unix/sysvr4/startup.mk'`"
  977. test 3285 -eq "$Wc_c" ||
  978.     echo 'dmake/unix/sysvr4/startup.mk: original size 3285, current size' "$Wc_c"
  979. rm -f _shar_wnt_.tmp
  980. fi
  981. # ============= dmake/unix/sysvr4/stdarg.h ==============
  982. if test -f 'dmake/unix/sysvr4/stdarg.h' -a X"$1" != X"-c"; then
  983.     echo 'x - skipping dmake/unix/sysvr4/stdarg.h (File already exists)'
  984.     rm -f _shar_wnt_.tmp
  985. else
  986. > _shar_wnt_.tmp
  987. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/sysvr4/stdarg.h' &&
  988. /* Some V.4 systems aren't ansi, just to make matters ugly.
  989. X   If the dmake sources used another name for this include file,
  990. X   then this wouldn't be quite so awful. */
  991. #ifdef __STDC__
  992. #include "/usr/include/stdarg.h"
  993. #ifndef va_dcl
  994. #define va_dcl int va_alist
  995. #endif
  996. #else
  997. /*
  998. X * stdarg.h
  999. X *
  1000. X * defines ANSI style macros for accessing arguments of a function which takes
  1001. X * a variable number of arguments
  1002. X *
  1003. X */
  1004. X
  1005. typedef char *va_list;
  1006. X
  1007. #if defined(sparc)
  1008. # define va_alist __builtin_va_alist
  1009. #endif
  1010. # define va_dcl int va_alist
  1011. # define va_start(list,v) list = (char *)&va_alist
  1012. # define va_end(list)     list = NULL
  1013. #if defined(mips)
  1014. #define va_arg(list, mode) ((mode *)(list = \
  1015. X    (char *) (sizeof(mode) > 4 ? ((int)list + 2*8 - 1) & -8 \
  1016. X                   : ((int)list + 2*4 - 1) & -4)))[-1]
  1017. #else
  1018. # define va_arg(list,mode) ((mode *)(list += sizeof(mode)))[-1]
  1019. #endif
  1020. #endif
  1021. X
  1022. SHAR_EOF
  1023. chmod 0640 dmake/unix/sysvr4/stdarg.h ||
  1024. echo 'restore of dmake/unix/sysvr4/stdarg.h failed'
  1025. Wc_c="`wc -c < 'dmake/unix/sysvr4/stdarg.h'`"
  1026. test 869 -eq "$Wc_c" ||
  1027.     echo 'dmake/unix/sysvr4/stdarg.h: original size 869, current size' "$Wc_c"
  1028. rm -f _shar_wnt_.tmp
  1029. fi
  1030. # ============= dmake/unix/xenix/config.h ==============
  1031. if test ! -d 'dmake/unix/xenix'; then
  1032.     mkdir 'dmake/unix/xenix'
  1033. fi
  1034. if test -f 'dmake/unix/xenix/config.h' -a X"$1" != X"-c"; then
  1035.     echo 'x - skipping dmake/unix/xenix/config.h (File already exists)'
  1036.     rm -f _shar_wnt_.tmp
  1037. else
  1038. > _shar_wnt_.tmp
  1039. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/xenix/config.h' &&
  1040. /* RCS      -- $Header: /u2/dvadura/src/generic/dmake/src/unix/xenix/config.h,v 1.1 1992/01/24 03:28:45 dvadura Exp $
  1041. -- SYNOPSIS -- Configurarion include file.
  1042. -- 
  1043. -- DESCRIPTION
  1044. --     There is one of these for each specific machine configuration.
  1045. --    It can be used to further tweek the machine specific sources
  1046. --    so that they compile.
  1047. --
  1048. -- AUTHOR
  1049. --      Dennis Vadura, dvadura@watdragon.uwaterloo.ca
  1050. --      CS DEPT, University of Waterloo, Waterloo, Ont., Canada
  1051. --
  1052. -- COPYRIGHT
  1053. --      Copyright (c) 1990 by Dennis Vadura.  All rights reserved.
  1054. -- 
  1055. --      This program is free software; you can redistribute it and/or
  1056. --      modify it under the terms of the GNU General Public License
  1057. --      (version 1), as published by the Free Software Foundation, and
  1058. --      found in the file 'LICENSE' included with this distribution.
  1059. -- 
  1060. --      This program is distributed in the hope that it will be useful,
  1061. --      but WITHOUT ANY WARRANTY; without even the implied warrant of
  1062. --      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  1063. --      GNU General Public License for more details.
  1064. -- 
  1065. --      You should have received a copy of the GNU General Public License
  1066. --      along with this program;  if not, write to the Free Software
  1067. --      Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1068. --
  1069. -- LOG
  1070. --     $Log: config.h,v $
  1071. X * Revision 1.1  1992/01/24  03:28:45  dvadura
  1072. X * dmake Version 3.8, Initial revision
  1073. X *
  1074. */
  1075. X
  1076. /* define this for configurations that don't have the coreleft function
  1077. X * so that the code compiles.  To my knowledge coreleft exists only on
  1078. X * Turbo C, but it is needed here since the function is used in many debug
  1079. X * macros. */
  1080. #define coreleft() 0L
  1081. X
  1082. /* Define the getcwd function that is used in the code, since BSD does
  1083. X * not have getcwd, but call it getwd instead. */
  1084. extern char *getcwd ANSI((char *, int));
  1085. X
  1086. #ifndef M_XENIX
  1087. /* Define setvbuf, SysV doesn't have one */
  1088. #define setvbuf(fp, bp, type, len) setbuf( fp, NULL );
  1089. #endif
  1090. X
  1091. #ifdef M_XENIX
  1092. #define ASCARCH        0    /* Use binary archive headers if Xenix */
  1093. #endif
  1094. X
  1095. /* We don't care about CONST */
  1096. #define CONST
  1097. X
  1098. /* a small problem with pointer to voids on some unix machines needs this */
  1099. #define PVOID void *
  1100. SHAR_EOF
  1101. chmod 0640 dmake/unix/xenix/config.h ||
  1102. echo 'restore of dmake/unix/xenix/config.h failed'
  1103. Wc_c="`wc -c < 'dmake/unix/xenix/config.h'`"
  1104. test 2213 -eq "$Wc_c" ||
  1105.     echo 'dmake/unix/xenix/config.h: original size 2213, current size' "$Wc_c"
  1106. rm -f _shar_wnt_.tmp
  1107. fi
  1108. # ============= dmake/unix/xenix/config.mk ==============
  1109. if test -f 'dmake/unix/xenix/config.mk' -a X"$1" != X"-c"; then
  1110.     echo 'x - skipping dmake/unix/xenix/config.mk (File already exists)'
  1111.     rm -f _shar_wnt_.tmp
  1112. else
  1113. > _shar_wnt_.tmp
  1114. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/xenix/config.mk' &&
  1115. # This is the SysV R3 UNIX configuration file for DMAKE
  1116. #    It simply modifies the values of SRC, and checks to see if
  1117. #    OSENVIRONMENT is defined.  If so it includes the appropriate
  1118. #    config.mk file.
  1119. #
  1120. # It also sets the values of .SOURCE.c and .SOURCE.h to include the local
  1121. # directory.
  1122. #
  1123. osrdir := $(OS)$(DIRSEPSTR)$(OSRELEASE)
  1124. X
  1125. # The following are required sources
  1126. OSDSRC := 
  1127. .IF $(OSDSRC)
  1128. X   SRC    += $(OSDSRC)
  1129. X   .SETDIR=$(osrdir) : $(OSDSRC)
  1130. .END
  1131. X
  1132. .SOURCE.h : $(osrdir)
  1133. X
  1134. # Local configuration modifications for CFLAGS, there's local SysV includes
  1135. # too.
  1136. CFLAGS += -I$(osrdir) -DM_XENIX
  1137. X
  1138. # See if we modify anything in the lower levels.
  1139. .IF $(OSENVIRONMENT) != $(NULL)
  1140. X   .INCLUDE .IGNORE : $(osrdir)$(DIRSEPSTR)$(OSENVIRONMENT)$(DIRSEPSTR)config.mk
  1141. .END
  1142. SHAR_EOF
  1143. chmod 0640 dmake/unix/xenix/config.mk ||
  1144. echo 'restore of dmake/unix/xenix/config.mk failed'
  1145. Wc_c="`wc -c < 'dmake/unix/xenix/config.mk'`"
  1146. test 760 -eq "$Wc_c" ||
  1147.     echo 'dmake/unix/xenix/config.mk: original size 760, current size' "$Wc_c"
  1148. rm -f _shar_wnt_.tmp
  1149. fi
  1150. # ============= dmake/unix/xenix/make.sh ==============
  1151. if test -f 'dmake/unix/xenix/make.sh' -a X"$1" != X"-c"; then
  1152.     echo 'x - skipping dmake/unix/xenix/make.sh (File already exists)'
  1153.     rm -f _shar_wnt_.tmp
  1154. else
  1155. > _shar_wnt_.tmp
  1156. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/xenix/make.sh' &&
  1157. mkdir objects
  1158. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O infer.c
  1159. mv infer.o objects
  1160. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O make.c
  1161. mv make.o objects
  1162. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O stat.c
  1163. mv stat.o objects
  1164. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O expand.c
  1165. mv expand.o objects
  1166. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O dmstring.c
  1167. mv dmstring.o objects
  1168. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O hash.c
  1169. mv hash.o objects
  1170. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O dag.c
  1171. mv dag.o objects
  1172. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O dmake.c
  1173. mv dmake.o objects
  1174. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O path.c
  1175. mv path.o objects
  1176. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O imacs.c
  1177. mv imacs.o objects
  1178. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O sysintf.c
  1179. mv sysintf.o objects
  1180. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O parse.c
  1181. mv parse.o objects
  1182. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O getinp.c
  1183. mv getinp.o objects
  1184. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O quit.c
  1185. mv quit.o objects
  1186. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O state.c
  1187. mv state.o objects
  1188. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O basename.c
  1189. mv basename.o objects
  1190. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O dmdump.c
  1191. mv dmdump.o objects
  1192. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O macparse.c
  1193. mv macparse.o objects
  1194. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O rulparse.c
  1195. mv rulparse.o objects
  1196. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O percent.c
  1197. mv percent.o objects
  1198. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O function.c
  1199. mv function.o objects
  1200. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O unix/arlib.c
  1201. mv arlib.o objects
  1202. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O unix/dirbrk.c
  1203. mv dirbrk.o objects
  1204. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O unix/rmprq.c
  1205. mv rmprq.o objects
  1206. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O unix/ruletab.c
  1207. mv ruletab.o objects
  1208. cc -c -I. -Iunix -Iunix/xenix -DM_XENIX -O unix/runargv.c
  1209. mv runargv.o objects
  1210. cc  -o dmake  objects/infer.o objects/make.o objects/stat.o objects/expand.o objects/dmstring.o objects/hash.o objects/dag.o objects/dmake.o objects/path.o objects/imacs.o objects/sysintf.o objects/parse.o objects/getinp.o objects/quit.o objects/state.o objects/basename.o objects/dmdump.o objects/macparse.o objects/rulparse.o objects/percent.o objects/function.o objects/arlib.o objects/dirbrk.o objects/rmprq.o objects/ruletab.o objects/runargv.o 
  1211. cp unix/xenix/startup.mk startup.mk
  1212. SHAR_EOF
  1213. chmod 0640 dmake/unix/xenix/make.sh ||
  1214. echo 'restore of dmake/unix/xenix/make.sh failed'
  1215. Wc_c="`wc -c < 'dmake/unix/xenix/make.sh'`"
  1216. test 2386 -eq "$Wc_c" ||
  1217.     echo 'dmake/unix/xenix/make.sh: original size 2386, current size' "$Wc_c"
  1218. rm -f _shar_wnt_.tmp
  1219. fi
  1220. # ============= dmake/unix/xenix/public.h ==============
  1221. if test -f 'dmake/unix/xenix/public.h' -a X"$1" != X"-c"; then
  1222.     echo 'x - skipping dmake/unix/xenix/public.h (File already exists)'
  1223.     rm -f _shar_wnt_.tmp
  1224. else
  1225. > _shar_wnt_.tmp
  1226. sed 's/^X//' << 'SHAR_EOF' > 'dmake/unix/xenix/public.h' &&
  1227. /* RCS      -- $Header$
  1228. -- WARNING  -- This file is AUTOMATICALLY GENERATED DO NOT EDIT IT
  1229. --
  1230. -- SYNOPSIS -- Local functions exported to be visible by others.
  1231. --
  1232. -- DESCRIPTION
  1233. --      This file is generated by 'genpub'.  Function declarations
  1234. --      that appear in this file are extracted by 'genpub' from
  1235. --      source files.  Any function in the source file whose definition
  1236. --      appears like:
  1237. --
  1238. --          PUBLIC return_type
  1239. --          function( arg_list );
  1240. --          type_expr1 arg1;
  1241. --          ...
  1242. --
  1243. --      has its definition extracted and a line of the form:
  1244. --
  1245. --          return_type function ANSI((type_expr1,type_expr2,...));
  1246. --
  1247. --      entered into the output file.
  1248. --
  1249. -- AUTHOR
  1250. --      Dennis Vadura, dvadura@watdragon.uwaterloo.ca
  1251. --      CS DEPT, University of Waterloo, Waterloo, Ont., Canada
  1252. --
  1253. -- COPYRIGHT
  1254. --      Copyright (c) 1990 by Dennis Vadura.  All rights reserved.
  1255. -- 
  1256. --      This program is free software; you can redistribute it and/or
  1257. --      modify it under the terms of the GNU General Public License
  1258. --      (version 1), as published by the Free Software Foundation, and
  1259. --      found in the file 'LICENSE' included with this distribution.
  1260. -- 
  1261. --      This program is distributed in the hope that it will be useful,
  1262. --      but WITHOUT ANY WARRANTY; without even the implied warrant of
  1263. --      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  1264. --      GNU General Public License for more details.
  1265. -- 
  1266. --      You should have received a copy of the GNU General Public License
  1267. --      along with this program;  if not, write to the Free Software
  1268. --      Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  1269. --
  1270. -- LOG
  1271. --     $Log$
  1272. */
  1273. X
  1274. #ifndef _DMAKE_PUBLIC_h
  1275. #define _DMAKE_PUBLIC_h
  1276. X
  1277. void Infer_recipe ANSI((CELLPTR, CELLPTR));
  1278. int Make_targets ANSI(());
  1279. int Exec_commands ANSI((CELLPTR));
  1280. void Print_cmnd ANSI((char *, int, int));
  1281. void Pop_dir ANSI((int));
  1282. void Append_line ANSI((char *, int, FILE *, char *, int, int));
  1283. SHAR_EOF
  1284. true || echo 'restore of dmake/unix/xenix/public.h failed'
  1285. fi
  1286. echo 'End of part 39, continue with part 40'
  1287. echo 40 > _shar_seq_.tmp
  1288. exit 0
  1289. exit 0 # Just in case...
  1290.