xref: /dflybsd-src/gnu/lib/gcc80/libstdcxx/components/libconv_1998/Makefile (revision 2233c95bde434daa782d51440e2219ed852a02dd)
1*2233c95bSzrjRELUP=	/../..
2*2233c95bSzrj.include "../../../Makefile.inc"
3*2233c95bSzrjSRCDIR=	${GCCDIR}/libstdc++-v3
4*2233c95bSzrj.include "Makefile.src"
5*2233c95bSzrj
6*2233c95bSzrjLIB=			cxx98convenience
7*2233c95bSzrjINTERNALLIB=		yes
8*2233c95bSzrjINTERNALLIBPROF=	yes
9*2233c95bSzrjINSTALL_PIC_ARCHIVE=	yes
10*2233c95bSzrj
11*2233c95bSzrj.PATH:	${SRCDIR}
12*2233c95bSzrj.PATH:	${SRCDIR}/src
13*2233c95bSzrj.PATH:	${SRCDIR}/src/c++98
14*2233c95bSzrj.PATH:	${SRCDIR}/config/locale/dragonfly
15*2233c95bSzrj.PATH:	${SRCDIR}/config/locale/generic
16*2233c95bSzrj
17*2233c95bSzrj# for now do not let the use of -flto (-Wodr...)
18*2233c95bSzrj.if ${CFLAGS:M-flto}
19*2233c95bSzrjCFLAGS+=	-fno-lto
20*2233c95bSzrjLDFLAGS+=	-flto
21*2233c95bSzrj.endif
22*2233c95bSzrj
23*2233c95bSzrjCXXFLAGS+=	-fdiagnostics-show-location=once
24*2233c95bSzrjCXXFLAGS+=	-ffunction-sections -fdata-sections
25*2233c95bSzrjSHARED_CXXFLAGS=	-D_GLIBCXX_SHARED
26*2233c95bSzrj
27*2233c95bSzrjSRCS=	${libc__98convenience_la_SOURCES}
28*2233c95bSzrjCOWD=	collate.x monetary.x numeric.x
29*2233c95bSzrjCOWG=	messages.x
30*2233c95bSzrjGENCC=	atomicity.cc basic_file.cc c++locale.cc
31*2233c95bSzrjGENCC+=	${COWD:.x=_members_cow.cc} ${COWG:.x=_members_cow.cc}
32*2233c95bSzrj
33*2233c95bSzrjFLAGS_GROUPS=		deprecated gnu98 gnu11 cow concept explicit
34*2233c95bSzrjdeprecated_FLAGS=	-std=gnu++98 -D_BACKWARD_BACKWARD_WARNING_H
35*2233c95bSzrjdeprecated_FLAGS_FILES=	strstream.cc
36*2233c95bSzrjgnu98_FLAGS=		-std=gnu++98
37*2233c95bSzrjgnu98_FLAGS_FILES=	bitmap_allocator.cc ios_locale.cc misc-inst.cc
38*2233c95bSzrjgnu11_FLAGS=		-std=gnu++11 -fno-implicit-templates
39*2233c95bSzrjgnu11_FLAGS_FILES=	locale_init.cc localename.cc
40*2233c95bSzrjcow_FLAGS=		-D_GLIBCXX_USE_CXX11_ABI=0 -fimplicit-templates
41*2233c95bSzrjcow_FLAGS_FILES=	${cow_string_host_sources}
42*2233c95bSzrjconcept_FLAGS=		-D_GLIBCXX_CONCEPT_CHECKS -fimplicit-templates
43*2233c95bSzrjconcept_FLAGS_FILES=	concept-inst.cc
44*2233c95bSzrjparallel_FLAGS=		-D_GLIBCXX_PARALLEL -fno-implicit-templates
45*2233c95bSzrjparallel_FLAGS_FILES=	parallel_settings.cc
46*2233c95bSzrjexplicit_FLAGS=		-fno-implicit-templates
47*2233c95bSzrj
48*2233c95bSzrjREFERENCED_FILES=	${deprecated_FLAGS_FILES} ${gnu98_FLAGS_FILES} \
49*2233c95bSzrj			${gnu11_FLAGS_FILES} ${cow_FLAGS_FILES} \
50*2233c95bSzrj			${concept_FLAGS_FILES} ${parallel_FLAGS_FILES}
51*2233c95bSzrj
52*2233c95bSzrj.for F in ${SRCS}
53*2233c95bSzrj. if ! ${REFERENCED_FILES:M${F}}
54*2233c95bSzrjexplicit_FLAGS_FILES+=	${F}
55*2233c95bSzrj. endif
56*2233c95bSzrj.endfor
57*2233c95bSzrj
58*2233c95bSzrj.for F in ${COWG}
59*2233c95bSzrj${F:.x=_members_cow.cc}: ${SRCDIR}/config/locale/generic/${F:.x=_members.cc}
60*2233c95bSzrj	cp ${.ALLSRC} ${.TARGET}
61*2233c95bSzrj.endfor
62*2233c95bSzrj
63*2233c95bSzrj.for F in ${COWD}
64*2233c95bSzrj${F:.x=_members_cow.cc}: ${SRCDIR}/config/locale/dragonfly/${F:.x=_members.cc}
65*2233c95bSzrj	cp ${.ALLSRC} ${.TARGET}
66*2233c95bSzrj.endfor
67*2233c95bSzrj
68*2233c95bSzrjatomicity.cc: ${SRCDIR}/config/cpu/generic/atomicity_builtins/atomicity.h
69*2233c95bSzrj	cp ${.ALLSRC} ${.TARGET}
70*2233c95bSzrj
71*2233c95bSzrjbasic_file.cc: ${SRCDIR}/config/io/basic_file_stdio.cc
72*2233c95bSzrj	cp ${.ALLSRC} ${.TARGET}
73*2233c95bSzrj
74*2233c95bSzrjc++locale.cc: ${SRCDIR}/config/locale/dragonfly/c_locale.cc
75*2233c95bSzrj	cp ${.ALLSRC} ${.TARGET}
76*2233c95bSzrj
77*2233c95bSzrjCLEANFILES+=	${GENCC}
78*2233c95bSzrj
79*2233c95bSzrjbeforedepend:	${GENCC}
80*2233c95bSzrj
81*2233c95bSzrj.include <bsd.lib.mk>
82