]> git.ipfire.org Git - thirdparty/gcc.git/blob - libgomp/plugin/Makefrag.am
Refactor '-ldl' handling for libgomp proper and plugins
[thirdparty/gcc.git] / libgomp / plugin / Makefrag.am
1 # Plugins for offload execution, Makefile.am fragment.
2 #
3 # Copyright (C) 2014-2022 Free Software Foundation, Inc.
4 #
5 # Contributed by Mentor Embedded.
6 #
7 # This file is part of the GNU Offloading and Multi Processing Library
8 # (libgomp).
9 #
10 # Libgomp is free software; you can redistribute it and/or modify it
11 # under the terms of the GNU General Public License as published by
12 # the Free Software Foundation; either version 3, or (at your option)
13 # any later version.
14 #
15 # Libgomp is distributed in the hope that it will be useful, but WITHOUT ANY
16 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17 # FOR A PARTICULAR PURPOSE. See the GNU General Public License for
18 # more details.
19 #
20 # Under Section 7 of GPL version 3, you are granted additional
21 # permissions described in the GCC Runtime Library Exception, version
22 # 3.1, as published by the Free Software Foundation.
23 #
24 # You should have received a copy of the GNU General Public License and
25 # a copy of the GCC Runtime Library Exception along with this program;
26 # see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
27 # <http://www.gnu.org/licenses/>.
28
29 libgomp_la_LIBADD += $(DL_LIBS)
30
31 if PLUGIN_NVPTX
32 # Nvidia PTX OpenACC plugin.
33 libgomp_plugin_nvptx_version_info = -version-info $(libtool_VERSION)
34 toolexeclib_LTLIBRARIES += libgomp-plugin-nvptx.la
35 libgomp_plugin_nvptx_la_SOURCES = plugin/plugin-nvptx.c
36 libgomp_plugin_nvptx_la_CPPFLAGS = $(AM_CPPFLAGS) $(PLUGIN_NVPTX_CPPFLAGS)
37 libgomp_plugin_nvptx_la_LDFLAGS = $(libgomp_plugin_nvptx_version_info) \
38 $(lt_host_flags)
39 libgomp_plugin_nvptx_la_LDFLAGS += $(PLUGIN_NVPTX_LDFLAGS)
40 libgomp_plugin_nvptx_la_LIBADD = libgomp.la
41 libgomp_plugin_nvptx_la_LIBTOOLFLAGS = --tag=disable-static
42
43 # Including the GCC-shipped 'include/cuda/cuda.h' vs. system <cuda.h>.
44 if PLUGIN_NVPTX_DYNAMIC
45 else
46 libgomp_plugin_nvptx_la_CPPFLAGS += -DPLUGIN_NVPTX_INCLUDE_SYSTEM_CUDA_H
47 endif
48
49 # 'dlopen'ing the CUDA Driver library vs. linking it.
50 if PLUGIN_NVPTX_DYNAMIC
51 libgomp_plugin_nvptx_la_LIBADD += $(DL_LIBS)
52 else
53 libgomp_plugin_nvptx_la_CPPFLAGS += -DPLUGIN_NVPTX_LINK_LIBCUDA
54 libgomp_plugin_nvptx_la_LIBADD += $(PLUGIN_NVPTX_LIBS)
55 endif
56 endif
57
58 if PLUGIN_GCN
59 # AMD GCN plugin
60 libgomp_plugin_gcn_version_info = -version-info $(libtool_VERSION)
61 toolexeclib_LTLIBRARIES += libgomp-plugin-gcn.la
62 libgomp_plugin_gcn_la_SOURCES = plugin/plugin-gcn.c
63 libgomp_plugin_gcn_la_CPPFLAGS = $(AM_CPPFLAGS) \
64 -D_GNU_SOURCE
65 libgomp_plugin_gcn_la_LDFLAGS = $(libgomp_plugin_gcn_version_info) \
66 $(lt_host_flags)
67 libgomp_plugin_gcn_la_LIBADD = libgomp.la
68 libgomp_plugin_gcn_la_LIBTOOLFLAGS = --tag=disable-static
69
70 libgomp_plugin_gcn_la_LIBADD += $(DL_LIBS)
71 endif