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_LIBDIR=		/usr/libexec/gcc80
29TARGET_SHLIBDIR=	/usr/libexec/gcc80
30
31# Plugin support file locations
32PLUGIN_RESOURCE_DIR=	/usr/lib/gcc80/plugin
33PLUGIN_HEADER_DIR=	${PLUGIN_RESOURCE_DIR}/include
34
35SRCS=		lto-plugin.c
36LDADD=		../libiberty_pic/libiberty_pic.a
37
38FILESGROUPS+=	LVL1_ LVL2_ LVL2_1_ LVL2_2_ LVL2_3_ LVL2_4_ LVL3_ LVL3_ADA_
39LVL1_DIR=	${PLUGIN_RESOURCE_DIR}
40LVL2_DIR=	${PLUGIN_HEADER_DIR}
41LVL2_1_DIR=	${PLUGIN_HEADER_DIR}/c-family
42LVL2_2_DIR=	${PLUGIN_HEADER_DIR}/cp
43LVL2_3_DIR=	${PLUGIN_HEADER_DIR}/objc
44LVL2_4_DIR=	${PLUGIN_HEADER_DIR}/config
45LVL3_DIR=	${PLUGIN_HEADER_DIR}/config/i386
46LVL3_ADA_DIR=	${PLUGIN_HEADER_DIR}/ada/gcc-interface
47
48LVL1_=		${STOPDIR}/cc_prep/config/dragonfly-native.h \
49		${OTOPDIR}/cc_tools/tools/gtype.state
50LVL2_=		${PLUGIN_HEADERS} ${STOPDIR}/cc_prep/config.h
51LVL2_1_=	${PLUGIN_HEADERS_CFAMILY}
52LVL2_2_=	${PLUGIN_HEADERS_CP}
53LVL2_3_=	${PLUGIN_HEADERS_OBJC}
54LVL2_4_=	${PLUGIN_HEADERS_CONFIG}
55LVL3_=		${PLUGIN_HEADERS_CONFIG_I386}
56LVL3_ADA_=	${PLUGIN_HEADERS_ADA_GCC}
57
58# SYMLINK lto plugin to primary/backup binutils bfd-plugin dirs
59.if ${CC_PRIMARY} == "gcc80" # we are default gcc compiler
60LTOPLUGIN=	liblto_plugin.so
61.if exists(${DESTDIR}/usr/libexec/${BU_PRIMARY}/bfd-plugins)
62BFDPLUGINS=	/usr/libexec/${BU_PRIMARY}/bfd-plugins
63SYMLINKS+=	../../${CC_PRIMARY}/${LTOPLUGIN} ${BFDPLUGINS}/${LTOPLUGIN}
64.endif
65.if exists(${DESTDIR}/usr/libexec/${BU_BACKUP}/bfd-plugins)
66BFDPLUGINSB=	/usr/libexec/${BU_BACKUP}/bfd-plugins
67SYMLINKS+=	../../${CC_PRIMARY}/${LTOPLUGIN} ${BFDPLUGINSB}/${LTOPLUGIN}
68.endif
69.endif
70
71.include <bsd.lib.mk>
72