annotate srogue/configure.ac @ 315:ad2570b5b21f

Advanced Rogue 5, 7: fix some trading post messages. When attempting to buy an unaffordable object, messages were often of the form "You can't afford that a scroll of hold monster !", because the object description (stored in curpurch) was the same text used in inventory displays. This has been worked around by inspecting the contents of curpurch and using different message templates.
author John "Elwin" Edwards
date Sun, 24 Oct 2021 20:26:21 -0400
parents 029c1f5c5588
children aab761616489
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
1 # -*- Autoconf -*-
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
2 # Process this file with autoconf to produce a configure script.
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
3
312
029c1f5c5588 Update the Autoconf files.
John "Elwin" Edwards
parents: 294
diff changeset
4 AC_PREREQ([2.69])
029c1f5c5588 Update the Autoconf files.
John "Elwin" Edwards
parents: 294
diff changeset
5 AC_INIT([Super-Rogue],[9.0],[elwin@sdf.org],[srogue])
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
6 AC_CONFIG_HEADERS([config.h])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
7 AC_CONFIG_FILES([Makefile])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
8
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
9 # Checks for programs.
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
10 AC_PROG_CC
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
11 # Checks for libraries.
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
12 MP_WITH_CURSES
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
13 # Checks for header files.
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
14 AC_HEADER_STDC
118
8d1dfc5a912c srogue: add a complete mdport.c.
John "Elwin" Edwards
parents: 101
diff changeset
15 AC_CHECK_HEADERS([arpa/inet.h pwd.h errno.h fcntl.h limits.h nlist.h stdlib.h string.h sys/ioctl.h termios.h unistd.h term.h ncurses/term.h process.h])
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
16
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
17 # Checks for typedefs, structures, and compiler characteristics.
119
458df24e973d srogue: use functions from mdport.c.
John "Elwin" Edwards
parents: 118
diff changeset
18 AC_TYPE_UID_T
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
19 AC_TYPE_SIZE_T
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
20 AC_STRUCT_TM
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
21 # Checks for library functions.
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
22 AC_FUNC_FORK
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
23 AC_PROG_GCC_TRADITIONAL
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
24 AC_FUNC_STAT
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
25 AC_FUNC_VPRINTF
121
e6c8652473fe srogue: more compatibility improvements.
John "Elwin" Edwards
parents: 119
diff changeset
26 AC_CHECK_FUNCS([erasechar killchar alarm getpass memset setenv strchr nlist _spawnl spawnl getpwuid loadav getloadavg strerror setgid setuid getuid getgid lrand48 random srand48 srandom])
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
27 AC_PROG_INSTALL
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
28
223
0e99eade579c Generate text documentation from the troff source files.
John "Elwin" Edwards
parents: 157
diff changeset
29 AC_CHECK_PROG([NROFF], [nroff], [nroff],)
0e99eade579c Generate text documentation from the troff source files.
John "Elwin" Edwards
parents: 157
diff changeset
30 AC_CHECK_PROG([GROFF], [groff], [groff],)
0e99eade579c Generate text documentation from the troff source files.
John "Elwin" Edwards
parents: 157
diff changeset
31 AC_CHECK_PROG([COLCRT], [colcrt], [colcrt],)
0e99eade579c Generate text documentation from the troff source files.
John "Elwin" Edwards
parents: 157
diff changeset
32 AC_CHECK_PROG([TBL], [tbl], [tbl],)
0e99eade579c Generate text documentation from the troff source files.
John "Elwin" Edwards
parents: 157
diff changeset
33
294
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
34 if test "x$GROFF" != "x" ; then
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
35 DOCS_GROFF=
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
36 DOCS_NROFF=.no-nroff
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
37 DOCS_NONE=.none
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
38 elif test "x$(NROFF)" != "x" && test "x$(TBL)" != "x" && test "x$(COLCRT)" != "x" ; then
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
39 DOCS_GROFF=.no-groff
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
40 DOCS_NROFF=
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
41 DOCS_NONE=.none
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
42 else
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
43 DOCS_GROFF=.no-groff
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
44 DOCS_NROFF=.no-nroff
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
45 DOCS_NONE=
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
46 fi
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
47
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
48 AC_SUBST(DOCS_GROFF)
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
49 AC_SUBST(DOCS_NROFF)
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
50 AC_SUBST(DOCS_NONE)
fe6b7a1a6dfc Improve the documentation build process.
John "Elwin" Edwards
parents: 287
diff changeset
51
312
029c1f5c5588 Update the Autoconf files.
John "Elwin" Edwards
parents: 294
diff changeset
52 AC_ARG_WITH(program-name, AS_HELP_STRING([--with-program-name=NAME],[alternate executable name]),[progname="$withval" ], [progname="srogue"] )
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
53 PROGRAM=$progname
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
54 AC_SUBST(PROGRAM)
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
55
312
029c1f5c5588 Update the Autoconf files.
John "Elwin" Edwards
parents: 294
diff changeset
56 AC_ARG_ENABLE(setgid, AS_HELP_STRING([--enable-setgid=NAME],[install executable as setgid with group ownership of NAME @<:@default=no@:>@]),[],[])
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
57 AC_MSG_CHECKING([if using setgid execute bit])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
58 if test "x$enable_setgid" = "xno" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
59 GROUPOWNER=
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
60 elif test "x$enable_setgid" = "xyes" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
61 GROUPOWNER=games
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
62 elif test "x$enable_setgid" = "x" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
63 GROUPOWNER=
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
64 else
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
65 GROUPOWNER=$enable_setgid
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
66 fi
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
67
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
68 if test "x$GROUPOWNER" != "x" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
69 AC_DEFINE_UNQUOTED([GROUPOWNER],[$GROUPOWNER], [Define to group owner of setgid executable])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
70 AC_MSG_RESULT([$GROUPOWNER])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
71 else
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
72 AC_MSG_RESULT([no])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
73 fi
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
74
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
75 AC_SUBST(GROUPOWNER)
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
76
312
029c1f5c5588 Update the Autoconf files.
John "Elwin" Edwards
parents: 294
diff changeset
77 AC_ARG_ENABLE([scorefile],[AS_HELP_STRING([--enable-scorefile=SCOREFILE],[enable scoreboard with given filename])],[],[])
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
78 AC_MSG_CHECKING([for scoreboard file])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
79 if test "x$enable_scorefile" = "xno" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
80 SCOREFILE=
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
81 elif test "x$enable_scorefile" = "xyes" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
82 SCOREFILE=$progname.scr
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
83 elif test "x$enable_scorefile" = "x" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
84 SCOREFILE=$progname.scr
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
85 else
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
86 SCOREFILE=$enable_scorefile
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
87 fi
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
88
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
89 if test "x$SCOREFILE" != "x" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
90 AC_DEFINE_UNQUOTED([SCOREFILE], ["$SCOREFILE"], [Define to file to use for scoreboard])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
91 AC_MSG_RESULT([$SCOREFILE])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
92 else
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
93 AC_MSG_RESULT([disabled])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
94 fi
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
95
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
96 AC_SUBST(SCOREFILE)
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
97
312
029c1f5c5588 Update the Autoconf files.
John "Elwin" Edwards
parents: 294
diff changeset
98 AC_ARG_ENABLE([logfile],[AS_HELP_STRING([--enable-logfile=LOGFILE],[enable logfile with given filename])],[],[])
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
99 AC_MSG_CHECKING([for log file])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
100 if test "x$enable_logfile" = "xno" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
101 LOGFILE=
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
102 elif test "x$enable_logfile" = "xyes" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
103 LOGFILE=$progname.log
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
104 elif test "x$enable_logfile" = "x" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
105 LOGFILE=$progname.log
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
106 else
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
107 LOGFILE=$enable_logfile
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
108 fi
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
109
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
110 if test "x$LOGFILE" != "x" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
111 AC_DEFINE_UNQUOTED([LOGFILE], ["$LOGFILE"], [Define to file to use for log])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
112 AC_MSG_RESULT([$LOGFILE])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
113 else
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
114 AC_MSG_RESULT([disabled])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
115 fi
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
116
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
117 AC_SUBST(LOGFILE)
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
118
312
029c1f5c5588 Update the Autoconf files.
John "Elwin" Edwards
parents: 294
diff changeset
119 AC_ARG_ENABLE([savedir],[AS_HELP_STRING([--enable-savedir=SAVEDIR],[enable systemwide location for saved games])],[],[enable_savedir="no"])
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
120 AC_MSG_CHECKING([for save directory])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
121 if test "x$enable_savedir" = "xno" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
122 SAVEDIR=
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
123 elif test "x$enable_savedir" = "xyes" -o "x$enable_savedir" = "x"; then
157
5238b835d661 Fix a typo in configure.ac.
John "Elwin" Edwards
parents: 121
diff changeset
124 if test "x$GROUPOWNER" != "x"; then
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
125 SAVEDIR="/var/local/games/roguelike/${progname}save/"
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
126 else
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
127 SAVEDIR="$progname/"
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
128 fi
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
129 else
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
130 SAVEDIR="$enable_savedir"
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
131 fi
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
132
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
133 if test "x$SAVEDIR" != "x" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
134 AC_DEFINE_UNQUOTED([SAVEDIR], ["$SAVEDIR"], [Define to systemwide directory for storing saved games])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
135 AC_MSG_RESULT([$SAVEDIR])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
136 else
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
137 AC_MSG_RESULT([disabled])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
138 fi
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
139
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
140 AC_SUBST(SAVEDIR)
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
141
312
029c1f5c5588 Update the Autoconf files.
John "Elwin" Edwards
parents: 294
diff changeset
142 AC_ARG_ENABLE([wizardmode],[AS_HELP_STRING([--enable-wizardmode],[enable availability of wizard mode @<:@default=no@:>@])],[],[])
101
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
143 AC_MSG_CHECKING([if wizard mode is enabled])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
144 if test "x$enable_wizardmode" = "xno" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
145 AC_MSG_RESULT([no])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
146 elif test "x$enable_wizardmode" = "x" ; then
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
147 AC_MSG_RESULT([no])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
148 else
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
149 AC_DEFINE([WIZARD], [], [Define to include wizard mode])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
150 AC_MSG_RESULT([yes])
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
151 fi
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
152
15f8229f38c1 srogue: begin porting to autoconf.
John "Elwin" Edwards
parents:
diff changeset
153 AC_OUTPUT