annotate usr/src/cmd/backup/dump/Makefile @ 14183:68927c785889 default tip

4099 SMF methods without absolute paths no longer work Reviewed by: Richard Lowe <richlowe@richlowe.net> Approved by: Dan McDonald <danmcd@nexenta.com>
author Jerry Jelinek <jerry.jelinek@joyent.com>
date Fri, 06 Sep 2013 09:20:56 -0700
parents f63fe73094ce
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
1 #
10207
87c40ea3fc4b 6864230 hiho, hiho, it'ch chtime for CH to go
jmcp <James.McPherson@Sun.COM>
parents: 0
diff changeset
2 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
0
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
3 # Use is subject to license terms.
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
4 #
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
5 # cmd/backup/dump/Makefile
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
6 #
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
7 # Copyright (c) 1980 Regents of the University of California.
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
8 # All rights reserved. The Berkeley software License Agreement
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
9 # specifies the terms and conditions for redistribution.
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
10 #
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
11 # dump.h header file
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
12 # dumpfstab.c reads fstab/vfstab, mtab/mnttab
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
13 # dumpitime.c reads /etc/dumpdates
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
14 # dumpmain.c driver
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
15 # dumponline.c online dump support
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
16 # dumpoptr.c operator interface
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
17 # dumptape.c handles the mag tape and opening/closing
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
18 # dumptraverse.c traverses the file system
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
19 # lftw.c fixed version of ftw(3)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
20 # partial.c partial filesystem dump support
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
21 # unctime.c undo ctime
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
22 #
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
23 # CPPFLAGS:
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
24 # DEBUG use local directory to find ddate and dumpdates
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
25 # PARTIAL enable partial filesystem dump support
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
26 # TDEBUG trace out the process forking
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
27 #
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
28 # CAUTION: FSTYPE must be defined before including ../Makefile.backup,
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
29 # otherwise UFSROOTPKGUSRLIBFSTYPE doesn't get expanded
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
30 # properly and the magic doesn't happen.
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
31
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
32 FSTYPE= ufs
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
33
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
34 include ../Makefile.backup
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
35
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
36 #CFLAGS += -DTDEBUG
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
37 UFSDUMP= ufsdump
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
38
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
39 PROG= $(UFSDUMP)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
40 PRODUCT= $(PROG)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
41 ROLLDIR= ../../fs.d/ufs/roll_log
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
42 ROLLOBJS= $(ROLLDIR)/$(MACH)/roll_log.o
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
43 ROLLSRCS= $(ROLLDIR)/roll_log.c
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
44
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
45 LOBJECTS= dumponline.o dumpfstab.o dumpitime.o dumpmain.o \
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
46 dumpoptr.o dumptape.o dumptraverse.o unctime.o \
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
47 partial.o lftw.o
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
48 OBJECTS= $(LOBJECTS) roll_log.o
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
49 SRCS= $(LOBJECTS:.o=.c)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
50
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
51 POFILES= $(OBJECTS:.o=.po) ../lib/libdump.po
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
52 POFILE= ufsdump.po
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
53 ROLLPOFILES= roll_log.po
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
54
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
55 # XXX This is only needed for the check: target. It would be nice to
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
56 # XXX automatically generate the list when needed.
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
57 HEADERS= ../../../head/protocols/dumprestore.h \
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
58 ../../fs.d/ufs/roll_log/roll_log.h ../include/byteorder.h \
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
59 ../include/memutils.h \
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
60 ../include/rmt.h dump.h dumpusg.h
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
61
14174
f63fe73094ce 4072 make clobber leaves trash
Gordon Ross <gwr@nexenta.com>
parents: 13834
diff changeset
62 CLOBBERFILES += $(PRODUCT) $(DEBUGPRODUCTS) dumpdates
0
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
63
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
64 LOCAL= .
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
65 GENERAL= ../include
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
66 GLOBAL= ../../../head
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
67 CPPFLAGS= -I$(LOCAL) -I$(GENERAL) -I$(GLOBAL) -DPARTIAL \
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
68 -I$(ROLLDIR) $(CPPFLAGS.master) \
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
69 -D_LARGEFILE64_SOURCE=1
13834
58bc6f85b799 2933 compiler warning gags need better granularity
Richard Lowe <richlowe@richlowe.net>
parents: 10207
diff changeset
70 CERRWARN += -_gcc=-Wno-implicit-function-declaration
58bc6f85b799 2933 compiler warning gags need better granularity
Richard Lowe <richlowe@richlowe.net>
parents: 10207
diff changeset
71 CERRWARN += -_gcc=-Wno-parentheses
58bc6f85b799 2933 compiler warning gags need better granularity
Richard Lowe <richlowe@richlowe.net>
parents: 10207
diff changeset
72 CERRWARN += -_gcc=-Wno-uninitialized
58bc6f85b799 2933 compiler warning gags need better granularity
Richard Lowe <richlowe@richlowe.net>
parents: 10207
diff changeset
73 CERRWARN += -_gcc=-Wno-clobbered
58bc6f85b799 2933 compiler warning gags need better granularity
Richard Lowe <richlowe@richlowe.net>
parents: 10207
diff changeset
74 CERRWARN += -_gcc=-Wno-extra
0
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
75 LIBDUMP= ../lib/libdump.a
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
76 LINTLIBDUMP= ../lib/llib-ldump.ln -lkstat
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
77 LDLIBS += $(BSTATIC) -L../lib -ldump $(BDYNAMIC) \
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
78 -lsocket -lnsl -ladm -lm -lkstat
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
79
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
80 UFSROOTDUMPDATES= $(UFSROOTETC)/dumpdates
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
81 UFSROOTLINK= $(UFSROOTUSRSBIN)/$(PROG)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
82 LINKVALUE= ../lib/fs/$(FSTYPE)/$(PROG)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
83 LIBDIR= $(UFSROOTUSRLIBFS)/$(FSTYPE)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
84 $(UFSROOTDUMPDATES):= FILEMODE= 0664
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
85 $(LIBDIR):= DIRMODE= 0755
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
86
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
87 FILEMODE= 04555
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
88
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
89 .KEEP_STATE:
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
90
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
91 all: $(PRODUCT)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
92
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
93 $(PROG): $(OBJECTS) $$(LIBDUMP)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
94 $(LINK.c) -o $@ $(OBJECTS) $(LDLIBS)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
95 $(POST_PROCESS)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
96
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
97 $(LIBDUMP): FRC
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
98 $(DO_LIBDIR)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
99
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
100 $(POFILE): $(POFILES)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
101 $(RM) $@; cat $(POFILES) > $@
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
102
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
103 FRC:
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
104
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
105 install: all $(LIBDIR) $(UFSROOTPKGUSRLIBFSTYPE) dumpdates \
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
106 $(UFSROOTDUMPDATES) $(UFSROOTLINK)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
107
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
108 dumpdates:
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
109 cp /dev/null dumpdates
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
110
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
111 #XXX Should actually note return value from close(2), particularly regarding
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
112 #XXX tape descriptors. Some drives don't actually force anything to media
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
113 #XXX except when they are writing a file mark....
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
114
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
115 # grep is looking for non-space/tab
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
116 lint: $(SRCS) $(ROLLSRCS) $$(LINTLIBDUMP)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
117 $(LINT.c) $(SRCS) $(ROLLSRCS) $(LINTLIBDUMP) 2>&1 \
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
118 | sed -f lint.sed | grep '^[^ ]'
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
119
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
120 $(LINTLIBDUMP): FRC
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
121 cd ../lib; pwd; $(MAKE) lint
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
122 pwd
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
123
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
124 check: FRC
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
125 $(CSTYLE) $(CSTYLEFLAGS) $(SRCS) $(ROLLSRCS) $(HEADERS)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
126 $(HDRCHK) $(HDRCHKFLAGS) $(HEADERS)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
127
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
128 clean:
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
129 $(RM) $(OBJECTS) $(ROLLOBJS) $(DEBUGOBJS) *.ln
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
130
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
131 $(LIBDIR):
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
132 $(INS.dir)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
133
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
134 $(UFSROOTLINK):
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
135 -$(RM) $@; $(SYMLINK) $(LINKVALUE) $(UFSROOTLINK)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
136
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
137 roll_log.o:
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
138 cd $(ROLLDIR) ; pwd ; $(MAKE)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
139 cp $(ROLLOBJS) .
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
140 pwd
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
141
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
142 .debug/roll_log.o:
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
143 cd $(ROLLDIR) ; pwd ; $(MAKE) CFLAGS=-g
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
144 cp $(ROLLOBJS) .debug
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
145 pwd
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
146
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
147 $(ROLLPOFILES): $(ROLLSRCS)
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
148 cd $(ROLLDIR) ; pwd ; $(MAKE) `echo $(ROLLPOFILES) | sed -e 's@$(ROLLDIR)/@@g'`
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
149 cp $(ROLLDIR)/*.po .
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
150 pwd
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
151
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
152 ../lib/libdump.po:
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
153 cd ../lib ; pwd ; $(MAKE) libdump.po
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
154
68f95e015346 OpenSolaris Launch
stevel@tonic-gate
parents:
diff changeset
155 include ../Makefile.targ