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