blob: 616654e26324370d79378d6f2ebfff22da0f7ab7 [file] [log] [blame]
Anthony Greenc6dddbd2009-10-04 08:11:33 -04001## Process this with automake to create Makefile.in
2
3AUTOMAKE_OPTIONS = foreign subdir-objects
Anthony Greenc6dddbd2009-10-04 08:11:33 -04004
5SUBDIRS = include testsuite man
6
Anthony Green9c00a3f2012-10-12 16:46:06 -04007EXTRA_DIST = LICENSE ChangeLog.v1 ChangeLog.libgcj configure.host \
Anthony Greenf680b592012-11-06 16:00:40 -05008 src/aarch64/ffi.c src/aarch64/ffitarget.h \
Anthony Green9c00a3f2012-10-12 16:46:06 -04009 src/alpha/ffi.c src/alpha/osf.S src/alpha/ffitarget.h \
10 src/arm/ffi.c src/arm/sysv.S src/arm/ffitarget.h \
11 src/avr32/ffi.c src/avr32/sysv.S src/avr32/ffitarget.h \
12 src/cris/ffi.c src/cris/sysv.S src/cris/ffitarget.h \
13 src/ia64/ffi.c src/ia64/ffitarget.h src/ia64/ia64_flags.h \
14 src/ia64/unix.S src/mips/ffi.c src/mips/n32.S src/mips/o32.S \
15 src/mips/ffitarget.h src/m32r/ffi.c src/m32r/sysv.S \
16 src/m32r/ffitarget.h src/m68k/ffi.c src/m68k/sysv.S \
17 src/m68k/ffitarget.h src/powerpc/ffi.c src/powerpc/sysv.S \
18 src/powerpc/linux64.S src/powerpc/linux64_closure.S \
19 src/powerpc/ppc_closure.S src/powerpc/asm.h \
20 src/powerpc/aix.S src/powerpc/darwin.S \
21 src/powerpc/aix_closure.S src/powerpc/darwin_closure.S \
22 src/powerpc/ffi_darwin.c src/powerpc/ffitarget.h \
23 src/s390/ffi.c src/s390/sysv.S src/s390/ffitarget.h \
24 src/sh/ffi.c src/sh/sysv.S src/sh/ffitarget.h src/sh64/ffi.c \
25 src/sh64/sysv.S src/sh64/ffitarget.h src/sparc/v8.S \
26 src/sparc/v9.S src/sparc/ffitarget.h src/sparc/ffi.c \
27 src/x86/darwin64.S src/x86/ffi.c src/x86/sysv.S \
28 src/x86/win32.S src/x86/darwin.S src/x86/win64.S \
29 src/x86/freebsd.S src/x86/ffi64.c src/x86/unix64.S \
30 src/x86/ffitarget.h src/pa/ffitarget.h src/pa/ffi.c \
31 src/pa/linux.S src/pa/hpux32.S src/frv/ffi.c src/bfin/ffi.c \
32 src/bfin/ffitarget.h src/bfin/sysv.S src/frv/eabi.S \
33 src/frv/ffitarget.h src/dlmalloc.c src/tile/ffi.c \
34 src/tile/ffitarget.h src/tile/tile.S libtool-version \
35 ChangeLog.libffi m4/libtool.m4 m4/lt~obsolete.m4 \
36 m4/ltoptions.m4 m4/ltsugar.m4 m4/ltversion.m4 \
37 m4/ltversion.m4 src/arm/gentramp.sh src/debug.c msvcc.sh \
38 generate-ios-source-and-headers.py \
39 generate-osx-source-and-headers.py \
40 libffi.xcodeproj/project.pbxproj src/arm/trampoline.S
Anthony Green3b7efa42011-08-15 13:25:13 -040041
Anthony Green5cbe2052009-10-04 23:53:11 -040042info_TEXINFOS = doc/libffi.texi
Anthony Greenc6dddbd2009-10-04 08:11:33 -040043
44## ################################################################
45
46##
47## This section is for make and multilib madness.
48##
49
50# Work around what appears to be a GNU make bug handling MAKEFLAGS
51# values defined in terms of make variables, as is the case for CC and
52# friends when we are called from the top level Makefile.
53AM_MAKEFLAGS = \
54 "AR_FLAGS=$(AR_FLAGS)" \
55 "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
56 "CFLAGS=$(CFLAGS)" \
57 "CXXFLAGS=$(CXXFLAGS)" \
58 "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
59 "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
60 "INSTALL=$(INSTALL)" \
61 "INSTALL_DATA=$(INSTALL_DATA)" \
62 "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
63 "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
64 "JC1FLAGS=$(JC1FLAGS)" \
65 "LDFLAGS=$(LDFLAGS)" \
66 "LIBCFLAGS=$(LIBCFLAGS)" \
67 "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
68 "MAKE=$(MAKE)" \
69 "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
70 "PICFLAG=$(PICFLAG)" \
71 "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
72 "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
73 "SHELL=$(SHELL)" \
74 "exec_prefix=$(exec_prefix)" \
75 "infodir=$(infodir)" \
76 "libdir=$(libdir)" \
Anthony Green3f5b1372010-07-12 14:39:18 -040077 "mandir=$(mandir)" \
Anthony Greenc6dddbd2009-10-04 08:11:33 -040078 "prefix=$(prefix)" \
79 "AR=$(AR)" \
80 "AS=$(AS)" \
81 "CC=$(CC)" \
82 "CXX=$(CXX)" \
83 "LD=$(LD)" \
84 "NM=$(NM)" \
85 "RANLIB=$(RANLIB)" \
86 "DESTDIR=$(DESTDIR)"
87
88MAKEOVERRIDES=
89
Anthony Green115ab362009-12-24 00:22:00 -050090ACLOCAL_AMFLAGS=$(ACLOCAL_AMFLAGS) -I m4
91
Anthony Green5cbe2052009-10-04 23:53:11 -040092lib_LTLIBRARIES = libffi.la
Anthony Greenc6dddbd2009-10-04 08:11:33 -040093noinst_LTLIBRARIES = libffi_convenience.la
94
Anthony Green6a6e7f82011-11-12 16:20:42 -050095libffi_la_SOURCES = src/prep_cif.c src/types.c \
Anthony Greenc6dddbd2009-10-04 08:11:33 -040096 src/raw_api.c src/java_raw_api.c src/closures.c
97
Anthony Green5cbe2052009-10-04 23:53:11 -040098pkgconfigdir = $(libdir)/pkgconfig
99pkgconfig_DATA = libffi.pc
100
Anthony Greenc6dddbd2009-10-04 08:11:33 -0400101nodist_libffi_la_SOURCES =
102
Anthony Green6a6e7f82011-11-12 16:20:42 -0500103if FFI_DEBUG
104nodist_libffi_la_SOURCES += src/debug.c
105endif
106
Anthony Greenc6dddbd2009-10-04 08:11:33 -0400107if MIPS
108nodist_libffi_la_SOURCES += src/mips/ffi.c src/mips/o32.S src/mips/n32.S
109endif
Anthony Green213ed152012-04-27 01:34:15 -0400110if BFIN
111nodist_libffi_la_SOURCES += src/bfin/ffi.c src/bfin/sysv.S
112endif
Anthony Greenc6dddbd2009-10-04 08:11:33 -0400113if X86
114nodist_libffi_la_SOURCES += src/x86/ffi.c src/x86/sysv.S
115endif
116if X86_FREEBSD
117nodist_libffi_la_SOURCES += src/x86/ffi.c src/x86/freebsd.S
118endif
119if X86_WIN32
120nodist_libffi_la_SOURCES += src/x86/ffi.c src/x86/win32.S
121endif
122if X86_WIN64
123nodist_libffi_la_SOURCES += src/x86/ffi.c src/x86/win64.S
124endif
125if X86_DARWIN
126nodist_libffi_la_SOURCES += src/x86/ffi.c src/x86/darwin.S src/x86/ffi64.c src/x86/darwin64.S
127endif
128if SPARC
129nodist_libffi_la_SOURCES += src/sparc/ffi.c src/sparc/v8.S src/sparc/v9.S
130endif
131if ALPHA
132nodist_libffi_la_SOURCES += src/alpha/ffi.c src/alpha/osf.S
133endif
134if IA64
135nodist_libffi_la_SOURCES += src/ia64/ffi.c src/ia64/unix.S
136endif
137if M32R
138nodist_libffi_la_SOURCES += src/m32r/sysv.S src/m32r/ffi.c
139endif
140if M68K
141nodist_libffi_la_SOURCES += src/m68k/ffi.c src/m68k/sysv.S
142endif
143if POWERPC
144nodist_libffi_la_SOURCES += src/powerpc/ffi.c src/powerpc/sysv.S src/powerpc/ppc_closure.S src/powerpc/linux64.S src/powerpc/linux64_closure.S
145endif
146if POWERPC_AIX
147nodist_libffi_la_SOURCES += src/powerpc/ffi_darwin.c src/powerpc/aix.S src/powerpc/aix_closure.S
148endif
149if POWERPC_DARWIN
150nodist_libffi_la_SOURCES += src/powerpc/ffi_darwin.c src/powerpc/darwin.S src/powerpc/darwin_closure.S
151endif
152if POWERPC_FREEBSD
153nodist_libffi_la_SOURCES += src/powerpc/ffi.c src/powerpc/sysv.S src/powerpc/ppc_closure.S
154endif
Anthony Greenf680b592012-11-06 16:00:40 -0500155if AARCH64
156nodist_libffi_la_SOURCES += src/aarch64/sysv.S src/aarch64/ffi.c
157endif
Anthony Greenc6dddbd2009-10-04 08:11:33 -0400158if ARM
159nodist_libffi_la_SOURCES += src/arm/sysv.S src/arm/ffi.c
Landon Fullerc71480e2010-09-19 09:02:05 -0700160if FFI_EXEC_TRAMPOLINE_TABLE
161nodist_libffi_la_SOURCES += src/arm/trampoline.S
162endif
Anthony Greenc6dddbd2009-10-04 08:11:33 -0400163endif
Anthony Green2340e7a2009-10-04 23:53:17 -0400164if AVR32
165nodist_libffi_la_SOURCES += src/avr32/sysv.S src/avr32/ffi.c
166endif
Anthony Greenc6dddbd2009-10-04 08:11:33 -0400167if LIBFFI_CRIS
168nodist_libffi_la_SOURCES += src/cris/sysv.S src/cris/ffi.c
169endif
170if FRV
171nodist_libffi_la_SOURCES += src/frv/eabi.S src/frv/ffi.c
172endif
Anthony Green3d561062011-11-12 07:20:24 -0500173if MOXIE
174nodist_libffi_la_SOURCES += src/moxie/eabi.S src/moxie/ffi.c
175endif
Anthony Greenc6dddbd2009-10-04 08:11:33 -0400176if S390
177nodist_libffi_la_SOURCES += src/s390/sysv.S src/s390/ffi.c
178endif
179if X86_64
180nodist_libffi_la_SOURCES += src/x86/ffi64.c src/x86/unix64.S src/x86/ffi.c src/x86/sysv.S
181endif
182if SH
183nodist_libffi_la_SOURCES += src/sh/sysv.S src/sh/ffi.c
184endif
185if SH64
186nodist_libffi_la_SOURCES += src/sh64/sysv.S src/sh64/ffi.c
187endif
188if PA_LINUX
189nodist_libffi_la_SOURCES += src/pa/linux.S src/pa/ffi.c
190endif
191if PA_HPUX
192nodist_libffi_la_SOURCES += src/pa/hpux32.S src/pa/ffi.c
193endif
Anthony Green9c00a3f2012-10-12 16:46:06 -0400194if TILE
195nodist_libffi_la_SOURCES += src/tile/tile.S src/tile/ffi.c
196endif
Anthony Greenc6dddbd2009-10-04 08:11:33 -0400197
198libffi_convenience_la_SOURCES = $(libffi_la_SOURCES)
199nodist_libffi_convenience_la_SOURCES = $(nodist_libffi_la_SOURCES)
200
Anthony Green7c7c9f32011-02-12 09:29:29 -0500201AM_CFLAGS = -g
Anthony Green00d0b592010-08-05 14:56:53 -0400202if FFI_DEBUG
203# Build debug. Define FFI_DEBUG on the commandline so that, when building with
204# MSVC, it can link against the debug CRT.
205AM_CFLAGS += -DFFI_DEBUG
Anthony Green00d0b592010-08-05 14:56:53 -0400206endif
Anthony Greenc6dddbd2009-10-04 08:11:33 -0400207
Anthony Greenc3042af2010-01-01 08:08:02 -0500208libffi_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LTLDFLAGS) $(AM_LTLDFLAGS)
Anthony Greenc6dddbd2009-10-04 08:11:33 -0400209
Peter Rosin0a1ab122012-03-30 08:14:08 -0400210AM_CPPFLAGS = -I. -I$(top_srcdir)/include -Iinclude -I$(top_srcdir)/src -DFFI_BUILDING
Anthony Green6a6e7f82011-11-12 16:20:42 -0500211AM_CCASFLAGS = $(AM_CPPFLAGS) -g
Anthony Greenc6dddbd2009-10-04 08:11:33 -0400212
Anthony Green5cbe2052009-10-04 23:53:11 -0400213# No install-html or install-pdf support in automake yet
214.PHONY: install-html install-pdf
215install-html:
216install-pdf: