1 0 stevel # 2 0 stevel # CDDL HEADER START 3 0 stevel # 4 0 stevel # The contents of this file are subject to the terms of the 5 1545 eschrock # Common Development and Distribution License (the "License"). 6 1545 eschrock # You may not use this file except in compliance with the License. 7 0 stevel # 8 0 stevel # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 0 stevel # or http://www.opensolaris.org/os/licensing. 10 0 stevel # See the License for the specific language governing permissions 11 0 stevel # and limitations under the License. 12 0 stevel # 13 0 stevel # When distributing Covered Code, include this CDDL HEADER in each 14 0 stevel # file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 0 stevel # If applicable, add the following below this CDDL HEADER, with the 16 0 stevel # fields enclosed by brackets "[]" replaced with your own identifying 17 0 stevel # information: Portions Copyright [yyyy] [name of copyright owner] 18 0 stevel # 19 0 stevel # CDDL HEADER END 20 0 stevel # 21 0 stevel # 22 10610 Jonathan # Copyright 2009 Sun Microsystems, Inc. All rights reserved. 23 0 stevel # Use is subject to license terms. 24 0 stevel # 25 0 stevel 26 0 stevel .KEEP_STATE: 27 0 stevel .SUFFIXES: 28 0 stevel 29 2546 carlsonj SRCS += \ 30 2546 carlsonj ffs.c \ 31 2546 carlsonj mdb.c \ 32 0 stevel mdb_addrvec.c \ 33 0 stevel mdb_argvec.c \ 34 0 stevel mdb_callb.c \ 35 0 stevel mdb_cmdbuf.c \ 36 0 stevel mdb_cmds.c \ 37 0 stevel mdb_conf.c \ 38 0 stevel mdb_context.c \ 39 0 stevel mdb_create.c \ 40 0 stevel mdb_ctf.c \ 41 0 stevel mdb_ctf_open.c \ 42 0 stevel mdb_debug.c \ 43 0 stevel mdb_demangle.c \ 44 0 stevel mdb_disasm.c \ 45 0 stevel mdb_dump.c \ 46 0 stevel mdb_err.c \ 47 0 stevel mdb_evset.c \ 48 0 stevel mdb_fdio.c \ 49 0 stevel mdb_fmt.c \ 50 0 stevel mdb_frame.c \ 51 0 stevel mdb_gelf.c \ 52 0 stevel mdb_help.c \ 53 0 stevel mdb_io.c \ 54 5084 johnlev mdb_kb_kvm.c \ 55 0 stevel mdb_kproc.c \ 56 0 stevel mdb_kvm.c \ 57 0 stevel mdb_logio.c \ 58 0 stevel mdb_list.c \ 59 0 stevel mdb_macalias.c \ 60 0 stevel mdb_main.c \ 61 5084 johnlev mdb_memio.c \ 62 0 stevel mdb_modapi.c \ 63 0 stevel mdb_module.c \ 64 0 stevel mdb_module_load.c \ 65 0 stevel mdb_nm.c \ 66 0 stevel mdb_nv.c \ 67 0 stevel mdb_pipeio.c \ 68 0 stevel mdb_print.c \ 69 0 stevel mdb_proc.c \ 70 0 stevel mdb_pservice.c \ 71 0 stevel mdb_rawfile.c \ 72 0 stevel mdb_set.c \ 73 0 stevel mdb_shell.c \ 74 0 stevel mdb_signal.c \ 75 0 stevel mdb_stdlib.c \ 76 0 stevel mdb_string.c \ 77 0 stevel mdb_strio.c \ 78 0 stevel mdb_target.c \ 79 0 stevel mdb_tdb.c \ 80 0 stevel mdb_termio.c \ 81 0 stevel mdb_umem.c \ 82 0 stevel mdb_value.c \ 83 0 stevel mdb_vcb.c \ 84 10610 Jonathan mdb_wcb.c \ 85 10610 Jonathan mdb_whatis.c 86 0 stevel 87 0 stevel $(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG 88 0 stevel CPPFLAGS += -D_MDB -I. -I../.. -I../../../common 89 5084 johnlev 90 5084 johnlev C99MODE= -xc99=%all 91 5084 johnlev C99LMODE= -Xc99=%all 92 0 stevel 93 6543 rie LDLIBS += -ltermcap -lkvm -lproc -lrtld_db -lctf -lumem -ldisasm -lscf 94 0 stevel 95 7632 Nick # 96 7632 Nick # -erroff=E_INCONS_ARG_DECL2 works around a problem where lint gets confused 97 7632 Nick # about how struct mdb_tgt_gregset is used in mdb_tgt_stack_f() and 98 7632 Nick # mdb_tgt_stack_iter_f(). Will be resolved as part of fix for CR 6749868. 99 7632 Nick # 100 7632 Nick LINTFLAGS += -n -errtags=yes -erroff=E_INCONS_ARG_DECL2 101 0 stevel LINTFILES = $(SRCS:%.c=%.ln) 102 0 stevel 103 0 stevel PROG = mdb 104 0 stevel OBJS = $(SRCS:%.c=%.o) mdb_lex.o mdb_grammar.o 105 0 stevel 106 0 stevel LINK = adb 107 0 stevel ROOTLINK = $(ROOTBIN)/$(LINK) 108 0 stevel ROOTLINK32 = $(LINK:%=$(ROOTBIN32)/%) 109 0 stevel ROOTLINK64 = $(LINK:%=$(ROOTBIN64)/%) 110 0 stevel 111 0 stevel .NO_PARALLEL: 112 0 stevel .PARALLEL: $(OBJS) $(LINTFILES) 113 0 stevel 114 0 stevel all: $(PROG) 115 0 stevel 116 0 stevel $(PROG): $(OBJS) 117 0 stevel $(LINK.c) $(OBJS) -o $@ $(LDLIBS) 118 0 stevel $(CTFMERGE) -L VERSION -o $@ $(OBJS) 119 0 stevel $(POST_PROCESS) 120 0 stevel 121 0 stevel $(ROOTLINK32): $(ROOTPROG32) 122 0 stevel $(RM) $@ 123 0 stevel $(LN) $(ROOTPROG32) $@ 124 0 stevel 125 0 stevel $(ROOTLINK64): $(ROOTPROG64) 126 0 stevel $(RM) $@ 127 0 stevel $(LN) $(ROOTPROG64) $@ 128 0 stevel 129 0 stevel mdb_lex.c: ../../../common/mdb/mdb_lex.l mdb_grammar.h 130 0 stevel $(LEX) $(LFLAGS) ../../../common/mdb/mdb_lex.l > $@ 131 0 stevel 132 0 stevel mdb_grammar.h mdb_grammar.c: ../../../common/mdb/mdb_grammar.y 133 0 stevel $(YACC) $(YFLAGS) ../../../common/mdb/mdb_grammar.y 134 0 stevel @$(MV) y.tab.h mdb_grammar.h 135 0 stevel @$(MV) y.tab.c mdb_grammar.c 136 0 stevel 137 0 stevel mdb_lex.o mdb_grammar.o := CCVERBOSE = 138 0 stevel 139 0 stevel mdb_conf.o := CPPFLAGS += -DMDB_VERSION='$(MDB_VERSION)' 140 0 stevel 141 0 stevel inet_ntop.o := CPPFLAGS += -Dsnprintf=mdb_snprintf 142 0 stevel 143 2546 carlsonj ffs.o ffs.ln := CPPFLAGS += -Dffs=mdb_ffs 144 2546 carlsonj 145 0 stevel %.o: ../../../common/mdb/%.c 146 0 stevel $(COMPILE.c) $< 147 0 stevel $(CTFCONVERT_O) 148 0 stevel 149 0 stevel %.o: ../../mdb/%.c 150 0 stevel $(COMPILE.c) $< 151 0 stevel $(CTFCONVERT_O) 152 0 stevel 153 0 stevel %.o: %.c 154 0 stevel $(COMPILE.c) $< 155 0 stevel $(CTFCONVERT_O) 156 0 stevel 157 0 stevel %.o: $(SRC)/common/net/util/%.c 158 2546 carlsonj $(COMPILE.c) $< 159 2546 carlsonj $(CTFCONVERT_O) 160 2546 carlsonj 161 2546 carlsonj %.o: $(SRC)/common/util/%.c 162 0 stevel $(COMPILE.c) $< 163 0 stevel $(CTFCONVERT_O) 164 0 stevel 165 0 stevel clean.lint: 166 0 stevel $(RM) $(LINTFILES) 167 0 stevel 168 0 stevel clean: 169 0 stevel $(RM) $(OBJS) 170 0 stevel $(RM) mdb_lex.c mdb_grammar.c mdb_grammar.h y.tab.h y.tab.c y.output 171 0 stevel 172 0 stevel clobber: clean clean.lint 173 0 stevel $(RM) $(PROG) 174 0 stevel 175 0 stevel %.ln: ../../../common/mdb/%.c 176 0 stevel $(LINT.c) -c $< 177 0 stevel 178 0 stevel %.ln: ../../mdb/%.c 179 0 stevel $(LINT.c) -c $< 180 0 stevel 181 0 stevel %.ln: %.c 182 0 stevel $(LINT.c) -c $< 183 0 stevel 184 0 stevel %.ln: $(SRC)/common/net/util/%.c 185 0 stevel $(LINT.c) -c $< 186 0 stevel 187 2546 carlsonj %.ln: $(SRC)/common/util/%.c 188 2546 carlsonj $(LINT.c) -c $< 189 2546 carlsonj 190 0 stevel lint: $(LINTFILES) 191 0 stevel $(LINT) $(LINTFLAGS) $(LINTFILES) 192 0 stevel 193 0 stevel dmods: 194