source: libcfa/src/Makefile.am@ 8e58264

ADT arm-eh ast-experimental enum forall-pointer-decay jacob/cs343-translation new-ast-unique-expr pthread-emulation qualifiedEnum
Last change on this file since 8e58264 was 08ce416, checked in by Thierry Delisle <tdelisle@…>, 5 years ago

Changed configure to use new-ast by default.
Ast options no longer pushed to libcfa (that didn't make sense).
Long Run tests and benchmark no longer distributed.
Added missing source to distribution.
Added pybin to distribution.

  • Property mode set to 100644
File size: 5.9 KB
RevLine 
[00cc023]1######################## -*- Mode: Makefile-Automake -*- ######################
2##
3## Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
4##
5## The contents of this file are covered under the licence agreement in the
6## file "LICENCE" distributed with Cforall.
7##
[d63eeb0]8## Makefile.am --
[00cc023]9##
10## Author : Peter A. Buhr
11## Created On : Sun May 31 08:54:01 2015
[381fdee]12## Last Modified By : Peter A. Buhr
[170235d]13## Last Modified On : Mon Jun 1 13:35:33 2020
14## Update Count : 248
[00cc023]15###############################################################################
16
[a922e34]17# create object files in directory with source files
[38d12e7]18AUTOMAKE_OPTIONS = foreign subdir-objects
[2fbc904]19ACLOCAL_AMFLAGS = -I automake
[a922e34]20
[bcadb26]21include $(top_srcdir)/../tools/build/cfa.make
[ba9baad]22
[088a5cd]23libdir = ${CFA_LIBDIR}
[8ac3b0e]24lib_LTLIBRARIES = libcfa.la libcfathread.la
[3d50aaf]25
[a9fb796]26VPATH += :../prelude
27
[dee1f89]28gdbwaittarget=""
29
[ba9baad]30# AM_CFLAGS for all cfa source
31# AM_CFAFLAGS for only cfa source
32# use -no-include-stdhdr to prevent rebuild cycles
[b7fe2e6]33# The built sources must not depend on the installed inst_headers_src
[2fbc904]34AM_CFAFLAGS = -quiet -cfalib -I$(srcdir)/stdhdr -I$(srcdir)/concurrency $(if $(findstring ${gdbwaittarget}, ${@}), -XCFA --gdb) @CONFIG_CFAFLAGS@
[f1b6671]35AM_CFLAGS = -g -Wall -Wno-unused-function -fPIC -fexceptions -pthread @ARCH_FLAGS@ @CONFIG_CFLAGS@
[575a6e5]36AM_CCASFLAGS = -g -Wall -Wno-unused-function @ARCH_FLAGS@ @CONFIG_CFLAGS@
[ba9baad]37CFACC = @CFACC@
[d3b7937]38
[73abe95]39#----------------------------------------------------------------------------------------------------------------
[e523b07]40if BUILDLIB
[b7fe2e6]41inst_headers_nosrc = \
42 bitmanip.hfa \
43 clock.hfa \
44 exception.hfa \
45 gmp.hfa \
46 math.hfa \
47 time_t.hfa \
48 bits/align.hfa \
49 bits/containers.hfa \
50 bits/debug.hfa \
51 bits/defs.hfa \
52 bits/locks.hfa \
53 concurrency/iofwd.hfa \
54 containers/list.hfa \
55 containers/stackLockFree.hfa
56
57inst_headers_src = \
58 common.hfa \
59 fstream.hfa \
60 heap.hfa \
61 iostream.hfa \
62 iterator.hfa \
63 limits.hfa \
[4d9172f]64 memory.hfa \
[b7fe2e6]65 parseargs.hfa \
66 rational.hfa \
67 stdlib.hfa \
68 time.hfa \
69 containers/maybe.hfa \
70 containers/pair.hfa \
71 containers/result.hfa \
72 containers/vector.hfa
73
74libsrc = ${inst_headers_src} ${inst_headers_src:.hfa=.cfa} \
75 assert.cfa \
76 bits/algorithm.hfa \
77 bits/debug.cfa \
78 exception.c \
79 exception.h \
80 interpose.cfa \
81 lsda.h \
82 startup.cfa \
83 startup.hfa \
84 virtual.c \
85 virtual.h
[facc44f]86
87# not all platforms support concurrency, add option do disable it
[b7fe2e6]88inst_thread_headers_nosrc = \
[08ce416]89 bits/collection.hfa \
[b7fe2e6]90 bits/random.hfa \
[08ce416]91 bits/sequence.hfa \
[bb662027]92 concurrency/clib/cfathread.h \
[b7fe2e6]93 concurrency/invoke.h \
94 concurrency/kernel/fwd.hfa
95
96inst_thread_headers_src = \
97 concurrency/coroutine.hfa \
[856dff8]98 concurrency/exception.hfa \
[b7fe2e6]99 concurrency/kernel.hfa \
[6a8882c]100 concurrency/locks.hfa \
[b7fe2e6]101 concurrency/monitor.hfa \
102 concurrency/mutex.hfa \
103 concurrency/thread.hfa
104
105thread_libsrc = ${inst_thread_headers_src} ${inst_thread_headers_src:.hfa=.cfa} \
106 bits/signal.hfa \
107 concurrency/alarm.cfa \
108 concurrency/alarm.hfa \
[bb662027]109 concurrency/clib/cfathread.cfa \
[b7fe2e6]110 concurrency/CtxSwitch-@ARCHITECTURE@.S \
111 concurrency/invoke.c \
112 concurrency/io.cfa \
113 concurrency/io/setup.cfa \
114 concurrency/io/types.hfa \
[c402739f]115 concurrency/io/call.cfa \
[b7fe2e6]116 concurrency/iofwd.hfa \
117 concurrency/kernel_private.hfa \
118 concurrency/kernel/startup.cfa \
119 concurrency/preemption.cfa \
120 concurrency/preemption.hfa \
121 concurrency/ready_queue.cfa \
122 concurrency/ready_subqueue.hfa \
123 concurrency/snzi.hfa \
124 concurrency/stats.cfa \
125 concurrency/stats.hfa \
126 concurrency/stats.hfa
[3e2b9c9]127
[e523b07]128else
[b7fe2e6]129inst_headers_src =
130inst_thread_headers_src =
131inst_headers_nosrc =
132inst_thread_headers_nosrc =
[e523b07]133libsrc =
134endif
135
[ac78e25]136
[73abe95]137#----------------------------------------------------------------------------------------------------------------
138# add dependency to cfa-cpp so all libraries are rebuilt with new translator
[e523b07]139#@CFACC@ @CFACPP@ prelude.cfa
[a9fb796]140
141# add dependency of cfa files
[6d44da1]142libobjs = $(addsuffix .lo, $(basename $(filter %.cfa,$(libsrc))))
[14347ac]143$(libobjs) : @LOCAL_CFACC@ @CFACPP@ prelude.cfa
[a9fb796]144
[2026bb6]145thread_libobjs = $(addsuffix .lo, $(basename $(filter %.cfa,$(thread_libsrc))))
[14347ac]146$(thread_libobjs) : @LOCAL_CFACC@ @CFACPP@ prelude.cfa
[2026bb6]147
[a9fb796]148
149# .deps inclusion is not done automatically by automake for new languages
150libdeps = $(join \
151 $(addsuffix $(DEPDIR)/ , $(dir $(libobjs) ) ), \
[2a75572]152 $(notdir ${libobjs:.lo=.Plo}) \
[a9fb796]153)
[d3b7937]154
[0765121]155-include $(libdeps)
[a9fb796]156
[2026bb6]157thread_libdeps = $(join \
158 $(addsuffix $(DEPDIR)/ , $(dir $(thread_libobjs) ) ), \
159 $(notdir ${thread_libobjs:.lo=.Plo}) \
160)
161
162-include $(thread_libdeps)
163
164
[31d8f4d]165if ENABLE_DISTCC
166
167../prelude/distribution: @LOCAL_CFACC@ @LOCAL_CC1@ @CFACPP@ ../prelude/gcc-builtins.cf ../prelude/builtins.cf ../prelude/extras.cf ../prelude/prelude.cfa ../prelude/bootloader.c $(srcdir)/../../tools/build/push2dist.sh
168 @+make -C ../prelude distribution
169
170prelude.o prelude.lo $(libobjs) $(thread_libobjs) : ../prelude/distribution
171
172endif ENABLE_DISTCC
173
[14347ac]174prelude.o : prelude.cfa extras.cf gcc-builtins.cf builtins.cf @LOCAL_CFACC@ @CFACPP@
[0aa20e3]175 ${AM_V_GEN}$(CFACOMPILE) -quiet -XCFA,-l ${<} -c -o ${@}
[d3b7937]176
[14347ac]177prelude.lo: prelude.cfa extras.cf gcc-builtins.cf builtins.cf @LOCAL_CFACC@ @CFACPP@
[c6bbcdb]178 ${AM_V_GEN}$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile \
[0aa20e3]179 $(CFACOMPILE) -quiet -XCFA,-l ${<} -c -o ${@}
[a9fb796]180
181#----------------------------------------------------------------------------------------------------------------
[c2bc6d5]182libcfa_la_SOURCES = ${libsrc}
183nodist_libcfa_la_SOURCES = prelude.cfa
[c6bbcdb]184libcfa_la_LDFLAGS = -version-info @CFA_VERSION@
[bd85400]185
[2026bb6]186libcfathread_la_SOURCES = ${thread_libsrc}
187libcfathread_la_LDFLAGS = -version-info @CFA_VERSION@
188
[38d12e7]189stdhdr = $(shell find $(srcdir)/stdhdr -type f -printf "%p ")
[ed0e67a]190
[e958ff8]191cfa_includedir = $(CFA_INCDIR)
[b7fe2e6]192nobase_cfa_include_HEADERS = ${stdhdr} ${inst_headers_src} ${inst_headers_nosrc} ${inst_thread_headers_src} ${inst_thread_headers_nosrc}
193EXTRA_DIST = stdhdr
[73abe95]194
195#----------------------------------------------------------------------------------------------------------------
[159c62e]196maintainer-clean-local:
[796cea3]197 -rm -rf ${CFA_INCDIR} ${CFA_LIBDIR}
[a9fb796]198
199
200# $(AM_V_CFA)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
201# $(CFACOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
202# $(am__mv) $$depbase.Tpo $$depbase.Po
Note: See TracBrowser for help on using the repository browser.