]> git.ipfire.org Git - thirdparty/gcc.git/blame - liboffloadmic/Makefile.am
re PR c++/71728 (ICE with goto in statement-expression inside a condition)
[thirdparty/gcc.git] / liboffloadmic / Makefile.am
CommitLineData
5f520819
KY
1#
2# Copyright (c) 2014 Intel Corporation. All Rights Reserved.
3#
4# Redistribution and use in source and binary forms, with or without
5# modification, are permitted provided that the following conditions
6# are met:
7#
8# * Redistributions of source code must retain the above copyright
9# notice, this list of conditions and the following disclaimer.
10# * Redistributions in binary form must reproduce the above copyright
11# notice, this list of conditions and the following disclaimer in the
12# documentation and/or other materials provided with the distribution.
13# * Neither the name of Intel Corporation nor the names of its
14# contributors may be used to endorse or promote products derived
15# from this software without specific prior written permission.
16#
17# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28#
29
30
31AUTOMAKE_OPTIONS = foreign
32ACLOCAL_AMFLAGS = -I .. -I ../config
33
34# Build plugin for Intel MIC
35SUBDIRS = . plugin
36
37# Directories.
38build_dir = $(top_builddir)
39coi_inc_dir = $(top_srcdir)/include/coi
40myo_inc_dir = $(top_srcdir)/include/myo
41libgomp_dir = $(build_dir)/../libgomp
42source_dir = $(top_srcdir)/runtime
43
44# May be used by toolexeclibdir.
45gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
46libsubincludedir = $(libdir)/gcc/$(target_alias)/$(gcc_version)/include
47
48# Target list.
49if LIBOFFLOADMIC_HOST
50 nodist_toolexeclib_HEADERS = liboffloadmic_host.spec
51 toolexeclib_LTLIBRARIES = libcoi_host.la libmyo-client.la liboffloadmic_host.la
52 nodist_libsubinclude_HEADERS = runtime/compiler_if_host.h
53 ofld_obj =
54else # LIBOFFLOADMIC_TARGET
55 nodist_toolexeclib_HEADERS = liboffloadmic_target.spec
56 toolexeclib_LTLIBRARIES = libcoi_device.la libmyo-service.la liboffloadmic_target.la
57 nodist_libsubinclude_HEADERS = runtime/compiler_if_target.h
58 ofld_obj = ofldbegin.o ofldend.o
59endif
60
61# Liboffloadmic.
62liboffloadmic_sources = runtime/dv_util.cpp \
63 runtime/liboffload_error.c \
64 runtime/liboffload_msg.c \
65 runtime/offload_common.cpp \
66 runtime/offload_table.cpp \
67 runtime/offload_trace.cpp \
68 runtime/offload_util.cpp
69
70liboffloadmic_cppflags = -DLINUX -DCOI_LIBRARY_VERSION=2 -DMYO_SUPPORT -DOFFLOAD_DEBUG=1 -DSEP_SUPPORT -DTIMING_SUPPORT -I$(coi_inc_dir) -I$(myo_inc_dir) -I$(source_dir) -I$(libgomp_dir)
71
72liboffloadmic_host_la_SOURCES = $(liboffloadmic_sources) \
73 runtime/cean_util.cpp \
74 runtime/coi/coi_client.cpp \
75 runtime/compiler_if_host.cpp \
76 runtime/offload_engine.cpp \
77 runtime/offload_env.cpp \
78 runtime/offload_host.cpp \
79 runtime/offload_myo_host.cpp \
80 runtime/offload_omp_host.cpp \
81 runtime/offload_orsl.cpp \
82 runtime/offload_timer_host.cpp \
83 runtime/orsl-lite/lib/orsl-lite.c
84
85liboffloadmic_host_la_CPPFLAGS = $(liboffloadmic_cppflags) -DHOST_LIBRARY=1
86liboffloadmic_host_la_LDFLAGS = @lt_cv_dlopen_libs@ -version-info 5:0:0
5f520819
KY
87
88liboffloadmic_target_la_SOURCES = $(liboffloadmic_sources) \
89 runtime/coi/coi_server.cpp \
90 runtime/compiler_if_target.cpp \
91 runtime/offload_myo_target.cpp \
92 runtime/offload_omp_target.cpp \
93 runtime/offload_target.cpp \
94 runtime/offload_timer_target.cpp
95
96liboffloadmic_target_la_CPPFLAGS = $(liboffloadmic_cppflags) -DHOST_LIBRARY=0
97liboffloadmic_target_la_LDFLAGS = @lt_cv_dlopen_libs@ -version-info 5:0:0
98liboffloadmic_target_la_LIBADD = libcoi_device.la libmyo-service.la
99liboffloadmic_target_la_DEPENDENCIES = $(liboffloadmic_target_la_LIBADD)
100
101# Emulator.
102libcoi_host_la_SOURCES = runtime/emulator/coi_host.cpp
103libcoi_device_la_SOURCES = runtime/emulator/coi_device.cpp
104libmyo_client_la_SOURCES = runtime/emulator/myo_client.cpp
105libmyo_service_la_SOURCES = runtime/emulator/myo_service.cpp
106
107libcoi_host_la_DEPENDENCIES = runtime/emulator/coi_version_linker_script.map
108libcoi_device_la_DEPENDENCIES = runtime/emulator/coi_version_linker_script.map
109libmyo_client_la_DEPENDENCIES = runtime/emulator/myo_version_linker_script.map
110libmyo_service_la_DEPENDENCIES = runtime/emulator/myo_version_linker_script.map
111
112libcoi_host_la_CPPFLAGS = -I$(coi_inc_dir)
113libcoi_device_la_CPPFLAGS = -I$(coi_inc_dir)
114libmyo_client_la_CPPFLAGS = -I$(myo_inc_dir)
115libmyo_service_la_CPPFLAGS = -I$(myo_inc_dir)
116
117libcoi_host_la_LDFLAGS = -lrt -Wl,--version-script=$(source_dir)/emulator/coi_version_linker_script.map
118libcoi_device_la_LDFLAGS = -lrt -Wl,--version-script=$(source_dir)/emulator/coi_version_linker_script.map
119libmyo_client_la_LDFLAGS = -lrt -Wl,--version-script=$(source_dir)/emulator/myo_version_linker_script.map
120libmyo_service_la_LDFLAGS = -lrt -Wl,--version-script=$(source_dir)/emulator/myo_version_linker_script.map
121
122# ofldbegin, ofldend
123all-local: $(ofld_obj)
124
125ofldbegin.o: runtime/ofldbegin.cpp
126 $(CXXCOMPILE) $(liboffloadmic_target_la_CPPFLAGS) -c $< -o $@
127
128ofldend.o: runtime/ofldend.cpp
129 $(CXXCOMPILE) $(liboffloadmic_target_la_CPPFLAGS) -c $< -o $@
130
131# Work around what appears to be a GNU make bug handling MAKEFLAGS
132# values defined in terms of make variables, as is the case for CC and
133# friends when we are called from the top level Makefile.
134AM_MAKEFLAGS = \
135 "AR_FLAGS=$(AR_FLAGS)" \
136 "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
137 "CFLAGS=$(CFLAGS)" \
138 "CXXFLAGS=$(CXXFLAGS)" \
139 "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
140 "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
141 "INSTALL=$(INSTALL)" \
142 "INSTALL_DATA=$(INSTALL_DATA)" \
143 "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
144 "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
145 "JC1FLAGS=$(JC1FLAGS)" \
146 "LDFLAGS=$(LDFLAGS)" \
147 "LIBCFLAGS=$(LIBCFLAGS)" \
148 "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
149 "MAKE=$(MAKE)" \
150 "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
151 "PICFLAG=$(PICFLAG)" \
152 "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
153 "SHELL=$(SHELL)" \
154 "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
155 "exec_prefix=$(exec_prefix)" \
156 "infodir=$(infodir)" \
157 "libdir=$(libdir)" \
158 "prefix=$(prefix)" \
159 "includedir=$(includedir)" \
160 "AR=$(AR)" \
161 "AS=$(AS)" \
162 "LD=$(LD)" \
163 "LIBCFLAGS=$(LIBCFLAGS)" \
164 "NM=$(NM)" \
165 "PICFLAG=$(PICFLAG)" \
166 "RANLIB=$(RANLIB)" \
167 "DESTDIR=$(DESTDIR)"
168
169MAKEOVERRIDES =
170