1# include helpers to decide if lto plugin needs to be installed and where
2.include "../../../Makefile.buo"
3.include "../../../Makefile.cco"
4
5# liblto_plugin.so needs to linked to a PIC version of libiberty
6# A special tailed version of libiberty has been created for this purpose
7
8GCC_NO_LIBS=	# defined
9.include "Makefile.headers"
10.include "../Makefile.inc"
11.PATH: ${GCCDIR}/lto-plugin
12.PATH: ${GCCDIR}/libiberty
13.PATH: ${GCCDIR}/include
14.PATH: ${GCCDIR}/gcc/ada/gcc-interface
15.PATH: ${GCCDIR}/gcc/cp
16.PATH: ${GCCDIR}/gcc/c
17.PATH: ${GCCDIR}/gcc/objc
18.PATH: ${GCCDIR}/libcpp/include
19
20LIB=		lto_plugin
21SHLIB_MAJOR=	0
22NOPROFILE=	yes
23NOINSTALLLIB=	yes
24# For gcc -print-prog-name=liblto_plugin.so to work
25LIBMODE=	555
26
27# GCC driver looks for LTO plugin library in libexec, not lib
28TARGET_SHLIBDIR=	/usr/libexec/gcc80
29
30# Plugin support file locations
31PLUGIN_RESOURCE_DIR=	/usr/lib/gcc80/plugin
32PLUGIN_HEADER_DIR=	${PLUGIN_RESOURCE_DIR}/include
33
34SRCS=		lto-plugin.c
35LDADD=		../libiberty_pic/libiberty_pic.a
36
37FILESGROUPS+=	LVL1_ LVL2_ LVL2_1_ LVL2_2_ LVL2_3_ LVL2_4_ LVL3_ LVL3_ADA_
38LVL1_DIR=	${PLUGIN_RESOURCE_DIR}
39LVL2_DIR=	${PLUGIN_HEADER_DIR}
40LVL2_1_DIR=	${PLUGIN_HEADER_DIR}/c-family
41LVL2_2_DIR=	${PLUGIN_HEADER_DIR}/cp
42LVL2_3_DIR=	${PLUGIN_HEADER_DIR}/objc
43LVL2_4_DIR=	${PLUGIN_HEADER_DIR}/config
44LVL3_DIR=	${PLUGIN_HEADER_DIR}/config/i386
45LVL3_ADA_DIR=	${PLUGIN_HEADER_DIR}/ada/gcc-interface
46
47LVL1_=		${STOPDIR}/cc_prep/config/dragonfly-native.h \
48		${OTOPDIR}/cc_tools/tools/gtype.state
49LVL2_=		${PLUGIN_HEADERS} ${STOPDIR}/cc_prep/config.h
50LVL2_1_=	${PLUGIN_HEADERS_CFAMILY}
51LVL2_2_=	${PLUGIN_HEADERS_CP}
52LVL2_3_=	${PLUGIN_HEADERS_OBJC}
53LVL2_4_=	${PLUGIN_HEADERS_CONFIG}
54LVL3_=		${PLUGIN_HEADERS_CONFIG_I386}
55LVL3_ADA_=	${PLUGIN_HEADERS_ADA_GCC}
56
57# SYMLINK lto plugin to primary/backup binutils bfd-plugin dirs
58.if ${CC_PRIMARY} == "gcc80" # we are default gcc compiler
59LTOPLUGIN=	liblto_plugin.so
60.if exists(${DESTDIR}/usr/libexec/${BU_PRIMARY}/bfd-plugins)
61BFDPLUGINS=	/usr/libexec/${BU_PRIMARY}/bfd-plugins
62SYMLINKS+=	../../${CC_PRIMARY}/${LTOPLUGIN} ${BFDPLUGINS}/${LTOPLUGIN}
63.endif
64.if exists(${DESTDIR}/usr/libexec/${BU_BACKUP}/bfd-plugins)
65BFDPLUGINSB=	/usr/libexec/${BU_BACKUP}/bfd-plugins
66SYMLINKS+=	../../${CC_PRIMARY}/${LTOPLUGIN} ${BFDPLUGINSB}/${LTOPLUGIN}
67.endif
68.endif
69
70.include <bsd.lib.mk>
71