source: src/libcfa/Makefile.am @ f326f99

aaron-thesisarm-ehcleanup-dtorsctordeferred_resndemanglergc_noraiijacob/cs343-translationjenkins-sandboxmemorynew-astnew-ast-unique-exprnew-envno_listpersistent-indexerresolv-newwith_gc
Last change on this file since f326f99 was f326f99, checked in by Rob Schluntz <rschlunt@…>, 6 years ago

add integer suffix to mangled names so that shadowed variables are accessable (needed for destructors to work correctly)

  • Property mode set to 100644
File size: 2.3 KB
Line 
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##
8## Makefile.am --
9##
10## Author           : Peter A. Buhr
11## Created On       : Sun May 31 08:54:01 2015
12## Last Modified By : Peter A. Buhr
13## Last Modified On : Wed Mar  2 22:59:23 2016
14## Update Count     : 119
15###############################################################################
16
17lib_LIBRARIES = libcfa.a
18
19# put into lib for now
20cfalibdir = ${libdir}
21cfalib_DATA = prelude.cf builtins.cf
22
23# create forward declarations for gcc builtins
24${libdir}/builtins.cf : ${libdir} ${srcdir}/builtins.cf
25        ${INSTALL} ${srcdir}/builtins.cf ${libdir}
26        sed -i -e "s#typedef.*ptrdiff_t.*#`@BACKEND_CC@ -E ${srcdir}/ptrdiff_t.c | grep 'typedef.*ptrdiff_t'`#" ${srcdir}/prelude.cf
27
28builtins.cf : builtins.c
29        @if [ -e $< ] ; then \
30                @BACKEND_CC@ -E -P $^ | sed -e "/targetm/s/.*//" -e "/_Decimal/s/.*//" -e "s/void (const char \*)0();//" -e "s/\"//g" -e "s/\(__builtin_\) /\1/" > $@ ; \
31        fi
32
33builtins.c : builtins.def prototypes.awk
34        @if [ -e $< ] ; then \
35                @BACKEND_CC@ -E prototypes.c | awk -f prototypes.awk > $@ ; \
36        fi
37
38builtins.def :
39
40prototypes.awk :
41
42MAINTAINERCLEANFILES = ${addprefix ${libdir}/,${cfalib_DATA}} ${addprefix ${libdir}/,${lib_LIBRARIES}}
43
44#--------------------------------------------------
45
46libcfa-prelude.c : ${srcdir}/prelude.cf
47        ${abs_top_srcdir}/src/driver/cfa-cpp -l ${srcdir}/prelude.cf $@  # use src/cfa-cpp as not in lib until after install
48
49libcfa-prelude.o : libcfa-prelude.c
50        @BACKEND_CC@ -c -o $@ $<
51
52CFLAGS = -g -Wall -Wno-unused-function -B${abs_top_srcdir}/src/driver -XCFA -t  # TEMPORARY: does not build with -O2
53CC = ${abs_top_srcdir}/src/driver/cfa
54
55# extension-less header files are overridden by default make rules => explicitly override rule
56% : %.c
57        true
58
59.c.o : ${abs_top_srcdir}/src/driver/cfa-cpp
60        ${CC} ${CFLAGS} -c -o $@ $<
61
62libs = stdlib iostream fstream iterator
63libcfa_a_SOURCES = libcfa-prelude.c ${libs:=.c}
64
65cheaders = #  expat
66cfaheaders = limits
67include_HEADERS = ${cheaders:=.h} ${libs} ${cfaheaders}
68
69CLEANFILES = libcfa-prelude.c
70MAINTAINERCLEANFILES += ${includedir}/*
Note: See TracBrowser for help on using the repository browser.