source: libcfa/prelude/Makefile.am @ a77f25b

ADTast-experimentalenumforall-pointer-decaypthread-emulationqualifiedEnum
Last change on this file since a77f25b was f520c4c, checked in by Peter A. Buhr <pabuhr@…>, 3 years ago

revert use of /usr/bin/echo, and remove -P options for generating builtins.cf allowing line directives

  • Property mode set to 100644
File size: 3.4 KB
RevLine 
[375a068]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
[f520c4c]13## Last Modified On : Thu Jan 13 17:06:27 2022
14## Update Count     : 215
[375a068]15###############################################################################
16
17# create object files in directory with source files
[0c1b566]18AUTOMAKE_OPTIONS = foreign subdir-objects
[2fbc904]19ACLOCAL_AMFLAGS  = -I automake
[375a068]20
21# put into lib for now
[088a5cd]22cfalibdir = ${CFA_LIBDIR}
[c680a4b]23cfalib_DATA = gcc-builtins.cf builtins.cf extras.cf prelude.cfa bootloader.c defines.hfa
[375a068]24
[b7fe2e6]25EXTRA_DIST = bootloader.cf builtins.c builtins.def extras.c extras.regx extras.regx2 prelude-gen.cc prototypes.awk prototypes.c prototypes.sed sync-builtins.cf
26
[bbfd0e0]27CC = @LOCAL_CFACC@
[38d12e7]28AM_CFLAGS = -g -Wall -Wno-unused-function -fPIC @ARCH_FLAGS@ @CONFIG_CFLAGS@
[575a6e5]29AM_CFAFLAGS = @CONFIG_CFAFLAGS@
[307a732]30
[8c680e9]31$(DEPDIR) :
32        mkdir $(DEPDIR)
33
34$(DEPDIR)/builtins.Po : $(DEPDIR)
35        touch ${@}
36
[375a068]37# create extra forward types/declarations to reduce inclusion of library files
[e9546f9]38extras.cf : ${srcdir}/extras.regx ${srcdir}/extras.c
[f520c4c]39        @echo '# 2 "${@}"  // needed for error messages from this file' > ${@}
[e0ac9f1]40        ${AM_V_GEN}gcc ${AM_CFLAGS} -E ${srcdir}/extras.c | grep -f ${srcdir}/extras.regx >> ${@}
41        ${AM_V_GEN}gcc ${AM_CFLAGS} -E ${srcdir}/extras.c | grep -zo -f ${srcdir}/extras.regx2 | tr '\0' '\n' >> ${@}
[375a068]42
43# create forward declarations for gcc builtins
[e9546f9]44gcc-builtins.cf : gcc-builtins.c ${srcdir}/prototypes.sed
[f520c4c]45        @echo '# 2 "${@}"  // needed for error messages from this file' > ${@}
[e0ac9f1]46        ${AM_V_GEN}gcc -I${srcdir} -E -P $< | sed -r -f ${srcdir}/prototypes.sed >> ${@}
[375a068]47
[e9546f9]48gcc-builtins.c : ${srcdir}/builtins.def ${srcdir}/prototypes.awk ${srcdir}/sync-builtins.cf ${srcdir}/prototypes.c
[e0ac9f1]49        ${AM_V_GEN}gcc -I${srcdir} -E ${srcdir}/prototypes.c | awk -f ${srcdir}/prototypes.awk > ${@}
[375a068]50
[e523b07]51prelude.cfa : prelude-gen.cc
[37fe352]52        ${AM_V_GEN}${CXX} ${AM_CXXFLAGS} ${CXXFLAGS} ${AM_CFLAGS} ${<} -o prelude-gen -Wall -Wextra -O2 -g -std=c++14
[e0ac9f1]53        @./prelude-gen > ${@}
[1d386a7]54        @rm ./prelude-gen
55
[375a068]56builtins.def :
57
58prototypes.awk :
59
[807ce84]60# create forward declarations for cfa builtins
[bbfd0e0]61builtins.cf : builtins.c @LOCAL_CFACC@
[f520c4c]62        ${AM_V_GEN}gcc ${AM_CFLAGS} -E ${<} -o ${@} -MD -MP -MF $(DEPDIR)/builtins.Po -D__cforall
[8c680e9]63        ${AM_V_at}sed -i 's/builtins.o/builtins.cf/g' $(DEPDIR)/builtins.Po
64
65include $(DEPDIR)/builtins.Po
[807ce84]66
[14347ac]67bootloader.c : ${srcdir}/bootloader.cf prelude.cfa extras.cf gcc-builtins.cf builtins.cf @CFACPP@
[e0ac9f1]68        ${AM_V_GEN}@CFACPP@ --prelude-dir=${builddir} -tpm ${srcdir}/bootloader.cf ${@}  # use src/cfa-cpp as not in lib until after install
[375a068]69
[8c680e9]70maintainer-clean-local :
71        rm -rf $(DEPDIR)
72
[e523b07]73MOSTLYCLEANFILES = bootloader.c builtins.cf extras.cf gcc-builtins.c gcc-builtins.cf prelude.cfa
[2a59655]74DISTCLEANFILES = $(DEPDIR)/builtins.Po
[37fe352]75MAINTAINERCLEANFILES = ${addprefix ${libdir}/,${cfalib_DATA}} ${addprefix ${libdir}/,${lib_LIBRARIES}}
[bbfd0e0]76
77if ENABLE_DISTCC
[81e60f7]78distribution: @LOCAL_CFACC@ @LOCAL_CC1@ @CFACPP@ gcc-builtins.cf builtins.cf extras.cf prelude.cfa bootloader.c $(srcdir)/../../tools/build/push2dist.sh
[7c6b262]79        ${AM_V_GEN}$(srcdir)/../../tools/build/push2dist.sh @CFADIR_HASH@ @DIST_BWLIMIT@
[1ee048fd]80        @echo "Dummy file to track distribution to remote hosts" > ${@}
[bbfd0e0]81
82all: all-am distribution
[fb64e86]83endif ENABLE_DISTCC
Note: See TracBrowser for help on using the repository browser.