tools/elf4rom/libs/dwarf-20071209/dwarfdump/Makefile.in
changeset 34 92d87f2e53c2
equal deleted inserted replaced
33:1af5c1be89f8 34:92d87f2e53c2
       
     1 #
       
     2 #  Makefile for dwarfdump
       
     3 #  This is made very simple so it should work with
       
     4 #  any 'make'.
       
     5 
       
     6 #
       
     7 
       
     8 srcdir =	@srcdir@
       
     9 VPATH =		@srcdir@
       
    10 
       
    11 prefix =	@prefix@
       
    12 exec_prefix =	@exec_prefix@
       
    13 bindir =	$(exec_prefix)/bin
       
    14 libdir =	$(exec_prefix)/lib
       
    15 mandir = 	@mandir@
       
    16 man1dir =       $(mandir)/man1
       
    17 
       
    18 INSTALL =	@INSTALL@
       
    19 INSTALL_PROGRAM = @INSTALL_PROGRAM@
       
    20 INSTALL_DATA =	@INSTALL_DATA@
       
    21 SHELL =		/bin/sh
       
    22 CC =		@CC@
       
    23 AR =		@AR@
       
    24 ARFLAGS =	@ARFLAGS@
       
    25 RM =		rm
       
    26 RANLIB =	@RANLIB@
       
    27 DEFS =		@DEFS@
       
    28 LIBS =		@LIBS@ -L../libdwarf -ldwarf -lelf
       
    29 INCLUDES =	-I. -I$(srcdir) -I$(srcdir)/../libdwarf
       
    30 CFLAGS =	@CFLAGS@ $(INCLUDES) -DCONFPREFIX=${libdir}
       
    31 LDFLAGS =	@LDFLAGS@  $(LIBS)
       
    32 
       
    33 # ../libdwarf gets us to local headers
       
    34 
       
    35 DIRINC =  $(srcdir)/../libdwarf
       
    36 INSTALL = cp
       
    37 
       
    38 binprefix =
       
    39 
       
    40 GEN_CFILES = \
       
    41 	dwarf_names.c
       
    42 
       
    43 OBJECTS =  tag_tree_table.o \
       
    44 	tag_attr_table.o \
       
    45 	dwarfdump.o \
       
    46 	dwconf.o \
       
    47 	esb.o \
       
    48 	print_sections.o \
       
    49 	print_die.o \
       
    50 	print_reloc.o \
       
    51 	print_frames.o \
       
    52 	dwarf_names.o \
       
    53 	makename.o 
       
    54 GEN_HFILES = \
       
    55 	dwarf_names.h    \
       
    56 	_tag_tree_table.c \
       
    57 	_tag_attr_table.c
       
    58 
       
    59 all: dwarfdump
       
    60 
       
    61 $(OBJECTS): $(GEN_HFILES) $(srcdir)/globals.h $(srcdir)/print_frames.h
       
    62 
       
    63 default: $(TARGETS)
       
    64 
       
    65 
       
    66 dwarfdump: $(OBJECTS)
       
    67 	$(CC) $(CFLAGS) -o $@ $(OBJECTS) $(LDFLAGS) 
       
    68 
       
    69 
       
    70 #at_list.i: at_list.awk $(DIRINC)/dwarf.h
       
    71 #	awk -f $(srcdir)/at_list.awk $(DIRINC)/dwarf.h > $@
       
    72 #at_list.o: at_list.i
       
    73 #	 $(CC) $(CFLAGS) -c at_list.i -o $@
       
    74 
       
    75 _tag_tree_table.c: $(srcdir)/tag_tree.list $(srcdir)/tag_tree.c $(DIRINC)/dwarf.h
       
    76 	$(CC) $(CFLAGS)  $(LDFLAGS) -o tag_tree_build $(srcdir)/tag_tree.c
       
    77 	# gcc -E tag_tree.list does not work, so use a .c name
       
    78 	rm -f _tmp1.c && ln -s $(srcdir)/tag_tree.list _tmp1.c
       
    79 	$(CC) $(CFLAGS) -E _tmp1.c \
       
    80 		| awk '!/^#/ && !/^[ \t]*$$/' > ./tag_tree_build.tmp
       
    81 	./tag_tree_build <tag_tree_build.tmp > $@
       
    82 	rm -f tag_tree_build .tmp
       
    83 	rm -f tag_tree_build
       
    84 tag_tree_table.o: _tag_tree_table.c
       
    85 	$(CC) $(CFLAGS) -c _tag_tree_table.c -o $@ 
       
    86 
       
    87 _tag_attr_table.c: $(srcdir)/tag_attr.list $(srcdir)/tag_attr.c $(DIRINC)/dwarf.h
       
    88 	$(CC) $(CFLAGS)  $(LDFLAGS) -o tag_attr_build $(srcdir)/tag_attr.c
       
    89 	# gcc -E tag_attr.list does not work, so use a .c name
       
    90 	rm -f _tmp2.c && ln -s $(srcdir)/tag_attr.list _tmp2.c
       
    91 	$(CC) $(CFLAGS)  -E _tmp2.c \
       
    92 		| awk '!/^#/ && !/^[ \t]*$$/' > ./tag_attr_build.tmp
       
    93 	./tag_attr_build <tag_attr_build.tmp > $@
       
    94 	rm -f tag_attr_build.tmp
       
    95 	rm -f tag_attr_build
       
    96 tag_attr_table.o: _tag_attr_table.c
       
    97 	$(CC) $(CFLAGS) -c _tag_attr_table.c -o $@ 
       
    98 
       
    99 # The file dwarf_names.awk generates BOTH dwarf_names.h and dwarf_names.c
       
   100 #   be careful of the make dependencies here
       
   101 dwarf_names.h: dwarf_names.awk $(DIRINC)/dwarf.h
       
   102 	rm -f dwarf_names.h dwarf_names.c
       
   103 	awk -f $(srcdir)/dwarf_names.awk $(DIRINC)/dwarf.h > dwarf_names.c
       
   104 dwarf_names.c: dwarf_names.h
       
   105 
       
   106 test: esb.o $(srcdir)/testesb.c
       
   107 	$(CC) -o test $(srcdir)/testesb.c esb.o
       
   108 	./test
       
   109 	-rm -f ./test
       
   110 
       
   111 
       
   112 install: all
       
   113 	$(INSTALL) dwarfdump $(bindir)/dwarfdump
       
   114 	$(INSTALL) $(srcdir)/dwarfdump.1 $(man1dir)/dwarfdump.1
       
   115 	$(INSTALL) $(srcdir)/dwarfdump.conf $(libdir)/dwarfdump.conf
       
   116 
       
   117 uninstall:
       
   118 	-rm -f $(bindir)/dwarfdump
       
   119 	-rm -f $(man1dir)/dwarfdump.1
       
   120 	-rm -f $(libdir)/dwarfdump.conf
       
   121 
       
   122 clean:
       
   123 	rm -f *.o dwarfdump dwarf_names.h *~ _tag_attr_table.c _tag_tree_table.c dwarf_names.c
       
   124 
       
   125 distclean: clean
       
   126 	rm -f config.log config.h config.cache config.status dwarf_names.c
       
   127 
       
   128 shar:
       
   129 	@echo "shar not set up yet"
       
   130 dist:
       
   131 	@echo "dist not set up yet"