# # CDDL HEADER START # # The contents of this file are subject to the terms of the # Common Development and Distribution License (the "License"). # You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. # See the License for the specific language governing permissions # and limitations under the License. # # When distributing Covered Code, include this CDDL HEADER in each # file and include the License file at usr/src/OPENSOLARIS.LICENSE. # If applicable, add the following below this CDDL HEADER, with the # fields enclosed by brackets "[]" replaced with your own identifying # information: Portions Copyright [yyyy] [name of copyright owner] # # CDDL HEADER END # # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # cmd/bnu/Makefile # MANIFEST = uucp.xml include ../Makefile.cmd USERPROG1 = uudecode uuencode USERPROG = $(USERPROG1) uucp uuglist uuname uustat uux ct cu UUCPPROG1 = bnuconvert uucheck uucleanup UUCPPROG = $(UUCPPROG1) remote.unknown uusched uucico uuxqt SBINPROG = in.uucpd PROG = $(UUCPPROG) $(USERPROG) $(SBINPROG) LIBSHELLS = Uutry uudemon.admin uudemon.cleanup uudemon.hour uudemon.poll BINSHELLS = uulog uupick uuto SHELLS = $(LIBSHELLS) $(BINSHELLS) CRONTAB = uudemon.crontab #include ../../lib/Makefile.lib FILES = Config Devconfig Devices Dialcodes \ Dialers Grades Limits Permissions \ Poll Sysfiles Systems CLEANFILES = $(SRCS:%.c=%.o) common.o # This Makefile overrides the standard POFILES (*.cat) # so we have to augment clobber this ugly way. CLOBBERFILES += $(SRCS:%.c=%.po) common.po TXTFILES = README $(FILES) \ dkbreak.c dkdial.c dkerr.c dkminor.c dtnamer.c \ Cvt Install SetUp Teardown dial.c dial.h getopt.c strpbrk.c ROOTMANIFESTDIR= $(ROOTSVCNETWORK) POFILE = bnu.po # step around name collisions POFILES = $(PROG:%=%.cat) CPPFLAGS = -I. $(SMALLFLAG) $(CPPFLAGS.master) # -DSMALL FILEMODE = 4511 # if you change these directories, change them in uucp.h as well ROOTLIBUUCP = $(ROOT)/usr/lib/uucp ROOTETCUUCP = $(ROOT)/etc/uucp ROOTVAR = $(ROOT)/var ROOTVARUUCP = $(ROOTVAR)/uucp ROOTSPOOL = $(ROOTVAR)/spool ROOTSPLOCKS = $(ROOTSPOOL)/locks ROOTSPUUCP = $(ROOTSPOOL)/uucp ROOTSPPUB = $(ROOTSPOOL)/uucppublic DOTADMIN = .Admin DOTCORRUPT = .Corrupt DOTLOG = .Log DOTOLD = .Old DOTSEQ = .Sequence DOTSTATUS = .Status DOTWORKSPACE = .Workspace DOTXQT = .Xqtdir DOTDIRS = $(DOTADMIN) $(DOTLOG) $(DOTOLD) $(DOTSEQ) $(DOTSTATUS) DOTSPDIRS = $(DOTCORRUPT) $(DOTWORKSPACE) $(DOTXQT) DOTLOGCICO = $(DOTLOG)/uucico DOTLOGUUCP = $(DOTLOG)/uucp DOTLOGUUX = $(DOTLOG)/uux DOTLOGUUXQT = $(DOTLOG)/uuxqt DOTLOGDIRS = $(DOTLOGCICO) $(DOTLOGUUCP) $(DOTLOGUUX) $(DOTLOGUUXQT) ROOTDOTDIRS = $(DOTDIRS:%=$(ROOTVARUUCP)/%) ROOTDOTSPDIRS = $(DOTSPDIRS:%=$(ROOTSPUUCP)/%) ROOTDOTLOGDIRS = $(DOTLOGDIRS:%=$(ROOTVARUUCP)/%) ROOTPROG = $(USERPROG:%=$(ROOTBIN)/%) ROOTSPROG = $(SBINPROG:%=$(ROOTUSRSBIN)/%) ROOTSHELLS = $(BINSHELLS:%=$(ROOTBIN)/%) ROOTUUCPPROG = $(UUCPPROG:%=$(ROOTLIBUUCP)/%) ROOTLIBSHELLS = $(LIBSHELLS:%=$(ROOTLIBUUCP)/%) ROOTCRONTAB = $(CRONTAB:%=$(ROOTLIBUUCP)/%) ROOTFILES = $(FILES:%=$(ROOTETCUUCP)/%) ROOTDIRS = $(ROOTLIBUUCP) $(ROOTETCUUCP) $(ROOTSPLOCKS) \ $(ROOTDOTDIRS) $(ROOTDOTSPDIRS) $(ROOTDOTLOGDIRS) ROOTSYMDIRS = $(DOTDIRS:%=$(ROOTSPUUCP)/%) SYMDEST = ../../uucp ROOTREMOTE = $(ROOTETCUUCP)/remote.unknown REMOTESYMDEST = ../../usr/lib/uucp $(USERPROG1) := CPPFLAGS += -D_FILE_OFFSET_BITS=64 # Mode is assigned in Targetdirs. It shoudn't be re-assigned here $(USERPROG1:%=$(ROOTBIN)/%) := FILEMODE = 0555 $(ROOTSHELLS) := FILEMODE = 0555 $(ROOTLIBSHELLS) := FILEMODE = 0555 $(UUCPPROG1:%=$(ROOTLIBUUCP)/%) := FILEMODE = 0510 $(ROOTCRONTAB) := FILEMODE = 0444 $(ROOTFILES) := FILEMODE = 0644 $(ROOTETCUUCP)/Permissions := FILEMODE = 0600 $(ROOTETCUUCP)/Systems := FILEMODE = 0600 $(ROOTSPROG) := FILEMODE = 0555 include ./Makefile.inc .KEEP_STATE: all: $(TXTFILES) $(PROG) $(SHELLS) install: $(ROOTDIRS) $(ROOTSYMDIRS) $(ROOTPROG) \ $(ROOTUUCPPROG) $(ROOTLIBSHELLS) $(ROOTSHELLS) \ $(ROOTFILES) $(ROOTSYMFILES) $(ROOTSPROG) \ $(ROOTREMOTE) $(ROOTCRONTAB) $(ROOTMANIFEST) $(ROOTLIBUUCP)/% $(ROOTETCUUCP)/% $(ROOTUSRSBIN)/%: % $(INS.file) $(PROG): $$(POBJS) $(LINK.c) $(POBJS) -o $@ $(LDLIBS) $(PLIBS) $(POST_PROCESS) $(POFILE): $(POFILES) $(RM) $@; $(CAT) $(POFILES) > $@ $(POFILES): $$(POBJS:.o=.po) $(RM) $@; $(CAT) $(POBJS:.o=.po) > $@ $(ROOTDIRS): $(INS.dir) $(ROOTSYMDIRS): $(RM) $@; $(SYMLINK) $(SYMDEST)/$(@F) $@ $(ROOTREMOTE): $(RM) $@; $(SYMLINK) $(REMOTESYMDEST)/$(@F) $@ check: $(CHKMANIFEST) clean: $(RM) $(CLEANFILES) lint: lint_SRCS strip: $(STRIP) $(PROG) # special rules for 'common', since it lives in chmod's directory common.o: ../chmod/common.c $(COMPILE.c) -o $@ ../chmod/common.c common.po: ../chmod/common.c $(COMPILE.cpp) ../chmod/common.c > common.c.i $(XGETTEXT) $(XGETFLAGS) common.c.i ;\ $(RM) $@ ;\ $(SED) "/^domain/d" < messages.po > $@ ;\ $(RM) messages.po common.c.i include ../Makefile.targ