1# Makefile for libelf. 2# Copyright (C) 1995 - 2005 Michael Riepe 3# 4# This library is free software; you can redistribute it and/or 5# modify it under the terms of the GNU Library General Public 6# License as published by the Free Software Foundation; either 7# version 2 of the License, or (at your option) any later version. 8# 9# This library is distributed in the hope that it will be useful, 10# but WITHOUT ANY WARRANTY; without even the implied warranty of 11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12# Library General Public License for more details. 13# 14# You should have received a copy of the GNU Library General Public 15# License along with this library; if not, write to the Free Software 16# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA 17 18# @(#) $Id: Makefile.in,v 1.30 2008/05/23 08:17:56 michael Exp $ 19 20instroot = 21 22prefix = @prefix@ 23exec_prefix = @exec_prefix@ 24libdir = @libdir@ 25 26pkgdir = $(prefix)/libdata/pkgconfig 27 28MV = mv -f 29RM = rm -f 30LN_S = @LN_S@ 31INSTALL = @INSTALL@ 32INSTALL_DATA = @INSTALL_DATA@ 33 34CC = @CC@ 35CFLAGS = @CFLAGS@ 36CPPFLAGS = @CPPFLAGS@ 37LDFLAGS = @LDFLAGS@ 38LIBS = @LIBS@ 39 40# no user serviceable parts below 41 42PACKAGE = @PACKAGE@ 43VERSION = @VERSION@ 44 45SHELL = /bin/sh 46@SET_MAKE@ 47 48srcdir = @srcdir@ 49VPATH = @srcdir@ 50 51SUBDIRS = lib @POSUB@ 52DISTSUBDIRS = lib po 53 54DISTFILES = \ 55 acconfig.h aclocal.m4 ChangeLog config.guess config.h.in \ 56 config.sub configure configure.in COPYING.LIB INSTALL install-sh \ 57 Makefile.in mkinstalldirs README stamp-h.in VERSION libelf.pc.in 58 59all: all-recursive all-local 60check: check-recursive check-local 61install: install-recursive install-local 62uninstall: uninstall-recursive uninstall-local 63mostlyclean: mostlyclean-recursive mostlyclean-local 64clean: clean-recursive clean-local 65distclean: distclean-recursive distclean-local 66maintainer-clean: maintainer-clean-recursive maintainer-clean-local 67 68install-compat uninstall-compat: 69 cd lib && $(MAKE) $@ 70 71all-recursive check-recursive install-recursive uninstall-recursive \ 72clean-recursive distclean-recursive mostlyclean-recursive \ 73maintainer-clean-recursive: 74 @subdirs="$(SUBDIRS)"; for subdir in $$subdirs; do \ 75 target=`echo $@|sed 's,-recursive,,'`; \ 76 echo making $$target in $$subdir; \ 77 (cd $$subdir && $(MAKE) $$target) || exit 1; \ 78 done 79 80all-local: 81 82check-local: 83 84install-local: $(srcdir)/mkinstalldirs libelf.pc 85 $(SHELL) $(srcdir)/mkinstalldirs $(instroot)$(pkgdir) 86 $(INSTALL_DATA) libelf.pc $(instroot)$(pkgdir) 87 88uninstall-local: 89 $(RM) $(instroot)$(pkgdir)/libelf.pc 90 91mostlyclean-local: 92 $(RM) *~ core errlist 93 94clean-local: mostlyclean-local 95 96distclean-local: clean-local 97 $(RM) config.cache config.h config.log config.status stamp-h 98 $(RM) Makefile 99 $(RM) libelf.pc 100 101maintainer-clean-local: distclean-local 102 @echo "This command is intended for maintainers to use;" 103 @echo "it deletes files that may require special tools to rebuild." 104 $(RM) config.h.in configure stamp-dist 105 $(RM) -r $(distdir) 106 107# maintainer only 108 109MAINT = @MAINT@ 110 111distdir = $(PACKAGE)-$(VERSION) 112DISTPERMS = --owner=root --group=root --numeric-owner 113$(MAINT)dist: ./stamp-dist 114$(MAINT)./stamp-dist: $(DISTFILES) 115 $(RM) -r $(distdir) 116 mkdir $(distdir) 117 files="$(DISTFILES)"; for file in $$files; do \ 118 ln $(srcdir)/$$file $(distdir) || \ 119 cp -p $(srcdir)/$$file $(distdir) || exit 1; \ 120 done 121 subdirs="$(DISTSUBDIRS)"; for subdir in $$subdirs; do \ 122 (cd $$subdir && $(MAKE) dist) || exit 1; \ 123 done 124 cd $(distdir) && \ 125 find . -type f ! -name MANIFEST -exec wc -c {} \; | \ 126 sed 's, \./, ,' | sort -k2 >MANIFEST 127 -$(RM) $(distdir).tar.gz.bak $(PACKAGE).tar.gz 128 -$(MV) $(distdir).tar.gz $(distdir).tar.gz.bak 129 tar cvohfz $(distdir).tar.gz $(DISTPERMS) $(distdir) 130 $(LN_S) $(distdir).tar.gz $(PACKAGE).tar.gz 131 $(RM) stamp-dist && echo timestamp > stamp-dist 132 133$(MAINT)check-dist: 134 $(RM) -r disttest 135 mkdir disttest 136 @echo 'unset CC CFLAGS CPPFLAGS LDFLAGS LIBS' >disttest/config.site 137 cd disttest && CONFIG_SITE=config.site ../$(distdir)/configure 138 $(MAKE) -C disttest 139 $(MAKE) -C disttest check 140 $(MAKE) -C disttest dist 141 142.PHONY: tags 143tags: 144 rm -f tags 145 ctags lib/*.c lib/*.h 146 147TRACKFS = trackfs 148trackinstall: 149 $(TRACKFS) -l install.log -b backup.cpio $(MAKE) install 150 151# For the justification of the following Makefile rules, see node 152# `Automatic Remaking' in GNU Autoconf documentation. 153 154$(MAINT)$(srcdir)/configure: $(srcdir)/configure.in $(srcdir)/aclocal.m4 155 $(RM) $(srcdir)/configure 156 cd $(srcdir) && autoconf 157 158$(MAINT)$(srcdir)/config.h.in: $(srcdir)/stamp-h.in 159$(MAINT)$(srcdir)/stamp-h.in: $(srcdir)/configure.in $(srcdir)/acconfig.h 160 $(RM) $(srcdir)/config.h.in 161 cd $(srcdir) && autoheader 162 cd $(srcdir) && $(RM) stamp-h.in && echo timestamp > stamp-h.in 163 164$(MAINT)config.h: stamp-h 165$(MAINT)stamp-h: config.h.in config.status 166 CONFIG_FILES= CONFIG_HEADERS=config.h ./config.status 167 $(RM) stamp-h && echo timestamp > stamp-h 168 169$(MAINT)Makefile: Makefile.in config.status 170 CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status 171 172$(MAINT)lib/Makefile: lib/Makefile.in config.status 173 CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status 174 175$(MAINT)lib/sys_elf.h: lib/stamp-h 176$(MAINT)lib/stamp-h: lib/sys_elf.h.in config.status 177 CONFIG_FILES= CONFIG_HEADERS=lib/sys_elf.h ./config.status 178 $(RM) lib/stamp-h && echo timestamp > lib/stamp-h 179 180$(MAINT)po/Makefile: po/Makefile.in config.status 181 CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status 182 183$(MAINT)libelf.pc: libelf.pc.in config.status 184 CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status 185 186RECHECK_FLAGS = CC='$(CC)' CPPFLAGS='$(CPPFLAGS)' \ 187 CFLAGS='$(CFLAGS)' LDFLAGS='$(LDFLAGS)' LIBS='$(LIBS)' 188 189$(MAINT)config.status: configure config.h.in VERSION 190 $(RECHECK_FLAGS) ./config.status --recheck 191 192$(MAINT)reconfig: 193 $(RM) config.cache 194 $(RECHECK_FLAGS) ./config.status --recheck 195 196# Tell versions [3.59,3.63) of GNU make not to export all variables. 197# Otherwise a system limit (for SysV at least) may be exceeded. 198.NOEXPORT: 199