source: src/libcfa/Makefile.am @ 159c62e

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

add small set of library types/routines to prelude to reduce including larger library files

  • Property mode set to 100644
File size: 2.3 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
12## Last Modified By : Peter A. Buhr
[159c62e]13## Last Modified On : Tue Jul  5 16:19:31 2016
14## Update Count     : 178
[00cc023]15###############################################################################
16
17lib_LIBRARIES = libcfa.a
18
19# put into lib for now
20cfalibdir = ${libdir}
[159c62e]21cfalib_DATA = builtins.cf extras.cf prelude.cf
[00cc023]22
23# create forward declarations for gcc builtins
[159c62e]24extras.cf : extras.regx extras.c
25        @BACKEND_CC@ -E ${srcdir}/extras.c | grep -f extras.regx > ${srcdir}/extras.cf
[00cc023]26
27builtins.cf : builtins.c
[159c62e]28        if [ -e $< ] ; then \
[00cc023]29                @BACKEND_CC@ -E -P $^ | sed -e "/targetm/s/.*//" -e "/_Decimal/s/.*//" -e "s/void (const char \*)0();//" -e "s/\"//g" -e "s/\(__builtin_\) /\1/" > $@ ; \
30        fi
31
32builtins.c : builtins.def prototypes.awk
[159c62e]33        if [ -e $< ] ; then \
[00cc023]34                @BACKEND_CC@ -E prototypes.c | awk -f prototypes.awk > $@ ; \
35        fi
36
37builtins.def :
38
[db82596]39prototypes.awk :
40
[159c62e]41MAINTAINERCLEANFILES = builtins.cf extras.cf ${addprefix ${libdir}/,${cfalib_DATA}} ${addprefix ${libdir}/,${lib_LIBRARIES}}
[d3b7937]42
43#--------------------------------------------------
[aa30dc0]44
[159c62e]45libcfa-prelude.c : ${srcdir}/prelude.cf ${srcdir}/extras.cf ${srcdir}/builtins.cf
[d3b7937]46        ${abs_top_srcdir}/src/driver/cfa-cpp -l ${srcdir}/prelude.cf $@  # use src/cfa-cpp as not in lib until after install
[00cc023]47
48libcfa-prelude.o : libcfa-prelude.c
[d3b7937]49        @BACKEND_CC@ -c -o $@ $<
50
[d2a182e]51CFLAGS = -quiet -g -Wall -Wno-unused-function -B${abs_top_srcdir}/src/driver -XCFA -t  # TEMPORARY: does not build with -O2
[d63eeb0]52CC = ${abs_top_srcdir}/src/driver/cfa
[d3b7937]53
[5d28a19]54headers = limits stdlib math iostream fstream iterator rational containers/vector
[89ce869]55libobjs = ${headers:=.o}
[ac78e25]56
[89ce869]57# extensionless header files are overridden by -o flag in default makerule => explicitly override default rule to silently do nothing
58% : %.c
59        @true
[ac78e25]60
[89ce869]61${libobjs} : ${abs_top_srcdir}/src/driver/cfa-cpp       # add dependency to cfa-cpp so all libraries are rebuilt with new translator
[d3b7937]62
[7f8b740]63libcfa_a_SOURCES = libcfa-prelude.c ${headers:=.c}
[bd85400]64
[159c62e]65nobase_include_HEADERS = ${headers} stdio.h
[d3b7937]66
[f326f99]67CLEANFILES = libcfa-prelude.c
[159c62e]68
69maintainer-clean-local:
70        -rm -rf ${includedir}/*
Note: See TracBrowser for help on using the repository browser.