Home | History | Annotate | Line # | Download | only in libstdc++-v3
Makefile revision 1.5
      1  1.5  mrg #	$NetBSD: Makefile,v 1.5 2015/09/23 03:39:30 mrg Exp $
      2  1.1  mrg 
      3  1.1  mrg REQUIRETOOLS=	yes
      4  1.1  mrg NOLINT=		# defined
      5  1.1  mrg 
      6  1.2  mrg .include <bsd.init.mk>
      7  1.1  mrg 
      8  1.1  mrg .include "Makefile.inc"
      9  1.1  mrg 
     10  1.1  mrg LIB=		stdc++
     11  1.1  mrg 
     12  1.1  mrg LIBDPLIBS+=	m ${.CURDIR}/../../../../../lib/libm
     13  1.1  mrg 
     14  1.5  mrg #COPTS+=		-pthread
     15  1.5  mrg #LDFLAGS+=	-pthread
     16  1.5  mrg .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
     17  1.5  mrg COPTS.random.cc+=	${${ACTIVE_CC} == "clang":? -mrdrnd :}
     18  1.5  mrg .endif
     19  1.5  mrg 
     20  1.5  mrg CXXFLAGS.clang+=	-stdlib=libstdc++ -std=c++11 -D_GLIBCXX_ABI_TAG_CXX11=
     21  1.5  mrg CXXFLAGS+=	${CXXFLAGS.${ACTIVE_CC}}
     22  1.1  mrg CWARNFLAGS.clang+=	-Wno-logical-op-parentheses \
     23  1.1  mrg 			-Wno-deprecated-writable-strings -Wno-parentheses
     24  1.1  mrg 
     25  1.5  mrg .include "${.CURDIR}/../libsupc++/Makefile.common"
     26  1.5  mrg 
     27  1.5  mrg .if exists(${.CURDIR}/arch/${LIBSTDCXX_MACHINE_ARCH}/defs.mk) && ${MKGCC} != "no"
     28  1.5  mrg .include "${.CURDIR}/arch/${LIBSTDCXX_MACHINE_ARCH}/defs.mk"
     29  1.1  mrg 
     30  1.1  mrg SHLIB_MAJOR=	7
     31  1.5  mrg SHLIB_MINOR=	3
     32  1.1  mrg 
     33  1.1  mrg SUBDIR=		include
     34  1.1  mrg 
     35  1.1  mrg SRCS=		${LIBSUPCXXSRCS} ${LIBSTDCXXSRCS}
     36  1.1  mrg # affects profiling; can't switch it off just for profiling easily.
     37  1.1  mrg #CXXFLAGS+=	${G_SECTION_FLAGS}
     38  1.1  mrg #CXXFLAGS+=	-ffunction-sections -fdata-sections 
     39  1.1  mrg CXXFLAGS+=	-fno-implicit-templates -fdiagnostics-show-location=once
     40  1.1  mrg CPPFLAGS+=	-I${DIST}/libstdc++-v3/include
     41  1.5  mrg CPPFLAGS+=	-I${.CURDIR}/arch/${LIBSTDCXX_MACHINE_ARCH}
     42  1.5  mrg # include backwards compatible code
     43  1.5  mrg CPPFLAGS+=     -D_GLIBCXX_SHARED -DGTHREAD_USE_WEAK -DSUPPORTS_WEAK
     44  1.1  mrg 
     45  1.1  mrg CONF=		${DIST}/libstdc++-v3/config
     46  1.1  mrg 
     47  1.1  mrg GLIBCPP_INCLUDE_DIR=	${DESTDIR}/usr/include/g++
     48  1.1  mrg 
     49  1.5  mrg # Template instantiation bug workaround for -O<2/s
     50  1.5  mrg COPTS.cp-demangle.c = -Wno-stack-protector
     51  1.1  mrg COPTS.cp-demangle.c = -Wno-stack-protector
     52  1.1  mrg COPTS.fstream-inst.cc = -Wno-stack-protector
     53  1.1  mrg COPTS.locale-inst.cc = -Wno-stack-protector
     54  1.1  mrg COPTS.misc-inst.cc = -Wno-stack-protector
     55  1.1  mrg COPTS.ostream-inst.cc = -Wno-stack-protector
     56  1.1  mrg COPTS.valarray-inst.cc = -Wno-stack-protector
     57  1.1  mrg COPTS.wlocale-inst.cc = -Wno-stack-protector
     58  1.5  mrg COPTS.concept-inst.cc=	-fimplicit-templates
     59  1.5  mrg COPTS.hashtable_c++0x.cc=  -fimplicit-templates
     60  1.5  mrg COPTS.bitmap_allocator.cc = -fimplicit-templates
     61  1.1  mrg CPPFLAGS.strstream.cc=	-I$(GLIBCPP_INCLUDE_DIR)/backward -Wno-deprecated
     62  1.1  mrg 
     63  1.1  mrg # XXX also need this for some PCHs.
     64  1.1  mrg CPPFLAGS.atomic.cc = -std=gnu++0x
     65  1.1  mrg CPPFLAGS.compatibility-c++0x.cc = -std=gnu++0x
     66  1.1  mrg CPPFLAGS.functexcept.cc = -std=gnu++0x
     67  1.1  mrg CPPFLAGS.hash_c++0x.cc = -std=gnu++0x
     68  1.1  mrg CPPFLAGS.hashtable_c++0x.cc = -std=gnu++0x
     69  1.1  mrg CPPFLAGS.limits.cc = -std=gnu++0x
     70  1.1  mrg CPPFLAGS.system_error.cc = -std=gnu++0x
     71  1.1  mrg CPPFLAGS.fstream-inst.cc = -std=gnu++0x
     72  1.1  mrg CPPFLAGS.string-inst.cc = -std=gnu++0x
     73  1.1  mrg CPPFLAGS.wstring-inst.cc = -std=gnu++0x
     74  1.1  mrg CPPFLAGS.mutex.cc = -std=gnu++0x
     75  1.1  mrg CPPFLAGS.condition_variable.cc = -std=gnu++0x
     76  1.1  mrg CPPFLAGS.chrono.cc = -std=gnu++0x
     77  1.1  mrg CPPFLAGS.thread.cc = -std=gnu++0x
     78  1.1  mrg CPPFLAGS.future.cc = -std=gnu++0x
     79  1.1  mrg 
     80  1.1  mrg CPPFLAGS.cp-demangle.cc += -DIN_GLIBCPP_V3
     81  1.1  mrg CPPFLAGS.concept-inst.cc += -D_GLIBCXX_CONCEPT_CHECKS
     82  1.1  mrg CPPFLAGS.parallel_list.cc += -D_GLIBCXX_PARALLEL
     83  1.1  mrg CPPFLAGS.parallel_settings.cc += -D_GLIBCXX_PARALLEL
     84  1.1  mrg CPPFLAGS.compatibility-parallel_list.cc += -D_GLIBCXX_PARALLEL
     85  1.1  mrg 
     86  1.5  mrg cp-demangle.d cp-demangle.o: cp-demangle.h
     87  1.5  mrg 
     88  1.1  mrg # XXX
     89  1.1  mrg MKDEPFLAGS+=	-I$(GLIBCPP_INCLUDE_DIR)/backward
     90  1.1  mrg 
     91  1.5  mrg GLIBCXX_SRCDIR=	${DIST}/libstdc++-v3
     92  1.5  mrg 
     93  1.5  mrg BUILDSYMLINKS+=	\
     94  1.5  mrg 	${GLIBCXX_SRCDIR}/${G_CCODECVT_CC} codecvt_members.cc \
     95  1.5  mrg 	${GLIBCXX_SRCDIR}/${G_CCOLLATE_CC} collate_members.cc \
     96  1.5  mrg 	${GLIBCXX_SRCDIR}/${G_CCTYPE_CC} ctype_members.cc \
     97  1.5  mrg 	${GLIBCXX_SRCDIR}/${G_CMESSAGES_CC} messages_members.cc \
     98  1.5  mrg 	${GLIBCXX_SRCDIR}/${G_CMONEY_CC} monetary_members.cc \
     99  1.5  mrg 	${GLIBCXX_SRCDIR}/${G_CNUMERIC_CC} numeric_members.cc \
    100  1.5  mrg 	${GLIBCXX_SRCDIR}/${G_CTIME_CC} time_members.cc \
    101  1.5  mrg 	${GLIBCXX_SRCDIR}/${G_ATOMICITY_SRCDIR}/atomicity.h atomicity.cc \
    102  1.5  mrg 	${GLIBCXX_SRCDIR}/${G_CLOCALE_CC} c++locale.cc \
    103  1.5  mrg 	${GLIBCXX_SRCDIR}/${G_BASIC_FILE_CC} basic_file.cc \
    104  1.5  mrg 	${DIST}/libiberty/cp-demangle.c cp-demangle.c \
    105  1.5  mrg 	${DIST}/libiberty/cp-demangle.h cp-demangle.h
    106  1.5  mrg 
    107  1.5  mrg .if ${HAVE_LIBGCC_EH} == "no"
    108  1.5  mrg G_CONFIGLINKS:= ${G_CONFIGLINKS:S,libgcc/config/arm/unwind-arm.h,libgcc/unwind-generic.h,}
    109  1.5  mrg .endif
    110  1.5  mrg 
    111  1.5  mrg .if ${MKGCC} != "no"
    112  1.5  mrg .if defined(G_CONFIGLINKS) && !empty(G_CONFIGLINKS)
    113  1.5  mrg BUILDSYMLINKS+=        ${G_CONFIGLINKS}
    114  1.5  mrg .for _src _dst in ${G_CONFIGLINKS}
    115  1.5  mrg DPSRCS+=       ${_dst}
    116  1.5  mrg .endfor
    117  1.5  mrg .endif
    118  1.5  mrg .endif
    119  1.5  mrg 
    120  1.5  mrg .for f in compatibility-c++0x compatibility-atomic-c++0x \
    121  1.5  mrg           compatibility-thread-c++0x compatibility-chrono chrono \
    122  1.5  mrg 	  condition_variable debug functexcept functional future \
    123  1.5  mrg 	  hash_c++0x hashtable_c++0x limits mutex placeholders \
    124  1.5  mrg 	  random regex shared_ptr system_error thread
    125  1.5  mrg COPTS.${f}.cc+= -std=gnu++11
    126  1.5  mrg .endfor
    127  1.5  mrg 
    128  1.1  mrg .include <bsd.lib.mk>
    129  1.1  mrg .include <bsd.subdir.mk>
    130  1.1  mrg .include <bsd.info.mk>
    131  1.1  mrg 
    132  1.1  mrg .PATH:	${DIST}/libstdc++-v3/src \
    133  1.5  mrg 	${DIST}/libstdc++-v3/src/c++98 \
    134  1.5  mrg 	${DIST}/libstdc++-v3/src/c++11 \
    135  1.1  mrg 	${DIST}/libstdc++-v3/libsupc++ \
    136  1.5  mrg 	${DIST}/libstdc++-v3/config/os/bsd/netbsd \
    137  1.1  mrg 	${CONF}/locale/generic \
    138  1.5  mrg 	${.CURDIR}/arch/${LIBSTDCXX_MACHINE_ARCH}
    139  1.1  mrg 
    140  1.5  mrg ${OBJS}: ${.CURDIR}/arch/${LIBSTDCXX_MACHINE_ARCH}/defs.mk
    141  1.1  mrg .else
    142  1.1  mrg .include <bsd.prog.mk> # do nothing
    143  1.1  mrg .endif
    144