1AUTOMAKE_OPTIONS=foreign
2
3moduledir = @moduledir@
4
5AM_CPPFLAGS = $(CFLAGS) $(OSFLAG) $(GIT_VERSION) -Wall -DMODULEDIR=\"$(moduledir)\"
6AM_CFLAGS = $(CFLAGS) $(OSFLAG) $(GIT_VERSION) -Wall -fno-strict-aliasing
7AM_ASFLAGS = $(OSFLAG)
8AM_CCASFLAGS = $(OSFLAG)
9
10lib_LTLIBRARIES = libpolyml.la
11libpolyml_la_LDFLAGS = -version-info 9:0:0
12
13DIST_SUBDIRS = libffi
14
15if INTERNAL_LIBFFI
16SUBDIRS = libffi
17libpolyml_la_LIBADD = libffi/libffi_convenience.la
18endif
19
20if NO_UNDEFINED
21# Force all references to be defined to build the DLL.
22libpolyml_la_LDFLAGS += -no-undefined
23endif
24
25# Select the architecture-specific modules
26if ARCHI386
27ARCHSOURCE = x86_dep.cpp x86assembly_gas32.S
28else
29if ARCHINTERPRET
30ARCHSOURCE = interpret.cpp
31else
32if ARCHINTERPRET64
33ARCHSOURCE = interpret.cpp
34else
35if ARCHX86_64
36ARCHSOURCE = x86_dep.cpp x86assembly_gas64.S
37else
38endif
39endif
40endif
41endif
42
43# Select the object-format-specific modules
44if EXPPECOFF
45EXPORTSOURCE = pecoffexport.cpp
46else
47if EXPELF
48EXPORTSOURCE = elfexport.cpp
49else
50if EXPMACHO
51EXPORTSOURCE = machoexport.cpp
52endif
53endif
54endif
55
56if NATIVE_WINDOWS
57OSSOURCE = Console.cpp windows_specific.cpp
58else
59OSSOURCE = unix_specific.cpp
60endif
61
62noinst_HEADERS = \
63	arb.h \
64	basicio.h \
65	bitmap.h \
66	check_objects.h \
67	Console.h \
68	diagnostics.h \
69	elfexport.h \
70	errors.h \
71	exporter.h \
72	gc.h \
73	gctaskfarm.h \
74	globals.h \
75        heapsizing.h \
76	int_opcodes.h \
77	io_internal.h \
78	locking.h \
79	machine_dep.h \
80	machoexport.h \
81	memmgr.h \
82	mpoly.h \
83	network.h \
84	noreturn.h \
85	objsize.h \
86	osmem.h \
87	os_specific.h \
88	pecoffexport.h \
89	pexport.h \
90	PolyControl.h \
91	poly_specific.h \
92	polyffi.h \
93	polystring.h \
94	process_env.h \
95	processes.h \
96	profiling.h \
97	realconv.h \
98	reals.h \
99	rts_module.h \
100	rtsentry.h \
101	run_time.h \
102	savestate.h \
103	save_vec.h \
104	scanaddrs.h \
105	sharedata.h \
106	sighandler.h \
107	statistics.h \
108	sys.h \
109	timing.h \
110	version.h \
111	xcall_numbers.h \
112	xwindows.h
113
114libpolyml_la_SOURCES = \
115    arb.cpp \
116    basicio.cpp \
117    bitmap.cpp \
118    check_objects.cpp \
119    diagnostics.cpp \
120    errors.cpp \
121    exporter.cpp \
122    gc.cpp \
123    gc_check_weak_ref.cpp \
124    gc_copy_phase.cpp \
125    gc_mark_phase.cpp \
126    gc_share_phase.cpp \
127    gc_update_phase.cpp \
128    gctaskfarm.cpp \
129    heapsizing.cpp \
130    locking.cpp \
131    memmgr.cpp \
132    mpoly.cpp \
133    network.cpp \
134    objsize.cpp \
135    osmem.cpp \
136    pexport.cpp \
137    poly_specific.cpp \
138    polyffi.cpp \
139    polystring.cpp \
140    process_env.cpp \
141    processes.cpp \
142    profiling.cpp \
143    quick_gc.cpp \
144    realconv.cpp \
145    reals.cpp \
146    rts_module.cpp \
147    rtsentry.cpp \
148    run_time.cpp \
149    save_vec.cpp \
150    savestate.cpp \
151    scanaddrs.cpp \
152    sharedata.cpp \
153    sighandler.cpp \
154    statistics.cpp \
155    timing.cpp \
156    xwindows.cpp \
157    $(ARCHSOURCE) $(EXPORTSOURCE) $(OSSOURCE)
158
159pkgconfigdir = $(libdir)/pkgconfig
160pkgconfig_DATA = polyml.pc
161
162clean-local:
163	rm -f x86asmtemp.S ppcasmtemp.s
164