| 1 | ## Process this with automake to create Makefile.in
 | 
|---|
| 2 | 
 | 
|---|
| 3 | AUTOMAKE_OPTIONS = cygnus
 | 
|---|
| 4 | 
 | 
|---|
| 5 | SUBDIRS = include
 | 
|---|
| 6 | 
 | 
|---|
| 7 | EXTRA_DIST = LICENSE ChangeLog.v1 src/mips/ffi.c src/mips/n32.S \
 | 
|---|
| 8 |                 src/mips/n32.s src/mips/o32.S src/mips/o32.s \
 | 
|---|
| 9 |                 src/sparc/ffi.c src/sparc/v8.S src/sparc/v9.S \
 | 
|---|
| 10 |                 src/x86/ffi.c src/x86/sysv.S src/x86/win32.S \
 | 
|---|
| 11 |                 src/x86/ffi64.c src/x86/unix64.S \
 | 
|---|
| 12 |                 src/alpha/ffi.c src/alpha/osf.S \
 | 
|---|
| 13 |                 src/m68k/ffi.c src/m68k/sysv.S \
 | 
|---|
| 14 |                 src/powerpc/ffi.c src/powerpc/sysv.S \
 | 
|---|
| 15 |                 src/powerpc/ppc_closure.S src/powerpc/asm.h \
 | 
|---|
| 16 |                 src/powerpc/ffi_darwin.c \
 | 
|---|
| 17 |                 src/powerpc/darwin.S src/powerpc/aix.S \
 | 
|---|
| 18 |                 src/powerpc/darwin_closure.S src/powerpc/aix_closures.S \
 | 
|---|
| 19 |                 src/arm/ffi.c src/arm/sysv.S \
 | 
|---|
| 20 |                 src/s390/ffi.c src/s390/sysv.S \
 | 
|---|
| 21 |                 src/sh/ffi.c src/sh/sysv.S
 | 
|---|
| 22 | 
 | 
|---|
| 23 | VPATH = @srcdir@:@srcdir@/src:@srcdir@/src/@TARGETDIR@
 | 
|---|
| 24 | 
 | 
|---|
| 25 | ## ################################################################
 | 
|---|
| 26 | 
 | 
|---|
| 27 | ##
 | 
|---|
| 28 | ## This section is for make and multilib madness.
 | 
|---|
| 29 | ##
 | 
|---|
| 30 | 
 | 
|---|
| 31 | # Work around what appears to be a GNU make bug handling MAKEFLAGS
 | 
|---|
| 32 | # values defined in terms of make variables, as is the case for CC and
 | 
|---|
| 33 | # friends when we are called from the top level Makefile.
 | 
|---|
| 34 | AM_MAKEFLAGS = \
 | 
|---|
| 35 |         "AR_FLAGS=$(AR_FLAGS)" \
 | 
|---|
| 36 |         "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
 | 
|---|
| 37 |         "CFLAGS=$(CFLAGS)" \
 | 
|---|
| 38 |         "CXXFLAGS=$(CXXFLAGS)" \
 | 
|---|
| 39 |         "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
 | 
|---|
| 40 |         "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
 | 
|---|
| 41 |         "INSTALL=$(INSTALL)" \
 | 
|---|
| 42 |         "INSTALL_DATA=$(INSTALL_DATA)" \
 | 
|---|
| 43 |         "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
 | 
|---|
| 44 |         "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
 | 
|---|
| 45 |         "JC1FLAGS=$(JC1FLAGS)" \
 | 
|---|
| 46 |         "LDFLAGS=$(LDFLAGS)" \
 | 
|---|
| 47 |         "LIBCFLAGS=$(LIBCFLAGS)" \
 | 
|---|
| 48 |         "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
 | 
|---|
| 49 |         "MAKE=$(MAKE)" \
 | 
|---|
| 50 |         "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
 | 
|---|
| 51 |         "PICFLAG=$(PICFLAG)" \
 | 
|---|
| 52 |         "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
 | 
|---|
| 53 |         "SHELL=$(SHELL)" \
 | 
|---|
| 54 |         "exec_prefix=$(exec_prefix)" \
 | 
|---|
| 55 |         "infodir=$(infodir)" \
 | 
|---|
| 56 |         "libdir=$(libdir)" \
 | 
|---|
| 57 |         "prefix=$(prefix)" \
 | 
|---|
| 58 |         "AR=$(AR)" \
 | 
|---|
| 59 |         "AS=$(AS)" \
 | 
|---|
| 60 |         "CC=$(CC)" \
 | 
|---|
| 61 |         "CXX=$(CXX)" \
 | 
|---|
| 62 |         "LD=$(LD)" \
 | 
|---|
| 63 |         "LIBCFLAGS=$(LIBCFLAGS)" \
 | 
|---|
| 64 |         "NM=$(NM)" \
 | 
|---|
| 65 |         "PICFLAG=$(PICFLAG)" \
 | 
|---|
| 66 |         "RANLIB=$(RANLIB)" \
 | 
|---|
| 67 |         "DESTDIR=$(DESTDIR)"
 | 
|---|
| 68 | 
 | 
|---|
| 69 | MAKEOVERRIDES=
 | 
|---|
| 70 | 
 | 
|---|
| 71 | # Multilib support variables.
 | 
|---|
| 72 | MULTISRCTOP =
 | 
|---|
| 73 | MULTIBUILDTOP =
 | 
|---|
| 74 | MULTIDIRS =
 | 
|---|
| 75 | MULTISUBDIR =
 | 
|---|
| 76 | MULTIDO = true
 | 
|---|
| 77 | MULTICLEAN = true
 | 
|---|
| 78 | 
 | 
|---|
| 79 | toolexeclib_LTLIBRARIES = libffi.la
 | 
|---|
| 80 | noinst_LTLIBRARIES = libffi_convenience.la
 | 
|---|
| 81 | 
 | 
|---|
| 82 | noinst_PROGRAMS = ffitest
 | 
|---|
| 83 | 
 | 
|---|
| 84 | ffitest_OBJECTS = ffitest.lo
 | 
|---|
| 85 | ffitest_LDADD = libffi.la
 | 
|---|
| 86 | ffitest_LDFLAGS = -shared-libgcc
 | 
|---|
| 87 | 
 | 
|---|
| 88 | TARGET_SRC_MIPS_GCC = src/mips/ffi.c src/mips/o32.S src/mips/n32.S
 | 
|---|
| 89 | TARGET_SRC_MIPS_LINUX = src/mips/ffi.c src/mips/o32.S
 | 
|---|
| 90 | TARGET_SRC_MIPS_SGI = src/mips/ffi.c src/mips/o32.s src/mips/n32.s
 | 
|---|
| 91 | TARGET_SRC_X86 = src/x86/ffi.c src/x86/sysv.S
 | 
|---|
| 92 | TARGET_SRC_X86_WIN32 = src/x86/ffi.c src/x86/win32.S
 | 
|---|
| 93 | TARGET_SRC_SPARC = src/sparc/ffi.c src/sparc/v8.S src/sparc/v9.S
 | 
|---|
| 94 | TARGET_SRC_ALPHA = src/alpha/ffi.c src/alpha/osf.S
 | 
|---|
| 95 | TARGET_SRC_IA64 = src/ia64/ffi.c src/ia64/unix.S
 | 
|---|
| 96 | TARGET_SRC_M68K = src/m68k/ffi.c src/m68k/sysv.S
 | 
|---|
| 97 | TARGET_SRC_POWERPC = src/powerpc/ffi.c src/powerpc/sysv.S src/powerpc/ppc_closure.S
 | 
|---|
| 98 | TARGET_SRC_POWERPC_AIX = src/powerpc/ffi_darwin.c src/powerpc/aix.S src/powerpc/aix_closures.S
 | 
|---|
| 99 | TARGET_SRC_POWERPC_DARWIN = src/powerpc/ffi_darwin.c src/powerpc/darwin.S src/powerpc/darwin_closure.S
 | 
|---|
| 100 | TARGET_SRC_ARM =  src/arm/sysv.S src/arm/ffi.c
 | 
|---|
| 101 | TARGET_SRC_S390 =  src/s390/sysv.S src/s390/ffi.c
 | 
|---|
| 102 | TARGET_SRC_X86_64 = src/x86/ffi64.c src/x86/unix64.S src/x86/ffi.c src/x86/sysv.S
 | 
|---|
| 103 | TARGET_SRC_SH =  src/sh/sysv.S src/sh/ffi.c
 | 
|---|
| 104 | 
 | 
|---|
| 105 | ##libffi_la_SOURCES = src/debug.c src/prep_cif.c src/types.c $(TARGET_SRC_@TARGET@)
 | 
|---|
| 106 | ## Work around automake deficiency
 | 
|---|
| 107 | libffi_la_common_SOURCES = src/debug.c src/prep_cif.c src/types.c \
 | 
|---|
| 108 |                 src/raw_api.c src/java_raw_api.c
 | 
|---|
| 109 | if MIPS_GCC
 | 
|---|
| 110 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_GCC)
 | 
|---|
| 111 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_GCC)
 | 
|---|
| 112 | endif
 | 
|---|
| 113 | if MIPS_LINUX
 | 
|---|
| 114 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_LINUX)
 | 
|---|
| 115 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_LINUX)
 | 
|---|
| 116 | endif
 | 
|---|
| 117 | if MIPS_SGI
 | 
|---|
| 118 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_SGI)
 | 
|---|
| 119 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_MIPS_SGI)
 | 
|---|
| 120 | endif
 | 
|---|
| 121 | if X86
 | 
|---|
| 122 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86)
 | 
|---|
| 123 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86)
 | 
|---|
| 124 | endif
 | 
|---|
| 125 | if X86_WIN32
 | 
|---|
| 126 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86_WIN32)
 | 
|---|
| 127 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86_WIN32)
 | 
|---|
| 128 | endif
 | 
|---|
| 129 | if SPARC
 | 
|---|
| 130 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_SPARC)
 | 
|---|
| 131 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_SPARC)
 | 
|---|
| 132 | endif
 | 
|---|
| 133 | if ALPHA
 | 
