📄 makefile
字号:
## Makefile Makefile for the systemV init suite.# Targets: all compiles everything# install installs the binaries (not the scripts)# clean cleans up object files# clobber really cleans up## Version: @(#)Makefile 2.85-13 23-Mar-2004 miquels@cistron.nl#CC = gccCFLAGS = -Wall -O2 -fomit-frame-pointer -D_GNU_SOURCELDFLAGS = -sSTATIC =# For some known distributions we do not build all programs, otherwise we do.BIN =SBIN = init halt shutdown runlevel killall5USRBIN = last mesgMAN1 = last.1 lastb.1 mesg.1MAN5 = initscript.5 inittab.5MAN8 = halt.8 init.8 killall5.8 pidof.8 poweroff.8 reboot.8 runlevel.8MAN8 += shutdown.8 telinit.8ifeq ($(DISTRO),)BIN += mountpointSBIN += sulogin bootlogdUSRBIN += utmpdump wallMAN1 += mountpoint.1 wall.1MAN8 += sulogin.8 bootlogd.8endififeq ($(DISTRO),Debian)BIN += mountpointSBIN += sulogin bootlogdMAN1 += mountpoint.1MAN8 += sulogin.8 bootlogd.8endififeq ($(DISTRO),Owl)USRBIN += wallMAN1 += wall.1endifBIN_OWNER = rootBIN_GROUP = rootBIN_COMBO = $(BIN_OWNER):$(BIN_GROUP)INSTALL = install -o $(BIN_OWNER) -g $(BIN_GROUP)MANDIR = /usr/share/man# Additional libs for GNU libc.ifneq ($(wildcard /usr/lib/libcrypt.a),)LCRYPT = -lcryptendifall: $(BIN) $(SBIN) $(USRBIN)init: init.o init_utmp.o $(CC) $(LDFLAGS) $(STATIC) -o $@ init.o init_utmp.ohalt: halt.o ifdown.o hddown.o utmp.o reboot.h $(CC) $(LDFLAGS) -o $@ halt.o ifdown.o hddown.o utmp.olast: last.o oldutmp.h $(CC) $(LDFLAGS) -o $@ last.omesg: mesg.o $(CC) $(LDFLAGS) -o $@ mesg.omountpoint: mountpoint.o $(CC) $(LDFLAGS) -o $@ mountpoint.outmpdump: utmpdump.o $(CC) $(LDFLAGS) -o $@ utmpdump.orunlevel: runlevel.o $(CC) $(LDFLAGS) -o $@ runlevel.osulogin: sulogin.o $(CC) $(LDFLAGS) $(STATIC) -o $@ sulogin.o $(LCRYPT)wall: dowall.o wall.o $(CC) $(LDFLAGS) -o $@ dowall.o wall.oshutdown: dowall.o shutdown.o utmp.o reboot.h $(CC) $(LDFLAGS) -o $@ dowall.o shutdown.o utmp.obootlogd: bootlogd.o $(CC) $(LDFLAGS) -o $@ bootlogd.o -lutilinit.o: init.c init.h set.h reboot.h initreq.h $(CC) -c $(CFLAGS) init.cutmp.o: utmp.c init.h $(CC) -c $(CFLAGS) utmp.cinit_utmp.o: utmp.c init.h $(CC) -c $(CFLAGS) -DINIT_MAIN utmp.c -o init_utmp.ocleanobjs: rm -f *.o *.bakclean: cleanobjs @echo Type \"make clobber\" to really clean up.clobber: cleanobjs rm -f $(BIN) $(SBIN) $(USRBIN)distclean: clobberinstall: for i in $(BIN); do \ $(INSTALL) -m 755 $$i $(ROOT)/bin/; \ done for i in $(SBIN); do \ $(INSTALL) -m 755 $$i $(ROOT)/sbin/; \ done for i in $(USRBIN); do \ $(INSTALL) -m 755 $$i $(ROOT)/usr/bin/; \ done # $(INSTALL) -m 755 etc/initscript.sample $(ROOT)/etc/ ln -sf halt $(ROOT)/sbin/reboot ln -sf halt $(ROOT)/sbin/poweroff ln -sf init $(ROOT)/sbin/telinit ln -sf ../sbin/killall5 $(ROOT)/bin/pidof if [ ! -f $(ROOT)/usr/bin/lastb ]; then \ ln -sf last $(ROOT)/usr/bin/lastb; \ fi $(INSTALL) -m 644 initreq.h $(ROOT)/usr/include/ for i in $(MAN1); do \ $(INSTALL) -m 644 ../man/$$i $(ROOT)$(MANDIR)/man1/; \ done for i in $(MAN5); do \ $(INSTALL) -m 644 ../man/$$i $(ROOT)$(MANDIR)/man5/; \ done for i in $(MAN8); do \ $(INSTALL) -m 644 ../man/$$i $(ROOT)$(MANDIR)/man8/; \ doneifeq ($(ROOT),) # # This part is skipped on Debian systems, the # debian.preinst script takes care of it. @if [ ! -p /dev/initctl ]; then \ echo "Creating /dev/initctl"; \ rm -f /dev/initctl; \ mknod -m 600 /dev/initctl p; fiendif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -