## Makefile for the toplevel directory of the mudflap library. ## ## Copyright (C) 2002, 2003 ## Free Software Foundation, Inc. ## AUTOMAKE_OPTIONS = 1.3 foreign MAINT_CHARSET = latin1 SUBDIRS = testsuite AM_CFLAGS = -Wall if LIBMUDFLAPTH libmudflapth = libmudflapth.la else libmudflapth = endif lib_LTLIBRARIES = libmudflap.la $(libmudflapth) include_HEADERS = mf-runtime.h libmudflap_la_SOURCES = \ mf-runtime.c \ mf-heuristics.c HOOK1OBJS = \ malloc-hook.lo \ free-hook.lo \ calloc-hook.lo \ realloc-hook.lo \ mmap-hook.lo \ munmap-hook.lo \ alloca-hook.lo HOOK2OBJS = \ memcpy-hook.lo \ memmove-hook.lo \ memset-hook.lo \ memcmp-hook.lo \ memchr-hook.lo \ memrchr-hook.lo \ strcpy-hook.lo \ strncpy-hook.lo \ strcat-hook.lo \ strncat-hook.lo \ strcmp-hook.lo \ strcasecmp-hook.lo \ strncmp-hook.lo \ strncasecmp-hook.lo \ strdup-hook.lo \ strndup-hook.lo \ strchr-hook.lo \ strrchr-hook.lo \ strstr-hook.lo \ memmem-hook.lo \ strlen-hook.lo \ strnlen-hook.lo \ bzero-hook.lo \ bcopy-hook.lo \ bcmp-hook.lo \ index-hook.lo \ rindex-hook.lo \ asctime-hook.lo \ ctime-hook.lo \ gmtime-hook.lo \ localtime-hook.lo \ time-hook.lo \ strerror-hook.lo \ fopen-hook.lo \ fclose-hook.lo \ fread-hook.lo \ fwrite-hook.lo \ fgetc-hook.lo \ fgets-hook.lo \ getc-hook.lo \ gets-hook.lo \ ungetc-hook.lo \ fputc-hook.lo \ fputs-hook.lo \ putc-hook.lo \ puts-hook.lo \ clearerr-hook.lo \ feof-hook.lo \ ferror-hook.lo \ fileno-hook.lo \ printf-hook.lo \ fprintf-hook.lo \ sprintf-hook.lo \ snprintf-hook.lo \ vprintf-hook.lo \ vfprintf-hook.lo \ vsprintf-hook.lo \ vsnprintf-hook.lo \ access-hook.lo \ remove-hook.lo \ fflush-hook.lo \ fseek-hook.lo \ ftell-hook.lo \ rewind-hook.lo \ fgetpos-hook.lo \ fsetpos-hook.lo \ stat-hook.lo \ fstat-hook.lo \ lstat-hook.lo \ mkfifo-hook.lo \ setvbuf-hook.lo \ setbuf-hook.lo \ opendir-hook.lo \ closedir-hook.lo \ readdir-hook.lo \ recv-hook.lo \ recvfrom-hook.lo \ recvmsg-hook.lo \ send-hook.lo \ sendto-hook.lo \ sendmsg-hook.lo \ setsockopt-hook.lo \ getsockopt-hook.lo \ accept-hook.lo \ bind-hook.lo \ connect-hook.lo \ gethostname-hook.lo \ sethostname-hook.lo \ gethostbyname-hook.lo \ wait-hook.lo \ waitpid-hook.lo \ popen-hook.lo \ pclose-hook.lo \ execve-hook.lo \ execv-hook.lo \ execvp-hook.lo \ system-hook.lo \ dlopen-hook.lo \ dlerror-hook.lo \ dlsym-hook.lo \ dlclose-hook.lo \ fopen64-hook.lo \ stat64-hook.lo \ fseeko64-hook.lo \ ftello64-hook.lo \ semop-hook.lo \ semctl-hook.lo \ shmctl-hook.lo \ shmat-hook.lo \ shmdt-hook.lo HOOK3OBJS = $(HOOK1OBJS): mf-hooks1.c mf-runtime.h mf-impl.h hook=`basename $@ -hook.lo`; \ $(LTCOMPILE) -DWRAP_$$hook -c $(srcdir)/mf-hooks1.c -o $@ $(HOOK2OBJS): mf-hooks2.c mf-runtime.h mf-impl.h hook=`basename $@ -hook.lo`; \ $(LTCOMPILE) -DWRAP_$$hook -c $(srcdir)/mf-hooks2.c -o $@ $(HOOK3OBJS): mf-hooks3.c mf-runtime.h mf-impl.h hook=`basename $@ -hook.lo`; \ $(LTCOMPILE) -DWRAP_$$hook -c $(srcdir)/mf-hooks3.c -o $@ # Hook objects only for libmudflapth use PTHHOOK1OBJS= \ pth/malloc-hook.lo \ pth/free-hook.lo \ pth/calloc-hook.lo \ pth/realloc-hook.lo \ pth/mmap-hook.lo \ pth/munmap-hook.lo \ pth/alloca-hook.lo PTHHOOK2OBJS= \ pth/memcpy-hook.lo \ pth/memmove-hook.lo \ pth/memset-hook.lo \ pth/memcmp-hook.lo \ pth/memchr-hook.lo \ pth/memrchr-hook.lo \ pth/strcpy-hook.lo \ pth/strncpy-hook.lo \ pth/strcat-hook.lo \ pth/strncat-hook.lo \ pth/strcmp-hook.lo \ pth/strcasecmp-hook.lo \ pth/strncmp-hook.lo \ pth/strncasecmp-hook.lo \ pth/strdup-hook.lo \ pth/strndup-hook.lo \ pth/strchr-hook.lo \ pth/strrchr-hook.lo \ pth/strstr-hook.lo \ pth/memmem-hook.lo \ pth/strlen-hook.lo \ pth/strnlen-hook.lo \ pth/bzero-hook.lo \ pth/bcopy-hook.lo \ pth/bcmp-hook.lo \ pth/index-hook.lo \ pth/rindex-hook.lo \ pth/asctime-hook.lo \ pth/ctime-hook.lo \ pth/gmtime-hook.lo \ pth/localtime-hook.lo \ pth/time-hook.lo \ pth/strerror-hook.lo \ pth/fopen-hook.lo \ pth/fclose-hook.lo \ pth/fread-hook.lo \ pth/fwrite-hook.lo \ pth/fgetc-hook.lo \ pth/fgets-hook.lo \ pth/getc-hook.lo \ pth/gets-hook.lo \ pth/ungetc-hook.lo \ pth/fputc-hook.lo \ pth/fputs-hook.lo \ pth/putc-hook.lo \ pth/puts-hook.lo \ pth/clearerr-hook.lo \ pth/feof-hook.lo \ pth/ferror-hook.lo \ pth/fileno-hook.lo \ pth/printf-hook.lo \ pth/fprintf-hook.lo \ pth/sprintf-hook.lo \ pth/snprintf-hook.lo \ pth/vprintf-hook.lo \ pth/vfprintf-hook.lo \ pth/vsprintf-hook.lo \ pth/vsnprintf-hook.lo \ pth/access-hook.lo \ pth/remove-hook.lo \ pth/fflush-hook.lo \ pth/fseek-hook.lo \ pth/ftell-hook.lo \ pth/rewind-hook.lo \ pth/fgetpos-hook.lo \ pth/fsetpos-hook.lo \ pth/stat-hook.lo \ pth/fstat-hook.lo \ pth/lstat-hook.lo \ pth/mkfifo-hook.lo \ pth/setvbuf-hook.lo \ pth/setbuf-hook.lo \ pth/opendir-hook.lo \ pth/closedir-hook.lo \ pth/readdir-hook.lo \ pth/recv-hook.lo \ pth/recvfrom-hook.lo \ pth/recvmsg-hook.lo \ pth/send-hook.lo \ pth/sendto-hook.lo \ pth/sendmsg-hook.lo \ pth/setsockopt-hook.lo \ pth/getsockopt-hook.lo \ pth/accept-hook.lo \ pth/bind-hook.lo \ pth/connect-hook.lo \ pth/gethostname-hook.lo \ pth/sethostname-hook.lo \ pth/gethostbyname-hook.lo \ pth/wait-hook.lo \ pth/waitpid-hook.lo \ pth/popen-hook.lo \ pth/pclose-hook.lo \ pth/execve-hook.lo \ pth/execv-hook.lo \ pth/execvp-hook.lo \ pth/system-hook.lo \ pth/dlopen-hook.lo \ pth/dlerror-hook.lo \ pth/dlsym-hook.lo \ pth/dlclose-hook.lo \ pth/fopen64-hook.lo \ pth/stat64-hook.lo \ pth/fseeko64-hook.lo \ pth/ftello64-hook.lo \ pth/semop-hook.lo \ pth/semctl-hook.lo \ pth/shmctl-hook.lo \ pth/shmat-hook.lo \ pth/shmdt-hook.lo PTHHOOK3OBJS= \ pth/pthreadstuff-hook.lo clean-local: rm -f pth/*.o pth/*.lo libmudflapth_la_SOURCES = pth/mf-runtime.lo: mf-runtime.c mf-runtime.h mf-impl.h $(LTCOMPILE) -DLIBMUDFLAPTH -c $(srcdir)/mf-runtime.c -o $@ pth/mf-heuristics.lo: mf-heuristics.c mf-runtime.h mf-impl.h $(LTCOMPILE) -DLIBMUDFLAPTH -c $(srcdir)/mf-heuristics.c -o $@ $(PTHHOOK1OBJS): mf-hooks1.c mf-runtime.h mf-impl.h hook=`basename $@ -hook.lo`; \ $(LTCOMPILE) -DLIBMUDFLAPTH -DWRAP_$$hook -c $(srcdir)/mf-hooks1.c -o $@ $(PTHHOOK2OBJS): mf-hooks2.c mf-runtime.h mf-impl.h hook=`basename $@ -hook.lo`; \ $(LTCOMPILE) -DLIBMUDFLAPTH -DWRAP_$$hook -c $(srcdir)/mf-hooks2.c -o $@ $(PTHHOOK3OBJS): mf-hooks3.c mf-runtime.h mf-impl.h hook=`basename $@ -hook.lo`; \ $(LTCOMPILE) -DLIBMUDFLAPTH -DWRAP_$$hook -c $(srcdir)/mf-hooks3.c -o $@ libmudflap_la_LIBADD = $(HOOK1OBJS) $(HOOK2OBJS) $(HOOK3OBJS) libmudflap_la_DEPENDENCIES = $(libmudflap_la_LIBADD) libmudflapth_la_LIBADD = pth/mf-runtime.lo pth/mf-heuristics.lo \ $(PTHHOOK1OBJS) $(PTHHOOK2OBJS) $(PTHHOOK3OBJS) libmudflapth_la_DEPENDENCIES = $(libmudflapth_la_LIBADD) # XXX hack alert # From libffi/Makefile.am # Work around what appears to be a GNU make bug handling MAKEFLAGS # values defined in terms of make variables, as is the case for CC and # friends when we are called from the top level Makefile. AM_MAKEFLAGS = \ "AR_FLAGS=$(AR_FLAGS)" \ "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ "CFLAGS=$(CFLAGS)" \ "CXXFLAGS=$(CXXFLAGS)" \ "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ "INSTALL=$(INSTALL)" \ "INSTALL_DATA=$(INSTALL_DATA)" \ "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \ "JC1FLAGS=$(JC1FLAGS)" \ "LDFLAGS=$(LDFLAGS)" \ "LIBCFLAGS=$(LIBCFLAGS)" \ "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ "MAKE=$(MAKE)" \ "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \ "PICFLAG=$(PICFLAG)" \ "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \ "SHELL=$(SHELL)" \ "RUNTESTFLAGS=$(RUNTESTFLAGS)" \ "exec_prefix=$(exec_prefix)" \ "infodir=$(infodir)" \ "libdir=$(libdir)" \ "prefix=$(prefix)" \ "AR=$(AR)" \ "AS=$(AS)" \ "CC=$(CC)" \ "CXX=$(CXX)" \ "LD=$(LD)" \ "LIBCFLAGS=$(LIBCFLAGS)" \ "NM=$(NM)" \ "PICFLAG=$(PICFLAG)" \ "RANLIB=$(RANLIB)" \ "DESTDIR=$(DESTDIR)" MAKEOVERRIDES= # Multilib support variables. MULTISRCTOP = MULTIBUILDTOP = MULTIDIRS = MULTISUBDIR = MULTIDO = true MULTICLEAN = true # Multilib support. .PHONY: all-multi mostlyclean-multi clean-multi distclean-multi \ maintainer-clean-multi all-recursive: all-multi install-recursive: install-multi mostlyclean-recursive: mostlyclean-multi clean-recursive: clean-multi distclean-recursive: distclean-multi maintainer-clean-recursive: maintainer-clean-multi all-multi: : $(MAKE) ; exec $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do install-multi: $(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do mostlyclean-multi: $(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean clean-multi: $(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean distclean-multi: $(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean maintainer-clean-multi: $(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean ## ################################################################