]> git.ipfire.org Git - thirdparty/util-linux.git/blob - MCONFIG
Imported from util-linux-2.11t tarball.
[thirdparty/util-linux.git] / MCONFIG
1 # MCONFIG -- Configuration stuff for util-linux
2 # Created: Sat Feb 4 15:50:30 1995
3 # Copyright 1995 Rickard E. Faith (faith@cs.unc.edu)
4
5 # For a user-mode install, make (at least) three changes:
6 # - remove the `-o root' part in INSTALLSUID
7 # - set USE_TTY_GROUP=no
8 # - define DESTDIR
9
10 # Select for ARCH one of intel, alpha, sparc, arm, m68k, mips
11 # Select for CPU i386 if the binaries must be able to run on an intel 386
12 # (by default i486 code is generated, see below)
13 CPU=$(shell uname -m)
14 ARCH=$(shell echo $(CPU) | sed 's/i.86/intel/;s/arm.*/arm/')
15
16 # If HAVE_PAM is set to "yes", then login, chfn, chsh, and newgrp
17 # will use PAM for authentication. Additionally, passwd will not be
18 # installed as it is not PAM aware.
19 HAVE_PAM=no
20
21 # If HAVE_SHADOW is set to "yes", then login, chfn, chsh, newgrp, passwd,
22 # and vipw will not be built or installed from the login-utils
23 # subdirectory.
24 HAVE_SHADOW=yes
25
26 # If HAVE_PASSWD is set to "yes", then passwd will not be built or
27 # installed from the login-utils subdirectory (but login, chfn, chsh,
28 # newgrp, and vipw *will* be installed).
29 HAVE_PASSWD=no
30
31 # If you use chfn and chsh from this package, REQUIRE_PASSWORD will require
32 # non-root users to enter the account password before updating /etc/passwd.
33 REQUIRE_PASSWORD=yes
34 #REQUIRE_PASSWORD=no
35
36 # If you use chsh from this package, ONLY_LISTED_SHELLS will require that
37 # the selected shell be listed in /etc/shells -- otherwise only a warning is
38 # printed. This prevents someone from setting their shell to /bin/false.
39 ONLY_LISTED_SHELLS=yes
40 #ONLY_LISTED_SHELLS=no
41
42
43 # If HAVE_SYSVINIT is set to "yes", then simpleinit and shutdown will not
44 # be built or installed from the login-utils subdirectory. (The shutdown
45 # and halt that come with the SysVinit package should be used with the init
46 # found in that package.)
47 HAVE_SYSVINIT=yes
48
49 # If HAVE_SYSVINIT_UTILS is set to "yes", then last, mesg, and wall will
50 # not be built or installed from the login-utils subdirectory. (The
51 # shutdown and init from the SysVinit package do not depend on the last,
52 # mesg, and wall from that package.)
53 HAVE_SYSVINIT_UTILS=yes
54
55 # If HAVE_WRITE is set to "yes", then write will not be built or
56 # installed from the misc-utils subdirectory.
57 # (There is a network aware write in netwrite from NetKit 0.16 or later.)
58 HAVE_WRITE=no
59
60 # If HAVE_GETTY is set to "yes", then agetty will not be built or
61 # installed from the login-utils subdirectory. Note that agetty can
62 # co-exist with other gettys, so this option should never be used.
63 HAVE_GETTY=no
64
65 # If USE_TTY_GROUP is set to "yes", then wall and write will be installed
66 # setgid to the "tty" group, and mesg will only set the group write bit.
67 # Note that this is only useful if login/xterm/etc. change the group of the
68 # user's tty to "tty" [The login in util-linux does this correctly, and
69 # xterm will do it correctly if X is compiled with USE_TTY_GROUP set
70 # properly.]
71 USE_TTY_GROUP=yes
72
73 # If HAVE_KILL is set to "yes", then kill will not be built or
74 # installed from the misc-utils subdirectory.
75 # (There is also a kill in the procps package.)
76 HAVE_KILL=no
77
78 # If ALLOW_VCS_USE is set to "yes", then login will chown /dev/vcsN
79 # to the current user, allowing her to make a screendump and do other
80 # nifty things on the console, but also allowing him to keep an open
81 # file descriptor after logging out to trick the next user.
82 ALLOW_VCS_USE=yes
83
84 # If HAVE_RESET is set to "yes", then reset won't be installed. The version
85 # of reset that comes with the ncurses package is less aggressive.
86 HAVE_RESET=yes
87
88 # If HAVE_SLN is set to "yes", then sln won't be installed
89 # (but the man page sln.8 will be installed anyway).
90 # sln also comes with libc and glibc.
91 HAVE_SLN=no
92
93 # If HAVE_FDUTILS is set to "yes", then setfdprm won't be installed.
94 HAVE_FDUTILS=no
95
96 # If SILENT_PG is set to "yes", then pg will not ring the bell
97 # when an invalid key is pressed
98 SILENT_PG=no
99
100 # If configure decides that Native Language Support (NLS) is available,
101 # it sets MAY_ENABLE_NLS in defines.h. If you don't want NLS, set
102 # DISABLE_NLS to "yes".
103 DISABLE_NLS=no
104
105 # Different optimizations for different cpus.
106 # gcc 3.0 likes options -mcpu=i486 instead of -m486
107 ifeq "$(ARCH)" "intel"
108 ifeq "$(HAVE_OLD_GCC)" "yes"
109 CPUHEAD=-m
110 else
111 CPUHEAD=-mcpu=i
112 endif
113 ifeq "$(CPU)" "i386"
114 CPUTAIL=386
115 else
116 CPUTAIL=486
117 endif
118 CPUOPT= $(CPUHEAD)$(CPUTAIL)
119 OPT= -pipe -O2 $(CPUOPT) -fomit-frame-pointer
120 else
121 ifeq "$(ARCH)" "arm"
122 OPT= -pipe -O2 -fsigned-char -fomit-frame-pointer
123 else
124 OPT= -O2 -fomit-frame-pointer
125 endif
126 endif
127
128 WARNFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes
129
130 LIB=../lib
131
132 ERR_O=$(LIB)/err.o
133
134 # Set HAVE_SLANG to yes if you have slang (and prefer to use that for cfdisk)
135 # (If neither HAVE_NCURSES nor HAVE_SLANG is defined, cfdisk is not made.)
136 # HAVE_SLANG=yes
137
138 # There is a subdirectory /usr/include/slang containing slcurses.h
139 # SLANGFLAGS=-I/usr/include/slang
140 # No such subdirectory - slcurses.h lives in /usr/include
141 # (no extra definition required).
142 LIBSLANG=-lslang
143
144 #
145 # Paths used for compilation (not all are actually used, see CFLAGS below)
146 #
147 DEV_DIR= /dev
148 ETC_DIR= /etc
149 SBIN_DIR= /sbin
150 USRSBIN_DIR= /usr/sbin
151 USRLIB_DIR= /usr/lib
152 USRBIN_DIR= /usr/bin
153 USRGAMES_DIR= /usr/games
154 USRSHAREMISC_DIR=/usr/share/misc
155 LOCALE_DIR= /usr/share/locale
156 BIN_DIR= /bin
157 VAR_PATH= /var
158 LOG_DIR= /var/log
159 MAN_DIR= /usr/share/man
160 INFO_DIR= /usr/share/info
161
162 # Directory for help file for more. Used to be /usr/lib.
163 MOREHELP_DIR= $(USRSHAREMISC_DIR)
164
165 #
166 # Paths used for install
167 #
168 DEVDIR= $(DESTDIR)$(DEV_DIR)
169 ETCDIR= $(DESTDIR)$(ETC_DIR)
170 SBINDIR= $(DESTDIR)$(SBIN_DIR)
171 USRSBINDIR= $(DESTDIR)$(USRSBIN_DIR)
172 USRLIBDIR= $(DESTDIR)$(USRLIB_DIR)
173 USRBINDIR= $(DESTDIR)$(USRBIN_DIR)
174 USRGAMESDIR= $(DESTDIR)$(USRGAMES_DIR)
175 USRSHAREMISCDIR=$(DESTDIR)$(USRSHAREMISC_DIR)
176 LOCALEDIR= $(DESTDIR)$(LOCALE_DIR)
177 BINDIR= $(DESTDIR)$(BIN_DIR)
178 VARPATH= $(DESTDIR)$(VAR_PATH)
179 LOGDIR= $(DESTDIR)$(LOG_DIR)
180 MANDIR= $(DESTDIR)$(MAN_DIR)
181 MAN1DIR= $(MANDIR)/man1
182 MAN3DIR= $(MANDIR)/man3
183 MAN5DIR= $(MANDIR)/man5
184 MAN6DIR= $(MANDIR)/man6
185 MAN8DIR= $(MANDIR)/man8
186 INFODIR= $(DESTDIR)$(INFO_DIR)
187
188 # Directory for shutdown, halt, reboot, etc.
189 SHUTDOWNDIR= $(SBINDIR)
190
191 # Directory for help file for more. Used to be /usr/lib.
192 MOREHELPDIR= $(DESTDIR)$(MOREHELP_DIR)
193
194 # Modes
195 DIRMODE= 755
196 BINMODE= 755
197 MANMODE= 644
198 DATMODE= 644
199 INFOMODE= 644
200 SUIDMODE= 4755
201
202 CHMOD= chmod
203 INSTALL= install
204 INSTALLDIR= $(INSTALL) -d -m $(DIRMODE)
205 INSTALLBIN= $(INSTALL) -m $(BINMODE)
206 INSTALLMAN= $(INSTALL) -m $(MANMODE)
207 INSTALLDAT= $(INSTALL) -m $(DATMODE)
208 INSTALLSUID= $(INSTALL) -m $(SUIDMODE) -o root
209
210 ifeq "$(DISABLE_NLS)" "yes"
211 NLSFLAGS = -DDISABLE_NLS
212 endif
213
214 CFLAGS := $(OPT) -I$(LIB) $(WARNFLAGS) \
215 $(CURSESFLAGS) $(SLANGFLAGS) $(NLSFLAGS) \
216 -D_FILE_OFFSET_BITS=64 \
217 -DSBINDIR=\"$(SBIN_DIR)\" \
218 -DUSRSBINDIR=\"$(USRSBIN_DIR)\" \
219 -DLOGDIR=\"$(LOG_DIR)\" \
220 -DVARPATH=\"$(VAR_PATH)\" \
221 -DLOCALEDIR=\"$(LOCALE_DIR)\" \
222 $(CFLAGS)
223
224
225 %.o: %.c
226 $(CC) -c $(CFLAGS) $< -o $@
227
228 %: %.cc
229 $(CXX) $(CFLAGS) $< -o $@
230