|---|
| 134 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_ALPHA)
 | 
|---|
| 135 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_ALPHA)
 | 
|---|
| 136 | endif
 | 
|---|
| 137 | if IA64
 | 
|---|
| 138 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_IA64)
 | 
|---|
| 139 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_IA64)
 | 
|---|
| 140 | endif
 | 
|---|
| 141 | if M68K
 | 
|---|
| 142 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_M68K)
 | 
|---|
| 143 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_M68K)
 | 
|---|
| 144 | endif
 | 
|---|
| 145 | if POWERPC
 | 
|---|
| 146 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC)
 | 
|---|
| 147 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC)
 | 
|---|
| 148 | endif
 | 
|---|
| 149 | if POWERPC_AIX
 | 
|---|
| 150 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC_AIX)
 | 
|---|
| 151 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC_AIX)
 | 
|---|
| 152 | endif
 | 
|---|
| 153 | if POWERPC_DARWIN
 | 
|---|
| 154 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC_DARWIN)
 | 
|---|
| 155 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_POWERPC_DARWIN)
 | 
|---|
| 156 | endif
 | 
|---|
| 157 | if ARM
 | 
|---|
| 158 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_ARM)
 | 
|---|
| 159 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_ARM)
 | 
|---|
| 160 | endif
 | 
|---|
| 161 | if S390
 | 
|---|
| 162 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_S390)
 | 
|---|
| 163 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_S390)
 | 
|---|
| 164 | endif
 | 
|---|
| 165 | if X86_64
 | 
|---|
| 166 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86_64)
 | 
|---|
| 167 | libffi_convenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_X86_64)
 | 
|---|
| 168 | endif
 | 
|---|
| 169 | if SH
 | 
|---|
| 170 | libffi_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_SH)
 | 
|---|
| 171 | libfficonvenience_la_SOURCES = $(libffi_la_common_SOURCES) $(TARGET_SRC_SH)
 | 
|---|
| 172 | endif
 | 
|---|
| 173 | 
 | 
|---|
| 174 | AM_CFLAGS = -fexceptions
 | 
|---|
| 175 | 
 | 
|---|
| 176 | libffi_la_LDFLAGS = -release $(VERSION) 
 | 
|---|
| 177 | 
 | 
|---|
| 178 | INCLUDES = -I$(top_srcdir)/include -Iinclude -I$(top_srcdir)/src
 | 
|---|
| 179 | 
 | 
|---|
| 180 | # Override these rules so that object files get put in the correct 
 | 
|---|
| 181 | # subdirectories. 
 | 
|---|
| 182 | .c.o:
 | 
|---|
| 183 |         $(LTCOMPILE) -c -o $@ $<
 | 
|---|
| 184 | 
 | 
|---|
| 185 | .s.o:
 | 
|---|
| 186 |         $(LTCOMPILE) -c -o $@ $<
 | 
|---|
| 187 | 
 | 
|---|
| 188 | .S.o:
 | 
|---|
| 189 |         $(LTCOMPILE) -c -o $@ $<
 | 
|---|
| 190 | 
 | 
|---|
| 191 | .c.lo:
 | 
|---|
| 192 |         $(LTCOMPILE) -c -o $@ $<
 | 
|---|
| 193 | 
 | 
|---|
| 194 | .s.lo:
 | 
|---|
| 195 |         $(LTCOMPILE) -c -o $@ $<
 | 
|---|
| 196 | 
 | 
|---|
| 197 | .S.lo:
 | 
|---|
| 198 |         $(LTCOMPILE) -c -o $@ $<
 | 
|---|
| 199 | 
 | 
|---|
| 200 | # Multilib support.
 | 
|---|
| 201 | .PHONY: all-multi mostlyclean-multi clean-multi distclean-multi \
 | 
|---|
| 202 |         maintainer-clean-multi
 | 
|---|
| 203 | 
 | 
|---|
| 204 | all-recursive: all-multi
 | 
|---|
| 205 | install-recursive: install-multi
 | 
|---|
| 206 | mostlyclean-recursive: mostlyclean-multi
 | 
|---|
| 207 | clean-recursive: clean-multi
 | 
|---|
| 208 | distclean-recursive: distclean-multi
 | 
|---|
| 209 | maintainer-clean-recursive: maintainer-clean-multi
 | 
|---|
| 210 | 
 | 
|---|
| 211 | all-multi:
 | 
|---|
| 212 |         : $(MAKE) ; exec $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do
 | 
|---|
| 213 | install-multi:
 | 
|---|
| 214 |         $(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do
 | 
|---|
| 215 | mostlyclean-multi:
 | 
|---|
| 216 |         $(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean
 | 
|---|
| 217 | clean-multi:
 | 
|---|
| 218 |         $(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean
 | 
|---|
| 219 | distclean-multi:
 | 
|---|
| 220 |         $(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean
 | 
|---|
| 221 | maintainer-clean-multi:
 | 
|---|
| 222 |         $(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean
 | 
|---|
| 223 | 
 | 
|---|
| 224 | 
 | 
|---|
| 225 | ## ################################################################
 | 
|---|
| 226 | 
 | 
|---|