source: src/libcfa/Makefile.am @ 76c5d6e

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsctordeferred_resndemanglerenumforall-pointer-decaygc_noraiijacob/cs343-translationjenkins-sandboxmemorynew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newwith_gc
Last change on this file since 76c5d6e was 7f8b740, checked in by Peter A. Buhr <pabuhr@…>, 8 years ago

properly deal with extensionless headers in Makfile

  • Property mode set to 100644
File size: 2.1 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 : Tue May 31 13:24:15 2016
14## Update Count     : 141
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
55headers = limits stdlib math iostream fstream iterator rational
56.SECONDARY : ${headers}                                 # stop implicit '.o' rules from removing extensionless headers
57
58libcfa_a_SOURCES = libcfa-prelude.c ${headers:=.c}
59
60include_HEADERS = ${headers}
61
62CLEANFILES = libcfa-prelude.c
63MAINTAINERCLEANFILES += ${includedir}/*
Note: See TracBrowser for help on using the repository browser.