1 ## Process this file with automake to create Makefile.in 2 ## Configure input file for elfutils. 3 ## 4 ## Copyright (C) 2002, 2004 Red Hat, Inc. 5 ## 6 ## This program is Open Source software; you can redistribute it and/or 7 ## modify it under the terms of the Open Software License version 1.0 as 8 ## published by the Open Source Initiative. 9 ## 10 ## You should have received a copy of the Open Software License along 11 ## with this program; if not, you may obtain a copy of the Open Software 12 ## License version 1.0 from http://www.opensource.org/licenses/osl.php or 13 ## by writing the Open Source Initiative c/o Lawrence Rosen, Esq., 14 ## 3001 King Ranch Road, Ukiah, CA 95482. 15 ## 16 DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H 17 if MUDFLAP 18 AM_CFLAGS = -Wall 19 else 20 AM_CFLAGS = -Wall -Werror 21 endif 22 INCLUDES = -I. -I$(srcdir) -I.. -I$(top_srcdir)/libelf -I$(top_srcdir)/libebl \ 23 -I$(top_srcdir)/lib 24 GCC_INCLUDE = -I$(shell $(CC) -print-file-name=include) 25 VERSION = 1 26 27 LINT = splint 28 29 lib_LIBRARIES = libasm.a 30 if !MUDFLAP 31 noinst_LIBRARIES = libasm_pic.a 32 noinst_PROGRAMS = $(noinst_LIBRARIES:_pic.a=.so) 33 endif 34 euincludedir = ${includedir}/elfutils 35 euinclude_HEADERS = libasm.h 36 37 libasm_a_SOURCES = asm_begin.c asm_abort.c asm_end.c asm_error.c \ 38 asm_getelf.c asm_newscn.c asm_newscn_ingrp.c \ 39 asm_newsubscn.c asm_newsym.c asm_newcomsym.c \ 40 asm_newabssym.c \ 41 asm_newscngrp.c asm_scngrp_newsignature.c \ 42 asm_fill.c asm_align.c asm_addstrz.c \ 43 asm_addint8.c asm_adduint8.c \ 44 asm_addint16.c asm_adduint16.c \ 45 asm_addint32.c asm_adduint32.c \ 46 asm_addint64.c asm_adduint64.c \ 47 asm_adduleb128.c asm_addsleb128.c \ 48 symbolhash.c 49 50 if !MUDFLAP 51 libasm_pic_a_SOURCES = 52 am_libasm_pic_a_OBJECTS = $(libasm_a_SOURCES:.c=.os) 53 54 libasm_so_SOURCES = 55 libasm.so: libasm_pic.a libasm.map 56 $(CC) -shared -o $@ -Wl,--whole-archive,$<,--no-whole-archive \ 57 -Wl,--version-script,$(srcdir)/libasm.map,--no-undefined \ 58 -Wl,--soname,$@.$(VERSION) \ 59 ../libebl/libebl.a ../libelf/libelf.so 60 ln -fs $@ $@.$(VERSION) 61 62 63 %.os: %.c %.o 64 if $(COMPILE) -c -o $@ -fpic -DPIC -DSHARED -MT $@ -MD -MP \ 65 -MF "$(DEPDIR)/$*.Tpo" `test -f '$<' || echo '$(srcdir)/'`$<; \ 66 then cat "$(DEPDIR)/$*.Tpo" >> "$(DEPDIR)/$*.Po"; \ 67 rm -f "$(DEPDIR)/$*.Tpo"; \ 68 else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ 69 fi 70 71 install: install-am libasm.so 72 $(mkinstalldirs) $(DESTDIR)$(libdir) 73 $(INSTALL_PROGRAM) libasm.so $(DESTDIR)$(libdir)/libasm-$(PACKAGE_VERSION).so 74 ln -fs libasm-$(PACKAGE_VERSION).so $(DESTDIR)$(libdir)/libasm.so.$(VERSION) 75 ln -fs libasm.so.$(VERSION) $(DESTDIR)$(libdir)/libasm.so 76 77 uninstall: uninstall-am 78 rm -f $(DESTDIR)$(libdir)/libasm-$(PACKAGE_VERSION).so 79 rm -f $(DESTDIR)$(libdir)/libasm.so.$(VERSION) 80 rm -f $(DESTDIR)$(libdir)/libasm.so 81 rmdir --ignore-fail-on-non-empty $(DESTDIR)$(includedir)/elfutils 82 endif 83 84 .PSEUDO: lint 85 lint: 86 $(LINT) $(DEFS) $(INCLUDES) $(GCC_INCLUDE) -f $(top_srcdir)/splint.rc \ 87 $(addprefix $(srcdir)/,$(libelf_la_SOURCES)) 88 89 noinst_HEADERS = libasmP.h symbolhash.h 90 EXTRA_DIST = libasm.map 91 92 CLEANFILES = $(am_libasm_pic_a_OBJECTS) 93