gcc50: Bring in makefiles but leave them unhooked
authorJohn Marino <draco@marino.st>
Tue, 10 Feb 2015 13:06:06 +0000 (14:06 +0100)
committerJohn Marino <draco@marino.st>
Tue, 10 Feb 2015 13:10:34 +0000 (14:10 +0100)
The pre-release version of GCC 5.0 will be brought into base soon.  This
commit brings in the makefiles that build it, but they are not hooked
into the build in any way.  Before that happens, the vendor branch needs
to be merged into base, and dozens for files need to be simultaneously
changed.  GCC 4.4 will be unhooked at the same time.

The GCC releases provide pre-generated man pages, but the pre-releases do
not.  To support this, a switch has been added that installs man pages
from these directories.  When GCC 5.0 is released, those man pages will
be removed and the man pages will be installed from contrib/gcc-5.0

90 files changed:
gnu/lib/gcc50/Makefile [new file with mode: 0644]
gnu/lib/gcc50/Makefile.inc [new file with mode: 0644]
gnu/lib/gcc50/csu/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libgcc/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libgcc/Makefile.src [new file with mode: 0644]
gnu/lib/gcc50/libgcc/auto-target.h [new file with mode: 0644]
gnu/lib/gcc50/libgcc_eh/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libgcc_pic/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libgcov/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libgomp/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libgomp/config.h [new file with mode: 0644]
gnu/lib/gcc50/libitm/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libitm/config.h [new file with mode: 0644]
gnu/lib/gcc50/libitm/libitm.spec [new file with mode: 0644]
gnu/lib/gcc50/libobjc/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libobjc/config.h [new file with mode: 0644]
gnu/lib/gcc50/libssp/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libssp/config.h [new file with mode: 0644]
gnu/lib/gcc50/libssp_nonshared/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/components/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/components/libconv_1998/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/components/libconv_1998/Makefile.src [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/components/libconv_2011/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/components/libconv_2011/Makefile.src [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/components/libconv_supc/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/components/libconv_supc/Makefile.src [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/headers/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/headers/Makefile.headers [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/headers/config.h [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/product/Makefile [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/product/Makefile.src [new file with mode: 0644]
gnu/lib/gcc50/libstdcxx/product/libstdc++-symbols.ver [new file with mode: 0644]
gnu/usr.bin/cc50/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/Makefile.inc [new file with mode: 0644]
gnu/usr.bin/cc50/Makefile.intcxx_lib [new file with mode: 0644]
gnu/usr.bin/cc50/Makefile.langs [new file with mode: 0644]
gnu/usr.bin/cc50/Makefile.tgt [new file with mode: 0644]
gnu/usr.bin/cc50/Makefile.version [new file with mode: 0644]
gnu/usr.bin/cc50/backends/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/backends/guts/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/backends/guts/guts-cobjc/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/backends/guts/guts-common/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/backends/guts/guts-cxx/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/backends/guts/guts-target/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/backends/programs/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/backends/programs/cc1/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/backends/programs/cc1obj/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/backends/programs/cc1plus/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/backends/programs/lto-wrapper/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/backends/programs/lto1/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/cc_prep/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/cc_prep/auto-host.h [new file with mode: 0644]
gnu/usr.bin/cc50/cc_prep/config.h [new file with mode: 0644]
gnu/usr.bin/cc50/cc_prep/config/dragonfly-native.h [new file with mode: 0644]
gnu/usr.bin/cc50/cc_prep/multilib.h [new file with mode: 0644]
gnu/usr.bin/cc50/cc_prep/tconfig.h [new file with mode: 0644]
gnu/usr.bin/cc50/cc_tools/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/cc_tools/Makefile.inc [new file with mode: 0644]
gnu/usr.bin/cc50/cc_tools/libcpp/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/cc_tools/libiberty/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/cc_tools/tools/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/drivers/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/drivers/Makefile.inc [new file with mode: 0644]
gnu/usr.bin/cc50/drivers/c++/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/drivers/cc/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/drivers/cc/gcc.1 [new file with mode: 0644]
gnu/usr.bin/cc50/drivers/cpp/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/drivers/cpp/cpp.1 [new file with mode: 0644]
gnu/usr.bin/cc50/drivers/gcov/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/drivers/gcov/gcov.1 [new file with mode: 0644]
gnu/usr.bin/cc50/libbackend/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/Makefile.inc [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libbacktrace/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libbacktrace/backtrace-supported.h [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libbacktrace/config.h [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libcommon-target/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libcommon/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libcpp/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libcpp/config.h [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libdecnumber/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libdecnumber/config.h [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libiberty-pic/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libiberty/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/libiberty/config.h [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/liblto_plugin/Makefile [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/liblto_plugin/Makefile.headers [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/liblto_plugin/b-header-vars [new file with mode: 0644]
gnu/usr.bin/cc50/support-libs/liblto_plugin/config.h [new file with mode: 0644]

diff --git a/gnu/lib/gcc50/Makefile b/gnu/lib/gcc50/Makefile
new file mode 100644 (file)
index 0000000..5764075
--- /dev/null
@@ -0,0 +1,20 @@
+# csu and libgcc* are normally built earlier by the _startup_libs50 target
+# libitm is a c++ library, so it must be built after libstcxx
+# libitm is not currently hooked into the build
+
+#SUBDIR_ORDERED= libstdcxx libitm
+SUBDIR_ORDERED=
+
+SUBDIR+=       csu
+SUBDIR+=       libgcc
+SUBDIR+=       libgcc_eh
+SUBDIR+=       libgcc_pic
+SUBDIR+=       libgcov
+SUBDIR+=       libgomp
+#SUBDIR+=      libitm
+SUBDIR+=       libobjc
+SUBDIR+=       libssp
+SUBDIR+=       libssp_nonshared
+SUBDIR+=       libstdcxx
+
+.include <bsd.subdir.mk>
diff --git a/gnu/lib/gcc50/Makefile.inc b/gnu/lib/gcc50/Makefile.inc
new file mode 100644 (file)
index 0000000..fe8ce09
--- /dev/null
@@ -0,0 +1,36 @@
+.if !target(__<gcc50.Makefile.inc>__)
+__<gcc50.Makefile.inc>__:
+
+.include "../../usr.bin/cc50/Makefile.version"
+
+GCCPOINTVER=   ${GCCCOMPLETEVER:R}
+GCCSHORTVER=   ${GCCPOINTVER:S/.//}
+GCCSHORTDATE=  ${GCCDATESTAMP:S/-//g}
+
+GCCDIR=                ${.CURDIR}${RELUP}/../../../../contrib/gcc-${GCCPOINTVER}
+OCCDIR=        ${.OBJDIR}${RELUP}/../../../usr.bin/cc${GCCSHORTVER}
+CCDIR=         ${.CURDIR}${RELUP}/../../../usr.bin/cc${GCCSHORTVER}
+
+CCVER=gcc${GCCSHORTVER}
+
+TRAMPSIZE=     24
+
+TARGETDIR=             ${LIBDIR}/gcc${GCCSHORTVER}
+TARGET_LIBDIR=         ${TARGETDIR}
+TARGET_DEBUGLIBDIR=    ${TARGETDIR}/debug
+TARGET_PROFLIBDIR=     ${TARGETDIR}/profile
+TARGET_SHLIBDIR=       ${TARGETDIR}
+
+LIBSUPCPP=             ${.OBJDIR}/../libsupc++/libsupc++.a
+
+CFLAGS+=       -I${CCDIR}/cc_prep
+CFLAGS+=       -I${CCDIR}/cc_prep/config
+CFLAGS+=       -I${OCCDIR}/cc_prep
+CFLAGS+=       -I${OCCDIR}/cc_tools/tools
+CFLAGS+=       -I${GCCDIR}/include
+CFLAGS+=       -I${GCCDIR}/gcc
+CFLAGS+=       -I${GCCDIR}/gcc/config
+CFLAGS+=       -I${GCCDIR}/gcc/config/i386
+CFLAGS+=       -I${CCDIR}/../gmp
+
+.endif
\ No newline at end of file
diff --git a/gnu/lib/gcc50/csu/Makefile b/gnu/lib/gcc50/csu/Makefile
new file mode 100644 (file)
index 0000000..afd7a94
--- /dev/null
@@ -0,0 +1,32 @@
+.include "../Makefile.inc"
+.PATH: ${GCCDIR}/libgcc
+
+.if ${CCVER:Mgcc*}
+CFLAGS+=       -finhibit-size-directive
+CFLAGS+=       -fno-toplevel-reorder
+.endif
+
+CFLAGS+=       -fno-inline
+CFLAGS+=       -fno-exceptions
+CFLAGS+=       -fno-zero-initialized-in-bss
+CFLAGS+=       -fno-tree-vectorize
+CFLAGS+=       -fbuilding-libgcc
+CFLAGS+=       -fno-stack-protector
+CFLAGS+=       -fno-omit-frame-pointer
+CFLAGS+=       -fno-asynchronous-unwind-tables
+CFLAGS+=       -I.
+CFLAGS+=       -DIN_GCC
+
+libgcc_tm.h:
+       echo "#ifndef LIBGCC_TM_H" >  ${.TARGET}
+       echo "#define LIBGCC_TM_H" >> ${.TARGET}
+       echo "#endif"              >> ${.TARGET}
+
+CLEANFILES+=   libgcc_tm.h
+
+# note: auto-host.h generated by Makefile.csu is not used.  The cc_prep
+# autohost-h is loaded preferentially instead.
+
+beforedepend: libgcc_tm.h
+
+.include "../../csu/Makefile.csu"
diff --git a/gnu/lib/gcc50/libgcc/Makefile b/gnu/lib/gcc50/libgcc/Makefile
new file mode 100644 (file)
index 0000000..2622d24
--- /dev/null
@@ -0,0 +1,126 @@
+.include "../Makefile.inc"
+.include "Makefile.src"
+.PATH: ${GCCDIR}/libgcc
+.PATH: ${GCCDIR}/libgcc/soft-fp
+.PATH: ${GCCDIR}/libgcc/config/i386
+
+LIB=           gcc
+
+CFLAGS+=       -I${.CURDIR}
+CFLAGS+=       -I${.OBJDIR}
+CFLAGS+=       -I${GCCDIR}/libgcc
+CFLAGS+=       -I${GCCDIR}/libgcc/config/i386
+CFLAGS+=       -I../csu
+CFLAGS+=       -fbuilding-libgcc
+CFLAGS+=       -fno-stack-protector
+CFLAGS+=       -fvisibility=hidden
+CFLAGS+=       -fpic
+CFLAGS+=       -DPIC
+CFLAGS+=       -DIN_GCC
+CFLAGS+=       -DIN_LIBGCC2
+CFLAGS+=       -DHAVE_CC_TLS
+CFLAGS+=       -DHIDE_EXPORTS
+
+# FUNCS and SOFTFUNCS defined in Makefile.src
+OBJS=          ${FUNCS:S/$/.o/}
+SRCS=          ${SOFTFUNCS:S/$/.c/}
+
+#generated sources
+SRCS+=         gthr-default.h sfp-machine.h
+
+# GCC's libgcc generates source files which depend on generated
+# header files, which means we have to generate our tools set before
+# we can build libgcc.  The toolset is normally built afterwards.
+#
+# XXX for the world stage we could theoretically use the cc_tools generated
+# in the btools stage, but it's easier to regenerate them.
+#
+# Assumed to be built prior to this makefile:
+#   gnu/usr.bin/cc50/cc_prep
+#   gnu/usr.bin/cc50/cc_tools
+#   gnu/lib/gcc50/csu
+
+# derived from generated build/gcc/Makefile
+EXTRA_HEADERS = \
+       ${GCCDIR}/gcc/config/i386/cpuid.h \
+       ${GCCDIR}/gcc/config/i386/mmintrin.h \
+       ${GCCDIR}/gcc/config/i386/mm3dnow.h \
+       ${GCCDIR}/gcc/config/i386/xmmintrin.h \
+       ${GCCDIR}/gcc/config/i386/emmintrin.h \
+       ${GCCDIR}/gcc/config/i386/pmmintrin.h \
+       ${GCCDIR}/gcc/config/i386/tmmintrin.h \
+       ${GCCDIR}/gcc/config/i386/ammintrin.h \
+       ${GCCDIR}/gcc/config/i386/smmintrin.h \
+       ${GCCDIR}/gcc/config/i386/nmmintrin.h \
+       ${GCCDIR}/gcc/config/i386/bmmintrin.h \
+       ${GCCDIR}/gcc/config/i386/fma4intrin.h \
+       ${GCCDIR}/gcc/config/i386/wmmintrin.h \
+       ${GCCDIR}/gcc/config/i386/immintrin.h \
+       ${GCCDIR}/gcc/config/i386/x86intrin.h \
+       ${GCCDIR}/gcc/config/i386/avxintrin.h \
+       ${GCCDIR}/gcc/config/i386/xopintrin.h \
+       ${GCCDIR}/gcc/config/i386/ia32intrin.h \
+       ${GCCDIR}/gcc/config/i386/cross-stdarg.h \
+       ${GCCDIR}/gcc/config/i386/lwpintrin.h \
+       ${GCCDIR}/gcc/config/i386/popcntintrin.h \
+       ${GCCDIR}/gcc/config/i386/lzcntintrin.h \
+       ${GCCDIR}/gcc/config/i386/bmiintrin.h \
+       ${GCCDIR}/gcc/config/i386/tbmintrin.h \
+       ${GCCDIR}/gcc/config/i386/bmi2intrin.h \
+       ${GCCDIR}/gcc/config/i386/avx2intrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512fintrin.h \
+       ${GCCDIR}/gcc/config/i386/fmaintrin.h \
+       ${GCCDIR}/gcc/config/i386/f16cintrin.h \
+       ${GCCDIR}/gcc/config/i386/rtmintrin.h \
+       ${GCCDIR}/gcc/config/i386/xtestintrin.h \
+       ${GCCDIR}/gcc/config/i386/rdseedintrin.h \
+       ${GCCDIR}/gcc/config/i386/prfchwintrin.h \
+       ${GCCDIR}/gcc/config/i386/adxintrin.h \
+       ${GCCDIR}/gcc/config/i386/fxsrintrin.h \
+       ${GCCDIR}/gcc/config/i386/xsaveintrin.h \
+       ${GCCDIR}/gcc/config/i386/xsaveoptintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512cdintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512erintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512pfintrin.h \
+       ${GCCDIR}/gcc/config/i386/shaintrin.h \
+       ${GCCDIR}/gcc/config/i386/clflushoptintrin.h \
+       ${GCCDIR}/gcc/config/i386/xsavecintrin.h \
+       ${GCCDIR}/gcc/config/i386/xsavesintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512dqintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512bwintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512vlintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512vlbwintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512vldqintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512ifmaintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512ifmavlintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512vbmiintrin.h \
+       ${GCCDIR}/gcc/config/i386/avx512vbmivlintrin.h \
+       ${GCCDIR}/gcc/config/i386/clwbintrin.h \
+       ${GCCDIR}/gcc/config/i386/pcommitintrin.h \
+       ${GCCDIR}/gcc/ginclude/tgmath.h \
+       ${GCCDIR}/gcc/ginclude/stddef.h
+
+#generated sources
+SRCS+= mm_malloc.h unwind.h
+
+INCS=          ${EXTRA_HEADERS} mm_malloc.h unwind.h
+INCSDIR=       /usr/libdata/gcc${GCCSHORTVER}
+
+mm_malloc.h: ${GCCDIR}/gcc/config/i386/gmm_malloc.h
+       cp ${.ALLSRC} ${.TARGET}
+
+gthr-default.h: gthr-posix.h
+       cp ${.ALLSRC} ${.TARGET}
+
+sfp-machine.h: ${GCCDIR}/libgcc/config/i386/sfp-machine.h
+       cp ${.ALLSRC} ${.TARGET}
+
+enable-execute-stack.c: enable-execute-stack-mprotect.c
+       cp ${.ALLSRC} ${.TARGET}
+
+unwind.h: unwind-generic.h
+       cp ${.ALLSRC} ${.TARGET}
+
+CLEANFILES+=   mm_malloc.h unwind.h gthr-default.h enable-execute-stack.c
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libgcc/Makefile.src b/gnu/lib/gcc50/libgcc/Makefile.src
new file mode 100644 (file)
index 0000000..833a9a5
--- /dev/null
@@ -0,0 +1,56 @@
+# build/x86-64-portbuild-dragonfly4.1/libgcc/Makefile
+# Library members defined in libgcc2.c.
+lib2funcs = _muldi3 _negdi2 _lshrdi3 _ashldi3 _ashrdi3 _cmpdi2 _ucmpdi2           \
+           _clear_cache _trampoline __main _absvsi2 \
+           _absvdi2 _addvsi3 _addvdi3 _subvsi3 _subvdi3 _mulvsi3 _mulvdi3 \
+           _negvsi2 _negvdi2 _ctors _ffssi2 _ffsdi2 _clz _clzsi2 _clzdi2  \
+           _ctzsi2 _ctzdi2 _popcount_tab _popcountsi2 _popcountdi2        \
+           _paritysi2 _paritydi2 _powisf2 _powidf2 _powixf2 _powitf2      \
+           _mulsc3 _muldc3 _mulxc3 _multc3 _divsc3 _divdc3 _divxc3        \
+           _divtc3 _bswapsi2 _bswapdi2 _clrsbsi2 _clrsbdi2
+
+.for f in sf df xf
+lib2funcs+=    _fixuns${f}si
+lib2funcs+=    _fixuns${f}di 
+lib2funcs+=    _fix${f}di 
+lib2funcs+=    _floatdi${f}
+lib2funcs+=    _floatundi${f}
+nowsoft+=      extend${f}tf2
+.endfor
+
+.for f in si di ti
+nowsoft+=      fixtf${f}
+nowsoft+=      fixunstf${f}
+nowsoft+=      float${f}tf
+nowsoft+=      floatun${f}tf
+.endfor
+
+LIB2_DIVMOD_FUNCS = _divdi3 _moddi3 _udivdi3 _umoddi3 _udiv_w_sdiv _udivmoddi4 
+
+# from gcc/Makefile.in
+LIB2FUNCS_ST = _eprintf __gcc_bcmp
+
+# softfp functions and enable-execute-stack don't use L_ definitions
+SOFTFUNCS=     addtf3 divtf3 eqtf2 getf2 letf2 multf3 negtf2 subtf3 unordtf2 
+SOFTFUNCS+=    enable-execute-stack cpuinfo
+SOFTFUNCS+=    ${nowsoft}
+FUNCS=         ${lib2funcs} ${LIB2_DIVMOD_FUNCS} ${LIB2FUNCS_ST}
+
+#stack_FLAGS=          -D__LIBGCC_TRAMPOLINE_SIZE__=${TRAMPSIZE}
+#stack_FLAGS_FILES=    enable-execute-stack.c
+
+FLAG_GROUPS=           raise
+raise_FLAGS=           -fexceptions -fnon-call-exceptions
+raise_FLAGS_FILES=     ${LIB2_DIVMOD_FUNCS:S/$/.c/}
+
+${FUNCS:S/$/.o/}: ${GCCDIR}/libgcc/libgcc2.c
+       ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \
+               -o ${.TARGET}
+
+${FUNCS:S/$/.po/}: ${GCCDIR}/libgcc/libgcc2.c
+       ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \
+               -c ${.ALLSRC} -o ${.TARGET}
+
+${FUNCS:S/$/.So/}: ${GCCDIR}/libgcc/libgcc2.c
+       ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} \
+               -c ${.ALLSRC} -o ${.TARGET}
diff --git a/gnu/lib/gcc50/libgcc/auto-target.h b/gnu/lib/gcc50/libgcc/auto-target.h
new file mode 100644 (file)
index 0000000..c001705
--- /dev/null
@@ -0,0 +1,71 @@
+/* auto-target.h.  Generated from config.in by configure.  */
+/* config.in.  Generated from configure.ac by autoheader.  */
+
+/* Define to 1 if the target assembler supports thread-local storage. */
+/* #undef HAVE_CC_TLS */
+
+/* Define if _Unwind_GetIPInfo is available. */
+#define HAVE_GETIPINFO 1
+
+/* Define if the compiler supports init priority. */
+#define HAVE_INIT_PRIORITY 1
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+/* #undef HAVE_INTTYPES_H */
+
+/* Define to 1 if you have the <memory.h> header file. */
+/* #undef HAVE_MEMORY_H */
+
+/* Define to 1 if you have the <stdint.h> header file. */
+/* #undef HAVE_STDINT_H */
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+/* #undef HAVE_STDLIB_H */
+
+/* Define to 1 if you have the <strings.h> header file. */
+/* #undef HAVE_STRINGS_H */
+
+/* Define to 1 if you have the <string.h> header file. */
+/* #undef HAVE_STRING_H */
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+/* #undef HAVE_SYS_STAT_H */
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+/* #undef HAVE_SYS_TYPES_H */
+
+/* Define to 1 if you have the <unistd.h> header file. */
+/* #undef HAVE_UNISTD_H */
+
+/* Define if the C compiler is configured for setjmp/longjmp exceptions. */
+/* #undef LIBGCC_SJLJ_EXCEPTIONS */
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT ""
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "GNU C Runtime Library"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "GNU C Runtime Library 1.0"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "libgcc"
+
+/* Define to the home page for this package. */
+#define PACKAGE_URL "http://www.gnu.org/software/libgcc/"
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "1.0"
+
+/* The size of `double', as computed by sizeof. */
+#define SIZEOF_DOUBLE 8
+
+/* The size of `long double', as computed by sizeof. */
+#define SIZEOF_LONG_DOUBLE 16
+
+/* Define to 1 if you have the ANSI C header files. */
+/* #undef STDC_HEADERS */
+
+/* Define to 1 if the target use emutls for thread-local storage. */
+/* #undef USE_EMUTLS */
diff --git a/gnu/lib/gcc50/libgcc_eh/Makefile b/gnu/lib/gcc50/libgcc_eh/Makefile
new file mode 100644 (file)
index 0000000..6e7a608
--- /dev/null
@@ -0,0 +1,41 @@
+.include "../Makefile.inc"
+.PATH: ${GCCDIR}/libgcc
+.PATH: ${GCCDIR}/libgcc/config/i386
+
+LIB=           gcc_eh
+
+CFLAGS+=       -I${.CURDIR}
+CFLAGS+=       -I${.OBJDIR}
+CFLAGS+=       -I${GCCDIR}/libgcc
+CFLAGS+=       -I../csu
+CFLAGS+=       -fbuilding-libgcc
+CFLAGS+=       -fno-stack-protector
+CFLAGS+=       -fexceptions
+CFLAGS+=       -fvisibility=hidden
+CFLAGS+=       -DIN_GCC
+CFLAGS+=       -DIN_LIBGCC2
+CFLAGS+=       -DHAVE_CC_TLS
+CFLAGS+=       -DHIDE_EXPORTS
+
+# LIB2ADDEH, gcc/Makefile
+SRCS+= unwind-dw2.c \
+       unwind-dw2-fde-dip.c \
+       unwind-sjlj.c \
+       unwind-c.c \
+       emutls.c
+
+#generated sources
+SRCS+= unwind.h md-unwind-support.h gthr-default.h
+
+unwind.h: unwind-generic.h
+       cp ${.ALLSRC} ${.TARGET}
+
+md-unwind-support.h: dragonfly-unwind.h
+       cp ${.ALLSRC} ${.TARGET}
+
+gthr-default.h: gthr-posix.h
+       cp ${.ALLSRC} ${.TARGET}
+
+CLEANFILES+=   unwind.h md-unwind-support.h gthr-default.h
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libgcc_pic/Makefile b/gnu/lib/gcc50/libgcc_pic/Makefile
new file mode 100644 (file)
index 0000000..a1bd68a
--- /dev/null
@@ -0,0 +1,61 @@
+.include "../Makefile.inc"
+.include "../libgcc/Makefile.src"
+.PATH: ${GCCDIR}/libgcc
+.PATH: ${GCCDIR}/libgcc/soft-fp
+.PATH: ${GCCDIR}/libgcc/config/i386
+
+LIB=   gcc
+
+INSTALL_PIC_ARCHIVE=   yes
+NOPROFILE=             yes
+NOINSTALLLIB=          yes
+
+CFLAGS+=       -I${.CURDIR}
+CFLAGS+=       -I${.OBJDIR}
+CFLAGS+=       -I${GCCDIR}/libgcc
+CFLAGS+=       -I../csu
+CFLAGS+=       -fbuilding-libgcc
+CFLAGS+=       -fno-stack-protector
+CFLAGS+=       -fexceptions
+CFLAGS+=       -DIN_GCC
+CFLAGS+=       -DIN_LIBGCC2
+CFLAGS+=       -DHAVE_CC_TLS
+CFLAGS+=       -DSHARED
+
+# FUNCS and SOFTFUNCS defined in Makefile.src
+OBJS=          ${FUNCS:S/$/.o/}
+SRCS=          ${SOFTFUNCS:S/$/.c/}
+
+# LIB2ADDEH, gcc/Makefile
+SRCS+= unwind-dw2.c \
+       unwind-dw2-fde-dip.c \
+       unwind-sjlj.c \
+       unwind-c.c \
+       emutls.c
+
+# generated sources
+unwind.h: unwind-generic.h
+       cp ${.ALLSRC} ${.TARGET}
+
+gthr-default.h: gthr-posix.h
+       cp ${.ALLSRC} ${.TARGET}
+
+md-unwind-support.h: dragonfly-unwind.h
+       cp ${.ALLSRC} ${.TARGET}
+
+sfp-machine.h: ${GCCDIR}/libgcc/config/i386/sfp-machine.h
+       cp ${.ALLSRC} ${.TARGET}
+
+enable-execute-stack.c: enable-execute-stack-mprotect.c
+       cp ${.ALLSRC} ${.TARGET}
+
+auto-target.h: ${.CURDIR}/../libgcc/auto-target.h
+       cp ${.ALLSRC} ${.TARGET}
+
+CLEANFILES+=   unwind.h gthr-default.h sfp-machine.h md-unwind-support.h \
+               enable-execute-stack.c auto-target.h
+
+beforedepend:  unwind.h gthr-default.h sfp-machine.h md-unwind-support.h \
+               enable-execute-stack.c auto-target.h
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libgcov/Makefile b/gnu/lib/gcc50/libgcov/Makefile
new file mode 100644 (file)
index 0000000..20849fa
--- /dev/null
@@ -0,0 +1,90 @@
+.include "../Makefile.inc"
+.PATH: ${GCCDIR}/libgcc
+
+LIB=           gcov
+WARNS?=1
+
+CFLAGS+=       -I.
+CFLAGS+=       -I${GCCDIR}/libgcc
+CFLAGS+=       -I${.OBJDIR}/../csu
+CFLAGS+=       -fbuilding-libgcc
+CFLAGS+=       -fno-stack-protector
+CFLAGS+=       -DIN_LIBGCC2 -DHAVE_CC_TLS -DIN_GCC
+
+# used by shared libs
+INSTALL_PIC_ARCHIVE=   yes
+
+# taken from build/x86_64-portbld-dragonfly4.1/libgcc/Makefile
+LIBGCOV_MERGE = _gcov_merge_add _gcov_merge_single _gcov_merge_delta   \
+       _gcov_merge_ior _gcov_merge_time_profile _gcov_merge_icall_topn
+LIBGCOV_PROFILER = _gcov_interval_profiler _gcov_pow2_profiler         \
+       _gcov_one_value_profiler _gcov_indirect_call_profiler           \
+       _gcov_average_profiler _gcov_ior_profiler                       \
+       _gcov_indirect_call_profiler_v2 _gcov_time_profiler             \
+       _gcov_indirect_call_topn_profiler
+LIBGCOV_INTERFACE = _gcov_dump _gcov_flush _gcov_fork                  \
+       _gcov_execl _gcov_execlp                                        \
+       _gcov_execle _gcov_execv _gcov_execvp _gcov_execve _gcov_reset
+LIBGCOV_DRIVER = _gcov
+
+LIBGCOV=       ${LIBGCOV_MERGE} ${LIBGCOV_PROFILER} ${LIBGCOV_INTERFACE} \
+               ${LIBGCOV_DRIVER}
+
+OBJS=  ${LIBGCOV:S/$/.o/}
+
+gthr-default.h: gthr-posix.h
+       cp ${.ALLSRC} ${.TARGET}
+
+${LIBGCOV_MERGE:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-merge.c
+       ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \
+               -o ${.TARGET}
+
+${LIBGCOV_PROFILER:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-profiler.c
+       ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \
+               -o ${.TARGET}
+
+${LIBGCOV_INTERFACE:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-interface.c gthr-default.h
+       ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC:M*.c} \
+               -o ${.TARGET}
+
+${LIBGCOV_DRIVER:S/$/.o/}: ${GCCDIR}/libgcc/libgcov-driver.c
+       ${CC} ${STATIC_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \
+               -o ${.TARGET}
+
+# profile versions follow
+
+${LIBGCOV_MERGE:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-merge.c
+       ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \
+               -c ${.ALLSRC} -o ${.TARGET}
+
+${LIBGCOV_PROFILER:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-profiler.c
+       ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \
+               -c ${.ALLSRC} -o ${.TARGET}
+
+${LIBGCOV_INTERFACE:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-interface.c gthr-default.h
+       ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \
+               -c ${.ALLSRC:M*.c} -o ${.TARGET}
+
+${LIBGCOV_DRIVER:S/$/.po/}: ${GCCDIR}/libgcc/libgcov-driver.c
+       ${CC} ${PO_FLAG} ${STATIC_CFLAGS} ${PO_CFLAGS} -DL${.TARGET:R} \
+               -c ${.ALLSRC} -o ${.TARGET}
+
+# pic versions follow
+
+${LIBGCOV_MERGE:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-merge.c
+       ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \
+               -o ${.TARGET}
+
+${LIBGCOV_PROFILER:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-profiler.c
+       ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \
+               -o ${.TARGET}
+
+${LIBGCOV_INTERFACE:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-interface.c gthr-default.h
+       ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC:M*.c} \
+               -o ${.TARGET}
+
+${LIBGCOV_DRIVER:S/$/.So/}: ${GCCDIR}/libgcc/libgcov-driver.c
+       ${CC} ${PICFLAG} -DPIC ${SHARED_CFLAGS} ${CFLAGS} -DL${.TARGET:R} -c ${.ALLSRC} \
+               -o ${.TARGET}
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libgomp/Makefile b/gnu/lib/gcc50/libgomp/Makefile
new file mode 100644 (file)
index 0000000..33cc706
--- /dev/null
@@ -0,0 +1,97 @@
+CFLAGS+=       -I${.CURDIR}
+CFLAGS+=       -I${.OBJDIR}
+.include "../Makefile.inc"
+
+.PATH: ${GCCDIR}/libgomp
+.PATH: ${GCCDIR}/libgomp/config/bsd
+.PATH: ${GCCDIR}/libgomp/config/posix
+
+CFLAGS+=       -DHAVE_CONFIG_H
+CFLAGS+=       -I${GCCDIR}/libgomp
+CFLAGS+=       -I${GCCDIR}/libgomp/config/posix
+CFLAGS+=       -I${GCCDIR}/libgcc
+VERSION_MAP=   libgomp.ver
+
+LIB=           gomp
+SHLIB_MAJOR=   1
+
+LDADD=         -lpthread
+DPADD=         ${LIBPTHREAD}
+
+# From build/x86_64-portbld-dragonfly4.1/libgomp/Makefile
+#am__append_2 = openacc.f90
+libgomp_la_SOURCES = alloc.c barrier.c critical.c env.c error.c iter.c \
+       iter_ull.c loop.c loop_ull.c ordered.c parallel.c sections.c \
+       single.c task.c team.c work.c lock.c mutex.c proc.c sem.c \
+       bar.c ptrlock.c time.c fortran.c affinity.c target.c \
+       splay-tree.c libgomp-plugin.c oacc-parallel.c oacc-host.c \
+       oacc-init.c oacc-mem.c oacc-async.c oacc-plugin.c oacc-cuda.c \
+       $(am__append_2)
+
+SRCS=  ${libgomp_la_SOURCES}
+
+# On gcc47 this is from Makefile.x86-64, but there is only one platform now
+# Values recorded in <build-dir>/libgomp/config.log
+# x86-64 platform
+
+OMP_LOCK_25_ALIGN=     8
+OMP_LOCK_25_KIND=      8
+OMP_LOCK_25_SIZE=      8
+OMP_LOCK_ALIGN=        8
+OMP_LOCK_KIND=         8
+OMP_LOCK_SIZE=         8
+OMP_NEST_LOCK_25_ALIGN= 8
+OMP_NEST_LOCK_25_KIND= 8
+OMP_NEST_LOCK_25_SIZE= 16
+OMP_NEST_LOCK_ALIGN=   8
+OMP_NEST_LOCK_KIND=    8
+OMP_NEST_LOCK_SIZE=    24
+
+# tail of former Makefile.x86-64
+
+INCSGROUPS=    hd_libdata hd_lib
+hd_libdataDIR= /usr/libdata/gcc${GCCSHORTVER}
+hd_libDIR=     /usr/lib/gcc${GCCSHORTVER}
+
+hd_libdata=    omp.h
+hd_lib=        libgomp.spec
+
+libgomp_f.h: ${GCCDIR}/libgomp/libgomp_f.h.in
+       sed -e 's/@OMP_LOCK_25_ALIGN@/${OMP_LOCK_25_ALIGN}/g' \
+           -e 's/@OMP_LOCK_25_KIND@/${OMP_LOCK_25_KIND}/g' \
+           -e 's/@OMP_LOCK_25_SIZE@/${OMP_LOCK_25_SIZE}/g' \
+           -e 's/@OMP_LOCK_ALIGN@/${OMP_LOCK_ALIGN}/g' \
+           -e 's/@OMP_LOCK_KIND@/${OMP_LOCK_KIND}/g' \
+           -e 's/@OMP_LOCK_SIZE@/${OMP_LOCK_SIZE}/g' \
+           -e 's/@OMP_NEST_LOCK_25_ALIGN@/${OMP_NEST_LOCK_25_ALIGN}/g' \
+           -e 's/@OMP_NEST_LOCK_25_KIND@/${OMP_NEST_LOCK_25_KIND}/g' \
+           -e 's/@OMP_NEST_LOCK_25_SIZE@/${OMP_NEST_LOCK_25_SIZE}/g' \
+           -e 's/@OMP_NEST_LOCK_ALIGN@/${OMP_NEST_LOCK_ALIGN}/g' \
+           -e 's/@OMP_NEST_LOCK_KIND@/${OMP_NEST_LOCK_KIND}/g' \
+           -e 's/@OMP_NEST_LOCK_SIZE@/${OMP_NEST_LOCK_SIZE}/g' \
+           < ${.ALLSRC} > ${.TARGET}
+
+omp.h: ${GCCDIR}/libgomp/omp.h.in
+       sed -e 's/@OMP_LOCK_SIZE@/${OMP_LOCK_SIZE}/g' \
+           -e 's/@OMP_LOCK_ALIGN@/${OMP_LOCK_ALIGN}/g' \
+           -e 's/@OMP_NEST_LOCK_SIZE@/${OMP_NEST_LOCK_SIZE}/g' \
+           -e 's/@OMP_NEST_LOCK_ALIGN@/${OMP_NEST_LOCK_ALIGN}/g' \
+           < ${.ALLSRC} > ${.TARGET}
+
+omp_lib.h: ${GCCDIR}/libgomp/omp_lib.h.in
+       sed -e 's/@OMP_LOCK_KIND@/${OMP_LOCK_KIND}/g' \
+           -e 's/@OMP_NEST_LOCK_KIND@/${OMP_NEST_LOCK_KIND}/g' \
+           < ${.ALLSRC} > ${.TARGET}
+
+libgomp.ver: ${GCCDIR}/libgomp/libgomp.map
+       sed -e '/#/d' < ${.ALLSRC} > ${.TARGET}
+
+libgomp.spec:
+       echo "*link_gomp: -lgomp %{static: }" > ${.TARGET}
+
+GEND_FILES=    libgomp_f.h omp.h omp_lib.h libgomp.ver libgomp.spec
+CLEANFILES=    ${GEND_FILES}
+
+depend all:    ${GEND_FILES}
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libgomp/config.h b/gnu/lib/gcc50/libgomp/config.h
new file mode 100644 (file)
index 0000000..ade49c2
--- /dev/null
@@ -0,0 +1,148 @@
+/* config.h.  Generated from config.h.in by configure.  */
+/* config.h.in.  Generated from configure.ac by autoheader.  */
+
+/* Define to 1 if the target assembler supports .symver directive. */
+#define HAVE_AS_SYMVER_DIRECTIVE 1
+
+/* Define to 1 if the target supports __attribute__((alias(...))). */
+#define HAVE_ATTRIBUTE_ALIAS 1
+
+/* Define to 1 if the target supports __attribute__((dllexport)). */
+/* #undef HAVE_ATTRIBUTE_DLLEXPORT */
+
+/* Define to 1 if the target supports __attribute__((visibility(...))). */
+#define HAVE_ATTRIBUTE_VISIBILITY 1
+
+/* Define if the POSIX Semaphores do not work on your system. */
+/* #undef HAVE_BROKEN_POSIX_SEMAPHORES */
+
+/* Define to 1 if the target assembler supports thread-local storage. */
+/* #undef HAVE_CC_TLS */
+
+/* Define to 1 if you have the `clock_gettime' function. */
+#define HAVE_CLOCK_GETTIME 1
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#define HAVE_DLFCN_H 1
+
+/* Define to 1 if you have the `getloadavg' function. */
+#define HAVE_GETLOADAVG 1
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#define HAVE_INTTYPES_H 1
+
+/* Define to 1 if you have the `dl' library (-ldl). */
+#define HAVE_LIBDL 1
+
+/* Define to 1 if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define if pthread_{,attr_}{g,s}etaffinity_np is supported. */
+/* #undef HAVE_PTHREAD_AFFINITY_NP */
+
+/* Define to 1 if you have the <semaphore.h> header file. */
+#define HAVE_SEMAPHORE_H 1
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#define HAVE_STDINT_H 1
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Define to 1 if you have the <strings.h> header file. */
+#define HAVE_STRINGS_H 1
+
+/* Define to 1 if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define to 1 if you have the `strtoull' function. */
+#define HAVE_STRTOULL 1
+
+/* Define to 1 if the target runtime linker supports binding the same symbol
+   to different versions. */
+#define HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT 1
+
+/* Define to 1 if the target supports __sync_*_compare_and_swap */
+#define HAVE_SYNC_BUILTINS 1
+
+/* Define to 1 if you have the <sys/loadavg.h> header file. */
+/* #undef HAVE_SYS_LOADAVG_H */
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the <sys/time.h> header file. */
+#define HAVE_SYS_TIME_H 1
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#define HAVE_SYS_TYPES_H 1
+
+/* Define to 1 if the target supports thread-local storage. */
+#define HAVE_TLS 1
+
+/* Define to 1 if the target use emutls for thread-local storage. */
+/* #undef USE_EMUTLS */
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H 1
+
+/* Define to 1 if GNU symbol versioning is used for libgomp. */
+#define LIBGOMP_GNU_SYMBOL_VERSIONING 1
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+   */
+#define LT_OBJDIR ".libs/"
+
+/* Define to hold the list of target names suitable for offloading. */
+#define OFFLOAD_TARGETS ""
+
+/* Name of package */
+#define PACKAGE "libgomp"
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT ""
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "GNU Offloading and Multi Processing Runtime Library"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "GNU Offloading and Multi Processing Runtime Library 1.0"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "libgomp"
+
+/* Define to the home page for this package. */
+#define PACKAGE_URL "http://www.gnu.org/software/libgomp/"
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "1.0"
+
+/* Define if all infrastructure, needed for plugins, is supported. */
+#define PLUGIN_SUPPORT 1
+
+/* The size of `char', as computed by sizeof. */
+/* #undef SIZEOF_CHAR */
+
+/* The size of `int', as computed by sizeof. */
+/* #undef SIZEOF_INT */
+
+/* The size of `long', as computed by sizeof. */
+/* #undef SIZEOF_LONG */
+
+/* The size of `short', as computed by sizeof. */
+/* #undef SIZEOF_SHORT */
+
+/* The size of `void *', as computed by sizeof. */
+/* #undef SIZEOF_VOID_P */
+
+/* Define to 1 if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Define if you can safely include both <string.h> and <strings.h>. */
+#define STRING_WITH_STRINGS 1
+
+/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
+#define TIME_WITH_SYS_TIME 1
+
+/* Version number of package */
+#define VERSION "1.0"
diff --git a/gnu/lib/gcc50/libitm/Makefile b/gnu/lib/gcc50/libitm/Makefile
new file mode 100644 (file)
index 0000000..a66446a
--- /dev/null
@@ -0,0 +1,58 @@
+CFLAGS+=       -I${.CURDIR}
+CFLAGS+=       -I${.OBJDIR}
+.include "../Makefile.inc"
+
+LIB=           itm
+SHLIB_MAJOR=   1
+
+CFLAGS+=       -DHAVE_CONFIG_H -DGATHER_STATISTICS=0
+CFLAGS+=       -I${GCCDIR}/libitm
+CFLAGS+=       -I${GCCDIR}/libitm/config/x86
+CFLAGS+=       -I${GCCDIR}/libitm/config/posix
+CFLAGS+=       -I${GCCDIR}/libitm/config/generic
+CXXFLAGS+=     -std=gnu++0x -funwind-tables -fno-exceptions
+CXXFLAGS+=     -fno-rtti -fabi-version=4
+VERSION_MAP=   ${GCCDIR}/libitm/libitm.map
+
+.PATH:         ${GCCDIR}/libitm
+.PATH:         ${GCCDIR}/libitm/config/x86
+.PATH:         ${GCCDIR}/libitm/config/posix
+.PATH:         ${GCCDIR}/libitm/config/generic
+
+# From libitm Makefile
+am__append_1=
+am__append_2=  x86_sse.cc x86_avx.cc
+am__append_3=
+
+libitm_la_SOURCES = aatree.cc alloc.cc alloc_c.cc alloc_cpp.cc \
+       barrier.cc beginend.cc clone.cc eh_cpp.cc local.cc query.cc \
+       retry.cc rwlock.cc useraction.cc util.cc sjlj.S tls.cc \
+       method-serial.cc method-gl.cc method-ml.cc $(am__append_1) \
+       $(am__append_2) $(am__append_3)
+
+#CC_FILES=     ${libitm_la_SOURCES:M*.cc}
+#ASSY=         ${libitm_la_SOURCES:M*.S}
+#SO_FILES=     ${CC_FILES:.cc=.So}
+#ST_FILES=     ${CC_FILES:.cc=.o}
+#OBJS=           ${SO_FILES} ${ST_FILES} ${ASSY:.S=.So} ${ASSY:.S=.o}
+SRCS=  ${libitm_la_SOURCES}
+
+libitm.spec:
+       echo "*link_itm: -litm %{static: }" > libitm.spec
+
+# hack to force c++ compiler to compile *.c files to create library
+#.for ofile in ${SO_FILES}
+#${ofile}: ${ofile:.So=.cc}
+#      ${CXX} ${PICFLAG} -DPIC ${SHARED_CXXFLAGS} ${CXXFLAGS} \
+#              -c ${.ALLSRC} -o ${.TARGET}
+#.endfor
+#.for ofile in ${ST_FILES}
+#${ofile}: ${ofile:.o=.cc}
+#      ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.ALLSRC} -o ${.TARGET}
+#.endfor
+
+CLEANFILES+=   libitm.spec
+
+beforedepend:  libitm.spec
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libitm/config.h b/gnu/lib/gcc50/libitm/config.h
new file mode 100644 (file)
index 0000000..7b4433b
--- /dev/null
@@ -0,0 +1,181 @@
+/* config.h.  Generated from config.h.in by configure.  */
+/* config.h.in.  Generated from configure.ac by autoheader.  */
+
+/* Define if building universal (internal helper macro) */
+/* #undef AC_APPLE_UNIVERSAL_BUILD */
+
+/* Define to 1 if the target supports 64-bit __sync_*_compare_and_swap */
+#define HAVE_64BIT_SYNC_BUILTINS 1
+
+/* Define to 1 if the assembler supports AVX. */
+#define HAVE_AS_AVX 1
+
+/* Define if your assembler supports .cfi_* directives. */
+#define HAVE_AS_CFI_PSEUDO_OP 1
+
+/* Define to 1 if the assembler supports HTM. */
+/* #undef HAVE_AS_HTM */
+
+/* Define to 1 if the assembler supports RTM. */
+#define HAVE_AS_RTM 1
+
+/* Define to 1 if the target supports __attribute__((alias(...))). */
+#define HAVE_ATTRIBUTE_ALIAS 1
+
+/* Define to 1 if the target supports __attribute__((dllexport)). */
+/* #undef HAVE_ATTRIBUTE_DLLEXPORT */
+
+/* Define to 1 if the target supports __attribute__((visibility(...))). */
+#define HAVE_ATTRIBUTE_VISIBILITY 1
+
+/* Define if the POSIX Semaphores do not work on your system. */
+/* #undef HAVE_BROKEN_POSIX_SEMAPHORES */
+
+/* Define to 1 if the target assembler supports thread-local storage. */
+/* #undef HAVE_CC_TLS */
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#define HAVE_DLFCN_H 1
+
+/* Define to 1 if target has a weakref that works like the ELF one. */
+#define HAVE_ELF_STYLE_WEAKREF 1
+
+/* Define to 1 if you have the `getauxval' function. */
+/* #undef HAVE_GETAUXVAL */
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#define HAVE_INTTYPES_H 1
+
+/* Define to 1 if you have the <malloc.h> header file. */
+#define HAVE_MALLOC_H 1
+
+/* Define to 1 if you have the `memalign' function. */
+/* #undef HAVE_MEMALIGN */
+
+/* Define to 1 if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define if mmap with MAP_ANON(YMOUS) works. */
+#define HAVE_MMAP_ANON 1
+
+/* Define if mmap of /dev/zero works. */
+#define HAVE_MMAP_DEV_ZERO 1
+
+/* Define if read-only mmap of a plain file works. */
+#define HAVE_MMAP_FILE 1
+
+/* Define to 1 if you have the `posix_memalign' function. */
+#define HAVE_POSIX_MEMALIGN 1
+
+/* Define to 1 if you have the <semaphore.h> header file. */
+#define HAVE_SEMAPHORE_H 1
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#define HAVE_STDINT_H 1
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Define to 1 if you have the <strings.h> header file. */
+#define HAVE_STRINGS_H 1
+
+/* Define to 1 if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define to 1 if you have the `strtoull' function. */
+#define HAVE_STRTOULL 1
+
+/* Define to 1 if the target supports __sync_*_compare_and_swap */
+#define HAVE_SYNC_BUILTINS 1
+
+/* Define to 1 if you have the <sys/auxv.h> header file. */
+/* #undef HAVE_SYS_AUXV_H */
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the <sys/time.h> header file. */
+#define HAVE_SYS_TIME_H 1
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#define HAVE_SYS_TYPES_H 1
+
+/* Define to 1 if the target supports thread-local storage. */
+#define HAVE_TLS 1
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H 1
+
+/* Define to 1 if GNU symbol versioning is used for libitm. */
+#define LIBITM_GNU_SYMBOL_VERSIONING 1
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+   */
+#define LT_OBJDIR ".libs/"
+
+/* Define to the letter to which size_t is mangled. */
+#define MANGLE_SIZE_T m
+
+/* Name of package */
+#define PACKAGE "libitm"
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT ""
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "GNU TM Runtime Library"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "GNU TM Runtime Library 1.0"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "libitm"
+
+/* Define to the home page for this package. */
+#define PACKAGE_URL "http://www.gnu.org/software/libitm/"
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "1.0"
+
+/* The size of `char', as computed by sizeof. */
+/* #undef SIZEOF_CHAR */
+
+/* The size of `int', as computed by sizeof. */
+/* #undef SIZEOF_INT */
+
+/* The size of `long', as computed by sizeof. */
+/* #undef SIZEOF_LONG */
+
+/* The size of `short', as computed by sizeof. */
+/* #undef SIZEOF_SHORT */
+
+/* The size of `void *', as computed by sizeof. */
+/* #undef SIZEOF_VOID_P */
+
+/* Define to 1 if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Define if you can safely include both <string.h> and <strings.h>. */
+#define STRING_WITH_STRINGS 1
+
+/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
+#define TIME_WITH_SYS_TIME 1
+
+/* Version number of package */
+#define VERSION "1.0"
+
+/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
+   significant byte first (like Motorola and SPARC, unlike Intel). */
+#if defined AC_APPLE_UNIVERSAL_BUILD
+# if defined __BIG_ENDIAN__
+#  define WORDS_BIGENDIAN 1
+# endif
+#else
+# ifndef WORDS_BIGENDIAN
+/* #  undef WORDS_BIGENDIAN */
+# endif
+#endif
+
+#ifndef WORDS_BIGENDIAN
+#define WORDS_BIGENDIAN 0
+#endif
diff --git a/gnu/lib/gcc50/libitm/libitm.spec b/gnu/lib/gcc50/libitm/libitm.spec
new file mode 100644 (file)
index 0000000..d39d765
--- /dev/null
@@ -0,0 +1 @@
+*link_itm: -litm %{static: }
diff --git a/gnu/lib/gcc50/libobjc/Makefile b/gnu/lib/gcc50/libobjc/Makefile
new file mode 100644 (file)
index 0000000..d7227a3
--- /dev/null
@@ -0,0 +1,87 @@
+CFLAGS+=       -I${.CURDIR}
+CFLAGS+=       -I${.OBJDIR}
+.include "../Makefile.inc"
+
+.PATH: ${GCCDIR}/libobjc
+.PATH: ${GCCDIR}/libobjc/objc
+.PATH: ${GCCDIR}/gcc
+.PATH: ${GCCDIR}/gcc/cp
+.PATH: ${GCCDIR}/gcc/objc
+.PATH: ${GCCDIR}/libgcc
+
+CFLAGS+=       -I${GCCDIR}/libcpp/include
+CFLAGS+=       -I${GCCDIR}/libgcc
+CFLAGS+=       -DIN_GCC
+CFLAGS+=       -DIN_TARGET_LIBS
+CFLAGS+=       -DHAVE_CONFIG_H
+CFLAGS+=       -fno-strict-aliasing
+CFLAGS+=       -fexceptions
+
+FLAG_GROUPS=           mfile
+mfile_FLAGS=           -fgnu-runtime
+mfile_FLAGS_FILES=     ${OBJC_SOURCE_FILES}
+
+LIB=           objc
+SHLIB_MAJOR=   4
+
+# Objective-C source files to compile
+OBJC_SOURCE_FILES = \
+   NXConstStr.m \
+   Object.m \
+   Protocol.m \
+   accessors.m \
+   linking.m
+
+# C source files to compile
+C_SOURCE_FILES = \
+   class.c \
+   encoding.c \
+   error.c \
+   gc.c \
+   hash.c \
+   init.c \
+   ivars.c \
+   memory.c \
+   methods.c \
+   nil_method.c \
+   objc-foreach.c \
+   objc-sync.c \
+   objects.c \
+   protocols.c \
+   sarray.c \
+   selector.c \
+   sendmsg.c \
+   thr.c \
+   exception.c
+
+SRCS=   ${C_SOURCE_FILES}
+SRCS+=  ${OBJC_SOURCE_FILES}
+SRCS+= unwind.h runtime-info.h gthr-default.h
+
+unwind.h: unwind-generic.h
+       cp ${.ALLSRC} ${.TARGET}
+       
+gthr-default.h: gthr-posix.h
+       cp ${.ALLSRC} ${.TARGET}
+
+runtime-info.h: 
+       echo "" > tmp-runtime.m
+       echo "/* This file is automatically generated */" > ${.TARGET}
+       ${CC} -print-objc-runtime-info -S tmp-runtime.m >> ${.TARGET}
+       rm -f tmp-runtime.m tmp-runtime.s
+
+INCS=  NXConstStr.h \
+       Object.h \
+       Protocol.h \
+       message.h \
+       objc-decls.h \
+       objc-exception.h \
+       objc-sync.h \
+       objc.h \
+       runtime.h \
+       thr.h
+
+INCSDIR=       /usr/libdata/gcc${GCCSHORTVER}/objc
+CLEANFILES=    unwind.h runtime-info.h gthr-default.h
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libobjc/config.h b/gnu/lib/gcc50/libobjc/config.h
new file mode 100644 (file)
index 0000000..e784f0b
--- /dev/null
@@ -0,0 +1,72 @@
+/* config.h.  Generated from config.h.in by configure.  */
+/* config.h.in.  Generated from configure.ac by autoheader.  */
+
+/* Define to 1 if the target assembler supports thread-local storage. */
+/* #undef HAVE_CC_TLS */
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#define HAVE_DLFCN_H 1
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#define HAVE_INTTYPES_H 1
+
+/* Define to 1 if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define to 1 if you have the <sched.h> header file. */
+#define HAVE_SCHED_H 1
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#define HAVE_STDINT_H 1
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Define to 1 if you have the <strings.h> header file. */
+#define HAVE_STRINGS_H 1
+
+/* Define to 1 if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#define HAVE_SYS_TYPES_H 1
+
+/* Define to 1 if the target supports thread-local storage. */
+#define HAVE_TLS 1
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H 1
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+   */
+#define LT_OBJDIR ".libs/"
+
+/* Define to 1 if your C compiler doesn't accept -c and -o together. */
+/* #undef NO_MINUS_C_MINUS_O */
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT ""
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "package-unused"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "package-unused version-unused"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "libobjc"
+
+/* Define to the home page for this package. */
+#define PACKAGE_URL ""
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "version-unused"
+
+/* Define if the compiler is configured for setjmp/longjmp exceptions. */
+/* #undef SJLJ_EXCEPTIONS */
+
+/* Define to 1 if you have the ANSI C header files. */
+#define STDC_HEADERS 1
diff --git a/gnu/lib/gcc50/libssp/Makefile b/gnu/lib/gcc50/libssp/Makefile
new file mode 100644 (file)
index 0000000..59bb326
--- /dev/null
@@ -0,0 +1,34 @@
+CFLAGS+=       -I${.CURDIR}
+CFLAGS+=       -I${.OBJDIR}
+.include "../Makefile.inc"
+
+.PATH: ${GCCDIR}/libssp
+
+CFLAGS+=       -DHAVE_CONFIG_H
+VERSION_MAP=   ${GCCDIR}/libssp/ssp.map
+
+LIB=           ssp
+SHLIB_MAJOR=   0
+
+# From libssp Makefile
+libssp_la_SOURCES = \
+       ssp.c gets-chk.c memcpy-chk.c memmove-chk.c mempcpy-chk.c \
+       memset-chk.c snprintf-chk.c sprintf-chk.c stpcpy-chk.c \
+       strcat-chk.c strcpy-chk.c strncat-chk.c strncpy-chk.c \
+       vsnprintf-chk.c vsprintf-chk.c
+
+SRCS=  ${libssp_la_SOURCES}
+
+# generated
+SRCS+= ssp.h
+
+ssp.h: ${GCCDIR}/libssp/ssp/ssp.h.in
+       sed -e 's/@ssp_have_usable_vsnprintf@/define/' \
+           < ${.ALLSRC:Nsspdir} > ${.TARGET}
+
+INCS+=         ssp.h
+INCSDIR=       /usr/libdata/gcc${GCCSHORTVER}/ssp
+
+CLEANFILES+= ssp.h
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libssp/config.h b/gnu/lib/gcc50/libssp/config.h
new file mode 100644 (file)
index 0000000..65396f9
--- /dev/null
@@ -0,0 +1,102 @@
+/* config.h.  Generated from config.h.in by configure.  */
+/* config.h.in.  Generated from configure.ac by autoheader.  */
+
+/* Define to 1 if you have the <alloca.h> header file. */
+/* #undef HAVE_ALLOCA_H */
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#define HAVE_DLFCN_H 1
+
+/* Define to 1 if you have the <fcntl.h> header file. */
+#define HAVE_FCNTL_H 1
+
+/* __attribute__((visibility ("hidden"))) supported */
+#define HAVE_HIDDEN_VISIBILITY 1
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#define HAVE_INTTYPES_H 1
+
+/* Define to 1 if you have the <limits.h> header file. */
+#define HAVE_LIMITS_H 1
+
+/* Define to 1 if you have the <malloc.h> header file. */
+#define HAVE_MALLOC_H 1
+
+/* Define to 1 if you have the `memmove' function. */
+#define HAVE_MEMMOVE 1
+
+/* Define to 1 if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define to 1 if you have the `mempcpy' function. */
+#define HAVE_MEMPCPY 1
+
+/* Define to 1 if you have the <paths.h> header file. */
+#define HAVE_PATHS_H 1
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#define HAVE_STDINT_H 1
+
+/* Define to 1 if you have the <stdio.h> header file. */
+#define HAVE_STDIO_H 1
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Define to 1 if you have the <strings.h> header file. */
+#define HAVE_STRINGS_H 1
+
+/* Define to 1 if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define to 1 if you have the `strncat' function. */
+#define HAVE_STRNCAT 1
+
+/* Define to 1 if you have the `strncpy' function. */
+#define HAVE_STRNCPY 1
+
+/* Define to 1 if you have the <syslog.h> header file. */
+#define HAVE_SYSLOG_H 1
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#define HAVE_SYS_TYPES_H 1
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H 1
+
+/* vsnprintf is present and works */
+#define HAVE_USABLE_VSNPRINTF 1
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+   */
+#define LT_OBJDIR ".libs/"
+
+/* Name of package */
+#define PACKAGE "libssp"
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT ""
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "libssp"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "libssp 1.0"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "libssp"
+
+/* Define to the home page for this package. */
+#define PACKAGE_URL ""
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "1.0"
+
+/* Define to 1 if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Version number of package */
+#define VERSION "1.0"
diff --git a/gnu/lib/gcc50/libssp_nonshared/Makefile b/gnu/lib/gcc50/libssp_nonshared/Makefile
new file mode 100644 (file)
index 0000000..a5c8938
--- /dev/null
@@ -0,0 +1,11 @@
+.include "../Makefile.inc"
+.PATH: ${GCCDIR}/libssp
+
+LIB=           ssp_nonshared
+
+SRCS+=         ssp-local.c
+
+CFLAGS+=       -fPIC
+CFLAGS+=       -DPIC
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libstdcxx/Makefile b/gnu/lib/gcc50/libstdcxx/Makefile
new file mode 100644 (file)
index 0000000..f2403b8
--- /dev/null
@@ -0,0 +1,6 @@
+# These directories must be built serially
+
+SUBDIR_ORDERED=        headers components product
+SUBDIR=                headers components product
+
+.include <bsd.subdir.mk>
diff --git a/gnu/lib/gcc50/libstdcxx/components/Makefile b/gnu/lib/gcc50/libstdcxx/components/Makefile
new file mode 100644 (file)
index 0000000..4a761eb
--- /dev/null
@@ -0,0 +1,9 @@
+# These libstdc++ components can be built in parallel
+
+SUBDIR_ORDERED=
+
+SUBDIR=                libconv_1998
+SUBDIR+=       libconv_2011
+SUBDIR+=       libconv_supc
+
+.include <bsd.subdir.mk>
diff --git a/gnu/lib/gcc50/libstdcxx/components/libconv_1998/Makefile b/gnu/lib/gcc50/libstdcxx/components/libconv_1998/Makefile
new file mode 100644 (file)
index 0000000..9042467
--- /dev/null
@@ -0,0 +1,63 @@
+RELUP= /../..
+.include "../../../Makefile.inc"
+SRCDIR=        ${GCCDIR}/libstdc++-v3
+.include "Makefile.src"
+
+LIB=                   c++98convenience
+INTERNALLIB=           yes
+NOPROFILE=             yes
+INSTALL_PIC_ARCHIVE=   yes
+
+.PATH: ${SRCDIR}
+.PATH: ${SRCDIR}/src
+.PATH: ${SRCDIR}/src/c++98
+.PATH: ${SRCDIR}/config/locale/dragonfly
+.PATH: ${SRCDIR}/config/locale/generic
+
+CXXFLAGS+=     -fdiagnostics-show-location=once
+CXXFLAGS+=     -ffunction-sections -fdata-sections
+SHARED_CXXFLAGS=       -D_GLIBCXX_SHARED
+
+SRCS=  ${libc__98convenience_la_SOURCES}
+COW=   collate.x messages.x monetary.x numeric.x
+GENCC= atomicity.cc basic_file.cc c++locale.cc ${COW:.x=_members_cow.cc}
+
+FLAGS_GROUPS=          gnu11 cow concept explicit
+gnu11_FLAGS=           -std=gnu++11 -fno-implicit-templates
+gnu11_FLAGS_FILES=     locale_init.cc localename.cc
+cow_FLAGS=             -D_GLIBCXX_USE_CXX11_ABI=0 -fimplicit-templates
+cow_FLAGS_FILES=       ${cow_string_host_sources}
+concept_FLAGS=         -D_GLIBCXX_CONCEPT_CHECKS -fimplicit-templates
+concept_FLAGS_FILES=   concept-inst.cc
+parallel_FLAGS=                -D_GLIBCXX_PARALLEL -fno-implicit-templates
+parallel_FLAGS_FILES=  parallel_settings.cc
+explicit_FLAGS=                -fno-implicit-templates
+
+REFERENCED_FILES=      ${gnu11_FLAGS_FILES} ${cow_FLAGS_FILES} \
+                       ${concept_FLAGS_FILES} ${parallel_FLAGS_FILES}
+
+.for F in ${SRCS}
+. if ! ${REFERENCED_FILES:M${F}}
+explicit_FLAGS_FILES+= ${F}
+. endif
+.endfor
+
+.for F in ${COW}
+${F:.x=_members_cow.cc}: ${SRCDIR}/config/locale/generic/${F:.x=_members.cc}
+       cp ${.ALLSRC} ${.TARGET}
+.endfor
+
+atomicity.cc: ${SRCDIR}/config/cpu/generic/atomicity_builtins/atomicity.h
+       cp ${.ALLSRC} ${.TARGET}
+
+basic_file.cc: ${SRCDIR}/config/io/basic_file_stdio.cc
+       cp ${.ALLSRC} ${.TARGET}
+
+c++locale.cc: ${SRCDIR}/config/locale/dragonfly/c_locale.cc
+       cp ${.ALLSRC} ${.TARGET}
+
+CLEANFILES+=   ${GENCC}
+
+beforedepend:  ${GENCC}
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libstdcxx/components/libconv_1998/Makefile.src b/gnu/lib/gcc50/libstdcxx/components/libconv_1998/Makefile.src
new file mode 100644 (file)
index 0000000..bda8baf
--- /dev/null
@@ -0,0 +1,68 @@
+# verbatim from libstdc++/src/c++98/Makefile.in
+
+cow_string_host_sources = \
+       collate_members_cow.cc \
+       messages_members_cow.cc \
+       monetary_members_cow.cc \
+       numeric_members_cow.cc
+
+host_sources = \
+       $(cow_string_host_sources) \
+       atomicity.cc \
+       codecvt_members.cc \
+       collate_members.cc \
+       messages_members.cc \
+       monetary_members.cc \
+       numeric_members.cc \
+       time_members.cc
+
+host_sources_extra = \
+       basic_file.cc c++locale.cc \
+       ${inst_sources} ${parallel_sources}
+
+cxx11_abi_sources = \
+       cow-istream-string.cc
+
+inst_sources = \
+       allocator-inst.cc \
+       concept-inst.cc \
+       ext-inst.cc \
+       misc-inst.cc
+
+parallel_sources = parallel_settings.cc
+
+sources = \
+       bitmap_allocator.cc \
+       pool_allocator.cc \
+       mt_allocator.cc \
+       codecvt.cc \
+       complex_io.cc \
+       globals_io.cc \
+       hash_tr1.cc \
+       hashtable_tr1.cc \
+       ios_failure.cc \
+       ios_init.cc \
+       ios_locale.cc \
+       list.cc \
+       list-aux.cc \
+       list-aux-2.cc \
+       list_associated.cc \
+       list_associated-2.cc \
+       locale.cc \
+       locale_init.cc \
+       locale_facets.cc \
+       localename.cc \
+       math_stubs_float.cc \
+       math_stubs_long_double.cc \
+       stdexcept.cc \
+       strstream.cc \
+       tree.cc \
+       istream.cc \
+       istream-string.cc \
+       streambuf.cc \
+       valarray.cc \
+       ${cxx11_abi_sources} \
+       ${host_sources} \
+       ${host_sources_extra}
+
+libc__98convenience_la_SOURCES = $(sources)
diff --git a/gnu/lib/gcc50/libstdcxx/components/libconv_2011/Makefile b/gnu/lib/gcc50/libstdcxx/components/libconv_2011/Makefile
new file mode 100644 (file)
index 0000000..7cf85ab
--- /dev/null
@@ -0,0 +1,47 @@
+RELUP= /../..
+.include "../../../Makefile.inc"
+SRCDIR=        ${GCCDIR}/libstdc++-v3
+.include "Makefile.src"
+
+LIB=                   c++11convenience
+INTERNALLIB=           yes
+NOPROFILE=             yes
+INSTALL_PIC_ARCHIVE=   yes
+
+.PATH: ${SRCDIR}
+.PATH: ${SRCDIR}/src
+.PATH: ${SRCDIR}/src/c++11
+.PATH:  ${SRCDIR}/config/os/bsd/dragonfly
+.PATH: ${SRCDIR}/config/locale/dragonfly
+.PATH: ${SRCDIR}/config/locale/generic
+
+CFLAGS+=       -I${.OBJDIR}
+CXXFLAGS+=     -std=gnu++11 -fdiagnostics-show-location=once
+CXXFLAGS+=     -ffunction-sections -fdata-sections
+SHARED_CXXFLAGS=       -D_GLIBCXX_SHARED
+
+SRCS=  ${libc__11convenience_la_SOURCES}
+INTHD= ${SRCDIR}/config/locale/generic/c++locale_internal.h
+GENHD= cxxabi_forced.h ${INTHD:T}
+
+FLAG_GROUPS=           implicit explicit
+implicit_FLAGS=                -fimplicit-templates
+implicit_FLAGS_FILES=  hashtable_c++0x.cc
+explicit_FLAGS=                -fno-implicit-templates
+explicit_FLAGS_FILES=  ${SRCS:Nhashtable_c++0x.cc}
+
+cxxabi_forced.h: ${SRCDIR}/libsupc++/cxxabi_forced.h
+       cp ${.ALLSRC} ${.TARGET}
+
+${INTHD:T}: ${INTHD}
+       cp ${.ALLSRC} bits/${.TARGET}
+
+copybits:
+       mkdir -p bits
+
+CLEANDIRS=     bits
+CLEANFILES=    ${GENHD}
+
+beforedepend:  copybits ${GENHD}
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libstdcxx/components/libconv_2011/Makefile.src b/gnu/lib/gcc50/libstdcxx/components/libconv_2011/Makefile.src
new file mode 100644 (file)
index 0000000..7b4316e
--- /dev/null
@@ -0,0 +1,64 @@
+# verbatim from libstdc++/src/c++11/Makefile.in
+
+extra_string_inst_sources = \
+       cow-fstream-inst.cc \
+       cow-sstream-inst.cc \
+       cow-string-inst.cc \
+       cow-wstring-inst.cc \
+       cxx11-locale-inst.cc \
+       cxx11-wlocale-inst.cc
+
+inst_sources = \
+       $(extra_string_inst_sources) \
+       ext11-inst.cc \
+       fstream-inst.cc \
+       ios-inst.cc \
+       iostream-inst.cc \
+       istream-inst.cc \
+       locale-inst.cc \
+       ostream-inst.cc \
+       sstream-inst.cc \
+       streambuf-inst.cc \
+       string-inst.cc \
+       wlocale-inst.cc \
+       wstring-inst.cc
+
+cxx11_abi_sources = \
+       cow-locale_init.cc \
+       cow-shim_facets.cc \
+       cxx11-hash_tr1.cc \
+       cxx11-ios_failure.cc \
+       cxx11-shim_facets.cc \
+       cxx11-stdexcept.cc
+
+host_sources = \
+       ctype_configure_char.cc \
+       ctype_members.cc
+
+sources = \
+       chrono.cc \
+       codecvt.cc \
+       condition_variable.cc \
+       cow-stdexcept.cc \
+       ctype.cc \
+       debug.cc \
+       functexcept.cc \
+       functional.cc \
+       futex.cc \
+       future.cc \
+       hash_c++0x.cc \
+       hashtable_c++0x.cc \
+       ios.cc \
+       limits.cc \
+       mutex.cc \
+       placeholders.cc \
+       random.cc \
+       regex.cc  \
+       shared_ptr.cc \
+       snprintf_lite.cc \
+       system_error.cc \
+       thread.cc \
+       ${cxx11_abi_sources} \
+       ${host_sources}
+
+libc__11convenience_la_SOURCES = $(sources) $(inst_sources)
diff --git a/gnu/lib/gcc50/libstdcxx/components/libconv_supc/Makefile b/gnu/lib/gcc50/libstdcxx/components/libconv_supc/Makefile
new file mode 100644 (file)
index 0000000..bcfb1fa
--- /dev/null
@@ -0,0 +1,35 @@
+RELUP= /../..
+.include "../../../Makefile.inc"
+SRCDIR=        ${GCCDIR}/libstdc++-v3
+.include "Makefile.src"
+
+LIB=                   supc++convenience
+INTERNALLIB=           yes
+NOPROFILE=             yes
+INSTALL_PIC_ARCHIVE=   yes
+
+.PATH: ${GCCDIR}/libiberty
+.PATH: ${GCCDIR}/libgcc
+.PATH: ${SRCDIR}/libsupc++
+
+CFLAGS+=       -I${.OBJDIR}
+CFLAGS+=       -I${GCCDIR}/libgcc
+CXXFLAGS+=     -fno-implicit-templates
+CXXFLAGS+=     -fdiagnostics-show-location=once
+CXXFLAGS+=     -ffunction-sections -fdata-sections
+SHARED_CXXFLAGS=       -D_GLIBCXX_SHARED
+
+FLAGS_GROUPS=          gnu11 gnu14 mangle
+gnu11_FLAGS=           -std=gnu++11
+gnu11_FLAGS_FILES=     bad_array_length.cc bad_array_new.cc eh_ptr.cc \
+                       eh_aux_runtime.cc eh_terminate.cc eh_throw.cc \
+                       guard.cc atexit_thread.cc nested_exception.cc \
+                       new_handler.cc new_op.cc new_opnt.cc
+gnu14_FLAGS=           -std=gnu++14 -Wno-sized-deallocation
+gnu14_FLAGS_FILES=     del_ops.cc del_opvs.cc
+mangle_FLAGS=          -DIN_GLIBCPP_V3
+mangle_FLAGS_FILES=    cp-demangle.c
+
+SRCS=  ${libsupc__convenience_la_SOURCES}
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libstdcxx/components/libconv_supc/Makefile.src b/gnu/lib/gcc50/libstdcxx/components/libconv_supc/Makefile.src
new file mode 100644 (file)
index 0000000..5b76f44
--- /dev/null
@@ -0,0 +1,63 @@
+# verbatim from libstdc++/libsupc++/Makefile.in
+
+sources = \
+       array_type_info.cc \
+       atexit_arm.cc \
+       atexit_thread.cc \
+       bad_alloc.cc \
+       bad_array_length.cc \
+       bad_array_new.cc \
+       bad_cast.cc \
+       bad_typeid.cc \
+       class_type_info.cc \
+       del_op.cc \
+       del_ops.cc \
+       del_opnt.cc \
+       del_opv.cc \
+       del_opvs.cc \
+       del_opvnt.cc \
+       dyncast.cc \
+       eh_alloc.cc \
+       eh_arm.cc \
+       eh_aux_runtime.cc \
+       eh_call.cc \
+       eh_catch.cc \
+       eh_exception.cc \
+       eh_globals.cc \
+       eh_personality.cc \
+       eh_ptr.cc \
+       eh_term_handler.cc \
+       eh_terminate.cc \
+       eh_tm.cc \
+       eh_throw.cc \
+       eh_type.cc \
+       eh_unex_handler.cc \
+       enum_type_info.cc \
+       function_type_info.cc \
+       fundamental_type_info.cc \
+       guard.cc \
+       guard_error.cc \
+       hash_bytes.cc \
+       nested_exception.cc \
+       new_handler.cc \
+       new_op.cc \
+       new_opnt.cc \
+       new_opv.cc \
+       new_opvnt.cc \
+       pbase_type_info.cc \
+       pmem_type_info.cc \
+       pointer_type_info.cc \
+       pure.cc \
+       si_class_type_info.cc \
+       tinfo.cc \
+       tinfo2.cc \
+       vec.cc \
+       vmi_class_type_info.cc \
+       vterminate.cc
+
+c_sources = \
+       cp-demangle.c
+
+vtv_sources=   # empty
+
+libsupc__convenience_la_SOURCES = $(sources) $(c_sources) $(vtv_sources)
diff --git a/gnu/lib/gcc50/libstdcxx/headers/Makefile b/gnu/lib/gcc50/libstdcxx/headers/Makefile
new file mode 100644 (file)
index 0000000..fdc23b2
--- /dev/null
@@ -0,0 +1,114 @@
+RELUP= /..
+.include "../../Makefile.inc"
+SRCDIR=        ${GCCDIR}/libstdc++-v3
+.include "Makefile.headers"
+
+.PATH: ${SRCDIR}
+
+# These sections are detailed in Makefile.headers
+# parallel section is empty, skip it
+# make buildincludes, make installincludes before make depend
+glibcxx_srcdir=        ${SRCDIR}
+HSECT= std bits bits_sup backward ext ext_compat tr1 tr2 decimal \
+       c_base c_compatibility debug profile profile_impl host supc \
+       parallel experimental ext_host
+PBSECT=        1 2 3 4 5 6 7
+HD=    ${INCLUDEDIR}/c++/${GCCPOINTVER}
+       
+.for i in ${HSECT}
+INCSGROUPS+=           ${i}_headers
+${i}_headersDIR=       ${HD}/${${i}_builddir}
+.endfor
+
+PATHGROUP=
+.for i in ${PBSECT}
+.  for k in ${pb_headers${i}}
+.    if ${PATHGROUP:M${k:H:T}} == ""
+PATHGROUP+=${k:H:T}
+PATH_${k:H:T}=${k:H:T}
+.    endif
+PBG_${k:H:T}+=${k}
+.  endfor
+.endfor
+
+INCSGROUPS+=           PBG_pb_ds
+PBG_pb_dsDIR=          ${HD}/${pb_builddir}
+
+INCSGROUPS+=           PBG_detail
+PBG_detailDIR=         ${HD}/${pb_builddir}/detail
+
+.for k in ${PATHGROUP:Npb_ds:Ndetail}
+INCSGROUPS+=           PBG_${k}
+PBG_${k}DIR=           ${HD}/${pb_builddir}/detail/${PATH_${k}}
+.endfor
+
+INCSGROUPS+=           host_headers_extra
+host_headers_extraDIR= ${HD}/bits
+host_headers_extraNAME_basic_file_stdio.h=     basic_file.h
+host_headers_extraNAME_c_locale.h=             c++locale.h
+host_headers_extraNAME_c_io_stdio.h+=          c++io.h
+host_headers_extraNAME_new_allocator_base.h=   c++allocator.h
+
+unwind.h: unwind-generic.h
+       cp ${.ALLSRC} ${.TARGET}
+
+unwind-cxx.h: ${SRCDIR}/libsupc++/unwind-cxx.h
+       cp ${.ALLSRC} ${.TARGET}
+
+cxxabi_forced.h: ${SRCDIR}/libsupc++/cxxabi_forced.h
+       cp ${.ALLSRC} ${.TARGET}
+
+gthr.h: ${GCCDIR}/libgcc/gthr.h
+       sed -e '/^#pragma/b' \
+           -e '/^#/s/\([ABCDEFGHIJKLMNOPQRSTUVWXYZ_][ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*\)/_GLIBCXX_\1/g' \
+           -e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \
+           -e 's/_GLIBCXX___MINGW32_GLIBCXX___/__MINGW32__/g' \
+           -e 's,^#include "\(.*\)",#include <bits/\1>,g' \
+       < ${GCCDIR}/libgcc/gthr.h > ${.TARGET}
+
+gthr-single.h: ${GCCDIR}/libgcc/gthr.h
+       sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \
+           -e 's/\(GCC[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*_H\)/_GLIBCXX_\1/g' \
+       < ${GCCDIR}/libgcc/gthr-single.h > ${.TARGET}
+
+gthr-posix.h: ${GCCDIR}/libgcc/gthr-posix.h
+       sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \
+           -e 's/\(GCC[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*_H\)/_GLIBCXX_\1/g' \
+           -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \
+           -e 's/\([ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*USE_WEAK\)/_GLIBCXX_\1/g' \
+           < ${GCCDIR}/libgcc/gthr-posix.h > ${.TARGET}
+
+gthr-default.h: gthr-posix.h
+       cp ${.ALLSRC} ${.TARGET}
+
+ns_version=0
+visibility=1
+externtemplate=1
+dualabi=1
+cxx11abi=1
+ldbl_compat='s,g,g,'
+S1='s,define __GLIBCXX__,define __GLIBCXX__ ${GCCSHORTDATE},'
+S2='s,define _GLIBCXX_INLINE_VERSION, define _GLIBCXX_INLINE_VERSION ${ns_version},'
+S3='s,define _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY, define _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY ${visibility},'
+S4='s,define _GLIBCXX_EXTERN_TEMPLATE$$, define _GLIBCXX_EXTERN_TEMPLATE ${externtemplate},'
+S5='s,define _GLIBCXX_USE_DUAL_ABI, define _GLIBCXX_USE_DUAL_ABI ${dualabi},'
+S6='s,define _GLIBCXX_USE_CXX11_ABI, define _GLIBCXX_USE_CXX11_ABI ${cxx11abi},'
+S7='${ldbl_compat}'
+
+c++config.h: config.h
+       sed -e ${S1} -e ${S2} -e ${S3} -e ${S4} -e ${S5} -e ${S6} -e ${S7} \
+           < ${GCCDIR}/libstdc++-v3/include/bits/c++config > ${.TARGET}
+       sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \
+           -e 's/PACKAGE/_GLIBCXX_PACKAGE/g' \
+           -e 's/VERSION/_GLIBCXX_VERSION/g' \
+           -e 's/WORDS_/_GLIBCXX_WORDS_/g' \
+           -e 's/ICONV_CONST/_GLIBCXX_ICONV_CONST/g' \
+           -e '/[      ]_GLIBCXX_LONG_DOUBLE_COMPAT[   ]/d' \
+           < ${.ALLSRC} >> ${.TARGET}
+       echo "" >> ${.TARGET}
+       echo "#endif // _GLIBCXX_CXX_CONFIG_H" >> ${.TARGET}
+
+CLEANFILES=    gthr.h gthr-default.h gthr-single.h gthr-posix.h \
+               c++config.h 
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libstdcxx/headers/Makefile.headers b/gnu/lib/gcc50/libstdcxx/headers/Makefile.headers
new file mode 100644 (file)
index 0000000..97a702a
--- /dev/null
@@ -0,0 +1,810 @@
+# verbatim from libstdc++/include/Makefile.in
+# Info also from libstdc++/libsupc++/Makefile.in
+
+COMPATIBILITY_H = config/abi/compatibility.h
+CLOCALE_CC = config/locale/dragonfly/c_locale.cc
+CLOCALE_H = config/locale/generic/c_locale.h
+CLOCALE_INTERNAL_H = config/locale/generic/c++locale_internal.h
+CMESSAGES_CC = config/locale/generic/messages_members.cc
+CMESSAGES_H = config/locale/generic/messages_members.h
+CMONEY_CC = config/locale/generic/monetary_members.cc
+CNUMERIC_CC = config/locale/generic/numeric_members.cc
+ATOMIC_WORD_SRCDIR = config/cpu/generic
+ABI_TWEAKS_SRCDIR = config/cpu/generic
+CPU_DEFINES_SRCDIR = config/cpu/generic
+ERROR_CONSTANTS_SRCDIR = config/os/generic
+CPU_OPT_BITS_RANDOM = config/cpu/i486/opt/bits/opt_random.h
+CPU_OPT_EXT_RANDOM = config/cpu/i486/opt/ext/opt_random.h
+
+std_srcdir = ${glibcxx_srcdir}/include/std
+bits_srcdir = ${glibcxx_srcdir}/include/bits
+bits_sup_srcdir = ${glibcxx_srcdir}/libsupc++
+backward_srcdir = ${glibcxx_srcdir}/include/backward
+pb_srcdir = ${glibcxx_srcdir}/include/ext/pb_ds
+ext_srcdir = ${glibcxx_srcdir}/include/ext
+tr1_srcdir = ${glibcxx_srcdir}/include/tr1
+tr2_srcdir = ${glibcxx_srcdir}/include/tr2
+decimal_srcdir = ${glibcxx_srcdir}/include/decimal
+c_base_srcdir = ${glibcxx_srcdir}/include/c_global
+c_compatibility_srcdir = ${glibcxx_srcdir}/include/c_compatibility
+debug_srcdir = ${glibcxx_srcdir}/include/debug
+parallel_srcdir = ${glibcxx_srcdir}/include/parallel
+profile_srcdir = ${glibcxx_srcdir}/include/profile
+profile_impl_srcdir = ${glibcxx_srcdir}/include/profile/impl
+host_srcdir = ${glibcxx_srcdir}/config/os/bsd/dragonfly
+experimental_srcdir = ${glibcxx_srcdir}/include/experimental
+
+std_builddir = .
+bits_builddir = ./bits
+backward_builddir = ./backward
+pb_builddir = ./ext/pb_ds
+ext_builddir = ./ext
+tr1_builddir = ./tr1
+tr2_builddir = ./tr2
+decimal_builddir = ./decimal
+c_base_builddir = .
+c_compatibility_builddir = .
+debug_builddir = ./debug
+parallel_builddir = ./parallel
+profile_builddir = ./profile
+profile_impl_builddir = ./profile/impl
+experimental_builddir = ./experimental
+ext_host_builddir = ./ext
+
+##### HEAD: Not from Makefile.in #####
+bits_sup_builddir = bits
+ext_compat_builddir = ext
+host_builddir = bits
+supc_builddir = .
+host_headers_extra = \
+       ${glibcxx_srcdir}/config/io/basic_file_stdio.h \
+       c++config.h \
+       ${glibcxx_srcdir}/config/allocator/new_allocator_base.h \
+       ${glibcxx_srcdir}/config/io/c_io_stdio.h \
+       ${glibcxx_srcdir}/config/locale/generic/c_locale.h \
+       ${glibcxx_srcdir}/config/locale/generic/messages_members.h \
+       ${glibcxx_srcdir}/config/locale/generic/time_members.h \
+       ${glibcxx_srcdir}/${CPU_OPT_BITS_RANDOM} \
+       gthr.h \
+       gthr-default.h \
+       gthr-posix.h \
+       gthr-single.h
+supc_headers = \
+       ${glibcxx_srcdir}/libsupc++/cxxabi.h \
+       ${glibcxx_srcdir}/libsupc++/exception \
+       ${glibcxx_srcdir}/libsupc++/initializer_list \
+       ${glibcxx_srcdir}/libsupc++/new \
+       ${glibcxx_srcdir}/libsupc++/typeinfo
+##### TAIL: Not from Makefile.in #####
+
+std_headers = \
+       ${std_srcdir}/algorithm \
+       ${std_srcdir}/array \
+       ${std_srcdir}/atomic \
+       ${std_srcdir}/bitset \
+       ${std_srcdir}/chrono \
+       ${std_srcdir}/codecvt \
+       ${std_srcdir}/complex \
+       ${std_srcdir}/condition_variable \
+       ${std_srcdir}/deque \
+       ${std_srcdir}/forward_list \
+       ${std_srcdir}/fstream \
+       ${std_srcdir}/functional \
+       ${std_srcdir}/future \
+       ${std_srcdir}/iomanip \
+       ${std_srcdir}/ios \
+       ${std_srcdir}/iosfwd \
+       ${std_srcdir}/iostream \
+       ${std_srcdir}/istream \
+       ${std_srcdir}/iterator \
+       ${std_srcdir}/limits \
+       ${std_srcdir}/list \
+       ${std_srcdir}/locale \
+       ${std_srcdir}/map \
+       ${std_srcdir}/memory \
+       ${std_srcdir}/mutex \
+       ${std_srcdir}/numeric \
+       ${std_srcdir}/ostream \
+       ${std_srcdir}/queue \
+       ${std_srcdir}/random \
+       ${std_srcdir}/ratio \
+       ${std_srcdir}/regex \
+       ${std_srcdir}/scoped_allocator \
+       ${std_srcdir}/set \
+       ${std_srcdir}/shared_mutex \
+       ${std_srcdir}/sstream \
+       ${std_srcdir}/stack \
+       ${std_srcdir}/stdexcept \
+       ${std_srcdir}/streambuf \
+       ${std_srcdir}/string \
+       ${std_srcdir}/system_error \
+       ${std_srcdir}/thread \
+       ${std_srcdir}/tuple \
+       ${std_srcdir}/typeindex \
+       ${std_srcdir}/type_traits \
+       ${std_srcdir}/unordered_map \
+       ${std_srcdir}/unordered_set \
+       ${std_srcdir}/utility \
+       ${std_srcdir}/valarray \
+       ${std_srcdir}/vector
+
+bits_headers = \
+       ${bits_srcdir}/algorithmfwd.h \
+       ${bits_srcdir}/alloc_traits.h \
+       ${bits_srcdir}/allocated_ptr.h \
+       ${bits_srcdir}/allocator.h \
+       ${bits_srcdir}/atomic_base.h \
+       ${bits_srcdir}/atomic_futex.h \
+       ${bits_srcdir}/basic_ios.h \
+       ${bits_srcdir}/basic_ios.tcc \
+       ${bits_srcdir}/basic_string.h \
+       ${bits_srcdir}/basic_string.tcc \
+       ${bits_srcdir}/boost_concept_check.h \
+       ${bits_srcdir}/c++0x_warning.h \
+       ${bits_srcdir}/c++14_warning.h \
+       ${bits_srcdir}/char_traits.h \
+       ${bits_srcdir}/codecvt.h \
+       ${bits_srcdir}/concept_check.h \
+       ${bits_srcdir}/cpp_type_traits.h \
+       ${bits_srcdir}/deque.tcc \
+       ${bits_srcdir}/enable_special_members.h \
+       ${bits_srcdir}/forward_list.h \
+       ${bits_srcdir}/forward_list.tcc \
+       ${bits_srcdir}/fstream.tcc \
+       ${bits_srcdir}/functexcept.h \
+       ${bits_srcdir}/functional_hash.h \
+       ${bits_srcdir}/gslice.h \
+       ${bits_srcdir}/gslice_array.h \
+       ${bits_srcdir}/hashtable.h \
+       ${bits_srcdir}/hashtable_policy.h \
+       ${bits_srcdir}/indirect_array.h \
+       ${bits_srcdir}/ios_base.h \
+       ${bits_srcdir}/istream.tcc \
+       ${bits_srcdir}/list.tcc \
+       ${bits_srcdir}/locale_classes.h \
+       ${bits_srcdir}/locale_classes.tcc \
+       ${bits_srcdir}/locale_conv.h \
+       ${bits_srcdir}/locale_facets.h \
+       ${bits_srcdir}/locale_facets.tcc \
+       ${bits_srcdir}/locale_facets_nonio.h \
+       ${bits_srcdir}/locale_facets_nonio.tcc \
+       ${bits_srcdir}/localefwd.h \
+       ${bits_srcdir}/mask_array.h \
+       ${bits_srcdir}/memoryfwd.h \
+       ${bits_srcdir}/move.h \
+       ${bits_srcdir}/ostream.tcc \
+       ${bits_srcdir}/ostream_insert.h \
+       ${bits_srcdir}/parse_numbers.h \
+       ${bits_srcdir}/postypes.h \
+       ${bits_srcdir}/predefined_ops.h \
+       ${bits_srcdir}/ptr_traits.h \
+       ${bits_srcdir}/random.h \
+       ${bits_srcdir}/random.tcc \
+       ${bits_srcdir}/range_access.h \
+       ${bits_srcdir}/regex.h \
+       ${bits_srcdir}/regex.tcc \
+       ${bits_srcdir}/regex_constants.h \
+       ${bits_srcdir}/regex_error.h \
+       ${bits_srcdir}/regex_scanner.h \
+       ${bits_srcdir}/regex_scanner.tcc \
+       ${bits_srcdir}/regex_automaton.h \
+       ${bits_srcdir}/regex_automaton.tcc \
+       ${bits_srcdir}/regex_compiler.h \
+       ${bits_srcdir}/regex_compiler.tcc \
+       ${bits_srcdir}/regex_executor.h \
+       ${bits_srcdir}/regex_executor.tcc \
+       ${bits_srcdir}/stream_iterator.h \
+       ${bits_srcdir}/streambuf_iterator.h \
+       ${bits_srcdir}/shared_ptr.h \
+       ${bits_srcdir}/shared_ptr_atomic.h \
+       ${bits_srcdir}/shared_ptr_base.h \
+       ${bits_srcdir}/slice_array.h \
+       ${bits_srcdir}/sstream.tcc \
+       ${bits_srcdir}/stl_algo.h \
+       ${bits_srcdir}/stl_algobase.h \
+       ${bits_srcdir}/stl_bvector.h \
+       ${bits_srcdir}/stl_construct.h \
+       ${bits_srcdir}/stl_deque.h \
+       ${bits_srcdir}/stl_function.h \
+       ${bits_srcdir}/stl_heap.h \
+       ${bits_srcdir}/stl_iterator.h \
+       ${bits_srcdir}/stl_iterator_base_funcs.h \
+       ${bits_srcdir}/stl_iterator_base_types.h \
+       ${bits_srcdir}/stl_list.h \
+       ${bits_srcdir}/stl_map.h \
+       ${bits_srcdir}/stl_multimap.h \
+       ${bits_srcdir}/stl_multiset.h \
+       ${bits_srcdir}/stl_numeric.h \
+       ${bits_srcdir}/stl_pair.h \
+       ${bits_srcdir}/stl_queue.h \
+       ${bits_srcdir}/stl_raw_storage_iter.h \
+       ${bits_srcdir}/stl_relops.h \
+       ${bits_srcdir}/stl_set.h \
+       ${bits_srcdir}/stl_stack.h \
+       ${bits_srcdir}/stl_tempbuf.h \
+       ${bits_srcdir}/stl_tree.h \
+       ${bits_srcdir}/stl_uninitialized.h \
+       ${bits_srcdir}/stl_vector.h \
+       ${bits_srcdir}/streambuf.tcc \
+       ${bits_srcdir}/stringfwd.h \
+       ${bits_srcdir}/unique_ptr.h \
+       ${bits_srcdir}/unordered_map.h \
+       ${bits_srcdir}/unordered_set.h \
+       ${bits_srcdir}/uses_allocator.h \
+       ${bits_srcdir}/valarray_array.h \
+       ${bits_srcdir}/valarray_array.tcc \
+       ${bits_srcdir}/valarray_before.h \
+       ${bits_srcdir}/valarray_after.h \
+       ${bits_srcdir}/vector.tcc
+
+bits_sup_headers = \
+       ${bits_sup_srcdir}/atomic_lockfree_defines.h \
+       ${bits_sup_srcdir}/cxxabi_forced.h \
+       ${bits_sup_srcdir}/exception_defines.h \
+       ${bits_sup_srcdir}/exception_ptr.h \
+       ${bits_sup_srcdir}/hash_bytes.h \
+       ${bits_sup_srcdir}/nested_exception.h
+
+backward_headers = \
+       ${backward_srcdir}/auto_ptr.h \
+       ${backward_srcdir}/backward_warning.h \
+       ${backward_srcdir}/binders.h \
+       ${backward_srcdir}/hash_map \
+       ${backward_srcdir}/hash_set \
+       ${backward_srcdir}/hash_fun.h \
+       ${backward_srcdir}/hashtable.h \
+       ${backward_srcdir}/strstream
+
+pb_headers1 = \
+       ${pb_srcdir}/assoc_container.hpp \
+       ${pb_srcdir}/exception.hpp \
+       ${pb_srcdir}/hash_policy.hpp \
+       ${pb_srcdir}/list_update_policy.hpp \
+       ${pb_srcdir}/priority_queue.hpp \
+       ${pb_srcdir}/tag_and_trait.hpp \
+       ${pb_srcdir}/tree_policy.hpp \
+       ${pb_srcdir}/trie_policy.hpp \
+       ${pb_srcdir}/detail/branch_policy/branch_policy.hpp \
+       ${pb_srcdir}/detail/branch_policy/null_node_metadata.hpp \
+       ${pb_srcdir}/detail/branch_policy/traits.hpp \
+       ${pb_srcdir}/detail/binary_heap_/binary_heap_.hpp \
+       ${pb_srcdir}/detail/binary_heap_/const_iterator.hpp \
+       ${pb_srcdir}/detail/binary_heap_/point_const_iterator.hpp \
+       ${pb_srcdir}/detail/binary_heap_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/binary_heap_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/binary_heap_/entry_cmp.hpp \
+       ${pb_srcdir}/detail/binary_heap_/entry_pred.hpp \
+       ${pb_srcdir}/detail/binary_heap_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/binary_heap_/find_fn_imps.hpp \
+       ${pb_srcdir}/detail/binary_heap_/info_fn_imps.hpp \
+       ${pb_srcdir}/detail/binary_heap_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/binary_heap_/iterators_fn_imps.hpp \
+       ${pb_srcdir}/detail/binary_heap_/policy_access_fn_imps.hpp \
+       ${pb_srcdir}/detail/binary_heap_/resize_policy.hpp \
+       ${pb_srcdir}/detail/binary_heap_/split_join_fn_imps.hpp \
+       ${pb_srcdir}/detail/binary_heap_/trace_fn_imps.hpp \
+       ${pb_srcdir}/detail/binomial_heap_base_/binomial_heap_base_.hpp \
+       ${pb_srcdir}/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/binomial_heap_base_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/binomial_heap_base_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/binomial_heap_base_/find_fn_imps.hpp \
+       ${pb_srcdir}/detail/binomial_heap_base_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/binomial_heap_base_/split_join_fn_imps.hpp \
+       ${pb_srcdir}/detail/binomial_heap_/binomial_heap_.hpp \
+       ${pb_srcdir}/detail/binomial_heap_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/binomial_heap_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/bin_search_tree_.hpp
+
+pb_headers2 = \
+       ${pb_srcdir}/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/find_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/info_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/iterators_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/node_iterators.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/point_iterators.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/policy_access_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/r_erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/rotate_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/split_join_fn_imps.hpp \
+       ${pb_srcdir}/detail/bin_search_tree_/traits.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/cc_ht_map_.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/cmp_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/entry_list_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/find_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/info_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/iterators_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/policy_access_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/resize_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/cc_hash_table_map_/size_fn_imps.hpp
+
+pb_headers3 = \
+       ${pb_srcdir}/detail/cc_hash_table_map_/trace_fn_imps.hpp \
+       ${pb_srcdir}/detail/cond_dealtor.hpp \
+       ${pb_srcdir}/detail/container_base_dispatch.hpp \
+       ${pb_srcdir}/detail/eq_fn/eq_by_less.hpp \
+       ${pb_srcdir}/detail/eq_fn/hash_eq_fn.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/find_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/gp_ht_map_.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/info_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/iterator_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/policy_access_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/resize_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp \
+       ${pb_srcdir}/detail/gp_hash_table_map_/trace_fn_imps.hpp \
+       ${pb_srcdir}/detail/hash_fn/direct_mask_range_hashing_imp.hpp \
+       ${pb_srcdir}/detail/hash_fn/direct_mod_range_hashing_imp.hpp \
+       ${pb_srcdir}/detail/hash_fn/linear_probe_fn_imp.hpp \
+       ${pb_srcdir}/detail/hash_fn/mask_based_range_hashing.hpp \
+       ${pb_srcdir}/detail/hash_fn/mod_based_range_hashing.hpp \
+       ${pb_srcdir}/detail/hash_fn/probe_fn_base.hpp \
+       ${pb_srcdir}/detail/hash_fn/quadratic_probe_fn_imp.hpp \
+       ${pb_srcdir}/detail/hash_fn/ranged_hash_fn.hpp \
+       ${pb_srcdir}/detail/hash_fn/ranged_probe_fn.hpp
+
+pb_headers4 = \
+       ${pb_srcdir}/detail/hash_fn/sample_probe_fn.hpp \
+       ${pb_srcdir}/detail/hash_fn/sample_ranged_hash_fn.hpp \
+       ${pb_srcdir}/detail/hash_fn/sample_ranged_probe_fn.hpp \
+       ${pb_srcdir}/detail/hash_fn/sample_range_hashing.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/const_iterator.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/point_const_iterator.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/info_fn_imps.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/node.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp \
+       ${pb_srcdir}/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp \
+       ${pb_srcdir}/detail/list_update_map_/constructor_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/list_update_map_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/list_update_map_/entry_metadata_base.hpp \
+       ${pb_srcdir}/detail/list_update_map_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/list_update_map_/find_fn_imps.hpp \
+       ${pb_srcdir}/detail/list_update_map_/info_fn_imps.hpp \
+       ${pb_srcdir}/detail/list_update_map_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/list_update_map_/iterators_fn_imps.hpp \
+       ${pb_srcdir}/detail/list_update_map_/lu_map_.hpp \
+       ${pb_srcdir}/detail/list_update_map_/trace_fn_imps.hpp \
+       ${pb_srcdir}/detail/list_update_policy/lu_counter_metadata.hpp \
+       ${pb_srcdir}/detail/list_update_policy/sample_update_policy.hpp \
+       ${pb_srcdir}/detail/debug_map_base.hpp \
+       ${pb_srcdir}/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/ov_tree_map_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/ov_tree_map_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/ov_tree_map_/info_fn_imps.hpp \
+       ${pb_srcdir}/detail/ov_tree_map_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/ov_tree_map_/iterators_fn_imps.hpp \
+       ${pb_srcdir}/detail/ov_tree_map_/node_iterators.hpp \
+       ${pb_srcdir}/detail/ov_tree_map_/ov_tree_map_.hpp
+
+pb_headers5 = \
+       ${pb_srcdir}/detail/ov_tree_map_/policy_access_fn_imps.hpp \
+       ${pb_srcdir}/detail/ov_tree_map_/split_join_fn_imps.hpp \
+       ${pb_srcdir}/detail/ov_tree_map_/traits.hpp \
+       ${pb_srcdir}/detail/pairing_heap_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/pairing_heap_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/pairing_heap_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/pairing_heap_/find_fn_imps.hpp \
+       ${pb_srcdir}/detail/pairing_heap_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/pairing_heap_/pairing_heap_.hpp \
+       ${pb_srcdir}/detail/pairing_heap_/split_join_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/find_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/info_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/insert_join_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/iterators_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/pat_trie_.hpp \
+       ${pb_srcdir}/detail/pat_trie_/pat_trie_base.hpp \
+       ${pb_srcdir}/detail/pat_trie_/policy_access_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/r_erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/rotate_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/split_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/synth_access_traits.hpp \
+       ${pb_srcdir}/detail/pat_trie_/trace_fn_imps.hpp \
+       ${pb_srcdir}/detail/pat_trie_/traits.hpp \
+       ${pb_srcdir}/detail/pat_trie_/update_fn_imps.hpp \
+       ${pb_srcdir}/detail/priority_queue_base_dispatch.hpp \
+       ${pb_srcdir}/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/rb_tree_map_/debug_fn_imps.hpp
+
+pb_headers6 = \
+       ${pb_srcdir}/detail/rb_tree_map_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/rb_tree_map_/find_fn_imps.hpp \
+       ${pb_srcdir}/detail/rb_tree_map_/info_fn_imps.hpp \
+       ${pb_srcdir}/detail/rb_tree_map_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/rb_tree_map_/node.hpp \
+       ${pb_srcdir}/detail/rb_tree_map_/rb_tree_.hpp \
+       ${pb_srcdir}/detail/rb_tree_map_/split_join_fn_imps.hpp \
+       ${pb_srcdir}/detail/rb_tree_map_/traits.hpp \
+       ${pb_srcdir}/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/rc_binomial_heap_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/rc_binomial_heap_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/rc_binomial_heap_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/rc_binomial_heap_/rc_binomial_heap_.hpp \
+       ${pb_srcdir}/detail/rc_binomial_heap_/rc.hpp \
+       ${pb_srcdir}/detail/rc_binomial_heap_/split_join_fn_imps.hpp \
+       ${pb_srcdir}/detail/rc_binomial_heap_/trace_fn_imps.hpp \
+       ${pb_srcdir}/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp \
+       ${pb_srcdir}/detail/resize_policy/hash_exponential_size_policy_imp.hpp \
+       ${pb_srcdir}/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp \
+       ${pb_srcdir}/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp \
+       ${pb_srcdir}/detail/resize_policy/hash_prime_size_policy_imp.hpp \
+       ${pb_srcdir}/detail/resize_policy/hash_standard_resize_policy_imp.hpp \
+       ${pb_srcdir}/detail/resize_policy/sample_resize_policy.hpp \
+       ${pb_srcdir}/detail/resize_policy/sample_resize_trigger.hpp \
+       ${pb_srcdir}/detail/resize_policy/sample_size_policy.hpp \
+       ${pb_srcdir}/detail/splay_tree_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/splay_tree_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/splay_tree_/erase_fn_imps.hpp \
+       ${pb_srcdir}/detail/splay_tree_/find_fn_imps.hpp \
+       ${pb_srcdir}/detail/splay_tree_/info_fn_imps.hpp \
+       ${pb_srcdir}/detail/splay_tree_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/splay_tree_/node.hpp \
+       ${pb_srcdir}/detail/splay_tree_/splay_fn_imps.hpp \
+       ${pb_srcdir}/detail/splay_tree_/splay_tree_.hpp \
+       ${pb_srcdir}/detail/splay_tree_/split_join_fn_imps.hpp \
+       ${pb_srcdir}/detail/splay_tree_/traits.hpp \
+       ${pb_srcdir}/detail/standard_policies.hpp \
+       ${pb_srcdir}/detail/thin_heap_/constructors_destructor_fn_imps.hpp \
+       ${pb_srcdir}/detail/thin_heap_/debug_fn_imps.hpp \
+       ${pb_srcdir}/detail/thin_heap_/erase_fn_imps.hpp
+
+pb_headers7 = \
+       ${pb_srcdir}/detail/thin_heap_/find_fn_imps.hpp \
+       ${pb_srcdir}/detail/thin_heap_/insert_fn_imps.hpp \
+       ${pb_srcdir}/detail/thin_heap_/split_join_fn_imps.hpp \
+       ${pb_srcdir}/detail/thin_heap_/thin_heap_.hpp \
+       ${pb_srcdir}/detail/thin_heap_/trace_fn_imps.hpp \
+       ${pb_srcdir}/detail/tree_policy/node_metadata_selector.hpp \
+       ${pb_srcdir}/detail/tree_policy/order_statistics_imp.hpp \
+       ${pb_srcdir}/detail/tree_policy/sample_tree_node_update.hpp \
+       ${pb_srcdir}/detail/tree_trace_base.hpp \
+       ${pb_srcdir}/detail/trie_policy/node_metadata_selector.hpp \
+       ${pb_srcdir}/detail/trie_policy/order_statistics_imp.hpp \
+       ${pb_srcdir}/detail/trie_policy/prefix_search_node_update_imp.hpp \
+       ${pb_srcdir}/detail/trie_policy/sample_trie_access_traits.hpp \
+       ${pb_srcdir}/detail/trie_policy/sample_trie_node_update.hpp \
+       ${pb_srcdir}/detail/trie_policy/trie_string_access_traits_imp.hpp \
+       ${pb_srcdir}/detail/trie_policy/trie_policy_base.hpp \
+       ${pb_srcdir}/detail/types_traits.hpp \
+       ${pb_srcdir}/detail/type_utils.hpp \
+       ${pb_srcdir}/detail/unordered_iterator/const_iterator.hpp \
+       ${pb_srcdir}/detail/unordered_iterator/point_const_iterator.hpp \
+       ${pb_srcdir}/detail/unordered_iterator/iterator.hpp \
+       ${pb_srcdir}/detail/unordered_iterator/point_iterator.hpp
+
+ext_headers = \
+       ${ext_srcdir}/algorithm \
+       ${ext_srcdir}/aligned_buffer.h \
+       ${ext_srcdir}/alloc_traits.h \
+       ${ext_srcdir}/atomicity.h \
+       ${ext_srcdir}/array_allocator.h \
+       ${ext_srcdir}/bitmap_allocator.h \
+       ${ext_srcdir}/cast.h \
+       ${ext_srcdir}/cmath \
+       ${ext_srcdir}/codecvt_specializations.h \
+       ${ext_srcdir}/concurrence.h \
+       ${ext_srcdir}/debug_allocator.h \
+       ${ext_srcdir}/enc_filebuf.h \
+       ${ext_srcdir}/extptr_allocator.h \
+       ${ext_srcdir}/stdio_filebuf.h \
+       ${ext_srcdir}/stdio_sync_filebuf.h \
+       ${ext_srcdir}/functional \
+       ${ext_srcdir}/iterator \
+       ${ext_srcdir}/malloc_allocator.h \
+       ${ext_srcdir}/memory \
+       ${ext_srcdir}/mt_allocator.h \
+       ${ext_srcdir}/new_allocator.h \
+       ${ext_srcdir}/numeric \
+       ${ext_srcdir}/numeric_traits.h \
+       ${ext_srcdir}/pod_char_traits.h \
+       ${ext_srcdir}/pointer.h \
+       ${ext_srcdir}/pool_allocator.h \
+       ${ext_srcdir}/rb_tree \
+       ${ext_srcdir}/random \
+       ${ext_srcdir}/random.tcc \
+       ${ext_srcdir}/rope \
+       ${ext_srcdir}/ropeimpl.h \
+       ${ext_srcdir}/slist \
+       ${ext_srcdir}/string_conversions.h \
+       ${ext_srcdir}/throw_allocator.h \
+       ${ext_srcdir}/typelist.h \
+       ${ext_srcdir}/type_traits.h \
+       ${ext_srcdir}/rc_string_base.h \
+       ${ext_srcdir}/sso_string_base.h \
+       ${ext_srcdir}/vstring.h \
+       ${ext_srcdir}/vstring.tcc \
+       ${ext_srcdir}/vstring_fwd.h \
+       ${ext_srcdir}/vstring_util.h \
+       ${ext_compat_headers}
+
+ext_compat_headers = \
+       ${backward_srcdir}/hash_set \
+       ${backward_srcdir}/hash_map
+
+ext_host_headers = \
+       ${glibcxx_srcdir}/${CPU_OPT_EXT_RANDOM}
+
+tr1_headers = \
+       ${tr1_srcdir}/array \
+       ${tr1_srcdir}/bessel_function.tcc \
+       ${tr1_srcdir}/beta_function.tcc \
+       ${tr1_srcdir}/ccomplex \
+       ${tr1_srcdir}/cctype \
+       ${tr1_srcdir}/cfenv \
+       ${tr1_srcdir}/cfloat \
+       ${tr1_srcdir}/cinttypes \
+       ${tr1_srcdir}/climits \
+       ${tr1_srcdir}/cmath \
+       ${tr1_srcdir}/complex \
+       ${tr1_srcdir}/complex.h \
+       ${tr1_srcdir}/cstdarg \
+       ${tr1_srcdir}/cstdbool \
+       ${tr1_srcdir}/cstdint \
+       ${tr1_srcdir}/cstdio \
+       ${tr1_srcdir}/cstdlib \
+       ${tr1_srcdir}/ctgmath \
+       ${tr1_srcdir}/ctime \
+       ${tr1_srcdir}/ctype.h \
+       ${tr1_srcdir}/cwchar \
+       ${tr1_srcdir}/cwctype \
+       ${tr1_srcdir}/ell_integral.tcc \
+       ${tr1_srcdir}/exp_integral.tcc \
+       ${tr1_srcdir}/fenv.h \
+       ${tr1_srcdir}/float.h \
+       ${tr1_srcdir}/functional \
+       ${tr1_srcdir}/functional_hash.h \
+       ${tr1_srcdir}/gamma.tcc \
+       ${tr1_srcdir}/hypergeometric.tcc \
+       ${tr1_srcdir}/hashtable.h \
+       ${tr1_srcdir}/hashtable_policy.h \
+       ${tr1_srcdir}/inttypes.h \
+       ${tr1_srcdir}/limits.h \
+       ${tr1_srcdir}/math.h \
+       ${tr1_srcdir}/memory \
+       ${tr1_srcdir}/modified_bessel_func.tcc \
+       ${tr1_srcdir}/poly_hermite.tcc \
+       ${tr1_srcdir}/poly_laguerre.tcc \
+       ${tr1_srcdir}/legendre_function.tcc \
+       ${tr1_srcdir}/random \
+       ${tr1_srcdir}/random.h \
+       ${tr1_srcdir}/random.tcc \
+       ${tr1_srcdir}/regex \
+       ${tr1_srcdir}/riemann_zeta.tcc \
+       ${tr1_srcdir}/shared_ptr.h \
+       ${tr1_srcdir}/special_function_util.h \
+       ${tr1_srcdir}/stdarg.h \
+       ${tr1_srcdir}/stdbool.h \
+       ${tr1_srcdir}/stdint.h \
+       ${tr1_srcdir}/stdio.h \
+       ${tr1_srcdir}/stdlib.h \
+       ${tr1_srcdir}/tgmath.h \
+       ${tr1_srcdir}/tuple \
+       ${tr1_srcdir}/type_traits \
+       ${tr1_srcdir}/unordered_map \
+       ${tr1_srcdir}/unordered_map.h \
+       ${tr1_srcdir}/unordered_set \
+       ${tr1_srcdir}/unordered_set.h \
+       ${tr1_srcdir}/utility \
+       ${tr1_srcdir}/wchar.h \
+       ${tr1_srcdir}/wctype.h
+
+tr2_headers = \
+       ${tr2_srcdir}/bool_set \
+       ${tr2_srcdir}/bool_set.tcc \
+       ${tr2_srcdir}/dynamic_bitset \
+       ${tr2_srcdir}/dynamic_bitset.tcc \
+       ${tr2_srcdir}/ratio \
+       ${tr2_srcdir}/type_traits
+
+decimal_headers = \
+       ${decimal_srcdir}/decimal \
+       ${decimal_srcdir}/decimal.h
+
+c_base_headers = \
+       ${c_base_srcdir}/cassert \
+       ${c_base_srcdir}/ccomplex \
+       ${c_base_srcdir}/cctype \
+       ${c_base_srcdir}/cerrno \
+       ${c_base_srcdir}/cfenv \
+       ${c_base_srcdir}/cfloat \
+       ${c_base_srcdir}/cinttypes \
+       ${c_base_srcdir}/ciso646 \
+       ${c_base_srcdir}/climits \
+       ${c_base_srcdir}/clocale \
+       ${c_base_srcdir}/cmath \
+       ${c_base_srcdir}/csetjmp \
+       ${c_base_srcdir}/csignal \
+       ${c_base_srcdir}/cstdalign \
+       ${c_base_srcdir}/cstdarg \
+       ${c_base_srcdir}/cstdbool \
+       ${c_base_srcdir}/cstddef \
+       ${c_base_srcdir}/cstdint \
+       ${c_base_srcdir}/cstdio \
+       ${c_base_srcdir}/cstdlib \
+       ${c_base_srcdir}/cstring \
+       ${c_base_srcdir}/ctgmath \
+       ${c_base_srcdir}/ctime \
+       ${c_base_srcdir}/cwchar \
+       ${c_base_srcdir}/cwctype
+
+c_compatibility_headers = \
+       ${c_compatibility_srcdir}/complex.h \
+       ${c_compatibility_srcdir}/fenv.h \
+       ${c_compatibility_srcdir}/tgmath.h
+
+debug_headers = \
+       ${debug_srcdir}/array \
+       ${debug_srcdir}/bitset \
+       ${debug_srcdir}/debug.h \
+       ${debug_srcdir}/deque \
+       ${debug_srcdir}/formatter.h \
+       ${debug_srcdir}/forward_list \
+       ${debug_srcdir}/functions.h \
+       ${debug_srcdir}/list \
+       ${debug_srcdir}/map \
+       ${debug_srcdir}/macros.h \
+       ${debug_srcdir}/map.h \
+       ${debug_srcdir}/multimap.h \
+       ${debug_srcdir}/multiset.h \
+       ${debug_srcdir}/safe_base.h \
+       ${debug_srcdir}/safe_container.h \
+       ${debug_srcdir}/safe_iterator.h \
+       ${debug_srcdir}/safe_iterator.tcc \
+       ${debug_srcdir}/safe_local_iterator.h \
+       ${debug_srcdir}/safe_local_iterator.tcc \
+       ${debug_srcdir}/safe_sequence.h \
+       ${debug_srcdir}/safe_sequence.tcc \
+       ${debug_srcdir}/safe_unordered_base.h \
+       ${debug_srcdir}/safe_unordered_container.h \
+       ${debug_srcdir}/safe_unordered_container.tcc \
+       ${debug_srcdir}/set \
+       ${debug_srcdir}/set.h \
+       ${debug_srcdir}/string \
+       ${debug_srcdir}/unordered_map \
+       ${debug_srcdir}/unordered_set \
+       ${debug_srcdir}/vector
+
+parallel_headers = \
+       ${parallel_srcdir}/algo.h \
+       ${parallel_srcdir}/algobase.h \
+       ${parallel_srcdir}/algorithm \
+       ${parallel_srcdir}/algorithmfwd.h \
+       ${parallel_srcdir}/balanced_quicksort.h \
+       ${parallel_srcdir}/base.h \
+       ${parallel_srcdir}/basic_iterator.h \
+       ${parallel_srcdir}/checkers.h \
+       ${parallel_srcdir}/compatibility.h \
+       ${parallel_srcdir}/compiletime_settings.h \
+       ${parallel_srcdir}/equally_split.h \
+       ${parallel_srcdir}/features.h \
+       ${parallel_srcdir}/find.h \
+       ${parallel_srcdir}/find_selectors.h \
+       ${parallel_srcdir}/for_each.h \
+       ${parallel_srcdir}/for_each_selectors.h \
+       ${parallel_srcdir}/iterator.h \
+       ${parallel_srcdir}/list_partition.h \
+       ${parallel_srcdir}/losertree.h \
+       ${parallel_srcdir}/merge.h \
+       ${parallel_srcdir}/multiseq_selection.h \
+       ${parallel_srcdir}/multiway_merge.h \
+       ${parallel_srcdir}/multiway_mergesort.h \
+       ${parallel_srcdir}/numeric \
+       ${parallel_srcdir}/numericfwd.h \
+       ${parallel_srcdir}/omp_loop.h \
+       ${parallel_srcdir}/omp_loop_static.h \
+       ${parallel_srcdir}/par_loop.h \
+       ${parallel_srcdir}/parallel.h \
+       ${parallel_srcdir}/partial_sum.h \
+       ${parallel_srcdir}/partition.h \
+       ${parallel_srcdir}/queue.h \
+       ${parallel_srcdir}/quicksort.h \
+       ${parallel_srcdir}/random_number.h \
+       ${parallel_srcdir}/random_shuffle.h \
+       ${parallel_srcdir}/search.h \
+       ${parallel_srcdir}/set_operations.h \
+       ${parallel_srcdir}/settings.h \
+       ${parallel_srcdir}/sort.h \
+       ${parallel_srcdir}/tags.h \
+       ${parallel_srcdir}/types.h \
+       ${parallel_srcdir}/unique_copy.h \
+       ${parallel_srcdir}/workstealing.h
+
+profile_headers = \
+       ${profile_srcdir}/array \
+       ${profile_srcdir}/base.h \
+       ${profile_srcdir}/unordered_base.h \
+       ${profile_srcdir}/unordered_map \
+       ${profile_srcdir}/unordered_set \
+       ${profile_srcdir}/vector \
+       ${profile_srcdir}/bitset \
+       ${profile_srcdir}/deque \
+       ${profile_srcdir}/forward_list \
+       ${profile_srcdir}/list \
+       ${profile_srcdir}/map \
+       ${profile_srcdir}/map.h \
+       ${profile_srcdir}/multimap.h \
+       ${profile_srcdir}/multiset.h \
+       ${profile_srcdir}/ordered_base.h \
+       ${profile_srcdir}/set \
+       ${profile_srcdir}/set.h \
+       ${profile_srcdir}/iterator_tracker.h
+
+profile_impl_headers = \
+       ${profile_impl_srcdir}/profiler.h \
+       ${profile_impl_srcdir}/profiler_algos.h \
+       ${profile_impl_srcdir}/profiler_container_size.h \
+       ${profile_impl_srcdir}/profiler_hash_func.h \
+       ${profile_impl_srcdir}/profiler_hashtable_size.h \
+       ${profile_impl_srcdir}/profiler_map_to_unordered_map.h \
+       ${profile_impl_srcdir}/profiler_node.h \
+       ${profile_impl_srcdir}/profiler_state.h \
+       ${profile_impl_srcdir}/profiler_trace.h \
+       ${profile_impl_srcdir}/profiler_vector_size.h \
+       ${profile_impl_srcdir}/profiler_vector_to_list.h \
+       ${profile_impl_srcdir}/profiler_list_to_vector.h \
+       ${profile_impl_srcdir}/profiler_list_to_slist.h
+
+host_headers = \
+       ${host_srcdir}/ctype_base.h \
+       ${host_srcdir}/ctype_inline.h \
+       ${host_srcdir}/os_defines.h \
+       ${glibcxx_srcdir}/$(ATOMIC_WORD_SRCDIR)/atomic_word.h \
+       ${glibcxx_srcdir}/$(ABI_TWEAKS_SRCDIR)/cxxabi_tweaks.h \
+       ${glibcxx_srcdir}/$(CPU_DEFINES_SRCDIR)/cpu_defines.h \
+       ${glibcxx_srcdir}/$(ERROR_CONSTANTS_SRCDIR)/error_constants.h \
+       ${glibcxx_srcdir}/include/precompiled/stdc++.h \
+       ${glibcxx_srcdir}/include/precompiled/stdtr1c++.h \
+       ${glibcxx_srcdir}/include/precompiled/extc++.h
+
+experimental_headers = \
+       ${experimental_srcdir}/algorithm \
+       ${experimental_srcdir}/any \
+       ${experimental_srcdir}/chrono \
+       ${experimental_srcdir}/functional \
+       ${experimental_srcdir}/optional \
+       ${experimental_srcdir}/ratio \
+       ${experimental_srcdir}/string_view \
+       ${experimental_srcdir}/system_error \
+       ${experimental_srcdir}/string_view.tcc \
+       ${experimental_srcdir}/tuple \
+       ${experimental_srcdir}/type_traits
diff --git a/gnu/lib/gcc50/libstdcxx/headers/config.h b/gnu/lib/gcc50/libstdcxx/headers/config.h
new file mode 100644 (file)
index 0000000..80c46e7
--- /dev/null
@@ -0,0 +1,1204 @@
+/* config.h.  Generated from config.h.in by configure.  */
+/* config.h.in.  Generated from configure.ac by autoheader.  */
+
+/* Define to 1 if you have the `acosf' function. */
+#define HAVE_ACOSF 1
+
+/* Define to 1 if you have the `acosl' function. */
+#define HAVE_ACOSL 1
+
+/* Define to 1 if you have the `asinf' function. */
+#define HAVE_ASINF 1
+
+/* Define to 1 if you have the `asinl' function. */
+#define HAVE_ASINL 1
+
+/* Define to 1 if the target assembler supports .symver directive. */
+#define HAVE_AS_SYMVER_DIRECTIVE 1
+
+/* Define to 1 if you have the `atan2f' function. */
+#define HAVE_ATAN2F 1
+
+/* Define to 1 if you have the `atan2l' function. */
+#define HAVE_ATAN2L 1
+
+/* Define to 1 if you have the `atanf' function. */
+#define HAVE_ATANF 1
+
+/* Define to 1 if you have the `atanl' function. */
+#define HAVE_ATANL 1
+
+/* Define to 1 if you have the `at_quick_exit' function. */
+#define HAVE_AT_QUICK_EXIT 1
+
+/* Define to 1 if the target assembler supports thread-local storage. */
+/* #undef HAVE_CC_TLS */
+
+/* Define to 1 if you have the `ceilf' function. */
+#define HAVE_CEILF 1
+
+/* Define to 1 if you have the `ceill' function. */
+#define HAVE_CEILL 1
+
+/* Define to 1 if you have the <complex.h> header file. */
+#define HAVE_COMPLEX_H 1
+
+/* Define to 1 if you have the `cosf' function. */
+#define HAVE_COSF 1
+
+/* Define to 1 if you have the `coshf' function. */
+#define HAVE_COSHF 1
+
+/* Define to 1 if you have the `coshl' function. */
+#define HAVE_COSHL 1
+
+/* Define to 1 if you have the `cosl' function. */
+#define HAVE_COSL 1
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#define HAVE_DLFCN_H 1
+
+/* Define if EBADMSG exists. */
+#define HAVE_EBADMSG 1
+
+/* Define if ECANCELED exists. */
+#define HAVE_ECANCELED 1
+
+/* Define if ECHILD exists. */
+#define HAVE_ECHILD 1
+
+/* Define if EIDRM exists. */
+#define HAVE_EIDRM 1
+
+/* Define to 1 if you have the <endian.h> header file. */
+/* #undef HAVE_ENDIAN_H */
+
+/* Define if ENODATA exists. */
+/* #undef HAVE_ENODATA */
+
+/* Define if ENOLINK exists. */
+#define HAVE_ENOLINK 1
+
+/* Define if ENOSPC exists. */
+#define HAVE_ENOSPC 1
+
+/* Define if ENOSR exists. */
+/* #undef HAVE_ENOSR */
+
+/* Define if ENOSTR exists. */
+/* #undef HAVE_ENOSTR */
+
+/* Define if ENOTRECOVERABLE exists. */
+/* #undef HAVE_ENOTRECOVERABLE */
+
+/* Define if ENOTSUP exists. */
+#define HAVE_ENOTSUP 1
+
+/* Define if EOVERFLOW exists. */
+#define HAVE_EOVERFLOW 1
+
+/* Define if EOWNERDEAD exists. */
+/* #undef HAVE_EOWNERDEAD */
+
+/* Define if EPERM exists. */
+#define HAVE_EPERM 1
+
+/* Define if EPROTO exists. */
+#define HAVE_EPROTO 1
+
+/* Define if ETIME exists. */
+/* #undef HAVE_ETIME */
+
+/* Define if ETIMEDOUT exists. */
+#define HAVE_ETIMEDOUT 1
+
+/* Define if ETXTBSY exists. */
+#define HAVE_ETXTBSY 1
+
+/* Define if EWOULDBLOCK exists. */
+#define HAVE_EWOULDBLOCK 1
+
+/* Define to 1 if you have the <execinfo.h> header file. */
+#define HAVE_EXECINFO_H 1
+
+/* Define to 1 if you have the `expf' function. */
+#define HAVE_EXPF 1
+
+/* Define to 1 if you have the `expl' function. */
+#define HAVE_EXPL 1
+
+/* Define to 1 if you have the `fabsf' function. */
+#define HAVE_FABSF 1
+
+/* Define to 1 if you have the `fabsl' function. */
+#define HAVE_FABSL 1
+
+/* Define to 1 if you have the <fenv.h> header file. */
+#define HAVE_FENV_H 1
+
+/* Define to 1 if you have the `finite' function. */
+#define HAVE_FINITE 1
+
+/* Define to 1 if you have the `finitef' function. */
+#define HAVE_FINITEF 1
+
+/* Define to 1 if you have the `finitel' function. */
+/* #undef HAVE_FINITEL */
+
+/* Define to 1 if you have the <float.h> header file. */
+#define HAVE_FLOAT_H 1
+
+/* Define to 1 if you have the `floorf' function. */
+#define HAVE_FLOORF 1
+
+/* Define to 1 if you have the `floorl' function. */
+#define HAVE_FLOORL 1
+
+/* Define to 1 if you have the `fmodf' function. */
+#define HAVE_FMODF 1
+
+/* Define to 1 if you have the `fmodl' function. */
+#define HAVE_FMODL 1
+
+/* Define to 1 if you have the `fpclass' function. */
+/* #undef HAVE_FPCLASS */
+
+/* Define to 1 if you have the <fp.h> header file. */
+/* #undef HAVE_FP_H */
+
+/* Define to 1 if you have the `frexpf' function. */
+#define HAVE_FREXPF 1
+
+/* Define to 1 if you have the `frexpl' function. */
+#define HAVE_FREXPL 1
+
+/* Define if _Unwind_GetIPInfo is available. */
+#define HAVE_GETIPINFO 1
+
+/* Define if gets is available in <stdio.h>. */
+#define HAVE_GETS 1
+
+/* Define to 1 if you have the `hypot' function. */
+#define HAVE_HYPOT 1
+
+/* Define to 1 if you have the `hypotf' function. */
+#define HAVE_HYPOTF 1
+
+/* Define to 1 if you have the `hypotl' function. */
+#define HAVE_HYPOTL 1
+
+/* Define if you have the iconv() function. */
+#define HAVE_ICONV 1
+
+/* Define to 1 if you have the <ieeefp.h> header file. */
+#define HAVE_IEEEFP_H 1
+
+/* Define if int64_t is available in <stdint.h>. */
+#define HAVE_INT64_T 1
+
+/* Define if int64_t is a long. */
+#define HAVE_INT64_T_LONG 1
+
+/* Define if int64_t is a long long. */
+/* #undef HAVE_INT64_T_LONG_LONG */
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#define HAVE_INTTYPES_H 1
+
+/* Define to 1 if you have the `isinf' function. */
+#define HAVE_ISINF 1
+
+/* Define to 1 if you have the `isinff' function. */
+/* #undef HAVE_ISINFF */
+
+/* Define to 1 if you have the `isinfl' function. */
+/* #undef HAVE_ISINFL */
+
+/* Define to 1 if you have the `isnan' function. */
+#define HAVE_ISNAN 1
+
+/* Define to 1 if you have the `isnanf' function. */
+#define HAVE_ISNANF 1
+
+/* Define to 1 if you have the `isnanl' function. */
+/* #undef HAVE_ISNANL */
+
+/* Defined if iswblank exists. */
+#define HAVE_ISWBLANK 1
+
+/* Define if LC_MESSAGES is available in <locale.h>. */
+#define HAVE_LC_MESSAGES 1
+
+/* Define to 1 if you have the `ldexpf' function. */
+#define HAVE_LDEXPF 1
+
+/* Define to 1 if you have the `ldexpl' function. */
+#define HAVE_LDEXPL 1
+
+/* Define to 1 if you have the <libintl.h> header file. */
+/* #undef HAVE_LIBINTL_H */
+
+/* Only used in build directory testsuite_hooks.h. */
+#define HAVE_LIMIT_AS 1
+
+/* Only used in build directory testsuite_hooks.h. */
+#define HAVE_LIMIT_DATA 1
+
+/* Only used in build directory testsuite_hooks.h. */
+#define HAVE_LIMIT_FSIZE 1
+
+/* Only used in build directory testsuite_hooks.h. */
+#define HAVE_LIMIT_RSS 1
+
+/* Only used in build directory testsuite_hooks.h. */
+#define HAVE_LIMIT_VMEM 1
+
+/* Define if futex syscall is available. */
+/* #undef HAVE_LINUX_FUTEX */
+
+/* Define to 1 if you have the <locale.h> header file. */
+#define HAVE_LOCALE_H 1
+
+/* Define to 1 if you have the `log10f' function. */
+#define HAVE_LOG10F 1
+
+/* Define to 1 if you have the `log10l' function. */
+#define HAVE_LOG10L 1
+
+/* Define to 1 if you have the `logf' function. */
+#define HAVE_LOGF 1
+
+/* Define to 1 if you have the `logl' function. */
+#define HAVE_LOGL 1
+
+/* Define to 1 if you have the <machine/endian.h> header file. */
+#define HAVE_MACHINE_ENDIAN_H 1
+
+/* Define to 1 if you have the <machine/param.h> header file. */
+#define HAVE_MACHINE_PARAM_H 1
+
+/* Define if mbstate_t exists in wchar.h. */
+#define HAVE_MBSTATE_T 1
+
+/* Define to 1 if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define to 1 if you have the `modf' function. */
+#define HAVE_MODF 1
+
+/* Define to 1 if you have the `modff' function. */
+#define HAVE_MODFF 1
+
+/* Define to 1 if you have the `modfl' function. */
+#define HAVE_MODFL 1
+
+/* Define to 1 if you have the <nan.h> header file. */
+/* #undef HAVE_NAN_H */
+
+/* Define if poll is available in <poll.h>. */
+#define HAVE_POLL 1
+
+/* Define to 1 if you have the `powf' function. */
+#define HAVE_POWF 1
+
+/* Define to 1 if you have the `powl' function. */
+#define HAVE_POWL 1
+
+/* Define to 1 if you have the `qfpclass' function. */
+/* #undef HAVE_QFPCLASS */
+
+/* Define to 1 if you have the `quick_exit' function. */
+#define HAVE_QUICK_EXIT 1
+
+/* Define to 1 if you have the `setenv' function. */
+#define HAVE_SETENV 1
+
+/* Define to 1 if you have the `sincos' function. */
+/* #undef HAVE_SINCOS */
+
+/* Define to 1 if you have the `sincosf' function. */
+/* #undef HAVE_SINCOSF */
+
+/* Define to 1 if you have the `sincosl' function. */
+/* #undef HAVE_SINCOSL */
+
+/* Define to 1 if you have the `sinf' function. */
+#define HAVE_SINF 1
+
+/* Define to 1 if you have the `sinhf' function. */
+#define HAVE_SINHF 1
+
+/* Define to 1 if you have the `sinhl' function. */
+#define HAVE_SINHL 1
+
+/* Define to 1 if you have the `sinl' function. */
+#define HAVE_SINL 1
+
+/* Defined if sleep exists. */
+#define HAVE_SLEEP 1
+
+/* Define to 1 if you have the `sqrtf' function. */
+#define HAVE_SQRTF 1
+
+/* Define to 1 if you have the `sqrtl' function. */
+#define HAVE_SQRTL 1
+
+/* Define to 1 if you have the <stdalign.h> header file. */
+#define HAVE_STDALIGN_H 1
+
+/* Define to 1 if you have the <stdbool.h> header file. */
+#define HAVE_STDBOOL_H 1
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#define HAVE_STDINT_H 1
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Define if strerror_l is available in <string.h>. */
+/* #undef HAVE_STRERROR_L */
+
+/* Define if strerror_r is available in <string.h>. */
+#define HAVE_STRERROR_R 1
+
+/* Define to 1 if you have the <strings.h> header file. */
+#define HAVE_STRINGS_H 1
+
+/* Define to 1 if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define to 1 if you have the `strtof' function. */
+#define HAVE_STRTOF 1
+
+/* Define to 1 if you have the `strtold' function. */
+#define HAVE_STRTOLD 1
+
+/* Define if strxfrm_l is available in <string.h>. */
+/* #undef HAVE_STRXFRM_L */
+
+/* Define to 1 if the target runtime linker supports binding the same symbol
+   to different versions. */
+#define HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT 1
+
+/* Define to 1 if you have the <sys/filio.h> header file. */
+#define HAVE_SYS_FILIO_H 1
+
+/* Define to 1 if you have the <sys/ioctl.h> header file. */
+#define HAVE_SYS_IOCTL_H 1
+
+/* Define to 1 if you have the <sys/ipc.h> header file. */
+#define HAVE_SYS_IPC_H 1
+
+/* Define to 1 if you have the <sys/isa_defs.h> header file. */
+/* #undef HAVE_SYS_ISA_DEFS_H */
+
+/* Define to 1 if you have the <sys/machine.h> header file. */
+/* #undef HAVE_SYS_MACHINE_H */
+
+/* Define to 1 if you have the <sys/param.h> header file. */
+#define HAVE_SYS_PARAM_H 1
+
+/* Define to 1 if you have the <sys/resource.h> header file. */
+#define HAVE_SYS_RESOURCE_H 1
+
+/* Define to 1 if you have a suitable <sys/sdt.h> header file */
+/* #undef HAVE_SYS_SDT_H */
+
+/* Define to 1 if you have the <sys/sem.h> header file. */
+#define HAVE_SYS_SEM_H 1
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the <sys/sysinfo.h> header file. */
+/* #undef HAVE_SYS_SYSINFO_H */
+
+/* Define to 1 if you have the <sys/time.h> header file. */
+#define HAVE_SYS_TIME_H 1
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#define HAVE_SYS_TYPES_H 1
+
+/* Define to 1 if you have the <sys/uio.h> header file. */
+#define HAVE_SYS_UIO_H 1
+
+/* Define if S_IFREG is available in <sys/stat.h>. */
+/* #undef HAVE_S_IFREG */
+
+/* Define if S_IFREG is available in <sys/stat.h>. */
+#define HAVE_S_ISREG 1
+
+/* Define to 1 if you have the `tanf' function. */
+#define HAVE_TANF 1
+
+/* Define to 1 if you have the `tanhf' function. */
+#define HAVE_TANHF 1
+
+/* Define to 1 if you have the `tanhl' function. */
+#define HAVE_TANHL 1
+
+/* Define to 1 if you have the `tanl' function. */
+#define HAVE_TANL 1
+
+/* Define to 1 if you have the <tgmath.h> header file. */
+#define HAVE_TGMATH_H 1
+
+/* Define to 1 if the target supports thread-local storage. */
+#define HAVE_TLS 1
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H 1
+
+/* Defined if usleep exists. */
+#define HAVE_USLEEP 1
+
+/* Defined if vfwscanf exists. */
+#define HAVE_VFWSCANF 1
+
+/* Defined if vswscanf exists. */
+#define HAVE_VSWSCANF 1
+
+/* Defined if vwscanf exists. */
+#define HAVE_VWSCANF 1
+
+/* Define to 1 if you have the <wchar.h> header file. */
+#define HAVE_WCHAR_H 1
+
+/* Defined if wcstof exists. */
+#define HAVE_WCSTOF 1
+
+/* Define to 1 if you have the <wctype.h> header file. */
+#define HAVE_WCTYPE_H 1
+
+/* Defined if Sleep exists. */
+/* #undef HAVE_WIN32_SLEEP */
+
+/* Define if writev is available in <sys/uio.h>. */
+#define HAVE_WRITEV 1
+
+/* Define to 1 if you have the `_acosf' function. */
+/* #undef HAVE__ACOSF */
+
+/* Define to 1 if you have the `_acosl' function. */
+/* #undef HAVE__ACOSL */
+
+/* Define to 1 if you have the `_asinf' function. */
+/* #undef HAVE__ASINF */
+
+/* Define to 1 if you have the `_asinl' function. */
+/* #undef HAVE__ASINL */
+
+/* Define to 1 if you have the `_atan2f' function. */
+/* #undef HAVE__ATAN2F */
+
+/* Define to 1 if you have the `_atan2l' function. */
+/* #undef HAVE__ATAN2L */
+
+/* Define to 1 if you have the `_atanf' function. */
+/* #undef HAVE__ATANF */
+
+/* Define to 1 if you have the `_atanl' function. */
+/* #undef HAVE__ATANL */
+
+/* Define to 1 if you have the `_ceilf' function. */
+/* #undef HAVE__CEILF */
+
+/* Define to 1 if you have the `_ceill' function. */
+/* #undef HAVE__CEILL */
+
+/* Define to 1 if you have the `_cosf' function. */
+/* #undef HAVE__COSF */
+
+/* Define to 1 if you have the `_coshf' function. */
+/* #undef HAVE__COSHF */
+
+/* Define to 1 if you have the `_coshl' function. */
+/* #undef HAVE__COSHL */
+
+/* Define to 1 if you have the `_cosl' function. */
+/* #undef HAVE__COSL */
+
+/* Define to 1 if you have the `_expf' function. */
+/* #undef HAVE__EXPF */
+
+/* Define to 1 if you have the `_expl' function. */
+/* #undef HAVE__EXPL */
+
+/* Define to 1 if you have the `_fabsf' function. */
+/* #undef HAVE__FABSF */
+
+/* Define to 1 if you have the `_fabsl' function. */
+/* #undef HAVE__FABSL */
+
+/* Define to 1 if you have the `_finite' function. */
+/* #undef HAVE__FINITE */
+
+/* Define to 1 if you have the `_finitef' function. */
+/* #undef HAVE__FINITEF */
+
+/* Define to 1 if you have the `_finitel' function. */
+/* #undef HAVE__FINITEL */
+
+/* Define to 1 if you have the `_floorf' function. */
+/* #undef HAVE__FLOORF */
+
+/* Define to 1 if you have the `_floorl' function. */
+/* #undef HAVE__FLOORL */
+
+/* Define to 1 if you have the `_fmodf' function. */
+/* #undef HAVE__FMODF */
+
+/* Define to 1 if you have the `_fmodl' function. */
+/* #undef HAVE__FMODL */
+
+/* Define to 1 if you have the `_fpclass' function. */
+/* #undef HAVE__FPCLASS */
+
+/* Define to 1 if you have the `_frexpf' function. */
+/* #undef HAVE__FREXPF */
+
+/* Define to 1 if you have the `_frexpl' function. */
+/* #undef HAVE__FREXPL */
+
+/* Define to 1 if you have the `_hypot' function. */
+/* #undef HAVE__HYPOT */
+
+/* Define to 1 if you have the `_hypotf' function. */
+/* #undef HAVE__HYPOTF */
+
+/* Define to 1 if you have the `_hypotl' function. */
+/* #undef HAVE__HYPOTL */
+
+/* Define to 1 if you have the `_isinf' function. */
+/* #undef HAVE__ISINF */
+
+/* Define to 1 if you have the `_isinff' function. */
+/* #undef HAVE__ISINFF */
+
+/* Define to 1 if you have the `_isinfl' function. */
+/* #undef HAVE__ISINFL */
+
+/* Define to 1 if you have the `_isnan' function. */
+/* #undef HAVE__ISNAN */
+
+/* Define to 1 if you have the `_isnanf' function. */
+/* #undef HAVE__ISNANF */
+
+/* Define to 1 if you have the `_isnanl' function. */
+/* #undef HAVE__ISNANL */
+
+/* Define to 1 if you have the `_ldexpf' function. */
+/* #undef HAVE__LDEXPF */
+
+/* Define to 1 if you have the `_ldexpl' function. */
+/* #undef HAVE__LDEXPL */
+
+/* Define to 1 if you have the `_log10f' function. */
+/* #undef HAVE__LOG10F */
+
+/* Define to 1 if you have the `_log10l' function. */
+/* #undef HAVE__LOG10L */
+
+/* Define to 1 if you have the `_logf' function. */
+/* #undef HAVE__LOGF */
+
+/* Define to 1 if you have the `_logl' function. */
+/* #undef HAVE__LOGL */
+
+/* Define to 1 if you have the `_modf' function. */
+/* #undef HAVE__MODF */
+
+/* Define to 1 if you have the `_modff' function. */
+/* #undef HAVE__MODFF */
+
+/* Define to 1 if you have the `_modfl' function. */
+/* #undef HAVE__MODFL */
+
+/* Define to 1 if you have the `_powf' function. */
+/* #undef HAVE__POWF */
+
+/* Define to 1 if you have the `_powl' function. */
+/* #undef HAVE__POWL */
+
+/* Define to 1 if you have the `_qfpclass' function. */
+/* #undef HAVE__QFPCLASS */
+
+/* Define to 1 if you have the `_sincos' function. */
+/* #undef HAVE__SINCOS */
+
+/* Define to 1 if you have the `_sincosf' function. */
+/* #undef HAVE__SINCOSF */
+
+/* Define to 1 if you have the `_sincosl' function. */
+/* #undef HAVE__SINCOSL */
+
+/* Define to 1 if you have the `_sinf' function. */
+/* #undef HAVE__SINF */
+
+/* Define to 1 if you have the `_sinhf' function. */
+/* #undef HAVE__SINHF */
+
+/* Define to 1 if you have the `_sinhl' function. */
+/* #undef HAVE__SINHL */
+
+/* Define to 1 if you have the `_sinl' function. */
+/* #undef HAVE__SINL */
+
+/* Define to 1 if you have the `_sqrtf' function. */
+/* #undef HAVE__SQRTF */
+
+/* Define to 1 if you have the `_sqrtl' function. */
+/* #undef HAVE__SQRTL */
+
+/* Define to 1 if you have the `_tanf' function. */
+/* #undef HAVE__TANF */
+
+/* Define to 1 if you have the `_tanhf' function. */
+/* #undef HAVE__TANHF */
+
+/* Define to 1 if you have the `_tanhl' function. */
+/* #undef HAVE__TANHL */
+
+/* Define to 1 if you have the `_tanl' function. */
+/* #undef HAVE__TANL */
+
+/* Define to 1 if you have the `__cxa_thread_atexit_impl' function. */
+/* #undef HAVE___CXA_THREAD_ATEXIT_IMPL */
+
+/* Define as const if the declaration of iconv() needs const. */
+#define ICONV_CONST const
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+   */
+#define LT_OBJDIR ".libs/"
+
+/* Name of package */
+/* #undef PACKAGE */
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT ""
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "package-unused"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "package-unused version-unused"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "libstdc++"
+
+/* Define to the home page for this package. */
+#define PACKAGE_URL ""
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "version-unused"
+
+/* The size of `char', as computed by sizeof. */
+/* #undef SIZEOF_CHAR */
+
+/* The size of `int', as computed by sizeof. */
+/* #undef SIZEOF_INT */
+
+/* The size of `long', as computed by sizeof. */
+/* #undef SIZEOF_LONG */
+
+/* The size of `short', as computed by sizeof. */
+/* #undef SIZEOF_SHORT */
+
+/* The size of `void *', as computed by sizeof. */
+/* #undef SIZEOF_VOID_P */
+
+/* Define to 1 if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Version number of package */
+/* #undef VERSION */
+
+/* Define if the compiler supports C++11 atomics. */
+#define _GLIBCXX_ATOMIC_BUILTINS 1
+
+/* Define to use concept checking code from the boost libraries. */
+/* #undef _GLIBCXX_CONCEPT_CHECKS */
+
+/* Define to 1 if a fully dynamic basic_string is wanted, 0 to disable,
+   undefined for platform defaults */
+#define _GLIBCXX_FULLY_DYNAMIC_STRING 0
+
+/* Define if gthreads library is available. */
+#define _GLIBCXX_HAS_GTHREADS 1
+
+/* Define to 1 if a full hosted library is built, or 0 if freestanding. */
+#define _GLIBCXX_HOSTED 1
+
+/* Define if compatibility should be provided for -mlong-double-64. */
+/* #undef _GLIBCXX_LONG_DOUBLE_COMPAT */
+
+/* Define if ptrdiff_t is int. */
+/* #undef _GLIBCXX_PTRDIFF_T_IS_INT */
+
+/* Define if using setrlimit to set resource limits during "make check" */
+#define _GLIBCXX_RES_LIMITS 1
+
+/* Define if size_t is unsigned int. */
+/* #undef _GLIBCXX_SIZE_T_IS_UINT */
+
+/* Define if the compiler is configured for setjmp/longjmp exceptions. */
+/* #undef _GLIBCXX_SJLJ_EXCEPTIONS */
+
+/* Define to the value of the EOF integer constant. */
+#define _GLIBCXX_STDIO_EOF -1
+
+/* Define to the value of the SEEK_CUR integer constant. */
+#define _GLIBCXX_STDIO_SEEK_CUR 1
+
+/* Define to the value of the SEEK_END integer constant. */
+#define _GLIBCXX_STDIO_SEEK_END 2
+
+/* Define to use symbol versioning in the shared library. */
+#define _GLIBCXX_SYMVER 1
+
+/* Define to use darwin versioning in the shared library. */
+/* #undef _GLIBCXX_SYMVER_DARWIN */
+
+/* Define to use GNU versioning in the shared library. */
+#define _GLIBCXX_SYMVER_GNU 1
+
+/* Define to use GNU namespace versioning in the shared library. */
+/* #undef _GLIBCXX_SYMVER_GNU_NAMESPACE */
+
+/* Define to use Sun versioning in the shared library. */
+/* #undef _GLIBCXX_SYMVER_SUN */
+
+/* Define if C99 functions or macros from <wchar.h>, <math.h>, <complex.h>,
+   <stdio.h>, and <stdlib.h> can be used or exposed. */
+#define _GLIBCXX_USE_C99 1
+
+/* Define if C99 functions in <complex.h> should be used in <complex>. Using
+   compiler builtins for these functions requires corresponding C99 library
+   functions to be present. */
+#define _GLIBCXX_USE_C99_COMPLEX 1
+
+/* Define if C99 functions in <complex.h> should be used in <tr1/complex>.
+   Using compiler builtins for these functions requires corresponding C99
+   library functions to be present. */
+/* #undef _GLIBCXX_USE_C99_COMPLEX_TR1 */
+
+/* Define if C99 functions in <ctype.h> should be imported in <tr1/cctype> in
+   namespace std::tr1. */
+#define _GLIBCXX_USE_C99_CTYPE_TR1 1
+
+/* Define if C99 functions in <fenv.h> should be imported in <tr1/cfenv> in
+   namespace std::tr1. */
+#define _GLIBCXX_USE_C99_FENV_TR1 1
+
+/* Define if C99 functions in <inttypes.h> should be imported in
+   <tr1/cinttypes> in namespace std::tr1. */
+#define _GLIBCXX_USE_C99_INTTYPES_TR1 1
+
+/* Define if wchar_t C99 functions in <inttypes.h> should be imported in
+   <tr1/cinttypes> in namespace std::tr1. */
+/* #undef _GLIBCXX_USE_C99_INTTYPES_WCHAR_T_TR1 */
+
+/* Define if C99 functions or macros in <math.h> should be imported in <cmath>
+   in namespace std. */
+#define _GLIBCXX_USE_C99_MATH 1
+
+/* Define if C99 functions or macros in <math.h> should be imported in
+   <tr1/cmath> in namespace std::tr1. */
+#define _GLIBCXX_USE_C99_MATH_TR1 1
+
+/* Define if C99 types in <stdint.h> should be imported in <tr1/cstdint> in
+   namespace std::tr1. */
+#define _GLIBCXX_USE_C99_STDINT_TR1 1
+
+/* Defined if clock_gettime syscall has monotonic and realtime clock support.
+   */
+/* #undef _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL */
+
+/* Defined if clock_gettime has monotonic clock support. */
+/* #undef _GLIBCXX_USE_CLOCK_MONOTONIC */
+
+/* Defined if clock_gettime has realtime clock support. */
+/* #undef _GLIBCXX_USE_CLOCK_REALTIME */
+
+/* Define if ISO/IEC TR 24733 decimal floating point types are supported on
+   this host. */
+/* #undef _GLIBCXX_USE_DECIMAL_FLOAT */
+
+/* Define if __float128 is supported on this host. */
+#define _GLIBCXX_USE_FLOAT128 1
+
+/* Defined if gettimeofday is available. */
+#define _GLIBCXX_USE_GETTIMEOFDAY 1
+
+/* Define if get_nprocs is available in <sys/sysinfo.h>. */
+/* #undef _GLIBCXX_USE_GET_NPROCS */
+
+/* Define if __int128 is supported on this host. */
+#define _GLIBCXX_USE_INT128 1
+
+/* Define if LFS support is available. */
+/* #undef _GLIBCXX_USE_LFS */
+
+/* Define if code specialized for long long should be used. */
+#define _GLIBCXX_USE_LONG_LONG 1
+
+/* Defined if nanosleep is available. */
+/* #undef _GLIBCXX_USE_NANOSLEEP */
+
+/* Define if NLS translations are to be used. */
+/* #undef _GLIBCXX_USE_NLS */
+
+/* Define if pthreads_num_processors_np is available in <pthread.h>. */
+/* #undef _GLIBCXX_USE_PTHREADS_NUM_PROCESSORS_NP */
+
+/* Define if /dev/random and /dev/urandom are available for the random_device
+   of TR1 (Chapter 5.1). */
+#define _GLIBCXX_USE_RANDOM_TR1 1
+
+/* Defined if sched_yield is available. */
+/* #undef _GLIBCXX_USE_SCHED_YIELD */
+
+/* Define if _SC_NPROCESSORS_ONLN is available in <unistd.h>. */
+#define _GLIBCXX_USE_SC_NPROCESSORS_ONLN 1
+
+/* Define if _SC_NPROC_ONLN is available in <unistd.h>. */
+/* #undef _GLIBCXX_USE_SC_NPROC_ONLN */
+
+/* Define if sysctl(), CTL_HW and HW_NCPU are available in <sys/sysctl.h>. */
+#define _GLIBCXX_USE_SYSCTL_HW_NCPU 1
+
+/* Define if obsolescent tmpnam is available in <stdio.h>. */
+#define _GLIBCXX_USE_TMPNAM 1
+
+/* Define if code specialized for wchar_t should be used. */
+#define _GLIBCXX_USE_WCHAR_T 1
+
+/* Define to 1 if a verbose library is built, or 0 otherwise. */
+#define _GLIBCXX_VERBOSE 1
+
+/* Defined if as can handle rdrand. */
+#define _GLIBCXX_X86_RDRAND 1
+
+/* Define to 1 if mutex_timedlock is available. */
+#define _GTHREAD_USE_MUTEX_TIMEDLOCK 1
+
+#if defined (HAVE__ACOSF) && ! defined (HAVE_ACOSF)
+# define HAVE_ACOSF 1
+# define acosf _acosf
+#endif
+
+#if defined (HAVE__ACOSL) && ! defined (HAVE_ACOSL)
+# define HAVE_ACOSL 1
+# define acosl _acosl
+#endif
+
+#if defined (HAVE__ASINF) && ! defined (HAVE_ASINF)
+# define HAVE_ASINF 1
+# define asinf _asinf
+#endif
+
+#if defined (HAVE__ASINL) && ! defined (HAVE_ASINL)
+# define HAVE_ASINL 1
+# define asinl _asinl
+#endif
+
+#if defined (HAVE__ATAN2F) && ! defined (HAVE_ATAN2F)
+# define HAVE_ATAN2F 1
+# define atan2f _atan2f
+#endif
+
+#if defined (HAVE__ATAN2L) && ! defined (HAVE_ATAN2L)
+# define HAVE_ATAN2L 1
+# define atan2l _atan2l
+#endif
+
+#if defined (HAVE__ATANF) && ! defined (HAVE_ATANF)
+# define HAVE_ATANF 1
+# define atanf _atanf
+#endif
+
+#if defined (HAVE__ATANL) && ! defined (HAVE_ATANL)
+# define HAVE_ATANL 1
+# define atanl _atanl
+#endif
+
+#if defined (HAVE__CEILF) && ! defined (HAVE_CEILF)
+# define HAVE_CEILF 1
+# define ceilf _ceilf
+#endif
+
+#if defined (HAVE__CEILL) && ! defined (HAVE_CEILL)
+# define HAVE_CEILL 1
+# define ceill _ceill
+#endif
+
+#if defined (HAVE__COSF) && ! defined (HAVE_COSF)
+# define HAVE_COSF 1
+# define cosf _cosf
+#endif
+
+#if defined (HAVE__COSHF) && ! defined (HAVE_COSHF)
+# define HAVE_COSHF 1
+# define coshf _coshf
+#endif
+
+#if defined (HAVE__COSHL) && ! defined (HAVE_COSHL)
+# define HAVE_COSHL 1
+# define coshl _coshl
+#endif
+
+#if defined (HAVE__COSL) && ! defined (HAVE_COSL)
+# define HAVE_COSL 1
+# define cosl _cosl
+#endif
+
+#if defined (HAVE__EXPF) && ! defined (HAVE_EXPF)
+# define HAVE_EXPF 1
+# define expf _expf
+#endif
+
+#if defined (HAVE__EXPL) && ! defined (HAVE_EXPL)
+# define HAVE_EXPL 1
+# define expl _expl
+#endif
+
+#if defined (HAVE__FABSF) && ! defined (HAVE_FABSF)
+# define HAVE_FABSF 1
+# define fabsf _fabsf
+#endif
+
+#if defined (HAVE__FABSL) && ! defined (HAVE_FABSL)
+# define HAVE_FABSL 1
+# define fabsl _fabsl
+#endif
+
+#if defined (HAVE__FINITE) && ! defined (HAVE_FINITE)
+# define HAVE_FINITE 1
+# define finite _finite
+#endif
+
+#if defined (HAVE__FINITEF) && ! defined (HAVE_FINITEF)
+# define HAVE_FINITEF 1
+# define finitef _finitef
+#endif
+
+#if defined (HAVE__FINITEL) && ! defined (HAVE_FINITEL)
+# define HAVE_FINITEL 1
+# define finitel _finitel
+#endif
+
+#if defined (HAVE__FLOORF) && ! defined (HAVE_FLOORF)
+# define HAVE_FLOORF 1
+# define floorf _floorf
+#endif
+
+#if defined (HAVE__FLOORL) && ! defined (HAVE_FLOORL)
+# define HAVE_FLOORL 1
+# define floorl _floorl
+#endif
+
+#if defined (HAVE__FMODF) && ! defined (HAVE_FMODF)
+# define HAVE_FMODF 1
+# define fmodf _fmodf
+#endif
+
+#if defined (HAVE__FMODL) && ! defined (HAVE_FMODL)
+# define HAVE_FMODL 1
+# define fmodl _fmodl
+#endif
+
+#if defined (HAVE__FPCLASS) && ! defined (HAVE_FPCLASS)
+# define HAVE_FPCLASS 1
+# define fpclass _fpclass
+#endif
+
+#if defined (HAVE__FREXPF) && ! defined (HAVE_FREXPF)
+# define HAVE_FREXPF 1
+# define frexpf _frexpf
+#endif
+
+#if defined (HAVE__FREXPL) && ! defined (HAVE_FREXPL)
+# define HAVE_FREXPL 1
+# define frexpl _frexpl
+#endif
+
+#if defined (HAVE__HYPOT) && ! defined (HAVE_HYPOT)
+# define HAVE_HYPOT 1
+# define hypot _hypot
+#endif
+
+#if defined (HAVE__HYPOTF) && ! defined (HAVE_HYPOTF)
+# define HAVE_HYPOTF 1
+# define hypotf _hypotf
+#endif
+
+#if defined (HAVE__HYPOTL) && ! defined (HAVE_HYPOTL)
+# define HAVE_HYPOTL 1
+# define hypotl _hypotl
+#endif
+
+#if defined (HAVE__ISINF) && ! defined (HAVE_ISINF)
+# define HAVE_ISINF 1
+# define isinf _isinf
+#endif
+
+#if defined (HAVE__ISINFF) && ! defined (HAVE_ISINFF)
+# define HAVE_ISINFF 1
+# define isinff _isinff
+#endif
+
+#if defined (HAVE__ISINFL) && ! defined (HAVE_ISINFL)
+# define HAVE_ISINFL 1
+# define isinfl _isinfl
+#endif
+
+#if defined (HAVE__ISNAN) && ! defined (HAVE_ISNAN)
+# define HAVE_ISNAN 1
+# define isnan _isnan
+#endif
+
+#if defined (HAVE__ISNANF) && ! defined (HAVE_ISNANF)
+# define HAVE_ISNANF 1
+# define isnanf _isnanf
+#endif
+
+#if defined (HAVE__ISNANL) && ! defined (HAVE_ISNANL)
+# define HAVE_ISNANL 1
+# define isnanl _isnanl
+#endif
+
+#if defined (HAVE__LDEXPF) && ! defined (HAVE_LDEXPF)
+# define HAVE_LDEXPF 1
+# define ldexpf _ldexpf
+#endif
+
+#if defined (HAVE__LDEXPL) && ! defined (HAVE_LDEXPL)
+# define HAVE_LDEXPL 1
+# define ldexpl _ldexpl
+#endif
+
+#if defined (HAVE__LOG10F) && ! defined (HAVE_LOG10F)
+# define HAVE_LOG10F 1
+# define log10f _log10f
+#endif
+
+#if defined (HAVE__LOG10L) && ! defined (HAVE_LOG10L)
+# define HAVE_LOG10L 1
+# define log10l _log10l
+#endif
+
+#if defined (HAVE__LOGF) && ! defined (HAVE_LOGF)
+# define HAVE_LOGF 1
+# define logf _logf
+#endif
+
+#if defined (HAVE__LOGL) && ! defined (HAVE_LOGL)
+# define HAVE_LOGL 1
+# define logl _logl
+#endif
+
+#if defined (HAVE__MODF) && ! defined (HAVE_MODF)
+# define HAVE_MODF 1
+# define modf _modf
+#endif
+
+#if defined (HAVE__MODFF) && ! defined (HAVE_MODFF)
+# define HAVE_MODFF 1
+# define modff _modff
+#endif
+
+#if defined (HAVE__MODFL) && ! defined (HAVE_MODFL)
+# define HAVE_MODFL 1
+# define modfl _modfl
+#endif
+
+#if defined (HAVE__POWF) && ! defined (HAVE_POWF)
+# define HAVE_POWF 1
+# define powf _powf
+#endif
+
+#if defined (HAVE__POWL) && ! defined (HAVE_POWL)
+# define HAVE_POWL 1
+# define powl _powl
+#endif
+
+#if defined (HAVE__QFPCLASS) && ! defined (HAVE_QFPCLASS)
+# define HAVE_QFPCLASS 1
+# define qfpclass _qfpclass
+#endif
+
+#if defined (HAVE__SINCOS) && ! defined (HAVE_SINCOS)
+# define HAVE_SINCOS 1
+# define sincos _sincos
+#endif
+
+#if defined (HAVE__SINCOSF) && ! defined (HAVE_SINCOSF)
+# define HAVE_SINCOSF 1
+# define sincosf _sincosf
+#endif
+
+#if defined (HAVE__SINCOSL) && ! defined (HAVE_SINCOSL)
+# define HAVE_SINCOSL 1
+# define sincosl _sincosl
+#endif
+
+#if defined (HAVE__SINF) && ! defined (HAVE_SINF)
+# define HAVE_SINF 1
+# define sinf _sinf
+#endif
+
+#if defined (HAVE__SINHF) && ! defined (HAVE_SINHF)
+# define HAVE_SINHF 1
+# define sinhf _sinhf
+#endif
+
+#if defined (HAVE__SINHL) && ! defined (HAVE_SINHL)
+# define HAVE_SINHL 1
+# define sinhl _sinhl
+#endif
+
+#if defined (HAVE__SINL) && ! defined (HAVE_SINL)
+# define HAVE_SINL 1
+# define sinl _sinl
+#endif
+
+#if defined (HAVE__SQRTF) && ! defined (HAVE_SQRTF)
+# define HAVE_SQRTF 1
+# define sqrtf _sqrtf
+#endif
+
+#if defined (HAVE__SQRTL) && ! defined (HAVE_SQRTL)
+# define HAVE_SQRTL 1
+# define sqrtl _sqrtl
+#endif
+
+#if defined (HAVE__STRTOF) && ! defined (HAVE_STRTOF)
+# define HAVE_STRTOF 1
+# define strtof _strtof
+#endif
+
+#if defined (HAVE__STRTOLD) && ! defined (HAVE_STRTOLD)
+# define HAVE_STRTOLD 1
+# define strtold _strtold
+#endif
+
+#if defined (HAVE__TANF) && ! defined (HAVE_TANF)
+# define HAVE_TANF 1
+# define tanf _tanf
+#endif
+
+#if defined (HAVE__TANHF) && ! defined (HAVE_TANHF)
+# define HAVE_TANHF 1
+# define tanhf _tanhf
+#endif
+
+#if defined (HAVE__TANHL) && ! defined (HAVE_TANHL)
+# define HAVE_TANHL 1
+# define tanhl _tanhl
+#endif
+
+#if defined (HAVE__TANL) && ! defined (HAVE_TANL)
+# define HAVE_TANL 1
+# define tanl _tanl
+#endif
diff --git a/gnu/lib/gcc50/libstdcxx/product/Makefile b/gnu/lib/gcc50/libstdcxx/product/Makefile
new file mode 100644 (file)
index 0000000..ddb1f75
--- /dev/null
@@ -0,0 +1,38 @@
+RELUP= /..
+.include "../../Makefile.inc"
+SRCDIR=        ${GCCDIR}/libstdc++-v3
+.include "Makefile.src"
+
+LIB=           stdc++
+SHLIB_MAJOR=   9
+
+.PATH: ${SRCDIR}/src/c++98
+.PATH: ${SRCDIR}/src/c++11
+
+CFLAGS+=       -I${.OBJDIR}
+CXXFLAGS+=     -fno-implicit-templates
+CXXFLAGS+=     -fdiagnostics-show-location=once
+CXXFLAGS+=     -ffunction-sections -fdata-sections
+LDFLAGS+=      -Wl,-z -Wl,relro -Wl,--gc-sections
+VERSION_MAP=   ${.CURDIR}/libstdc++-symbols.ver
+
+FLAGS_GROUPS=          gnu11
+gnu11_FLAGS=           -std=gnu++11
+gnu11_FLAGS_FILES=     ${cxx11_sources}
+
+CONVARCS=      ../components/libconv_supc/libsupc++convenience.a
+CONVARCS+=     ../components/libconv_1998/libc++98convenience.a
+CONVARCS+=     ../components/libconv_2011/libc++11convenience.a
+LDADD=         -Wl,--whole-archive ${CONVARCS:.a=_pic.a} -lm
+LDADD+=                -Wl,--no-whole-archive
+ARADD=         ${CONVARCS} ${LIBM}
+
+SRCS=  ${libstdc___la_SOURCES}
+
+gstdint.h:
+       echo "#include <stdint.h>" > ${.TARGET}
+
+beforedepend:  gstdint.h
+CLEANFILES=    gstdint.h
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/gcc50/libstdcxx/product/Makefile.src b/gnu/lib/gcc50/libstdcxx/product/Makefile.src
new file mode 100644 (file)
index 0000000..8b0c356
--- /dev/null
@@ -0,0 +1,16 @@
+# verbatim from libstdc++/src/Makefile.in
+
+ldbl_compat_sources = 
+cxx98_sources = \
+       compatibility.cc \
+       compatibility-debug_list.cc \
+       compatibility-debug_list-2.cc \
+       ${ldbl_compat_sources} 
+cxx11_sources = \
+       compatibility-c++0x.cc \
+       compatibility-atomic-c++0x.cc \
+       compatibility-thread-c++0x.cc \
+       compatibility-chrono.cc \
+       compatibility-condvar.cc
+
+libstdc___la_SOURCES = $(cxx98_sources) $(cxx11_sources)
diff --git a/gnu/lib/gcc50/libstdcxx/product/libstdc++-symbols.ver b/gnu/lib/gcc50/libstdcxx/product/libstdc++-symbols.ver
new file mode 100644 (file)
index 0000000..3b63c3d
--- /dev/null
@@ -0,0 +1,1426 @@
+GLIBCXX_3.4 {
+  global:
+    extern "C++"
+    {
+      std::[A-Z]*;
+      std::a[a-c]*;
+      std::ad[a-n]*;
+      std::ad[p-z]*;
+      std::a[e-z]*;
+      std::basic_[a-e]*;
+      std::basic_f[a-h]*;
+      std::basic_f[j-r]*;
+      std::basic_f[t-z]*;
+      std::basic_[g-h]*;
+      std::basic_i[a-e]*;
+      std::basic_istr[a-d]*;
+      std::basic_i[t-z]*;
+      std::basic_[j-n]*;
+      std::basic_o[a-e]*;
+      std::basic_o[g-r]*;
+      std::basic_ostr[a-d]*;
+      std::basic_[p-r]*;
+      std::basic_[t-z]*;
+      std::ba[t-z]*;
+      std::b[b-z]*;
+      std::c[a-g]*;
+      std::c[i-n]*;
+      std::co[^n]*;
+      std::c[p-s]*;
+      std::cu[^r]*;
+      std::c[v-z]*;
+      std::d[a-d]*;
+      std::d[f-n]*;
+      std::d[p-z]*;
+      std::e[a-q]*;
+      std::error[^_]*;
+      std::e[s-z]*;
+      std::gslice*;
+      std::h[^a]*;
+      std::i[a-m]*;
+      std::ios_base::[A-Ha-e]*;
+      std::ios_base::failbit;
+      std::ios_base::fixed;
+      std::ios_base::floatfield;
+      std::ios_base::goodbit;
+      std::ios_base::[h-z]*;
+      std::ios_base::_M_grow_words*;
+      std::ios_base::_M_init*;
+      std::ios_base::Init::[A-Za-z]*;
+      std::i[p-r]*;
+      std::istrstream*;
+      std::i[t-z]*;
+      std::[A-Zj-k]*;
+      std::locale::[A-Za-e]*;
+      std::locale::facet::[A-Za-z]*;
+      std::locale::facet::_S_get_c_locale*;
+      std::locale::facet::_S_clone_c_locale*;
+      std::locale::facet::_S_create_c_locale*;
+      std::locale::facet::_S_destroy_c_locale*;
+      std::locale::[A-Zg-h]*;
+      std::locale::id::[A-Za-z]*;
+      std::locale::id::_M_id*;
+      std::locale::[A-Zj-m]*;
+      std::locale::none*;
+      std::locale::numeric*;
+      std::locale::[A-Zo-z]*;
+      std::locale::_[A-Ha-z]*;
+      std::locale::_Impl::[A-Za-z]*;
+      std::locale::_[J-Ra-z]*;
+      std::locale::_S_normalize_category*;
+      std::locale::_[T-Za-z]*;
+      std::logic_error::what*;
+      std::[A-Z]*;
+      std::messages*;
+      std::money*;
+      std::n[^aueo]*;
+      std::nothrow;
+      std::nu[^m]*;
+      std::num[^e]*;
+      std::ostrstream*;
+      std::r[^aeu]*;
+      std::runtime_error::what*;
+      std::set_new_handler*;
+      std::set_terminate*;
+      std::set_unexpected*;
+      std::strstream*;
+      std::strstreambuf*;
+      std::t[a-g]*;
+      std::th[a-h]*;
+      std::th[j-q]*;
+      std::th[s-z]*;
+      std::tr1::h[^a]*;
+      std::t[s-z]*;
+      std::uncaught_exception*;
+      std::unexpected*;
+      std::[A-Zv-z]*;
+      std::_List_node_base::hook*;
+      std::_List_node_base::swap*;
+      std::_List_node_base::unhook*;
+      std::_List_node_base::reverse*;
+      std::_List_node_base::transfer*;
+      std::__timepunct*;
+      std::__num_base::_S_format_float*;
+      std::__num_base::_S_format_int*;
+      std::__num_base::_S_atoms_in;
+      std::__num_base::_S_atoms_out;
+      std::__moneypunct_cache*;
+      std::__numpunct_cache*;
+      std::__timepunct_cache*
+    };
+    _ZNSsC[12][EI][PRjmvyN]*;
+    _ZNSsD*;
+    _ZNSs[0-58-9]a*;
+    _ZNSs5beginEv;
+    _ZNSs[0-58-9][c-e]*;
+    _ZNSs[0-59][g-z]*;
+    _ZNSs6appendE[PRcjmvy]*;
+    _ZNSs6assignE[PRcjmvy]*;
+    _ZNSs6insertE[PRcjmvy]*;
+    _ZNSs6insertEN9__gnu_cxx17__normal_iteratorIPcSsEE[PRcjmvy]*;
+    _ZNSs[67][j-z]*E[PRcjmvy]*;
+    _ZNSs7[a-z]*EES2_[NPRjmy]*;
+    _ZNSs7[a-z]*EES2_S[12]*;
+    _ZNSs12_Alloc_hiderC*;
+    _ZNSs12_M_leak_hardEv;
+    _ZNSs12_S_constructE[jmy]cRKSaIcE;
+    _ZNSs12_S_empty_repEv;
+    _ZNSs13_S_copy_chars*;
+    _ZNSs[0-9][0-9]_M_replace*;
+    _ZNSs4_Rep10_M_destroy*;
+    _ZNSs4_Rep10_M_dispose*;
+    _ZNSs4_Rep10_M_refcopyEv;
+    _ZNSs4_Rep10_M_refdataEv;
+    _ZNSs4_Rep12_S_empty_repEv;
+    _ZNSs4_Rep13_M_set_leakedEv;
+    _ZNSs4_Rep15_M_set_sharableEv;
+    _ZNSs4_Rep7_M_grab*;
+    _ZNSs4_Rep8_M_clone*;
+    _ZNSs4_Rep9_S_createE[jmy][jmy]*;
+    _ZNSs7_M_dataEPc;
+    _ZNSs7_M_leakEv;
+    _ZNSs9_M_mutateE[jmy][jmy][jmy];
+    _ZNSs4_Rep20_S_empty_rep_storageE;
+    _ZNSs4_Rep11_S_max_sizeE;
+    _ZNSs4_Rep11_S_terminalE;
+    _ZNSsaSE[PRc]*;
+    _ZNSsixE*;
+    _ZNSspLE[PRc]*;
+    _ZNKSs[0-3][a-b]*;
+    _ZNKSs[5-9][a-b]*;
+    _ZNKSs[0-9][d-e]*;
+    _ZNKSs[0-9][g-z]*;
+    _ZNKSs[0-9][0-9][a-z]*;
+    _ZNKSs4find*;
+    _ZNKSs[a-z]*;
+    _ZNKSs4_Rep12_M_is_leakedEv;
+    _ZNKSs4_Rep12_M_is_sharedEv;
+    _ZNKSs6_M_repEv;
+    _ZNKSs7_M_dataEv;
+    _ZNKSs7_M_iendEv;
+    _ZNKSs8_M_check*;
+    _ZNKSs8_M_limit*;
+    _ZNKSs9_M_ibeginEv;
+    _ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_E*;
+    _ZNKSs7compare*;
+    _ZNKSs5c_strEv;
+    _ZNKSs8capacityEv;
+    _ZNKSs4copyEPc[jmy][jmy];
+    _ZNSbIwSt11char_traitsIwESaIwEEC[12][EI][PRjmvyN]*;
+    _ZNSbIwSt11char_traitsIwESaIwEED*;
+    _ZNSbIwSt11char_traitsIwESaIwEE[0-58-9]a*;
+    _ZNSbIwSt11char_traitsIwESaIwEE5beginEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE[0-58-9][c-e]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE[0-59][g-z]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE6appendE[PRwjmvy]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE6assignE[PRwjmvy]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE6insertE[PRwjmvy]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE6insertEN9__gnu_cxx17__normal_iteratorIPwS2_EE[PRwjmvy]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE[67][j-z]*E[PRwjmvy]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE7[a-z]*EES6_[NPRjmy]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE7[a-z]*EES6_S[56]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE12_Alloc_hiderC*;
+    _ZNSbIwSt11char_traitsIwESaIwEE12_M_leak_hardEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE12_S_constructE[jmy]wRKS1_;
+    _ZNSbIwSt11char_traitsIwESaIwEE12_S_empty_repEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE13_S_copy_chars*;
+    _ZNSbIwSt11char_traitsIwESaIwEE[0-9][0-9]_M_replace*;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_destroy*;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_dispose*;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refcopyEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refdataEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep12_S_empty_repEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep13_M_set_leakedEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep15_M_set_sharableEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep7_M_grab*;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep8_M_clone*;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep9_S_createE[jmy][jmy]*;
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_dataEPw;
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_leakEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateE[jmy][jmy][jmy];
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep20_S_empty_rep_storageE;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_max_sizeE;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_terminalE;
+    _ZNSbIwSt11char_traitsIwESaIwEEaSE[PRw]*;
+    _ZNSbIwSt11char_traitsIwESaIwEEixE*;
+    _ZNSbIwSt11char_traitsIwESaIwEEpLE[PRw]*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE[0-3][a-b]*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE[5-9][a-b]*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][d-e]*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][g-z]*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE[0-9][0-9][a-z]*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE[a-z]*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE4find*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_leakedEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_sharedEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE6_M_repEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE7_M_dataEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE7_M_iendEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE8_M_check*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE8_M_limit*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE9_M_ibeginEv;
+    _ZStplIwSt11char_traitsIwESaIwEESbIT_T0_T1_E*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE7compare*;
+    _ZNKSbIwSt11char_traitsIwESaIwEE5c_strEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE8capacityEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE4copyEPw[jmy][jmy];
+    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE[CD]*;
+    _ZNKSt15basic_streambufI[cw]St11char_traitsI[cw]EE[0-9]*;
+    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE4set[gp]*;
+    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE4sync*;
+    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE[5-9][a-z][^t]*;
+    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE[0-9][0-9][a-z][^t]*;
+    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EEaSERKS2_;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]E[RS]*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EED[^2]*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][a-r]*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]seek*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]set*;
+    _ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv;
+    _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
+    _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strERKSs;
+    _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strERKSbIwS1_S2_E;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][t-z]*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]_M_[a-o]*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9]_M_[q-z]*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-9][0-9]_M_[a-z]*;
+    _ZNSt19basic_istringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]E[RS]*;
+    _ZNSt19basic_istringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EED*;
+    _ZNSt19basic_istringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EE3str*;
+    _ZNKSt19basic_istringstreamI*;
+    _ZNSt19basic_ostringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]E[RS]*;
+    _ZNSt19basic_ostringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EED*;
+    _ZNSt19basic_ostringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EE3str*;
+    _ZNKSt19basic_ostringstreamI*;
+    _ZNSt18basic_stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]E[RS]*;
+    _ZNSt18basic_stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EED*;
+    _ZNSt18basic_stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EE3str*;
+    _ZNKSt18basic_stringstreamI*;
+    _ZNSdC[12]Ev;
+    _ZNSdC[12]EP*;
+    _ZNSdD*;
+    _ZNSt14basic_iostreamIwSt11char_traitsIwEEC[12]Ev;
+    _ZNSt14basic_iostreamIwSt11char_traitsIwEEC[12]EP*;
+    _ZNSt14basic_iostreamIwSt11char_traitsIwEED*;
+    _ZNSt9basic_iosI[cw]St11char_traitsI[cw]EEC*;
+    _ZNSt9basic_iosI[cw]St11char_traitsI[cw]EED*;
+    _ZNKSt9basic_iosI[cw]St11char_traitsI[cw]EEcvPvEv;
+    _ZNKSt9basic_iosI[cw]St11char_traitsI[cw]EEntEv*;
+    _ZNKSt9basic_iosI[cw]St11char_traitsI[cw]EE[0-9]*;
+    _ZNSt9basic_iosI[cw]St11char_traitsI[cw]EE1[015]*;
+    _ZNSt9basic_iosI[cw]St11char_traitsI[cw]EE3tie*;
+    _ZNSt9basic_iosI[cw]St11char_traitsI[cw]EE4fill*;
+    _ZNSt9basic_iosI[cw]St11char_traitsI[cw]EE4init*;
+    _ZNSt9basic_iosI[cw]St11char_traitsI[cw]EE[578][a-z]*;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EEC[12]Ev;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EED*;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE0*;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE13*;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE15*;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE16*;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE19*;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE2*;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE3*;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE4openEPKc*;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE4sync*;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE[5-9]*;
+    _ZNKSt13basic_filebufI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EEC[12]Ev;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EEC[12]EPKc*;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EED*;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE5closeEv;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE4openEPKc*;
+    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EEC[12]Ev;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EEC[12]EPKc*;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EED*;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE5closeEv;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE4openEPKc*;
+    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EEC[12]Ev;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EEC[12]EPKc*;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EED*;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE5closeEv;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE4openEPKc*;
+    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE5rdbufEv;
+    _ZNSiC[12]Ev;
+    _ZNSiC[12]EP*;
+    _ZNSiD*;
+    _ZNKSi6sentry*;
+    _ZNKSi6gcount*;
+    _ZNSi3get*;
+    _ZNSi4peek*;
+    _ZNSi4read*;
+    _ZNSi4sync*;
+    _ZNSi7getline*;
+    _ZNSi[5-9][j-z]*;
+    _ZNSi6ignoreE[ilx][ilx];
+    _ZNSirsE*[^g];
+    _ZNSt13basic_istreamIwSt11char_traitsIwEEC[12]Ev;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEEC[12]EP*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEED*;
+    _ZNKSt13basic_istreamIwSt11char_traitsIwEE[0-9][a-z]*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE3get*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE4peek*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE4read*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE4sync*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE[5-9][j-z]*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilx][ijlmx];
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE7getline*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEErsE*[^g];
+    _ZSt7getlineI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istreamIT_T0_ES7_RSbI*;
+    _ZSt2wsI[cw]St11char_traitsI[cw]EE*;
+    _ZStrsI[cw]St11char_traitsI[cw]EERSt13basic_istream*;
+    _ZStrsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istreamIT_T0_ES7_RSbI*;
+    _ZStrsISt11char_traitsI[cw]EERSt13basic_istream*;
+    _ZStrsId[cw]St11char_traitsI[cw]EERSt13basic_istream*;
+    _ZStrsIe[cw]St11char_traitsI[cw]EERSt13basic_istream*;
+    _ZStrsIf[cw]St11char_traitsI[cw]EERSt13basic_istream*;
+    _ZNSoC[12]Ev;
+    _ZNSoC[12]EP*;
+    _ZNSoD*;
+    _ZNKSo6sentrycvbEv;
+    _ZNSo8_M_writeEPKc[ilx];
+    _ZNSo3put*;
+    _ZNSo[5-9][a-z]*;
+    _ZNSolsE*[^g];
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEEC[12]Ev;
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEEC[12]EP*;
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEED*;
+    _ZNKSt13basic_ostreamIwSt11char_traitsIwEE[0-9][a-z]*;
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEE3putEw;
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5flushEv;
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5seekpE*;
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5tellpEv;
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEE5writeEPKw*;
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEE6sentry*;
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEE8_M_writeEPKw[ilx];
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEElsE*[^g];
+    _ZSt4end[ls]I[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
+    _ZSt5flushI[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
+    _ZStlsI[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
+    _ZStlsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_ostreamIT_T0_ES7_RKSbI*;
+    _ZStlsISt11char_traitsI[cw]EERSt13basic_ostream*;
+    _ZStlsId[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
+    _ZStlsIe[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
+    _ZStlsIf[cw]St11char_traitsI[cw]EERSt13basic_ostream*;
+    _ZNSt6localeD*;
+    _ZNKSt6locale4nameEv;
+    _ZNSt6locale5facetD*;
+    _ZNSt6locale5_ImplC*;
+    _ZNSt6locale5_ImplD*;
+    _ZNSt8ios_baseD*;
+    _ZNSt8ios_base4InitD*;
+    _ZNSt8ios_base7failureC*;
+    _ZNSt8ios_base7failureD*;
+    _ZNKSt8ios_base7failure4whatEv;
+    _ZSt9has_facetIS*;
+    _ZSt9use_facetIS*;
+    _ZNKSt5ctypeIcE8*;
+    _ZNKSt5ctypeIcE9*;
+    _ZNKSt5ctypeIcE10*;
+    _ZNKSt5ctypeIw*;
+    _ZNSt5ctypeI[cw]*;
+    _ZNSt10ctype_base[56][ac-z]*;
+    _ZNSt12ctype_bynameI[cw]*;
+    _ZNKSt7num_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE[2-9]*;
+    _ZNKSt7num_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE14_M_extract_intI*;
+    _ZNKSt7num_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE16_M_extract_floatI*;
+    _ZNKSt7num_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE[2-9]*;
+    _ZNKSt7num_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE1[234]*;
+    _ZNKSt7num_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE15_M_insert_floatI*;
+    _ZNKSt9money_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE[2-9]*;
+    _ZNKSt9money_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE10_M_extractILb[01]EEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRSs;
+    _ZNKSt9money_putI[cw]St19ostreambuf_iteratorI[cw]St11char_traitsI[cw]EEE[1-8]*;
+    _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb[01]EEES3_S3_RSt8ios_basecRKSs;
+    _ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb[01]EEES3_S3_RSt8ios_basewRKSbIwS2_SaIwEE;
+    _ZNSt8time_get*;
+    _ZNKSt8time_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE1*;
+    _ZNKSt8time_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE8*;
+    _ZNKSt8time_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE21*;
+    _ZNSt15time_get_byname*;
+    _ZNSt8time_put*;
+    _ZNKSt8time_put*;
+    _ZNSt15time_put_byname*;
+    _ZNSt21__numeric_limits_base[5-9]*;
+    _ZNSt21__numeric_limits_base1[0-7][hirt]*;
+    _ZNSt21__numeric_limits_base1[0-7]mi*;
+    _ZNSt21__numeric_limits_base1[0-7]max_e*;
+    _ZNSt14numeric_limitsI[a-m]E[5-9]*;
+    _ZNSt14numeric_limitsI[p-z]E[5-9]*;
+    _ZNSt14numeric_limitsI[a-m]E1[0-7][hirt]*;
+    _ZNSt14numeric_limitsI[p-z]E1[0-7][hirt]*;
+    _ZNSt14numeric_limitsI[a-m]E1[0-7]mi*;
+    _ZNSt14numeric_limitsI[p-z]E1[0-7]mi*;
+    _ZNSt14numeric_limitsI[a-m]E1[0-7]max_e*;
+    _ZNSt14numeric_limitsI[p-z]E1[0-7]max_e*;
+    _ZSt18_Rb_tree_decrementPKSt18_Rb_tree_node_base;
+    _ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base;
+    _ZSt18_Rb_tree_incrementPKSt18_Rb_tree_node_base;
+    _ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base;
+    _ZSt20_Rb_tree_black_countPKSt18_Rb_tree_node_baseS1_;
+    _ZSt20_Rb_tree_rotate_leftPSt18_Rb_tree_node_baseRS0_;
+    _ZSt21_Rb_tree_rotate_rightPSt18_Rb_tree_node_baseRS0_;
+    _ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_;
+    _ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS_;
+    _ZNKSt12__basic_fileIcE7is_openEv;
+    _ZNSt12__basic_fileIcE2fdEv;
+    _ZNSt12__basic_fileIcE4openEPKcSt13_Ios_Openmodei;
+    _ZNSt12__basic_fileIcE4syncEv;
+    _ZNSt12__basic_fileIcE5closeEv;
+    _ZNSt12__basic_fileIcE6xsgetn*;
+    _ZNSt12__basic_fileIcE6xsputn*;
+    _ZNSt12__basic_fileIcE7seekoff*;
+    _ZNSt12__basic_fileIcE8sys_openE*St13_Ios_Openmode;
+    _ZNSt12__basic_fileIcE8xsputn_2*;
+    _ZNSt12__basic_fileIcE9showmanycEv;
+    _ZNSt12__basic_fileIcEC*;
+    _ZNSt12__basic_fileIcED*;
+    _ZSt14__convert_to_vI[^g]*;
+    _ZTVN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
+    _ZN9__gnu_cxx12__atomic_addEPV[il]i;
+    _ZN9__gnu_cxx18__exchange_and_addEPV[il]i;
+    _ZN10__gnu_norm15_List_node_base4hook*;
+    _ZN10__gnu_norm15_List_node_base4swap*;
+    _ZN10__gnu_norm15_List_node_base6unhookEv;
+    _ZN10__gnu_norm15_List_node_base7reverseEv;
+    _ZN10__gnu_norm15_List_node_base8transfer*;
+    _ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv;
+    _ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv;
+    _ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv;
+    _ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_;
+    _ZN11__gnu_debug19_Safe_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb;
+    _ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv;
+    _ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv;
+    _ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_;
+    _ZNK11__gnu_debug16_Error_formatter10_M_message*;
+    _ZNK11__gnu_debug16_Error_formatter10_Parameter*;
+    _ZNK11__gnu_debug16_Error_formatter13_M_print_word*;
+    _ZNK11__gnu_debug16_Error_formatter15_M_print_string*;
+    _ZNK11__gnu_debug16_Error_formatter8_M_error*;
+    _ZSt16__throw_bad_castv;
+    _ZSt17__throw_bad_allocv;
+    _ZSt18__throw_bad_typeidv;
+    _ZSt19__throw_ios_failurePKc;
+    _ZSt19__throw_logic_errorPKc;
+    _ZSt19__throw_range_errorPKc;
+    _ZSt20__throw_domain_errorPKc;
+    _ZSt20__throw_length_errorPKc;
+    _ZSt20__throw_out_of_rangePKc;
+    _ZSt21__throw_bad_exceptionv;
+    _ZSt21__throw_runtime_errorPKc;
+    _ZSt22__throw_overflow_errorPKc;
+    _ZSt23__throw_underflow_errorPKc;
+    _ZSt24__throw_invalid_argumentPKc;
+    _Znw[jmy];
+    _Znw[jmy]RKSt9nothrow_t;
+    _ZdlPv;
+    _ZdlPvRKSt9nothrow_t;
+    _Zna[jmy];
+    _Zna[jmy]RKSt9nothrow_t;
+    _ZdaPv;
+    _ZdaPvRKSt9nothrow_t;
+    _ZTVNSt8ios_base7failureE;
+    _ZTVNSt6locale5facetE;
+    _ZTVS[a-z];
+    _ZTVSt[0-9][A-Za-z]*;
+    _ZTVSt[0-9][0-9][A-Z]*;
+    _ZTVSt[0-9][0-9]a*;
+    _ZTVSt10bad_typeid;
+    _ZTVSt13bad_exception;
+    _ZTVSt1[34]basic*;
+    _ZTVSt15basic_streambufI*;
+    _ZTVSt15basic_stringbufI*;
+    _ZTVSt18basic_stringstreamI*;
+    _ZTVSt19basic_istringstreamI*;
+    _ZTVSt19basic_ostringstreamI*;
+    _ZTVSt[0-9][0-9][c-d]*;
+    _ZTVSt[0-9][0-9][g-k]*;
+    _ZTVSt11logic_error;
+    _ZTVSt12length_error;
+    _ZTVSt[0-9][0-9][m]*;
+    _ZTVSt[0-9][0-9]n[^e]*;
+    _ZTVSt[0-9][0-9][o-q]*;
+    _ZTVSt11range_error;
+    _ZTVSt13runtime_error;
+    _ZTVSt[0-9][0-9][t-z]*;
+    _ZTVSt[0-9][0-9]e[^r]*;
+    _ZTVSt[0-9][0-9]s[^y]*;
+    _ZTVSt11__timepunctI[cw]E;
+    _ZTVSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
+    _ZTVSt21__ctype_abstract_baseI[cw]E;
+    _ZTTS[a-z];
+    _ZTTSt[0-9][A-Za-z]*;
+    _ZTTSt1[0-4]*;
+    _ZTTSt15a*;
+    _ZTTSt15basic_streambufI*;
+    _ZTTSt15basic_stringbufI*;
+    _ZTTSt15[c-z]*;
+    _ZTTSt1[67]*;
+    _ZTTSt18basic_stringstreamI*;
+    _ZTTSt19basic_istringstreamI*;
+    _ZTTSt19basic_ostringstreamI*;
+    _ZTTSt[2-9]*;
+    _ZTIS[a-z];
+    _ZTISt[0-9][A-Za-z]*;
+    _ZTISt[0-9][0-9][A-Z]*;
+    _ZTISt[0-9][0-9]a*;
+    _ZTISt10bad_typeid;
+    _ZTISt13bad_exception;
+    _ZTISt1[34]basic*;
+    _ZTISt15basic_streambufI*;
+    _ZTISt15basic_stringbufI*;
+    _ZTISt18basic_stringstreamI*;
+    _ZTISt19basic_istringstreamI*;
+    _ZTISt19basic_ostringstreamI*;
+    _ZTISt[0-9][0-9][c-d]*;
+    _ZTISt[0-9][0-9][g-k]*;
+    _ZTISt11logic_error;
+    _ZTISt12length_error;
+    _ZTISt[0-9][0-9][m]*;
+    _ZTISt[0-9][0-9]n[^e]*;
+    _ZTISt[0-9][0-9][o-q]*;
+    _ZTISt11range_error;
+    _ZTISt13runtime_error;
+    _ZTISt[0-9][0-9][t-z]*;
+    _ZTISt[0-9][0-9]e[^r]*;
+    _ZTISt[0-9][0-9]s[^y]*;
+    _ZTISt11__timepunctI[cw]E;
+    _ZTISt10__num_base;
+    _ZTISt21__ctype_abstract_baseI[cw]E;
+    _ZTISt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
+    _ZTINSt8ios_base7failureE;
+    _ZTINSt6locale5facetE;
+    _ZTIN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
+    _ZTIN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
+    _ZTSNSt8ios_base7failureE;
+    _ZTSNSt6locale5facetE;
+    _ZTSS[a-z];
+    _ZTSSt[0-9][A-Za-z]*;
+    _ZTSSt[0-9][0-9][A-Z]*;
+    _ZTSSt[0-9][0-9]a*;
+    _ZTSSt10bad_typeid;
+    _ZTSSt13bad_exception;
+    _ZTSSt1[34]basic*;
+    _ZTSSt15basic_stringbufI*;
+    _ZTSSt15basic_streambufI*;
+    _ZTSSt18basic_stringstreamI*;
+    _ZTSSt19basic_istringstreamI*;
+    _ZTSSt19basic_ostringstreamI*;
+    _ZTSSt[0-9][0-9][c-d]*;
+    _ZTSSt[0-9][0-9][g-k]*;
+    _ZTSSt11logic_error;
+    _ZTSSt12length_error;
+    _ZTSSt[0-9][0-9][m]*;
+    _ZTSSt[0-9][0-9]n[^e]*;
+    _ZTSSt[0-9][0-9][o-q]*;
+    _ZTSSt11range_error;
+    _ZTSSt13runtime_error;
+    _ZTSSt[0-9][0-9][t-z]*;
+    _ZTSSt[0-9][0-9]e[^r]*;
+    _ZTSSt[0-9][0-9]s[^y]*;
+    _ZTSSt11__timepunctI[cw]E;
+    _ZTSSt10__num_base;
+    _ZTSSt21__ctype_abstract_baseI[cw]E;
+    _ZTSSt23__codecvt_abstract_baseI[cw]c11__mbstate_tE;
+    _ZTSN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEE;
+    _ZTSN9__gnu_cxx13stdio_filebufI[cw]St11char_traitsI[cw]EEE;
+    _ZNSt9bad_allocD*;
+    _ZNSt8bad_castD*;
+    _ZNSt10bad_typeidD*;
+    _ZNSt13bad_exceptionD*;
+    _ZGVNSt[2-6]*;
+    _ZGVNSt7collateI[cw]*;
+    _ZGVNSt7num_getI[cw]*;
+    _ZGVNSt7num_putI[cw]*;
+    _ZGVNSt8messagesI[cw]*;
+    _ZGVNSt8numpunctI[cw]*;
+    _ZGVNSt8time_getI[cw]*;
+    _ZGVNSt8time_putI[cw]*;
+    _ZGVNSt9money_getI[cw]*;
+    _ZGVNSt9money_putI[cw]*;
+    _ZGVNSt1[^07]*;
+    _ZGVNSt10moneypunctI[cw]Lb[01]*;
+    _ZNSt11logic_errorC[12]ERKSs;
+    _ZNSt13runtime_errorC[12]ERKSs;
+    _ZNSt11range_errorC[12]ERKSs;
+    _ZNSt12domain_errorC[12]ERKSs;
+    _ZNSt12length_errorC[12]ERKSs;
+    _ZNSt12out_of_rangeC[12]ERKSs;
+    _ZNSt14overflow_errorC[12]ERKSs;
+    _ZNSt15underflow_errorC[12]ERKSs;
+    _ZNSt16invalid_argumentC[12]ERKSs;
+    _ZNSt11logic_errorD[012]Ev;
+    _ZNSt13runtime_errorD[012]Ev;
+    _ZNSt11range_errorD[01]Ev;
+    _ZNSt12domain_errorD[01]Ev;
+    _ZNSt12length_errorD[01]Ev;
+    _ZNSt12out_of_rangeD[01]Ev;
+    _ZNSt14overflow_errorD[01]Ev;
+    _ZNSt15underflow_errorD[01]Ev;
+    _ZNSt16invalid_argumentD[01]Ev;
+    _ZThn8_NS[dio]*;
+    _ZThn8_NSt1[0-9]a*;
+    _ZThn8_NSt1[34]basic*;
+    _ZThn8_NSt18basic_stringstreamI*;
+    _ZThn8_NSt19basic_[io]stringstreamI*;
+    _ZThn8_NSt1[0-9][c-z]*;
+    _ZThn8_NSt[2-9][a-z0-9]*;
+    _ZThn16_NS[dio]*;
+    _ZThn16_NSt1[0-9]a*;
+    _ZThn16_NSt1[34]basic*;
+    _ZThn16_NSt18basic_stringstreamI*;
+    _ZThn16_NSt19basic_[io]stringstreamI*;
+    _ZThn16_NSt1[0-9][c-z]*;
+    _ZThn16_NSt[2-9][a-z0-9]*;
+    _ZTv0_n12_NS[dio]*;
+    _ZTv0_n12_NSt1[0-9]a*;
+    _ZTv0_n12_NSt1[34]basic*;
+    _ZTv0_n12_NSt15basic_streambufI*;
+    _ZTv0_n12_NSt15basic_stringbufI*;
+    _ZTv0_n12_NSt18basic_stringstreamI*;
+    _ZTv0_n12_NSt19basic_[io]stringstreamI*;
+    _ZTv0_n12_NSt1[0-9][c-z]*;
+    _ZTv0_n12_NSt[2-9][a-z0-9]*;
+    _ZTv0_n24_NS[dio]*;
+    _ZTv0_n24_NSt1[0-9]a*;
+    _ZTv0_n24_NSt1[34]basic*;
+    _ZTv0_n24_NSt15basic_streambufI*;
+    _ZTv0_n24_NSt15basic_stringbufI*;
+    _ZTv0_n24_NSt18basic_stringstreamI*;
+    _ZTv0_n24_NSt19basic_[io]stringstreamI*;
+    _ZTv0_n24_NSt1[0-9][c-z]*;
+    _ZTv0_n24_NSt[2-9][a-z0-9]*;
+    sinf;
+    sinl;
+    sinhf;
+    sinhl;
+    cosf;
+    cosl;
+    coshf;
+    coshl;
+    tanf;
+    tanl;
+    tanhf;
+    tanhl;
+    atan2f;
+    atan2l;
+    expf;
+    expl;
+    hypotf;
+    hypotl;
+    hypot;
+    logf;
+    logl;
+    log10f;
+    log10l;
+    powf;
+    powl;
+    sqrtf;
+    sqrtl;
+    copysignf;
+    _ZNKSs11_M_disjunctEPKc;
+    _ZNKSs15_M_check_lengthE[jmy][jmy]PKc;
+    _ZNSs4_Rep26_M_set_length_and_sharableE*;
+    _ZNSs7_M_copyEPcPKc[jmy];
+    _ZNSs7_M_moveEPcPKc[jmy];
+    _ZNSs9_M_assignEPc[jmy]c;
+    _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw;
+    _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthE[jmy][jmy]PKc;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableE*;
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKw[jmy];
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKw[jmy];
+    _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPw[jmy]w;
+    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNSi6ignoreE[ilvx];
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilvx];
+    _ZNSt11char_traitsI[cw]E2eqERK[cw]S2_;
+    _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv;
+    _ZNSt6locale5_Impl16_M_install_facetEPKNS_2idEPKNS_5facetE;
+    _ZNSt6locale5_Impl16_M_replace_facetEPKS0_PKNS_2idE;
+    _ZNSt6locale5_Impl19_M_replace_categoryEPKS0_PKPKNS_2idE;
+    _ZNSt6locale5_Impl21_M_replace_categoriesEPKS0_i;
+  local:
+    *;
+};
+GLIBCXX_3.4.1 {
+    _ZNSt12__basic_fileIcE4fileEv;
+} GLIBCXX_3.4;
+GLIBCXX_3.4.2 {
+    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE4fileEv;
+    _ZN9__gnu_cxx17__pool_alloc_base9_M_refillE[jmy];
+    _ZN9__gnu_cxx17__pool_alloc_base16_M_get_free_listE[jmy];
+    _ZN9__gnu_cxx17__pool_alloc_base12_M_get_mutexEv;
+} GLIBCXX_3.4.1;
+GLIBCXX_3.4.3 {
+    acosf;
+    acosl;
+    asinf;
+    asinl;
+    atanf;
+    atanl;
+    ceilf;
+    ceill;
+    floorf;
+    floorl;
+    fmodf;
+    fmodl;
+    frexpf;
+    frexpl;
+    ldexpf;
+    ldexpl;
+    modff;
+    modfl;
+} GLIBCXX_3.4.2;
+GLIBCXX_3.4.4 {
+    _ZN9__gnu_cxx6__poolILb0EE13_M_initializeEv;
+    _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEPFvPvE;
+    _ZN9__gnu_cxx6__poolILb1EE21_M_destroy_thread_keyEPv;
+    _ZN9__gnu_cxx6__poolILb1EE16_M_get_thread_idEv;
+    _ZN9__gnu_cxx6__poolILb[01]EE16_M_reserve_blockE[jmy][jmy];
+    _ZN9__gnu_cxx6__poolILb[01]EE16_M_reclaim_blockEPc[jmy];
+    _ZN9__gnu_cxx6__poolILb[01]EE10_M_destroyEv;
+    _ZN9__gnu_cxx9free_list6_M_getE*;
+    _ZN9__gnu_cxx9free_list8_M_clearEv;
+} GLIBCXX_3.4.3;
+GLIBCXX_3.4.5 {
+    _ZNKSs11_M_disjunctEPKc;
+    _ZNKSs15_M_check_lengthE[jmy][jmy]PKc;
+    _ZNSs4_Rep26_M_set_length_and_sharableE*;
+    _ZNSs7_M_copyEPcPKc[jmy];
+    _ZNSs7_M_moveEPcPKc[jmy];
+    _ZNSs9_M_assignEPc[jmy]c;
+    _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw;
+    _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthE[jmy][jmy]PKc;
+    _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableE*;
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKw[jmy];
+    _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKw[jmy];
+    _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPw[jmy]w;
+    _ZNKSt13basic_fstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNKSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNKSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE7is_openEv;
+    _ZNSi6ignoreE[ilvx];
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[ilvx];
+    _ZNSt11char_traitsI[cw]E2eqERK[cw]S2_;
+    _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv;
+} GLIBCXX_3.4.4;
+GLIBCXX_3.4.6 {
+    _ZSt17__copy_streambufsI[cw]St11char_traitsI[cw]EE[ix]PSt15basic_streambuf*;
+    _ZNSt8ios_base17_M_call_callbacksENS_5eventE;
+    _ZNSt8ios_base20_M_dispose_callbacksEv;
+    _ZNSt6locale5facet13_S_get_c_nameEv;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE9showmanycEv;
+    _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
+    _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEv;
+} GLIBCXX_3.4.5;
+GLIBCXX_3.4.7 {
+    _ZNSt6locale5_Impl16_M_install_cacheEPKNS_5facetE[jmy];
+} GLIBCXX_3.4.6;
+GLIBCXX_3.4.8 {
+    _ZSt17__copy_streambufsI[cw]St11char_traitsI[cw]EElPSt15basic_streambuf*;
+} GLIBCXX_3.4.7;
+GLIBCXX_3.4.9 {
+    _ZNSt6__norm15_List_node_base4hook*;
+    _ZNSt6__norm15_List_node_base4swap*;
+    _ZNSt6__norm15_List_node_base6unhookEv;
+    _ZNSt6__norm15_List_node_base7reverseEv;
+    _ZNSt6__norm15_List_node_base8transfer*;
+    _ZNSo9_M_insertI[^g]*;
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertI[^g]*;
+    _ZNSi10_M_extractI[^g]*;
+    _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractI[^g]*;
+    _ZSt21__copy_streambufs_eofI[cw]St11char_traitsI[cw]EE[ilx]PSt15basic_streambuf*;
+    _ZSt16__ostream_insert*;
+    _ZN11__gnu_debug19_Safe_sequence_base12_M_get_mutexEv;
+    _ZN11__gnu_debug19_Safe_iterator_base16_M_attach_singleEPNS_19_Safe_sequence_baseEb;
+    _ZN11__gnu_debug19_Safe_iterator_base16_M_detach_singleEv;
+    _ZN11__gnu_debug19_Safe_iterator_base12_M_get_mutexEv;
+    _ZNKSt9bad_alloc4whatEv;
+    _ZNKSt8bad_cast4whatEv;
+    _ZNKSt10bad_typeid4whatEv;
+    _ZNKSt13bad_exception4whatEv;
+} GLIBCXX_3.4.8;
+GLIBCXX_3.4.10 {
+    _ZNK11__gnu_debug16_Error_formatter17_M_get_max_lengthEv;
+    _ZNKSt3tr14hashIRKSbIwSt11char_traitsIwESaIwEEEclES6_;
+    _ZNKSt3tr14hashIRKSsEclES2_;
+    _ZNKSt3tr14hashISbIwSt11char_traitsIwESaIwEEEclES4_;
+    _ZNKSt3tr14hashISsEclESs;
+    _ZNKSt3tr14hashIeEclEe;
+    _ZNKSt4hashIRKSbIwSt11char_traitsIwESaIwEEEclES5_;
+    _ZNKSt4hashIRKSsEclES1_;
+    _ZNKSt4hashISbIwSt11char_traitsIwESaIwEEEclES3_;
+    _ZNKSt4hashISsEclESs;
+    _ZNKSt4hashIeEclEe;
+    _ZSt17__verify_groupingPKc[mj]RKSs;
+    _ZNSt8__detail12__prime_listE;
+    _ZNSt3tr18__detail12__prime_listE;
+    _ZN14__gnu_parallel9_Settings3getEv;
+    _ZN14__gnu_parallel9_Settings3setERS0_;
+    _ZNSt9__cxx199815_List_node_base4hook*;
+    _ZNSt9__cxx199815_List_node_base4swap*;
+    _ZNSt9__cxx199815_List_node_base6unhookEv;
+    _ZNSt9__cxx199815_List_node_base7reverseEv;
+    _ZNSt9__cxx199815_List_node_base8transfer*;
+    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE6stosscEv;
+    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE4syncEv;
+    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EE[5-9]*;
+    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEC[12]EP*;
+    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EED[^2]*;
+} GLIBCXX_3.4.9;
+GLIBCXX_3.4.11 {
+    __atomic_flag_for_address;
+    __atomic_flag_wait_explicit;
+    atomic_flag_clear_explicit;
+    atomic_flag_test_and_set_explicit;
+    _ZNVSt9__atomic011atomic_flag12test_and_setESt12memory_order;
+    _ZNVSt9__atomic011atomic_flag5clearESt12memory_order;
+    _ZSt10adopt_lock;
+    _ZSt10defer_lock;
+    _ZSt11try_to_lock;
+    _ZTISt10lock_error;
+    _ZTVSt10lock_error;
+    _ZTSSt10lock_error;
+    _ZNKSt10lock_error4whatEv;
+    _ZSt11__once_call;
+    _ZSt15__once_callable;
+    _ZSt14__once_functor;
+    _ZSt23__get_once_functor_lockv;
+    __once_proxy;
+    _ZNSt18condition_variable10notify_allEv;
+    _ZNSt18condition_variable10notify_oneEv;
+    _ZNSt18condition_variable4waitERSt11unique_lockISt5mutexE;
+    _ZNSt18condition_variableC1Ev;
+    _ZNSt18condition_variableC2Ev;
+    _ZNSt18condition_variableD1Ev;
+    _ZNSt18condition_variableD2Ev;
+    _ZNSt22condition_variable_anyC1Ev;
+    _ZNSt22condition_variable_anyC2Ev;
+    _ZNSt22condition_variable_anyD1Ev;
+    _ZNSt22condition_variable_anyD2Ev;
+    _ZNSt6thread4joinEv;
+    _ZNSt6thread6detachEv;
+    _ZNSt6thread15_M_start_threadESt10shared_ptrINS_10_Impl_baseEE;
+    _ZSt15system_categoryv;
+    _ZSt16generic_categoryv;
+    _ZNKSt10error_code23default_error_conditionEv;
+    _ZNKSt14error_category23default_error_conditionEi;
+    _ZNKSt14error_category10equivalentERKSt10error_codei;
+    _ZNKSt14error_category10equivalentEiRKSt15error_condition;
+    _ZTISt14error_category;
+    _ZTSSt14error_category;
+    _ZTVSt14error_category;
+    _ZTSSt12system_error;
+    _ZTISt12system_error;
+    _ZTVSt12system_error;
+    _ZNSt12system_errorD*Ev;
+    _ZNKSt4hashISt10error_codeEclES0_;
+    _ZSt20__throw_system_errori;
+    _ZNSt14numeric_limitsIDiE[5-9]*;
+    _ZNSt14numeric_limitsIDsE[5-9]*;
+    _ZNSt14numeric_limitsIDiE1[0-7][hirt]*;
+    _ZNSt14numeric_limitsIDsE1[0-7][hirt]*;
+    _ZNSt14numeric_limitsIDiE1[0-7]mi*;
+    _ZNSt14numeric_limitsIDsE1[0-7]mi*;
+    _ZNSt14numeric_limitsIDiE1[0-7]max_e*;
+    _ZNSt14numeric_limitsIDsE1[0-7]max_e*;
+    _ZNSt6chrono12system_clock12is_monotonicE;
+    _ZNSt6chrono12system_clock3nowEv;
+    _ZNSt6chrono15monotonic_clock12is_monotonicE;
+    _ZNSt6chrono15monotonic_clock3nowEv;
+    _ZNSs6appendESt16initializer_listIcE;
+    _ZNSs6assignESt16initializer_listIcE;
+    _ZNSs6insertEN9__gnu_cxx17__normal_iteratorIPcSsEESt16initializer_listIcE;
+    _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_St16initializer_listIcE;
+    _ZNSsC1ESt16initializer_listIcERKSaIcE;
+    _ZNSsC2ESt16initializer_listIcERKSaIcE;
+    _ZNSsaSESt16initializer_listIcE;
+    _ZNSspLESt16initializer_listIcE;
+    _ZNSbIwSt11char_traitsIwESaIwEE6appendESt16initializer_listIwE;
+    _ZNSbIwSt11char_traitsIwESaIwEE6assignESt16initializer_listIwE;
+    _ZNSbIwSt11char_traitsIwESaIwEE6insertEN9__gnu_cxx17__normal_iteratorIPwS2_EESt16initializer_listIwE;
+    _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_St16initializer_listIwE;
+    _ZNSbIwSt11char_traitsIwESaIwEEC1ESt16initializer_listIwERKS1_;
+    _ZNSbIwSt11char_traitsIwESaIwEEC2ESt16initializer_listIwERKS1_;
+    _ZNSbIwSt11char_traitsIwESaIwEEaSESt16initializer_listIwE;
+    _ZNSbIwSt11char_traitsIwESaIwEEpLESt16initializer_listIwE;
+    _ZNKSt5ctypeIcE14_M_narrow_initEv;
+    _ZNKSt5ctypeIcE13_M_widen_initEv;
+} GLIBCXX_3.4.10;
+GLIBCXX_3.4.12 {
+    _ZSt27__set_once_functor_lock_ptrPSt11unique_lockISt5mutexE;
+    _ZSt16__get_once_mutexv;
+} GLIBCXX_3.4.11;
+GLIBCXX_3.4.13 {
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE4openERKSsSt13_Ios_Openmode;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EEC[12]ERKSsSt13_Ios_Openmode;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE4openERKSsSt13_Ios_Openmode;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EEC[12]ERKSsSt13_Ios_Openmode;
+    _ZNSt14basic_ifstreamI[cw]St11char_traitsI[cw]EE4openERKSsSt13_Ios_Openmode;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EEC[12]ERKSsSt13_Ios_Openmode;
+    _ZNSt14basic_ofstreamI[cw]St11char_traitsI[cw]EE4openERKSsSt13_Ios_Openmode;
+} GLIBCXX_3.4.12;
+GLIBCXX_3.4.14 {
+    _ZNSt9__atomic011atomic_flag12test_and_setESt12memory_order;
+    _ZNSt9__atomic011atomic_flag5clearESt12memory_order;
+    _ZNSt12future_errorD*;
+    _ZNKSt12future_error4whatEv;
+    _ZTSSt12future_error;
+    _ZTVSt12future_error;
+    _ZTISt12future_error;
+    _ZSt20__throw_future_errori;
+    _ZSt15future_category;
+    _ZNKSs6cbeginEv;
+    _ZNKSs4cendEv;
+    _ZNKSs7crbeginEv;
+    _ZNKSs5crendEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE4cendEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE6cbeginEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE7crbeginEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE5crendEv;
+    _ZNSs12_S_constructI*;
+    _ZNSbIwSt11char_traitsIwESaIwEE12_S_constructI*;
+    _ZNSs18_S_construct_aux_2*;
+    _ZNSbIwSt11char_traitsIwESaIwEE18_S_construct_aux_2*;
+    _ZNSs13shrink_to_fitEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE13shrink_to_fitEv;
+    _ZNSsC1EOSs;
+    _ZNSbIwSt11char_traitsIwESaIwEEC1EOS2_;
+    _ZNSsaSEOSs;
+    _ZNSbIwSt11char_traitsIwESaIwEEaSEOS2_;
+    _ZNSs6assignEOSs;
+    _ZNSbIwSt11char_traitsIwESaIwEE6assignEOS2_;
+    _ZSt25__throw_bad_function_callv;
+    _ZNKSt8time_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE24_M_extract_wday_or_month*;
+    _ZNSt15_List_node_base7_M_hook*;
+    _ZNSt15_List_node_base9_M_unhookEv;
+    _ZNSt15_List_node_base10_M_reverseEv;
+    _ZNSt15_List_node_base11_M_transfer*;
+    _ZNSt6__norm15_List_node_base7_M_hook*;
+    _ZNSt6__norm15_List_node_base9_M_unhookEv;
+    _ZNSt6__norm15_List_node_base10_M_reverseEv;
+    _ZNSt6__norm15_List_node_base11_M_transfer*;
+    _ZNSt9__cxx199815_List_node_base7_M_hook*;
+    _ZNSt9__cxx199815_List_node_base9_M_unhookEv;
+    _ZNSt9__cxx199815_List_node_base10_M_reverseEv;
+    _ZNSt9__cxx199815_List_node_base11_M_transfer*;
+    _ZNSt21__numeric_limits_base12max_digits10E;
+    _ZNSt14numeric_limitsI[a-m]E12max_digits10E;
+    _ZNSt14numeric_limitsI[p-z]E12max_digits10E;
+    _ZNSt14numeric_limitsID[is]E12max_digits10E;
+} GLIBCXX_3.4.13;
+GLIBCXX_3.4.15 {
+    _ZNSs5frontEv;
+    _ZNKSs5frontEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE5frontEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE5frontEv;
+    _ZNSs4backEv;
+    _ZNKSs4backEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE4backEv;
+    _ZNKSbIwSt11char_traitsIwESaIwEE4backEv;
+    _ZNSsC2EOSs;
+    _ZNSbIwSt11char_traitsIwESaIwEEC2EOS2_;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE14_M_get_ext_pos*;
+    __emutls_v._ZSt11__once_call;
+    __emutls_v._ZSt15__once_callable;
+    _ZSt15future_categoryv;
+    _ZNSt12placeholders*;
+    _ZNSt8__detail15_List_node_base7_M_hook*;
+    _ZNSt8__detail15_List_node_base9_M_unhookEv;
+    _ZNSt8__detail15_List_node_base10_M_reverseEv;
+    _ZNSt8__detail15_List_node_base11_M_transfer*;
+    _ZNSt8__detail15_List_node_base4swapERS0_S1_;
+    _ZNSt11range_errorD2Ev;
+    _ZNSt12domain_errorD2Ev;
+    _ZNSt12length_errorD2Ev;
+    _ZNSt12out_of_rangeD2Ev;
+    _ZNSt14overflow_errorD2Ev;
+    _ZNSt15underflow_errorD2Ev;
+    _ZNSt16invalid_argumentD2Ev;
+    _ZNSt11regex_errorD*;
+    _ZNKSt11regex_error4whatEv;
+    _ZTVSt11regex_error;
+    _ZTISt11regex_error;
+    _ZSt19__throw_regex_errorNSt15regex_constants10error_typeE;
+    _ZNSt12bad_weak_ptrD*;
+    _ZNKSt12bad_weak_ptr4whatEv;
+    _ZTVSt12bad_weak_ptr;
+    _ZTISt12bad_weak_ptr;
+    _ZNSt17bad_function_callD*;
+    _ZTISt17bad_function_call;
+    _ZTVSt17bad_function_call;
+    _ZNSt14error_categoryC*;
+    _ZNSt14error_categoryD*;
+    _ZNSt13__future_base12_Result_baseC*;
+    _ZNSt13__future_base12_Result_baseD*;
+    _ZTINSt13__future_base12_Result_baseE;
+    _ZTVNSt13__future_base12_Result_baseE;
+    _ZNSt13__future_base11_State_baseD*;
+    _ZTINSt13__future_base11_State_baseE;
+    _ZTVNSt13__future_base11_State_baseE;
+} GLIBCXX_3.4.14;
+GLIBCXX_3.4.16 {
+    _ZNSs10_S_compareE[jmy][jmy];
+    _ZNSbIwSt11char_traitsIwESaIwEE10_S_compareE[jmy][jmy];
+    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE12__safe_gbumpE*;
+    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE12__safe_pbumpE*;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE8_M_pbumpE*;
+} GLIBCXX_3.4.15;
+GLIBCXX_3.4.17 {
+    _ZNSt6thread20hardware_concurrencyEv;
+    _ZN11__gnu_debug30_Safe_unordered_container_base7_M_swapERS0_;
+    _ZN11__gnu_debug30_Safe_unordered_container_base13_M_detach_allEv;
+    _ZN11__gnu_debug25_Safe_local_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb;
+    _ZN11__gnu_debug25_Safe_local_iterator_base9_M_detachEv;
+    _ZNSt14numeric_limitsInE*;
+    _ZNSt14numeric_limitsIoE*;
+    _ZNSs8pop_backEv;
+    _ZNSbIwSt11char_traitsIwESaIwEE8pop_backEv;
+    _ZTINSt13__future_base19_Async_state_commonE;
+    _ZTSNSt13__future_base19_Async_state_commonE;
+    _ZTVNSt13__future_base19_Async_state_commonE;
+    _ZNSt13__future_base19_Async_state_commonD0Ev;
+    _ZNSt13__future_base19_Async_state_commonD1Ev;
+    _ZNSt13__future_base19_Async_state_commonD2Ev;
+    _ZNSt6chrono12steady_clock3nowEv;
+} GLIBCXX_3.4.16;
+GLIBCXX_3.4.18 {
+  global:
+    extern "C++"
+    {
+      std::__detail::_Prime_rehash_policy::*;
+    };
+    _ZNSt13random_device14_M_init_pretr1ERKSs;
+    _ZNSt13random_device16_M_getval_pretr1Ev;
+    _ZNSt13random_device7_M_finiEv;
+    _ZNSt13random_device7_M_initERKSs;
+    _ZNSt13random_device9_M_getvalEv;
+    _ZNSt11this_thread11__sleep_for*;
+    _ZNKSt17bad_function_call4whatEv;
+} GLIBCXX_3.4.17;
+GLIBCXX_3.4.19 {
+    _ZNSt6chrono3_V212steady_clock3nowEv;
+    _ZNSt6chrono3_V212steady_clock9is_steadyE;
+    _ZNSt6chrono3_V212system_clock3nowEv;
+    _ZNSt6chrono3_V212system_clock9is_steadyE;
+} GLIBCXX_3.4.18;
+GLIBCXX_3.4.20 {
+    _ZSt15get_new_handlerv;
+    _ZSt13get_terminatev;
+    _ZSt14get_unexpectedv;
+    _ZSt24__throw_out_of_range_fmtPKcz;
+    _ZNSt11regex_errorC1ENSt15regex_constants10error_typeE;
+} GLIBCXX_3.4.19;
+GLIBCXX_3.4.21 {
+    _ZNSt11regex_errorC2ENSt15regex_constants10error_typeE;
+    _ZNSt6thread15_M_start_threadESt10shared_ptrINS_10_Impl_baseEEPFvvE;
+    _ZNSt8ios_base7_M_swapERS_;
+    _ZNSt8ios_base7_M_moveERS_;
+    _ZNSt9basic_iosI[cw]St11char_traitsI[cw]EE4moveE[OR]S2_;
+    _ZNSt9basic_iosI[cw]St11char_traitsI[cw]EE4swapERS2_;
+    _ZNSt9basic_iosI[cw]St11char_traitsI[cw]EE9set_rdbuf*;
+    _ZNSt15basic_streambufI[cw]St11char_traitsI[cw]EE4swapERS2_;
+    _ZNS[dio]4swapERS[dio];
+    _ZNS[dio]aSEOS[dio];
+    _ZNS[dio]C[12]EOS[dio];
+    _ZNSt13basic_[io]streamIwSt11char_traitsIwEE4swapERS2_;
+    _ZNSt13basic_[io]streamIwSt11char_traitsIwEEaSEOS2_;
+    _ZNSt13basic_[io]streamIwSt11char_traitsIwEEC[12]EOS2_;
+    _ZNSt14basic_iostreamIwSt11char_traitsIwEE4swapERS2_;
+    _ZNSt14basic_iostreamIwSt11char_traitsIwEEaSEOS2_;
+    _ZNSt14basic_iostreamIwSt11char_traitsIwEEC[12]EOS2_;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EE4swapERS2_;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EEaSEOS2_;
+    _ZNSt13basic_filebufI[cw]St11char_traitsI[cw]EEC[12]EOS2_;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EE4swapERS2_;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EEaSEOS2_;
+    _ZNSt13basic_fstreamI[cw]St11char_traitsI[cw]EEC[12]EOS2_;
+    _ZNSt14basic_[io]fstreamI[cw]St11char_traitsI[cw]EE4swapERS2_;
+    _ZNSt14basic_[io]fstreamI[cw]St11char_traitsI[cw]EEaSEOS2_;
+    _ZNSt14basic_[io]fstreamI[cw]St11char_traitsI[cw]EEC[12]EOS2_;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE4swapERS3_;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EEaSEOS3_;
+    _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]EOS3_;
+    _ZNSt18basic_stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EE4swapERS3_;
+    _ZNSt18basic_stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEaSEOS3_;
+    _ZNSt18basic_stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]EOS3_;
+    _ZNSt19basic_[io]stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EE4swapERS3_;
+    _ZNSt19basic_[io]stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEaSEOS3_;
+    _ZNSt19basic_[io]stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]EOS3_;
+    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEaSEOS3_;
+    _ZN9__gnu_cxx18stdio_sync_filebufI[cw]St11char_traitsI[cw]EEC[12]EOS3_;
+    _ZNSoC[12]ERSd;
+    _ZNSt13basic_ostreamIwSt11char_traitsIwEEC[12]ERSt14basic_iostreamIwS1_E;
+    _ZNKSt9basic_iosI[cw]St11char_traitsI[cw]EEcvbEv;
+    _ZNKSt8ios_base7failureB5cxx114whatEv;
+    _ZNSt8ios_base7failureB5cxx11C[12]ERKSs;
+    _ZNSt8ios_base7failureB5cxx11C[12]EPKcRKSt10error_code;
+    _ZNSt8ios_base7failureB5cxx11C[12]ERKNSt7__cxx1112basic_string*;
+    _ZNSt8ios_base7failureB5cxx11C[12]ERKSsB5cxx11RKSt10error_code;
+    _ZNSt8ios_base7failureB5cxx11D[012]Ev;
+    _ZTINSt8ios_base7failureB5cxx11E;
+    _ZTSNSt8ios_base7failureB5cxx11E;
+    _ZTVNSt8ios_base7failureB5cxx11E;
+    _ZSt17iostream_categoryv;
+    _ZNSt10ctype_base5blankE;
+    _ZNSt10_Sp_locker[CD]*;
+    _ZSt25notify_all_at_thread_exitRSt18condition_variableSt11unique_lockISt5mutexE;
+    _ZNSt13__future_base13_State_baseV211_Make_ready6_M_setEv;
+    _ZNSt7__cxx1112basic_string*;
+    _ZNKSt7__cxx1112basic_string*;
+    _ZNSt7__cxx1115basic_stringbuf*;
+    _ZNSt7__cxx1118basic_stringstream*;
+    _ZNSt7__cxx1119basic_istringstream*;
+    _ZNSt7__cxx1119basic_ostringstream*;
+    _ZNKSt7__cxx1115basic_stringbuf*;
+    _ZNKSt7__cxx1118basic_stringstream*;
+    _ZNKSt7__cxx1119basic_istringstream*;
+    _ZNKSt7__cxx1119basic_ostringstream*;
+    _ZT[ISTV]NSt7__cxx1115basic_stringbuf*;
+    _ZT[ISTV]NSt7__cxx1118basic_stringstream*;
+    _ZT[ISTV]NSt7__cxx1119basic_istringstream*;
+    _ZT[ISTV]NSt7__cxx1119basic_ostringstream*;
+    _ZThn8_NSt7__cxx1118basic_stringstream*;
+    _ZThn16_NSt7__cxx1118basic_stringstream*;
+    _ZTv0_n12_NSt7__cxx1115basic_stringbuf*;
+    _ZTv0_n12_NSt7__cxx1118basic_stringstream*;
+    _ZTv0_n12_NSt7__cxx1119basic_istringstream*;
+    _ZTv0_n12_NSt7__cxx1119basic_ostringstream*;
+    _ZTv0_n24_NSt7__cxx1115basic_stringbuf*;
+    _ZTv0_n24_NSt7__cxx1118basic_stringstream*;
+    _ZTv0_n24_NSt7__cxx1119basic_istringstream*;
+    _ZTv0_n24_NSt7__cxx1119basic_ostringstream*;
+    _ZSt7getlineI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_string*;
+    _ZStlsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_string*;
+    _ZStrsI[cw]St11char_traitsI[cw]ESaI[cw]EERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_string*;
+    _ZNKSt6locale4nameB5cxx11Ev;
+    _ZT[ISTV]NSt7__cxx117collateI[cw]*;
+    _ZT[ISTV]NSt7__cxx1114collate_bynameI[cw]*;
+    _ZT[ISTV]NSt7__cxx118messagesI[cw]*;
+    _ZT[ISTV]NSt7__cxx1115messages_bynameI[cw]*;
+    _ZT[ISTV]NSt7__cxx119money_getI[cw]*;
+    _ZT[ISTV]NSt7__cxx119money_putI[cw]*;
+    _ZT[ISTV]NSt7__cxx1110moneypunctI[cw]Lb[01]*;
+    _ZT[ISTV]NSt7__cxx1117moneypunct_bynameI[cw]Lb[01]*;
+    _ZT[ISTV]NSt7__cxx118numpunctI[cw]*;
+    _ZT[ISTV]NSt7__cxx1115numpunct_bynameI[cw]*;
+    _ZT[ISTV]NSt7__cxx118time_getI[cw]*;
+    _ZT[ISTV]NSt7__cxx1115time_get_bynameI[cw]*;
+    _ZGVNSt7__cxx117collateI[cw]*;
+    _ZGVNSt7__cxx118messagesI[cw]*;
+    _ZGVNSt7__cxx1110moneypunctI[cw]Lb[01]*;
+    _ZGVNSt7__cxx119money_getI[cw]*;
+    _ZGVNSt7__cxx119money_putI[cw]*;
+    _ZGVNSt7__cxx118numpunctI[cw]*;
+    _ZGVNSt7__cxx118time_getI[cw]*;
+    _ZNSt7__cxx117collateI*;
+    _ZNSt7__cxx1114collate_bynameI*;
+    _ZNSt7__cxx118messagesI*;
+    _ZNSt7__cxx1115messages_bynameI*;
+    _ZNSt7__cxx119money_getI*;
+    _ZNSt7__cxx119money_putI*;
+    _ZNSt7__cxx1110moneypunctI*;
+    _ZNSt7__cxx1117moneypunct_bynameI*;
+    _ZNSt7__cxx118numpunctI*;
+    _ZNSt7__cxx1115numpunct_bynameI*;
+    _ZNSt7__cxx118time_getI*;
+    _ZNSt7__cxx1115time_get_bynameI*;
+    _ZNKSt7__cxx117collateI*;
+    _ZNKSt7__cxx118messagesI*;
+    _ZNKSt7__cxx119money_getI*;
+    _ZNKSt7__cxx119money_putI*;
+    _ZNKSt7__cxx1110moneypunctI*;
+    _ZNKSt7__cxx118numpunctI*;
+    _ZNKSt7__cxx118time_getI*;
+    _ZSt9has_facetINSt7__cxx117collate*;
+    _ZSt9has_facetINSt7__cxx118messages*;
+    _ZSt9has_facetINSt7__cxx119money_get*;
+    _ZSt9has_facetINSt7__cxx119money_put*;
+    _ZSt9has_facetINSt7__cxx1110moneypunct*;
+    _ZSt9has_facetINSt7__cxx118numpunct*;
+    _ZSt9has_facetINSt7__cxx118time_get*;
+    _ZSt9use_facetINSt7__cxx117collate*;
+    _ZSt9use_facetINSt7__cxx118messages*;
+    _ZSt9use_facetINSt7__cxx119money_get*;
+    _ZSt9use_facetINSt7__cxx119money_put*;
+    _ZSt9use_facetINSt7__cxx1110moneypunct*;
+    _ZSt9use_facetINSt7__cxx118numpunct*;
+    _ZSt9use_facetINSt7__cxx118time_get*;
+    _ZSt17__verify_groupingPKc[mj]RKNSt7__cxx1112basic_string*;
+    _ZNSt3_V214error_category*;
+    _ZNKSt3_V214error_category*;
+    _ZTVNSt3_V214error_categoryE;
+    _ZTINSt3_V214error_categoryE;
+    _ZNSt3_V215system_categoryEv;
+    _ZNSt3_V216generic_categoryEv;
+    _ZNSt11logic_errorC[12]EPKc;
+    _ZNSt11logic_errorC[12]ERKS_;
+    _ZNSt11logic_erroraSERKS_;
+    _ZNSt11logic_errorC[12]ERKNSt7__cxx1112basic_string*;
+    _ZNSt11range_errorC[12]EPKc;
+    _ZNSt11range_errorC[12]ERKNSt7__cxx1112basic_string*;
+    _ZNSt12domain_errorC[12]EPKc;
+    _ZNSt12domain_errorC[12]ERKNSt7__cxx1112basic_string*;
+    _ZNSt12length_errorC[12]EPKc;
+    _ZNSt12length_errorC[12]ERKNSt7__cxx1112basic_string*;
+    _ZNSt12out_of_rangeC[12]EPKc;
+    _ZNSt12out_of_rangeC[12]ERKNSt7__cxx1112basic_string*;
+    _ZNSt13runtime_errorC[12]EPKc;
+    _ZNSt13runtime_errorC[12]ERKS_;
+    _ZNSt13runtime_erroraSERKS_;
+    _ZNSt13runtime_errorC[12]ERKNSt7__cxx1112basic_string*;
+    _ZNSt14overflow_errorC[12]EPKc;
+    _ZNSt14overflow_errorC[12]ERKNSt7__cxx1112basic_string*;
+    _ZNSt15underflow_errorC[12]EPKc;
+    _ZNSt15underflow_errorC[12]ERKNSt7__cxx1112basic_string*;
+    _ZNSt16invalid_argumentC[12]EPKc;
+    _ZNSt16invalid_argumentC[12]ERKNSt7__cxx1112basic_string*;
+    _ZNSt13random_device14_M_init_pretr1ERKNSt7__cxx1112basic_string*;
+    _ZNSt13random_device7_M_initERKNSt7__cxx1112basic_string*;
+    _ZNKSt3tr14hashINSt7__cxx1112basic_string*;
+    _ZNKSt8time_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tmPK[cw]SC_;
+    _ZNKSt8time_getI[cw]St19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tmcc;
+} GLIBCXX_3.4.20;
+CXXABI_1.3 {
+  global:
+    __cxa_allocate_exception;
+    __cxa_bad_cast;
+    __cxa_bad_typeid;
+    __cxa_begin_catch;
+    __cxa_begin_cleanup;
+    __cxa_call_unexpected;
+    __cxa_current_exception_type;
+    __cxa_demangle;
+    __cxa_end_catch;
+    __cxa_end_cleanup;
+    __cxa_free_exception;
+    __cxa_get_globals;
+    __cxa_get_globals_fast;
+    __cxa_guard_abort;
+    __cxa_guard_acquire;
+    __cxa_guard_release;
+    __cxa_pure_virtual;
+    __cxa_rethrow;
+    __cxa_throw;
+    __cxa_type_match;
+    __cxa_vec_ctor;
+    __cxa_vec_cctor;
+    __cxa_vec_cleanup;
+    __cxa_vec_delete;
+    __cxa_vec_delete2;
+    __cxa_vec_delete3;
+    __cxa_vec_dtor;
+    __cxa_vec_new;
+    __cxa_vec_new2;
+    __cxa_vec_new3;
+    __gxx_personality_v0;
+    __gxx_personality_sj0;
+    __gxx_personality_seh0;
+    __dynamic_cast;
+    _ZN10__cxxabiv117__array_type_info*;
+    _ZN10__cxxabiv117__class_type_info*;
+    _ZN10__cxxabiv116__enum_type_info*;
+    _ZN10__cxxabiv120__function_type_info*;
+    _ZN10__cxxabiv123__fundamental_type_info*;
+    _ZN10__cxxabiv117__pbase_type_info*;
+    _ZN10__cxxabiv129__pointer_to_member_type_info*;
+    _ZN10__cxxabiv119__pointer_type_info*;
+    _ZN10__cxxabiv120__si_class_type_info*;
+    _ZN10__cxxabiv121__vmi_class_type_info*;
+    _ZNK10__cxxabiv117__class_type_info*;
+    _ZNK10__cxxabiv120__function_type_info*;
+    _ZNK10__cxxabiv117__pbase_type_info*;
+    _ZNK10__cxxabiv129__pointer_to_member_type_info*;
+    _ZNK10__cxxabiv119__pointer_type_info*;
+    _ZNK10__cxxabiv120__si_class_type_info*;
+    _ZNK10__cxxabiv121__vmi_class_type_info*;
+    _ZTVN10__cxxabiv117__array_type_infoE;
+    _ZTVN10__cxxabiv117__class_type_infoE;
+    _ZTVN10__cxxabiv116__enum_type_infoE;
+    _ZTVN10__cxxabiv120__function_type_infoE;
+    _ZTVN10__cxxabiv123__fundamental_type_infoE;
+    _ZTVN10__cxxabiv117__pbase_type_infoE;
+    _ZTVN10__cxxabiv129__pointer_to_member_type_infoE;
+    _ZTVN10__cxxabiv119__pointer_type_infoE;
+    _ZTVN10__cxxabiv120__si_class_type_infoE;
+    _ZTVN10__cxxabiv121__vmi_class_type_infoE;
+    _ZTI[a-fh-mp-z];
+    _ZTIP[a-fh-mp-z];
+    _ZTIPK[a-fh-mp-z];
+    _ZTIN10__cxxabiv117__array_type_infoE;
+    _ZTIN10__cxxabiv117__class_type_infoE;
+    _ZTIN10__cxxabiv116__enum_type_infoE;
+    _ZTIN10__cxxabiv120__function_type_infoE;
+    _ZTIN10__cxxabiv123__fundamental_type_infoE;
+    _ZTIN10__cxxabiv117__pbase_type_infoE;
+    _ZTIN10__cxxabiv129__pointer_to_member_type_infoE;
+    _ZTIN10__cxxabiv119__pointer_type_infoE;
+    _ZTIN10__cxxabiv120__si_class_type_infoE;
+    _ZTIN10__cxxabiv121__vmi_class_type_infoE;
+    _ZTS[a-fh-mp-z];
+    _ZTSP[a-fh-mp-z];
+    _ZTSPK[a-fh-mp-z];
+    _ZTSN10__cxxabiv117__array_type_infoE;
+    _ZTSN10__cxxabiv117__class_type_infoE;
+    _ZTSN10__cxxabiv116__enum_type_infoE;
+    _ZTSN10__cxxabiv120__function_type_infoE;
+    _ZTSN10__cxxabiv123__fundamental_type_infoE;
+    _ZTSN10__cxxabiv117__pbase_type_infoE;
+    _ZTSN10__cxxabiv129__pointer_to_member_type_infoE;
+    _ZTSN10__cxxabiv119__pointer_type_infoE;
+    _ZTSN10__cxxabiv120__si_class_type_infoE;
+    _ZTSN10__cxxabiv121__vmi_class_type_infoE;
+    _ZN9__gnu_cxx27__verbose_terminate_handlerEv;
+};
+CXXABI_1.3.1 {
+    __cxa_get_exception_ptr;
+} CXXABI_1.3;
+CXXABI_1.3.2 {
+    _ZTIN10__cxxabiv115__forced_unwindE;
+    _ZTIN10__cxxabiv119__foreign_exceptionE;
+} CXXABI_1.3.1;
+CXXABI_1.3.3 {
+    _ZTIDs;
+    _ZTIPDs;
+    _ZTIPKDs;
+    _ZTIDi;
+    _ZTIPDi;
+    _ZTIPKDi;
+    _ZNSt15__exception_ptr13exception_ptrC1Ev;
+    _ZNSt15__exception_ptr13exception_ptrC2Ev;
+    _ZNSt15__exception_ptr13exception_ptrC1ERKS0_;
+    _ZNSt15__exception_ptr13exception_ptrC2ERKS0_;
+    _ZNSt15__exception_ptr13exception_ptrC1EMS0_FvvE;
+    _ZNSt15__exception_ptr13exception_ptrC2EMS0_FvvE;
+    _ZNSt15__exception_ptr13exception_ptrD1Ev;
+    _ZNSt15__exception_ptr13exception_ptrD2Ev;
+    _ZNSt15__exception_ptr13exception_ptraSERKS0_;
+    _ZNKSt15__exception_ptr13exception_ptrcvMS0_FvvEEv;
+    _ZNKSt15__exception_ptr13exception_ptrntEv;
+    _ZNKSt15__exception_ptr13exception_ptr20__cxa_exception_typeEv;
+    _ZNSt15__exception_ptr13exception_ptr4swapERS0_;
+    _ZNSt15__exception_ptreqERKNS_13exception_ptrES2_;
+    _ZNSt15__exception_ptrneERKNS_13exception_ptrES2_;
+    _ZSt17current_exceptionv;
+    _ZSt17rethrow_exceptionNSt15__exception_ptr13exception_ptrE;
+} CXXABI_1.3.2;
+CXXABI_1.3.4 {
+    _ZTID[fde];
+    _ZTIPD[fde];
+    _ZTIPKD[fde];
+} CXXABI_1.3.3;
+CXXABI_1.3.5 {
+    _ZTIDn;
+    _ZTIPDn;
+    _ZTIPKDn;
+    _ZTI[no];
+    _ZTIP[no];
+    _ZTIPK[no];
+    _ZSt11_Hash_bytesPKv*;
+    _ZSt15_Fnv_hash_bytesPKv*;
+    _ZNSt16nested_exceptionD*;
+    _ZTISt16nested_exception;
+    _ZTVSt16nested_exception;
+} CXXABI_1.3.4;
+CXXABI_1.3.6 {
+    __cxa_allocate_dependent_exception;
+    __cxa_free_dependent_exception;
+    __cxa_deleted_virtual;
+} CXXABI_1.3.5;
+CXXABI_1.3.7 {
+    __cxa_thread_atexit;
+} CXXABI_1.3.6;
+CXXABI_1.3.8 {
+    __cxa_throw_bad_array_new_length;
+    _Z*St20bad_array_new_length*;
+    __cxa_throw_bad_array_length;
+    _Z*St16bad_array_length*;
+    _Z17__VLTRegisterPair*;
+    _Z22__VLTRegisterPairDebug*;
+    _Z16__VLTRegisterSet*;
+    _Z21__VLTRegisterSetDebug*;
+    _Z24__VLTVerifyVtablePointer*;
+    _Z29__VLTVerifyVtablePointerDebug*;
+    __VLTChangePermission;
+} CXXABI_1.3.7;
+CXXABI_1.3.9 {
+    _ZTS[no];
+    _ZTSP[no];
+    _ZTSPK[no];
+    _ZdlPv[jmy];
+    _ZdaPv[jmy];
+} CXXABI_1.3.8;
+CXXABI_TM_1 {
+  global:
+    __cxa_tm_cleanup;
+};
+CXXABI_FLOAT128 {
+    _ZT[IS]g;
+    _ZT[IS]Pg;
+    _ZT[IS]PKg;
+};
diff --git a/gnu/usr.bin/cc50/Makefile b/gnu/usr.bin/cc50/Makefile
new file mode 100644 (file)
index 0000000..bbba510
--- /dev/null
@@ -0,0 +1,20 @@
+# This build order provides more parallelism that gcc47, and is almost as
+# efficient as possible.  Most of the support libraries could be built
+# without cc_tools and the backend could be built at the same time as the
+# drivers rather than afterwards, but this setup is reasonably fine grained.
+
+SUBDIR_ORDERED=        cc_prep cc_tools support-libs drivers libbackend backends
+
+# The SUBDIR_ORDERED definition is currently equivalent to SUBDIR_ORDERED=
+# but it wasn't always -- there used to be "doc" directory which could be
+# built at any time.  Just leave the redundant definition for now, maybe
+# we'll need it again in the future.
+
+SUBDIR=        cc_prep
+SUBDIR+=       cc_tools
+SUBDIR+=       support-libs
+SUBDIR+=       drivers
+SUBDIR+=       libbackend
+SUBDIR+=       backends
+
+.include <bsd.subdir.mk>
diff --git a/gnu/usr.bin/cc50/Makefile.inc b/gnu/usr.bin/cc50/Makefile.inc
new file mode 100644 (file)
index 0000000..7361960
--- /dev/null
@@ -0,0 +1,93 @@
+.if !target(__<cc.Makefile.inc>__)
+__<cc.Makefile.inc>__:
+
+.include "Makefile.version"
+
+FLAGS=         -DGCCPOINTVER=\"${GCCPOINTVER}\"
+FLAGS+=                -DGCCSHORTVER=\"${GCCSHORTVER}\"
+FLAGS+=                -DBASEVER=\"${GCCCOMPLETEVER}\"
+
+FLAGS+=                -DDEFAULT_TARGET_VERSION=\"${version}\"
+FLAGS+=                -DDEFAULT_TARGET_MACHINE=\"${target_machine}\"
+
+BINDIR?=       /usr/libexec/gcc${GCCSHORTVER}
+
+GCCDIR=                ${.CURDIR}/${TOP_PREFIX}../../../../contrib/gcc-${GCCPOINTVER}
+OTOPDIR=       ${.OBJDIR}/${TOP_PREFIX}..
+STOPDIR=       ${.CURDIR}/${TOP_PREFIX}..
+OSLDIR=                ${OTOPDIR}/support-libs
+
+TOOLDIR=       ${OTOPDIR}/cc_tools/tools
+
+.if defined(LOCAL_CONFIG)
+FLAGS+=                -I${.CURDIR}
+FLAGS+=                -I${.OBJDIR}
+.endif
+FLAGS+=                -I${OTOPDIR}/cc_prep
+FLAGS+=                -I${STOPDIR}/cc_prep
+FLAGS+=                -I${STOPDIR}/cc_prep/config
+FLAGS+=                -I${GCCDIR}/gcc
+FLAGS+=                -I${GCCDIR}/gcc/config
+FLAGS+=                -I${GCCDIR}/include
+FLAGS+=                -I${GCCDIR}/libcpp/include
+FLAGS+=                -I${GCCDIR}/libdecnumber
+FLAGS+=                -I${GCCDIR}/libdecnumber/dpd
+FLAGS+=                -I${OTOPDIR}/libdecnumber
+FLAGS+=                -I${STOPDIR}/../gmp
+FLAGS+=                -I${STOPDIR}/../../../contrib/mpfr/src
+FLAGS+=                -I${STOPDIR}/../mpfr
+FLAGS+=                -I${STOPDIR}/../../../contrib/mpc/src
+FLAGS+=                -I${GCCDIR}/gcc/config/i386
+FLAGS+=                -I${TOOLDIR}
+
+FLAGS+=                -DIN_GCC -DHAVE_CONFIG_H
+FLAGS+=                -DPREFIX1=\"${TOOLS_PREFIX}/usr\"
+FLAGS+=                -DPREFIX2=\"${USRDATA_PREFIX}/usr\"
+
+CFLAGS+=       ${FLAGS}
+
+.include "Makefile.tgt"
+
+.if ${TARGET_ARCH} != ${MACHINE_ARCH}
+CFLAGS+= -DCROSS_COMPILE
+.endif
+
+.if defined(GCC_LANG_DIR)
+.PATH: ${GCCDIR}/${GCC_LANG_DIR}
+.endif
+
+.if !defined(GCC_NO_PATH)
+.PATH: ${OTOPDIR}/cc_prep
+.PATH: ${STOPDIR}/cc_prep
+.PATH: ${GCCDIR}/gcc
+.PATH: ${GCCDIR}/gcc/c
+.PATH: ${GCCDIR}/gcc/c-family
+.PATH: ${GCCDIR}/gcc/config 
+.PATH: ${GCCDIR}/gcc/config/i386
+.PATH: ${TOOLDIR}
+.endif
+
+LIBIBERTY=     ${OSLDIR}/libiberty/libiberty.a
+LIBCPP=        ${OSLDIR}/libcpp/libcpp.a
+LIBDECNUMBER=  ${OSLDIR}/libdecnumber/libdecnumber.a
+LIBCOMMON=     ${OSLDIR}/libcommon/libcommon.a
+LIBCOMMONTARG= ${OSLDIR}/libcommon-target/libcommon-target.a
+LIBBACKTRACE=  ${OSLDIR}/libbacktrace/libbacktrace.a
+LIBBACKEND=    ${OTOPDIR}/libbackend/libbackend.a
+
+LIBGMP=        ${OTOPDIR}/../gmp/libgmp.a
+LIBMPFR=       ${OTOPDIR}/../mpfr/libmpfr.a
+LIBMPC=        ${OTOPDIR}/../mpc/libmpc.a
+LIBZ=          ${OTOPDIR}/../../../lib/libz/libz.a
+
+GMPLIBS=       ${LIBMPC} ${LIBMPFR} ${LIBGMP}
+STDLIBS=       ${LIBCOMMONTARG} ${LIBCOMMON} ${LIBCPP} \
+               ${LIBBACKTRACE} ${LIBIBERTY} ${LIBDECNUMBER} 
+BACKENDLIBS=   ${GMPLIBS} ${LIBZ}
+
+.if !defined(GCC_NO_LIBS)
+LDADD+=        ${STDLIBS}
+DPADD+=        ${STDLIBS}
+.endif
+
+.endif
diff --git a/gnu/usr.bin/cc50/Makefile.intcxx_lib b/gnu/usr.bin/cc50/Makefile.intcxx_lib
new file mode 100644 (file)
index 0000000..e9376b3
--- /dev/null
@@ -0,0 +1,227 @@
+# This does the same job as bsd.hostlib.mk except .c files are bult with c++
+# and it does not contain "afterdepend: all" which forces everything to be
+# built under the "depend" target
+
+.include <bsd.init.mk>
+
+.SUFFIXES:
+.SUFFIXES: .out .no .c .cc .cpp .cxx .C .y .l
+
+.c.no .cc.no .C.no .cpp.no .cxx.no:
+       ${NXCXX} ${_${.IMPSRC}_FLAGS} ${NXCXXFLAGS:N-std=*} -c ${.IMPSRC} -o ${.TARGET}
+       @${NXLD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+       @mv ${.TARGET}.tmp ${.TARGET}
+
+all: objwarn
+
+.if defined(LIB) && !empty(LIB) && !empty(SRCS)
+OBJS+=  ${SRCS:N*.h:N*.patch:R:S/$/.no/g}
+.endif
+
+.if defined(LIB) && !empty(LIB)
+_LIBS=         lib${LIB}.na
+
+lib${LIB}.na: ${OBJS} ${STATICOBJS}
+       @${ECHO} building native static ${LIB} library
+       rm -f ${.TARGET}
+       ${NXAR} cq ${.TARGET} `lorder ${OBJS} ${STATICOBJS} | tsort -q` ${ARADD}
+       ${NXRANLIB} ${.TARGET}
+.endif
+
+all: ${_LIBS}
+
+## 
+#  HEAD: embedded equivalent bsd.dep.mk
+##
+
+CTAGS?=                gtags
+MKDEPCMD?=     CC=c++ mkdep
+DEPENDFILE?=   .depend
+GTAGSFLAGS?=   -o
+CTAGSFLAGS?=
+HTAGSFLAGS?=
+
+.if !target(tags) && defined(SRCS) && !defined(NOTAGS)
+tags: ${SRCS}
+. if ${CTAGS:T} == "ctags"
+       @${CTAGS} ${CTAGSFLAGS} -f /dev/stdout \
+           ${.ALLSRC:N*.h} | sed "s;${.CURDIR}/;;" > ${.TARGET}
+. elif ${CTAGS:T} == "gtags"
+       @cd ${.CURDIR} && ${CTAGS} ${GTAGSFLAGS} ${.OBJDIR}
+.  if defined(HTML)
+       @cd ${.CURDIR} && htags ${HTAGSFLAGS} -d ${.OBJDIR} ${.OBJDIR}
+.  endif
+. endif
+.endif
+
+.if defined(SRCS)
+
+CLEANFILES?=
+
+. for _LSRC in ${SRCS:M*.l:N*/*}
+.  for _LC in ${_LSRC:R}.c
+${_LC}: ${_LSRC}
+       ${LEX} -t ${LFLAGS} ${.ALLSRC} > ${.TARGET}
+SRCS:= ${SRCS:S/${_LSRC}/${_LC}/}
+CLEANFILES+= ${_LC}
+.  endfor
+. endfor
+
+. for _YSRC in ${SRCS:M*.y:N*/*}
+.  for _YC in ${_YSRC:R}.c
+SRCS:= ${SRCS:S/${_YSRC}/${_YC}/}
+CLEANFILES+= ${_YC}
+.   if !empty(YFLAGS:M-d) && !empty(SRCS:My.tab.h)
+.ORDER: ${_YC} y.tab.h
+${_YC} y.tab.h: ${_YSRC}
+       ${YACC} ${YFLAGS} ${.ALLSRC}
+       cp y.tab.c ${_YC}
+CLEANFILES+= y.tab.c y.tab.h
+.   elif !empty(YFLAGS:M-d)
+.     for _YH in ${_YC:S/.c/.h/}
+${_YH}: ${_YC}
+${_YC}: ${_YSRC}
+       ${YACC} ${YFLAGS} -o ${_YC} ${.ALLSRC}
+SRCS+= ${_YH}
+CLEANFILES+= ${_YH}
+.     endfor
+.   else
+${_YC}: ${_YSRC}
+       ${YACC} ${YFLAGS} -o ${_YC} ${.ALLSRC}
+.   endif
+.  endfor
+. endfor
+.endif
+
+.if !target(depend)
+. if defined(SRCS)
+depend: beforedepend _dependincs ${DEPENDFILE} afterdepend
+
+.NOPATH: ${DEPENDFILE}
+
+__FLAGS=
+__FLAGS_FILES= ${SRCS}
+.  for _FG in ${FLAGS_GROUPS}
+.   for _FFILE in ${${_FG}_FLAGS_FILES}
+__FLAGS_FILES:=        ${__FLAGS_FILES:N${_FFILE}}
+.   endfor
+.  endfor
+
+_DEPENDFILES=  ${FLAGS_GROUPS:S/^/.depend_/g}
+
+${DEPENDFILE}: ${_DEPENDFILES}
+
+_ALL_DEPENDS=${__FLAGS_FILES:N*.[sS]:N*.c:N*.cc:N*.C:N*.cpp:N*.cpp:N*.cxx:N*.m}
+
+.  for _FG in _ ${FLAGS_GROUPS}
+.   depend${_FG:S/^/_/:N__}: ${${_FG}_FLAGS_FILES} ${_ALL_DEPENDS}
+       -rm -f ${DEPENDFILE}
+       -> ${DEPENDFILE}
+.   if ${${_FG}_FLAGS_FILES:M*.[sS]} != ""
+       ${MKDEPCMD} -f ${DEPENDFILE} -a ${MKDEP} \
+           ${${_FG}_FLAGS} \
+           ${CFLAGS:M-nostdinc*} ${CFLAGS:M-[BID]*} \
+           ${CFLAGS:M-std=*} \
+           ${.ALLSRC:M*.[sS]}
+.   endif
+.   if ${${_FG}_FLAGS_FILES:M*.cc} != "" || \
+    ${${_FG}_FLAGS_FILES:M*.[Cc]} != "" || \
+    ${${_FG}_FLAGS_FILES:M*.cpp} != "" || \
+    ${${_FG}_FLAGS_FILES:M*.cxx} != ""
+       ${MKDEPCMD} -f ${DEPENDFILE} -a ${MKDEP} \
+           ${${_FG}_FLAGS} \
+           ${CXXFLAGS:M-nostdinc*} ${CXXFLAGS:M-[BID]*} \
+           ${.ALLSRC:M*.cc} ${.ALLSRC:M*.[Cc]} ${.ALLSRC:M*.cpp} ${.ALLSRC:M*.cxx}
+.   endif
+.   if ${${_FG}_FLAGS_FILES:M*.m} != ""
+       ${MKDEPCMD} -f ${DEPENDFILE} -a ${MKDEP} \
+           ${${_FG}_FLAGS} \
+           ${OBJCFLAGS:M-nostdinc*} ${OBJCFLAGS:M-[BID]*} \
+           ${OBJCFLAGS:M-Wno-import*} \
+           ${.ALLSRC:M*.m}
+.   endif
+.   if !empty(${_FG:M_}) && !empty(_DEPENDFILES)
+       cat ${_DEPENDFILES} >> ${.TARGET}
+.   endif
+.  endfor
+
+.  if target(_EXTRADEPEND)
+_EXTRADEPEND: .USE
+${DEPENDFILE}: _EXTRADEPEND
+.  endif
+
+. else
+depend: beforedepend _dependincs afterdepend
+. endif
+. if !target(beforedepend)
+beforedepend:
+. endif
+. if !target(afterdepend)
+afterdepend:
+. endif
+.endif
+
+.if !target(cleandepend)
+cleandepend:
+. if defined(SRCS)
+.  if ${CTAGS:T} == "ctags"
+       rm -f ${DEPENDFILE} ${_DEPENDFILES} tags
+.  elif ${CTAGS:T} == "gtags"
+       rm -f ${DEPENDFILE} ${_DEPENDFILES} GPATH GRTAGS GSYMS GTAGS
+.   if defined(HTML)
+       rm -rf HTML
+.   endif
+.  endif
+. endif
+.endif
+
+.if !target(checkdpadd) && (defined(DPADD) || defined(LDADD))
+checkdpadd:
+       @ldadd=`echo \`for lib in ${DPADD} ; do \
+               echo $$lib | sed 's;^/usr/lib/lib\(.*\)\.a;-l\1;' ; \
+       done \`` ; \
+       ldadd1=`echo ${LDADD}` ; \
+       if [ "$$ldadd" != "$$ldadd1" ] ; then \
+               echo ${.CURDIR} ; \
+               echo "DPADD -> $$ldadd" ; \
+               echo "LDADD -> $$ldadd1" ; \
+       fi
+.endif
+
+.if defined(INCS) && make(depend)
+_dependincs: buildincludes .WAIT installincludes
+.else
+_dependincs:
+.endif
+
+.ORDER: beforedepend _dependincs ${DEPENDFILE} afterdepend
+
+##
+#  TAIL: embedded equivalent bsd.dep.mk
+##
+
+.if !exists(${.OBJDIR}/${DEPENDFILE})
+. if defined(LIB) && !empty(LIB)
+${OBJS} ${STATICOBJS}: ${SRCS:M*.h}
+. endif
+.endif
+
+.if !target(clean)
+clean:
+. if defined(CLEANFILES) && !empty(CLEANFILES)
+       rm -f ${CLEANFILES}
+. endif
+. if defined(LIB) && !empty(LIB)
+       rm -f a.out ${OBJS} ${OBJS:S/$/.tmp/} ${STATICOBJS}
+. endif
+. if defined(_LIBS) && !empty(_LIBS)
+       rm -f ${_LIBS}
+. endif
+. if defined(CLEANDIRS) && !empty(CLEANDIRS)
+       rm -rf ${CLEANDIRS}
+. endif
+.endif
+
+.include <bsd.obj.mk>
+.include <bsd.sys.mk>
+
diff --git a/gnu/usr.bin/cc50/Makefile.langs b/gnu/usr.bin/cc50/Makefile.langs
new file mode 100644 (file)
index 0000000..3be70b2
--- /dev/null
@@ -0,0 +1,254 @@
+.include "Makefile.inc"
+
+COMPVERSION=   gcc50
+
+lang_tree_files+=      cp/cp-tree.def
+lang_tree_files+=      objc/objc-tree.def
+
+optionsfiles=          ${GCCDIR}/gcc/lto/lang.opt
+optionsfiles+=         ${GCCDIR}/gcc/c-family/c.opt
+optionsfiles+=         ${GCCDIR}/gcc/common.opt
+optionsfiles+=         ${GCCDIR}/gcc/config/i386/i386.opt
+optionsfiles+=         ${GCCDIR}/gcc/config/rpath.opt
+optionsfiles+=         ${GCCDIR}/gcc/config/dragonfly.opt
+
+header_name=           config.h system.h coretypes.h options.h tm.h
+header_name_save=      config.h system.h coretypes.h tm.h
+
+LANG_SPECS_FILES=      cp/lang-specs.h \
+                       objc/lang-specs.h \
+                       lto/lang-specs.h
+
+# Object files for gcc driver.
+GCC_SRCS = gcc.c ggc-none.c
+EXTRA_GCC_SRCS = driver-i386.c
+
+# this is directly from GCC's Makefile, beware evil
+# gtype-desc.h will generate wrong if language order changed
+GTFILES = $(CPP_ID_DATA_H) $(srcdir)/input.h $(srcdir)/coretypes.h \
+  $(host_xm_file_list) \
+  $(tm_file_list) $(HASHTAB_H) $(SPLAY_TREE_H) $(srcdir)/bitmap.h \
+  $(srcdir)/wide-int.h $(srcdir)/alias.h $(srcdir)/coverage.c $(srcdir)/rtl.h \
+  $(srcdir)/optabs.h $(srcdir)/tree.h $(srcdir)/tree-core.h \
+  $(srcdir)/libfuncs.h $(SYMTAB_H) \
+  $(srcdir)/real.h $(srcdir)/function.h $(srcdir)/insn-addr.h $(srcdir)/hwint.h \
+  $(srcdir)/fixed-value.h \
+  $(srcdir)/output.h $(srcdir)/cfgloop.h $(srcdir)/cfg.h \
+  $(srcdir)/cselib.h $(srcdir)/basic-block.h  $(srcdir)/ipa-ref.h $(srcdir)/cgraph.h \
+  $(srcdir)/reload.h $(srcdir)/caller-save.c $(srcdir)/symtab.c \
+  $(srcdir)/alias.c $(srcdir)/bitmap.c $(srcdir)/cselib.c $(srcdir)/cgraph.c \
+  $(srcdir)/ipa-prop.c $(srcdir)/ipa-cp.c $(srcdir)/ipa-utils.h \
+  $(srcdir)/dbxout.c \
+  $(srcdir)/signop.h \
+  $(srcdir)/dwarf2out.h \
+  $(srcdir)/dwarf2asm.c \
+  $(srcdir)/dwarf2cfi.c \
+  $(srcdir)/dwarf2out.c \
+  $(srcdir)/tree-vect-generic.c \
+  $(srcdir)/dojump.c \
+  $(srcdir)/emit-rtl.c $(srcdir)/except.h $(srcdir)/explow.c $(srcdir)/expr.c \
+  $(srcdir)/expr.h \
+  $(srcdir)/function.c $(srcdir)/except.c \
+  $(srcdir)/gcse.c $(srcdir)/godump.c \
+  $(srcdir)/lists.c $(srcdir)/optabs.c \
+  $(srcdir)/profile.c $(srcdir)/mcf.c \
+  $(srcdir)/reg-stack.c $(srcdir)/cfgrtl.c \
+  $(srcdir)/sdbout.c $(srcdir)/stor-layout.c \
+  $(srcdir)/stringpool.c $(srcdir)/tree.c $(srcdir)/varasm.c \
+  $(srcdir)/gimple.h \
+  $(srcdir)/gimple-ssa.h \
+  $(srcdir)/tree-chkp.c \
+  $(srcdir)/tree-ssanames.c $(srcdir)/tree-eh.c $(srcdir)/tree-ssa-address.c \
+  $(srcdir)/tree-cfg.c \
+  $(srcdir)/tree-dfa.c \
+  $(srcdir)/tree-iterator.c $(srcdir)/gimple-expr.c \
+  $(srcdir)/tree-chrec.h \
+  $(srcdir)/tree-scalar-evolution.c \
+  $(srcdir)/tree-ssa-operands.h \
+  $(srcdir)/tree-profile.c $(srcdir)/tree-nested.c \
+  $(srcdir)/tree-parloops.c \
+  $(srcdir)/omp-low.c \
+  $(srcdir)/omp-low.h \
+  $(srcdir)/targhooks.c $(out_file) $(srcdir)/passes.c $(srcdir)/cgraphunit.c \
+  $(srcdir)/cgraphclones.c \
+  $(srcdir)/tree-phinodes.c \
+  $(srcdir)/tree-ssa-alias.h \
+  $(srcdir)/tree-ssanames.h \
+  $(srcdir)/ipa-prop.h \
+  $(srcdir)/trans-mem.c \
+  $(srcdir)/lto-streamer.h \
+  $(srcdir)/target-globals.h \
+  $(srcdir)/ipa-inline.h \
+  $(srcdir)/vtable-verify.c \
+  $(srcdir)/asan.c \
+  $(srcdir)/ubsan.c \
+  $(srcdir)/tsan.c \
+  $(srcdir)/sanopt.c \
+  $(srcdir)/ipa-devirt.c \
+  $(srcdir)/internal-fn.h \
+
+
+GTFILES_CPP= \
+  [cp] \
+  $(srcdir)/cp/rtti.c \
+  $(srcdir)/cp/mangle.c \
+  $(srcdir)/cp/name-lookup.h \
+  $(srcdir)/cp/name-lookup.c \
+  $(srcdir)/cp/cp-tree.h \
+  $(srcdir)/cp/decl.h \
+  $(srcdir)/cp/call.c \
+  $(srcdir)/cp/decl.c \
+  $(srcdir)/cp/decl2.c \
+  $(srcdir)/cp/pt.c \
+  $(srcdir)/cp/repo.c \
+  $(srcdir)/cp/semantics.c \
+  $(srcdir)/cp/tree.c \
+  $(srcdir)/cp/parser.h \
+  $(srcdir)/cp/parser.c \
+  $(srcdir)/cp/method.c \
+  $(srcdir)/cp/typeck2.c \
+  $(srcdir)/c-family/c-common.c \
+  $(srcdir)/c-family/c-common.h \
+  $(srcdir)/c-family/c-objc.h \
+  $(srcdir)/c-family/c-lex.c \
+  $(srcdir)/c-family/c-pragma.h \
+  $(srcdir)/c-family/c-pragma.c \
+  $(srcdir)/cp/class.c \
+  $(srcdir)/cp/cp-objcp-common.c \
+  $(srcdir)/cp/cp-lang.c \
+  $(srcdir)/cp/except.c \
+  $(srcdir)/cp/vtable-class-hierarchy.c \
+  $(srcdir)/cp/constexpr.c 
+
+GTFILES+= ${GTFILES_CPP}
+
+GTFILES_LTO= \
+  [lto] \
+  $(srcdir)/lto/lto-tree.h \
+  $(srcdir)/lto/lto-lang.c \
+  $(srcdir)/lto/lto.c \
+  $(srcdir)/lto/lto.h 
+
+GTFILES+= ${GTFILES_LTO}
+
+GTFILES_OBJC= \
+  [objc] \
+  $(srcdir)/objc/objc-map.h \
+  $(srcdir)/c-family/c-objc.h \
+  $(srcdir)/objc/objc-act.h \
+  $(srcdir)/objc/objc-act.c \
+  $(srcdir)/objc/objc-runtime-shared-support.c \
+  $(srcdir)/objc/objc-gnu-runtime-abi-01.c \
+  $(srcdir)/objc/objc-next-runtime-abi-01.c \
+  $(srcdir)/objc/objc-next-runtime-abi-02.c \
+  $(srcdir)/c/c-parser.c \
+  $(srcdir)/c/c-tree.h \
+  $(srcdir)/c/c-decl.c \
+  $(srcdir)/c/c-lang.h \
+  $(srcdir)/c/c-objc-common.c \
+  $(srcdir)/c-family/c-common.c \
+  $(srcdir)/c-family/c-common.h \
+  $(srcdir)/c-family/c-cppbuiltin.c \
+  $(srcdir)/c-family/c-pragma.h \
+  $(srcdir)/c-family/c-pragma.c \
+  [objcp] \
+  $(srcdir)/cp/rtti.c \
+  $(srcdir)/cp/mangle.c \
+  $(srcdir)/cp/name-lookup.h \
+  $(srcdir)/cp/name-lookup.c \
+  $(srcdir)/cp/cp-tree.h \
+  $(srcdir)/cp/decl.h \
+  $(srcdir)/cp/call.c \
+  $(srcdir)/cp/decl.c \
+  $(srcdir)/cp/decl2.c \
+  $(srcdir)/cp/pt.c \
+  $(srcdir)/cp/repo.c \
+  $(srcdir)/cp/semantics.c \
+  $(srcdir)/cp/tree.c \
+  $(srcdir)/cp/parser.h \
+  $(srcdir)/cp/parser.c \
+  $(srcdir)/cp/method.c \
+  $(srcdir)/cp/typeck2.c \
+  $(srcdir)/c-family/c-common.c \
+  $(srcdir)/c-family/c-common.h \
+  $(srcdir)/c-family/c-objc.h \
+  $(srcdir)/c-family/c-lex.c \
+  $(srcdir)/c-family/c-pragma.h \
+  $(srcdir)/c-family/c-pragma.c \
+  $(srcdir)/cp/class.c \
+  $(srcdir)/cp/cp-objcp-common.c \
+  $(srcdir)/cp/except.c \
+  $(srcdir)/cp/vtable-class-hierarchy.c \
+  $(srcdir)/cp/constexpr.c \
+  $(srcdir)/objc/objc-map.h \
+  $(srcdir)/objc/objc-act.h \
+  $(srcdir)/objc/objc-act.c \
+  $(srcdir)/objc/objc-runtime-shared-support.c \
+  $(srcdir)/objc/objc-gnu-runtime-abi-01.c \
+  $(srcdir)/objc/objc-next-runtime-abi-01.c \
+  $(srcdir)/objc/objc-next-runtime-abi-02.c \
+  $(srcdir)/c-family/c-cppbuiltin.c
+
+GTFILES+= ${GTFILES_OBJC}
+
+# C
+GTFILES_C+= \
+  [c] \
+  $(srcdir)/c/c-lang.c \
+  $(srcdir)/c/c-tree.h \
+  $(srcdir)/c/c-decl.c \
+  $(srcdir)/c-family/c-common.c \
+  $(srcdir)/c-family/c-common.h \
+  $(srcdir)/c-family/c-objc.h \
+  $(srcdir)/c-family/c-cppbuiltin.c \
+  $(srcdir)/c-family/c-pragma.h \
+  $(srcdir)/c-family/c-pragma.c \
+  $(srcdir)/c/c-objc-common.c \
+  $(srcdir)/c/c-parser.c \
+  $(srcdir)/c/c-lang.h 
+
+GTFILES+= ${GTFILES_C}
+
+# verbatim from gcc/Makefile and gcc/c/Make-lang.in
+# Language-specific object files shared by all C-family front ends.
+C_COMMON_OBJS = c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o \
+  c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o \
+  c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o \
+  c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o \
+  c-family/c-semantics.o c-family/c-ada-spec.o \
+  c-family/c-cilkplus.o \
+  c-family/array-notation-common.o c-family/cilk.o c-family/c-ubsan.o
+
+C_TARGET_OBJS=i386-c.o default-c.o
+
+CXX_TARGET_OBJS=i386-c.o default-c.o
+
+C_AND_OBJC_OBJS = attribs.o c/c-errors.o c/c-decl.o c/c-typeck.o \
+  c/c-convert.o c/c-aux-info.o c/c-objc-common.o c/c-parser.o \
+  c/c-array-notation.o $(C_COMMON_OBJS) $(C_TARGET_OBJS)
+
+C_OBJS = c/c-lang.o c-family/stub-objc.o $(C_AND_OBJC_OBJS)
+
+CXX_C_OBJS = attribs.o incpath.o \
+       $(C_COMMON_OBJS) $(CXX_TARGET_OBJS)
+
+# verbatim from cp/Make-lang.in
+# Language-specific object files for C++ and Objective C++.
+CXX_AND_OBJCXX_OBJS = cp/call.o cp/decl.o cp/expr.o cp/pt.o cp/typeck2.o \
+ cp/class.o cp/decl2.o cp/error.o cp/lex.o cp/parser.o cp/ptree.o cp/rtti.o \
+ cp/typeck.o cp/cvt.o cp/except.o cp/friend.o cp/init.o cp/method.o \
+ cp/search.o cp/semantics.o cp/tree.o cp/repo.o cp/dump.o cp/optimize.o \
+ cp/mangle.o cp/cp-objcp-common.o cp/name-lookup.o cp/cxx-pretty-print.o \
+ cp/cp-cilkplus.o \
+ cp/cp-gimplify.o cp/cp-array-notation.o cp/lambda.o \
+ cp/vtable-class-hierarchy.o cp/constexpr.o cp/cp-ubsan.o $(CXX_C_OBJS)
+
+# verbatim from gcc/objc/Make-lang.in
+# Language-specific object files for Objective C.
+OBJC_OBJS = objc/objc-lang.o objc/objc-act.o hash-table.o \
+   objc/objc-runtime-shared-support.o \
+   objc/objc-gnu-runtime-abi-01.o \
+   objc/objc-next-runtime-abi-01.o \
+   objc/objc-next-runtime-abi-02.o \
+   objc/objc-encoding.o \
+   objc/objc-map.o
diff --git a/gnu/usr.bin/cc50/Makefile.tgt b/gnu/usr.bin/cc50/Makefile.tgt
new file mode 100644 (file)
index 0000000..1b7833c
--- /dev/null
@@ -0,0 +1,58 @@
+TARGET_ARCH?=  ${MACHINE_ARCH}
+
+version=       ${GCCCOMPLETEVER}
+target_machine=        ${TARGET_ARCH}-pc-dragonflybsd
+
+# try to remove next two lines
+BYTESLONG=     8
+HWI_TYPE=      long
+
+# from gcc/Makefile
+srcdir= ${GCCDIR}/gcc
+
+host_xm_file_list=     ${STOPDIR}/cc_prep/auto-host.h
+host_xm_file_list+=    ${GCCDIR}/include/ansidecl.h
+HASHTAB_H=             ${GCCDIR}/include/hashtab.h
+SPLAY_TREE_H=          ${GCCDIR}/include/splay-tree.h
+SYMTAB_H=              ${GCCDIR}/libcpp/include/symtab.h
+CPP_ID_DATA_H=         ${GCCDIR}/libcpp/include/line-map.h \
+                       ${GCCDIR}/libcpp/include/cpplib.h \
+                       ${GCCDIR}/libcpp/include/cpp-id-data.h
+
+md_file=               ${GCCDIR}/gcc/config/i386/i386.md
+out_file=              $(srcdir)/config/i386/i386.c
+
+EXTRA_GCC_SRCS=                driver-i386.c
+GTFILES_SRCDIR=                $(srcdir)
+
+
+# This is ordered to avoid build warnings/errors
+
+TARGET_INC=    options.h
+TARGET_INC+=   insn-constants.h
+TARGET_INC+=   config/vxworks-dummy.h
+TARGET_INC+=   config/i386/biarch64.h
+TARGET_INC+=   config/i386/i386.h
+TARGET_INC+=   config/i386/unix.h
+TARGET_INC+=   config/i386/att.h
+TARGET_INC+=   config/dbxelf.h
+TARGET_INC+=   config/elfos.h
+TARGET_INC+=   config/dragonfly.h
+TARGET_INC+=   config/dragonfly-stdint.h
+TARGET_INC+=   config/i386/x86-64.h
+TARGET_INC+=   config/i386/dragonfly.h
+TARGET_INC+=   config/initfini-array.h
+TARGET_INC+=   dragonfly-native.h
+
+#
+# Use TARGET_INC as a template and build a list of target specific
+# include files for gengtype to scan
+#
+.for H in ${TARGET_INC}
+. for D in ${GCCDIR}/gcc/config ${GCCDIR}/gcc \
+       ${STOPDIR}/cc_prep/config ${STOPDIR}/cc_prep ${OTOPDIR}/cc_prep
+.  if exists($D/$H) && empty(tm_file_list:M*/$H)
+tm_file_list+= $D/$H
+.  endif
+. endfor
+.endfor
diff --git a/gnu/usr.bin/cc50/Makefile.version b/gnu/usr.bin/cc50/Makefile.version
new file mode 100644 (file)
index 0000000..a719174
--- /dev/null
@@ -0,0 +1,5 @@
+GCCCOMPLETEVER=        5.0.0
+GCCRELEASE=    Snapshot # choices are "Snapshot" or "Release"
+GCCDATESTAMP=  2015-02-01
+GCCPOINTVER=   ${GCCCOMPLETEVER:R}
+GCCSHORTVER=   ${GCCPOINTVER:S/.//}
diff --git a/gnu/usr.bin/cc50/backends/Makefile b/gnu/usr.bin/cc50/backends/Makefile
new file mode 100644 (file)
index 0000000..befbef1
--- /dev/null
@@ -0,0 +1,6 @@
+SUBDIR_ORDERED=        guts programs
+
+SUBDIR+=       guts
+SUBDIR+=       programs
+
+.include <bsd.subdir.mk>
diff --git a/gnu/usr.bin/cc50/backends/guts/Makefile b/gnu/usr.bin/cc50/backends/guts/Makefile
new file mode 100644 (file)
index 0000000..00449fa
--- /dev/null
@@ -0,0 +1,8 @@
+SUBDIR_ORDERED=
+
+SUBDIR+=       guts-common
+SUBDIR+=       guts-cobjc
+SUBDIR+=       guts-cxx
+SUBDIR+=       guts-target
+
+.include <bsd.subdir.mk>
diff --git a/gnu/usr.bin/cc50/backends/guts/guts-cobjc/Makefile b/gnu/usr.bin/cc50/backends/guts/guts-cobjc/Makefile
new file mode 100644 (file)
index 0000000..f866501
--- /dev/null
@@ -0,0 +1,19 @@
+# Despite the .c extension, these files and headers must be built by c++
+
+GCC_NO_LIBS=   yes
+TOP_PREFIX=    ../../
+
+.include "../../../Makefile.inc"
+.include "../../../Makefile.langs"
+
+LIB=           guts-cobjc
+
+.for object in ${C_AND_OBJC_OBJS}
+. if ! ${C_COMMON_OBJS:M${object}}
+.  if ! ${C_TARGET_OBJS:M${object}}
+SRCS+=         ${object:T:.o=.c}
+.  endif
+. endif
+.endfor
+
+.include "../../../Makefile.intcxx_lib"
diff --git a/gnu/usr.bin/cc50/backends/guts/guts-common/Makefile b/gnu/usr.bin/cc50/backends/guts/guts-common/Makefile
new file mode 100644 (file)
index 0000000..901eb40
--- /dev/null
@@ -0,0 +1,12 @@
+# Despite the .c extension, these files and headers must be built by c++
+
+GCC_NO_LIBS=   yes
+TOP_PREFIX=    ../../
+
+.include "../../../Makefile.inc"
+.include "../../../Makefile.langs"
+
+LIB=           guts-common
+SRCS=          ${C_COMMON_OBJS:T:.o=.c} main.c tree-browser.c
+
+.include "..//../../Makefile.intcxx_lib"
diff --git a/gnu/usr.bin/cc50/backends/guts/guts-cxx/Makefile b/gnu/usr.bin/cc50/backends/guts/guts-cxx/Makefile
new file mode 100644 (file)
index 0000000..a68f072
--- /dev/null
@@ -0,0 +1,21 @@
+# Despite the .c extension, these files and headers must be built by c++
+
+GCC_NO_LIBS=   yes
+GCC_LANG_DIR=  gcc/cp
+TOP_PREFIX=    ../../
+
+.include "../../../Makefile.inc"
+.include "../../../Makefile.langs"
+
+LIB=           guts-cxx
+
+# note C_TARGET_OBJS == CXX_TARGET_OBJS
+.for object in ${CXX_AND_OBJCXX_OBJS}
+. if ! ${C_COMMON_OBJS:M${object}}
+.  if ! ${C_TARGET_OBJS:M${object}}
+SRCS+=         ${object:T:.o=.c}
+.  endif
+. endif
+.endfor
+
+.include "../../../Makefile.intcxx_lib"
diff --git a/gnu/usr.bin/cc50/backends/guts/guts-target/Makefile b/gnu/usr.bin/cc50/backends/guts/guts-target/Makefile
new file mode 100644 (file)
index 0000000..5ea1032
--- /dev/null
@@ -0,0 +1,12 @@
+# Despite the .c extension, these files and headers must be built by c++
+
+GCC_NO_LIBS=   yes
+TOP_PREFIX=    ../../
+
+.include "../../../Makefile.inc"
+.include "../../../Makefile.langs"
+
+LIB=           guts-target
+SRCS=          ${C_TARGET_OBJS:T:.o=.c}
+
+.include "../../../Makefile.intcxx_lib"
diff --git a/gnu/usr.bin/cc50/backends/programs/Makefile b/gnu/usr.bin/cc50/backends/programs/Makefile
new file mode 100644 (file)
index 0000000..15ccc9b
--- /dev/null
@@ -0,0 +1,14 @@
+# These backends can be built in parallel
+
+SUBDIR_ORDERED=                # maximum parallelism
+
+SUBDIR+=       cc1
+SUBDIR+=       cc1plus
+SUBDIR+=       cc1obj
+SUBDIR+=       lto1
+
+.if ! defined (BOOTSTRAPPING)
+SUBDIR+=       lto-wrapper
+.endif
+
+.include <bsd.subdir.mk>
diff --git a/gnu/usr.bin/cc50/backends/programs/cc1/Makefile b/gnu/usr.bin/cc50/backends/programs/cc1/Makefile
new file mode 100644 (file)
index 0000000..612030d
--- /dev/null
@@ -0,0 +1,46 @@
+# If we defined SRCS, the mkdep fails because it evaluates files with .c
+# extension with cc instead of c++ (go figure).  To avoid that, we need
+# to define OBJS directly
+
+TOP_PREFIX=    ../../
+
+.include "../../../Makefile.inc"
+.include "../../../Makefile.langs"
+
+PROG_CXX=      cc1
+NOMAN=         yes
+NOSHARED?=     yes
+
+C_OBJS=                c/c-lang.o c/stub-objc.o
+CXXXX_OBJS=    ${C_OBJS:T} 
+OBJS=          ${CXXXX_OBJS} cc1-checksum.o
+SRCS=          
+
+GUTS=          ../../guts/guts-cobjc/libguts-cobjc.na \
+               ../../guts/guts-common/libguts-common.na \
+               ../../guts/guts-target/libguts-target.na
+BACKEND=       ${LIBBACKEND} ${LIBCOMMONTARG} ${LIBCOMMON} \
+               ${LIBCPP} ${LIBDECNUMBER}
+LIBS=          ${LIBCOMMON} ${LIBCPP} ${LIBBACKTRACE} ${LIBIBERTY} \
+               ${LIBDECNUMBER}
+LDADD=         ${GUTS} ${BACKEND} ${LIBS} ${BACKENDLIBS}
+DPADD=         ${GUTS} ${BACKEND} ${LIBS} ${BACKENDLIBS}
+
+checksum-options:
+       echo "${LD} ${LDFLAGS}" > ${.TARGET} 
+
+cc1-checksum.c: ${CXXXX_OBJS} ${GUTS} ${BACKEND} checksum-options
+       ${TOOLDIR}/genchecksum.nx ${CXXXX_OBJS} ${GUTS} ${BACKEND} \
+           checksum-options > ${.TARGET}
+
+# hack to force c++ compiler to compile *.c files to create library
+.for ofile in ${OBJS}
+${ofile}: ${ofile:.o=.c}
+       ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
+.endfor
+
+cc1-checksum.o: cc1-checksum.c
+
+CLEANFILES=    cc1-checksum.* checksum-options
+
+.include <bsd.prog.mk>
diff --git a/gnu/usr.bin/cc50/backends/programs/cc1obj/Makefile b/gnu/usr.bin/cc50/backends/programs/cc1obj/Makefile
new file mode 100644 (file)
index 0000000..280625f
--- /dev/null
@@ -0,0 +1,44 @@
+# If we defined SRCS, the mkdep fails because it evaluates files with .c
+# extension with cc instead of c++ (go figure).  To avoid that, we need
+# to define OBJS directly
+
+GCC_LANG_DIR=  gcc/objc
+TOP_PREFIX=    ../../
+
+.include "../../../Makefile.inc"
+.include "../../../Makefile.langs"
+
+PROG_CXX=      cc1obj
+NOMAN=         yes
+NOSHARED?=     yes
+
+CXXXX_OBJS=    ${OBJC_OBJS:T:c.=o}
+OBJS=          ${CXXXX_OBJS} cc1obj-checksum.o
+SRCS=
+
+GUTS=          ../../guts/guts-cobjc/libguts-cobjc.na \
+               ../../guts/guts-common/libguts-common.na \
+               ../../guts/guts-target/libguts-target.na
+BACKEND=       ${LIBBACKEND} ${LIBCOMMONTARG} ${LIBCOMMON} \
+               ${LIBCPP} ${LIBDECNUMBER}
+LIBS=          ${LIBCOMMON} ${LIBCPP} ${LIBBACKTRACE} ${LIBIBERTY} \
+               ${LIBDECNUMBER}
+LDADD=         ${GUTS} ${BACKEND} ${LIBS} ${BACKENDLIBS}
+DPADD=         ${GUTS} ${BACKEND} ${LIBS} ${BACKENDLIBS}
+
+checksum-options:
+       echo "${LD} ${LDFLAGS}" > ${.TARGET} 
+
+cc1obj-checksum.c: ${CXXXX_OBJS} ${GUTS} ${BACKEND} checksum-options
+       ${TOOLDIR}/genchecksum.nx ${CXXXX_OBJS} ${GUTS} ${BACKEND} \
+           checksum-options > ${.TARGET}
+
+# hack to force c++ compiler to compile *.c files to create library
+.for ofile in ${OBJS}
+${ofile}: ${ofile:.o=.c}
+       ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
+.endfor
+
+CLEANFILES=    cc1obj-checksum.* checksum-options
+
+.include <bsd.prog.mk>
diff --git a/gnu/usr.bin/cc50/backends/programs/cc1plus/Makefile b/gnu/usr.bin/cc50/backends/programs/cc1plus/Makefile
new file mode 100644 (file)
index 0000000..76b654f
--- /dev/null
@@ -0,0 +1,45 @@
+# If we defined SRCS, the mkdep fails because it evaluates files with .c
+# extension with cc instead of c++ (go figure).  To avoid that, we need
+# to define OBJS directly
+
+GCC_LANG_DIR=  gcc/cp
+TOP_PREFIX=    ../../
+
+.include "../../../Makefile.inc"
+.include "../../../Makefile.langs"
+
+PROG_CXX=      cc1plus
+NOMAN=         yes
+NOSHARED?=     yes
+
+CXX_OBJS=      cp/cp-lang.o cp/stub-objc.o
+CXXXX_OBJS=    ${CXX_OBJS:T}
+OBJS=          ${CXXXX_OBJS} cc1plus-checksum.o
+SRCS=          
+
+GUTS=          ../../guts/guts-cxx/libguts-cxx.na \
+               ../../guts/guts-common/libguts-common.na \
+               ../../guts/guts-target/libguts-target.na
+BACKEND=       ${LIBBACKEND} ${LIBCOMMONTARG} ${LIBCOMMON} \
+               ${LIBCPP} ${LIBDECNUMBER}
+LIBS=          ${LIBCOMMON} ${LIBCPP} ${LIBBACKTRACE} ${LIBIBERTY} \
+               ${LIBDECNUMBER}
+LDADD=         ${GUTS} ${BACKEND} ${LIBS} ${BACKENDLIBS}
+DPADD=         ${GUTS} ${BACKEND} ${LIBS} ${BACKENDLIBS}
+
+checksum-options:
+       echo "${LD} ${LDFLAGS}" > ${.TARGET} 
+
+cc1plus-checksum.c: ${CXXXX_OBJS} ${GUTS} ${BACKEND} checksum-options
+       ${TOOLDIR}/genchecksum.nx ${CXXXX_OBJS} ${GUTS} ${BACKEND} \
+           checksum-options > ${.TARGET}
+
+# hack to force c++ compiler to compile *.c files to create library
+.for ofile in ${OBJS}
+${ofile}: ${ofile:.o=.c}
+       ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
+.endfor
+
+CLEANFILES=    cc1plus-checksum.* checksum-options
+
+.include <bsd.prog.mk>
diff --git a/gnu/usr.bin/cc50/backends/programs/lto-wrapper/Makefile b/gnu/usr.bin/cc50/backends/programs/lto-wrapper/Makefile
new file mode 100644 (file)
index 0000000..2346071
--- /dev/null
@@ -0,0 +1,31 @@
+# If we defined SRCS, the mkdep fails because it evaluates files with .c
+# extension with cc instead of c++ (go figure).  To avoid that, we need
+# to define OBJS directly
+
+TOP_PREFIX=    ../../
+
+.include "../../../Makefile.inc"
+
+PROG_CXX=      lto-wrapper
+NOMAN=         yes
+
+SRCS=
+OBJS=          lto-wrapper.o \
+               collect-utils.o \
+               ggc-none.o
+
+GUTS=          ../../guts/guts-common/libguts-common.na \
+               ../../guts/guts-target/libguts-target.na
+LIBS=          ${LIBCOMMONTARG} ${LIBCOMMON} ${LIBCPP} \
+               ${LIBBACKTRACE} ${LIBIBERTY} ${LIBDECNUMBER}
+LDADD=         ${LIBS}
+DPADD=         ${LIBS}
+
+
+# hack to force c++ compiler to compile *.c files to create library
+.for ofile in ${OBJS}
+${ofile}: ${ofile:.o=.c}
+       ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
+.endfor
+
+.include <bsd.prog.mk>
diff --git a/gnu/usr.bin/cc50/backends/programs/lto1/Makefile b/gnu/usr.bin/cc50/backends/programs/lto1/Makefile
new file mode 100644 (file)
index 0000000..0954bb5
--- /dev/null
@@ -0,0 +1,34 @@
+# If we defined SRCS, the mkdep fails because it evaluates files with .c
+# extension with cc instead of c++ (go figure).  To avoid that, we need
+# to define OBJS directly
+
+GCC_LANG_DIR=  gcc/lto
+TOP_PREFIX=    ../../
+
+.include "../../../Makefile.inc"
+.include "../../../Makefile.langs"
+
+PROG_CXX=      lto1
+NOMAN=         yes
+
+# verbatim from gcc/lto/Make-lang.in
+LTO_OBJS=      lto/lto-lang.o lto/lto.o lto/lto-object.o attribs.o \
+               lto/lto-partition.o lto/lto-symtab.o
+OBJS=          ${LTO_OBJS:T} main.o tree-browser.o
+SRCS=          
+
+BACKEND=       ${LIBBACKEND} ${LIBCOMMONTARG} ${LIBCOMMON} \
+               ${LIBCPP} ${LIBDECNUMBER}
+LIBS=          ${LIBCOMMON} ${LIBCPP} ${LIBBACKTRACE} ${LIBIBERTY} \
+               ${LIBDECNUMBER}
+LDADD=         ${BACKEND} ${BACKENDLIBS} ${LIBS}
+DPADD=         ${BACKEND} ${BACKENDLIBS} ${LIBS}
+
+
+# hack to force c++ compiler to compile *.c files to create library
+.for ofile in ${OBJS}
+${ofile}: ${ofile:.o=.c}
+       ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
+.endfor
+
+.include <bsd.prog.mk>
diff --git a/gnu/usr.bin/cc50/cc_prep/Makefile b/gnu/usr.bin/cc50/cc_prep/Makefile
new file mode 100644 (file)
index 0000000..05f14b9
--- /dev/null
@@ -0,0 +1,144 @@
+.include "../Makefile.inc"
+.include "../Makefile.langs"
+
+CONTRIBDIR=    ${GCCDIR}/gcc
+
+LANGUAGES=     c c++ objc LTO
+
+version.c: ${CONTRIBDIR}/version.c Makefile ../Makefile.inc
+       > ${.TARGET}
+       echo '#define BASEVER "${GCCCOMPLETEVER}"' >> ${.TARGET}
+       echo '#define DATESTAMP ""' >> ${.TARGET}
+       echo '#define DEVPHASE ""' >> ${.TARGET}
+       echo '#define REVISION " [DragonFly] ${GCCRELEASE}/${GCCDATESTAMP}"' >> ${.TARGET}
+       echo '#define PKGVERSION ""' >> ${.TARGET}
+       echo '#define BUGURL "<http://bugs.dragonflybsd.org>"' >> ${.TARGET}
+       cat ${.ALLSRC:M*.c} >> ${.TARGET}
+
+bversion.h:
+       echo "#define BUILDING_GCC_MAJOR `echo $(GCCCOMPLETEVER) | sed -e 's/^\([0-9]*\).*$$/\1/'`" > ${.TARGET}
+       echo "#define BUILDING_GCC_MINOR `echo $(GCCCOMPLETEVER) | sed -e 's/^[0-9]*\.\([0-9]*\).*$$/\1/'`" >> ${.TARGET}
+       echo "#define BUILDING_GCC_PATCHLEVEL `echo $(GCCCOMPLETEVER) | sed -e 's/^[0-9]*\.[0-9]*\.\([0-9]*\)$$/\1/'`" >> ${.TARGET}
+       echo "#define BUILDING_GCC_VERSION (BUILDING_GCC_MAJOR * 1000 + BUILDING_GCC_MINOR)" >> ${.TARGET}
+
+plugin-version.h:
+       echo '#include "configargs.h"' > ${.TARGET}
+       echo "#define GCCPLUGIN_VERSION_MAJOR   `echo $(GCCCOMPLETEVER) | sed -e 's/^\([0-9]*\).*$$/\1/'`" >> ${.TARGET}
+       echo "#define GCCPLUGIN_VERSION_MINOR   `echo $(GCCCOMPLETEVER) | sed -e 's/^[0-9]*\.\([0-9]*\).*$$/\1/'`" >> ${.TARGET}
+       echo "#define GCCPLUGIN_VERSION_PATCHLEVEL   `echo $(GCCCOMPLETEVER) | sed -e 's/^[0-9]*\.[0-9]*\.\([0-9]*\)$$/\1/'`" >> ${.TARGET}
+       echo "#define GCCPLUGIN_VERSION  (GCCPLUGIN_VERSION_MAJOR*1000 + GCCPLUGIN_VERSION_MINOR)" >> ${.TARGET}
+       echo 'static char basever[] = "${GCCCOMPLETEVER}";' >> ${.TARGET}
+       echo "static char datestamp[] = \"`echo ${GCCDATESTAMP} | sed -e 's/\.//g'`\";" >> ${.TARGET}
+       echo 'static char devphase[] = "release";' >> ${.TARGET}
+       echo 'static char revision[] = "";' >> ${.TARGET}
+       echo 'static struct plugin_gcc_version gcc_version = {basever,' >> ${.TARGET}
+       echo '   datestamp, devphase, revision, configuration_arguments};' >> ${.TARGET}
+
+configargs.h: Makefile
+       echo 'static const char configuration_arguments[] = '   >> ${.TARGET}
+       echo '  "DragonFly/${TARGET_ARCH} system compiler (${LANGUAGES}${LANG3}${LANG4})";'     >> ${.TARGET}
+       echo 'static const char thread_model[] = "posix";'      >> ${.TARGET}
+       echo 'static const struct {'                    >> ${.TARGET}
+       echo '  const char *name, *value;'              >> ${.TARGET}
+       echo '} configure_default_options[] ='          >> ${.TARGET}
+       echo '  { { "cpu", "generic" } };'              >> ${.TARGET}
+
+bconfig.h:
+       echo '#ifndef GCC_BCONFIG_H'    >  ${.TARGET}
+       echo '#define GCC_BCONFIG_H'    >> ${.TARGET}
+       echo '#include "auto-host.h"'   >> ${.TARGET}
+       echo '#ifdef IN_GCC'            >> ${.TARGET}
+       echo '# include "ansidecl.h"'   >> ${.TARGET}
+       echo '#endif'                   >> ${.TARGET}
+       echo '#endif'                   >> ${.TARGET}
+
+tm.h:
+       echo '#ifndef GCC_TM_H'         >  ${.TARGET}
+       echo '#define GCC_TM_H'         >> ${.TARGET}
+       echo '#ifndef LIBC_GLIBC'       >> ${.TARGET}
+       echo '# define LIBC_GLIBC 1'    >> ${.TARGET}
+       echo '#endif'                   >> ${.TARGET}
+       echo '#ifndef LIBC_UCLIBC'      >> ${.TARGET}
+       echo '# define LIBC_UCLIBC 2'   >> ${.TARGET}
+       echo '#endif'                   >> ${.TARGET}
+       echo '#ifndef LIBC_BIONIC'      >> ${.TARGET}
+       echo '# define LIBC_BIONIC 3'   >> ${.TARGET}
+       echo '#endif'                   >> ${.TARGET}
+       echo '#ifdef IN_GCC'            >> ${.TARGET}
+.for H in ${TARGET_INC}
+       echo '# include "$H"'           >> ${.TARGET}
+.endfor
+       echo '#endif'                   >> ${.TARGET}
+       echo '#if defined IN_GCC && !defined GENERATOR_FILE && !defined USED_FOR_TARGET' >> ${.TARGET}
+       echo '# include "insn-flags.h"' >> ${.TARGET}
+       echo '#endif'                   >> ${.TARGET}
+       echo '#if defined IN_GCC && !defined GENERATOR_FILE' >> ${.TARGET}
+       echo '# include "insn-modes.h"' >> ${.TARGET}
+       echo '#endif'                   >> ${.TARGET}
+       echo '#if defined IN_GCC && defined GENERATOR_FILE && !defined BITS_PER_UNIT' >> ${.TARGET}
+       echo '#include "machmode.h"'    >> ${.TARGET}
+       echo '#endif'                   >> ${.TARGET}
+       echo '# include "defaults.h"'   >> ${.TARGET}
+       echo '#endif'                   >> ${.TARGET}
+
+tm_p.h:
+       echo '#ifndef GCC_TM_P_H'                       >  ${.TARGET}
+       echo '#define GCC_TM_P_H'                       >> ${.TARGET}
+       echo '#ifdef IN_GCC'                            >> ${.TARGET}
+       echo '# include "config/i386/i386-protos.h"'    >> ${.TARGET}
+       echo '# include "tm-preds.h"'                   >> ${.TARGET}
+       echo '#endif'                                   >> ${.TARGET}
+       echo '#endif'                                   >> ${.TARGET}
+
+specs.h:
+.for F in ${LANG_SPECS_FILES}
+       echo "#include \"${F}\"" >> ${.TARGET}
+.endfor
+
+all-tree.def:
+       echo '#include "tree.def"'              >> ${.TARGET}
+       echo 'END_OF_BASE_TREE_CODES'           >> ${.TARGET}
+       echo '#include "c-family/c-common.def"' >> ${.TARGET}
+       echo '#include "cp/cp-tree.def"'        >> ${.TARGET}
+       echo '#include "objc/objc-tree.def"'    >> ${.TARGET}
+
+optionlist: ${optionsfiles} Makefile
+       /usr/bin/awk -f ${GCCDIR}/gcc/opt-gather.awk \
+               ${optionsfiles} > ${.TARGET}
+
+options.c: optionlist
+       /usr/bin/awk -f ${GCCDIR}/gcc/opt-functions.awk \
+                    -f ${GCCDIR}/gcc/opt-read.awk \
+                    -f ${GCCDIR}/gcc/optc-gen.awk \
+                    -v header_name="${header_name_save}" \
+               < optionlist > ${.TARGET}
+
+options-save.c: optionlist
+       /usr/bin/awk -f ${GCCDIR}/gcc/opt-functions.awk \
+                    -f ${GCCDIR}/gcc/opt-read.awk \
+                    -f ${GCCDIR}/gcc/optc-save-gen.awk \
+                    -v header_name="${header_name}" \
+               < optionlist > ${.TARGET}
+
+options.h: optionlist
+       /usr/bin/awk -f ${GCCDIR}/gcc/opt-functions.awk \
+                    -f ${GCCDIR}/gcc/opt-read.awk \
+                    -f ${GCCDIR}/gcc/opth-gen.awk \
+               < optionlist > ${.TARGET}
+
+i386-builtin-types.inc:
+       /usr/bin/awk -f ${GCCDIR}/gcc/config/i386/i386-builtin-types.awk \
+               ${GCCDIR}/gcc/config/i386/i386-builtin-types.def > ${.TARGET}
+
+CLEANFILES+=   version.c configargs.h bconfig.h tm.h tm_p.h
+CLEANFILES+=   options.c options-save.c options.h optionlist
+CLEANFILES+=   specs.h all-tree.def bversion.h plugin-version.h
+
+# keep this order!
+afterdepend: version.c configargs.h bconfig.h tm.h tm_p.h options.h options.c
+afterdepend: options-save.c specs.h all-tree.def bversion.h plugin-version.h
+
+CLEANFILES+=   i386-builtin-types.inc
+afterdepend:   i386-builtin-types.inc
+
+.include <bsd.prog.mk>
diff --git a/gnu/usr.bin/cc50/cc_prep/auto-host.h b/gnu/usr.bin/cc50/cc_prep/auto-host.h
new file mode 100644 (file)
index 0000000..150c859
--- /dev/null
@@ -0,0 +1,2226 @@
+/* auto-host.h.  Generated from config.in by configure.  */
+/* config.in.  Generated from configure.ac by autoheader.  */
+
+/* Define if this compiler should be built as the offload target compiler. */
+#ifndef USED_FOR_TARGET
+/* #undef ACCEL_COMPILER */
+#endif
+
+
+/* Define if building universal (internal helper macro) */
+#ifndef USED_FOR_TARGET
+/* #undef AC_APPLE_UNIVERSAL_BUILD */
+#endif
+
+
+/* Define to the assembler option to enable compressed debug sections. */
+#ifndef USED_FOR_TARGET
+#define AS_COMPRESS_DEBUG_OPTION "--compress-debug-sections"
+#endif
+
+
+/* Define to the assembler option to disable compressed debug sections. */
+#ifndef USED_FOR_TARGET
+#define AS_NO_COMPRESS_DEBUG_OPTION "--nocompress-debug-sections"
+#endif
+
+
+/* Define as the number of bits in a byte, if `limits.h' doesn't. */
+#ifndef USED_FOR_TARGET
+/* #undef CHAR_BIT */
+#endif
+
+
+/* Define 0/1 to force the choice for exception handling model. */
+#ifndef USED_FOR_TARGET
+/* #undef CONFIG_SJLJ_EXCEPTIONS */
+#endif
+
+
+/* Define to enable the use of a default assembler. */
+#ifndef USED_FOR_TARGET
+/* #undef DEFAULT_ASSEMBLER */
+#endif
+
+
+/* Define to enable the use of a default linker. */
+#ifndef USED_FOR_TARGET
+/* #undef DEFAULT_LINKER */
+#endif
+
+
+/* Define if you want to use __cxa_atexit, rather than atexit, to register C++
+   destructors for local statics and global objects. This is essential for
+   fully standards-compliant handling of destructors, but requires
+   __cxa_atexit in libc. */
+#ifndef USED_FOR_TARGET
+#define DEFAULT_USE_CXA_ATEXIT 2
+#endif
+
+
+/* The default for -fdiagnostics-color option */
+#ifndef USED_FOR_TARGET
+#define DIAGNOSTICS_COLOR_DEFAULT DIAGNOSTICS_COLOR_AUTO
+#endif
+
+
+/* Define if you want assertions enabled. This is a cheap check. */
+#ifndef USED_FOR_TARGET
+#define ENABLE_ASSERT_CHECKING 1
+#endif
+
+
+/* Define if you want more run-time sanity checks. This one gets a grab bag of
+   miscellaneous but relatively cheap checks. */
+#ifndef USED_FOR_TARGET
+#define ENABLE_CHECKING 1
+#endif
+
+
+/* Define to 1 to specify that we are using the BID decimal floating point
+   format instead of DPD */
+#ifndef USED_FOR_TARGET
+#define ENABLE_DECIMAL_BID_FORMAT 0
+#endif
+
+
+/* Define to 1 to enable decimal float extension to C. */
+#ifndef USED_FOR_TARGET
+#define ENABLE_DECIMAL_FLOAT 0
+#endif
+
+
+/* Define if you want more run-time sanity checks for dataflow. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_DF_CHECKING */
+#endif
+
+
+/* Define to 1 to enable fixed-point arithmetic extension to C. */
+#ifndef USED_FOR_TARGET
+#define ENABLE_FIXED_POINT 0
+#endif
+
+
+/* Define if you want fold checked that it never destructs its argument. This
+   is quite expensive. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_FOLD_CHECKING */
+#endif
+
+
+/* Define if you want the garbage collector to operate in maximally paranoid
+   mode, validating the entire heap and collecting garbage at every
+   opportunity. This is extremely expensive. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_GC_ALWAYS_COLLECT */
+#endif
+
+
+/* Define if you want the garbage collector to do object poisoning and other
+   memory allocation checks. This is quite expensive. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_GC_CHECKING */
+#endif
+
+
+/* Define if you want operations on GIMPLE (the basic data structure of the
+   high-level optimizers) to be checked for dynamic type safety at runtime.
+   This is moderately expensive. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_GIMPLE_CHECKING */
+#endif
+
+
+/* Define if gcc should always pass --build-id to linker. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_LD_BUILDID */
+#endif
+
+
+/* Define to 1 to enable libquadmath support */
+#ifndef USED_FOR_TARGET
+#define ENABLE_LIBQUADMATH_SUPPORT 1
+#endif
+
+
+/* Define to enable LTO support. */
+#ifndef USED_FOR_TARGET
+#define ENABLE_LTO 1
+#endif
+
+
+/* Define to 1 if translation of program messages to the user's native
+   language is requested. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_NLS */
+#endif
+
+
+/* Define this to enable support for offloading. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_OFFLOADING */
+#endif
+
+
+/* Define to enable plugin support. */
+#ifndef USED_FOR_TARGET
+#define ENABLE_PLUGIN 1
+#endif
+
+
+/* Define if you want all operations on RTL (the basic data structure of the
+   optimizer and back end) to be checked for dynamic type safety at runtime.
+   This is quite expensive. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_RTL_CHECKING */
+#endif
+
+
+/* Define if you want RTL flag accesses to be checked against the RTL codes
+   that are supported for each access macro. This is relatively cheap. */
+#ifndef USED_FOR_TARGET
+#define ENABLE_RTL_FLAG_CHECKING 1
+#endif
+
+
+/* Define if you want runtime assertions enabled. This is a cheap check. */
+#define ENABLE_RUNTIME_CHECKING 1
+
+/* Define if you want all operations on trees (the basic data structure of the
+   front ends) to be checked for dynamic type safety at runtime. This is
+   moderately expensive. The tree browser debugging routines will also be
+   enabled by this option. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_TREE_CHECKING */
+#endif
+
+
+/* Define if you want all gimple types to be verified after gimplifiation.
+   This is cheap. */
+#ifndef USED_FOR_TARGET
+#define ENABLE_TYPES_CHECKING 1
+#endif
+
+
+/* Define to get calls to the valgrind runtime enabled. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_VALGRIND_ANNOTATIONS */
+#endif
+
+
+/* Define if you want to run subprograms and generated programs through
+   valgrind (a memory checker). This is extremely expensive. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_VALGRIND_CHECKING */
+#endif
+
+
+/* Define to 1 if installation paths should be looked up in the Windows
+   Registry. Ignored on non-Windows hosts. */
+#ifndef USED_FOR_TARGET
+/* #undef ENABLE_WIN32_REGISTRY */
+#endif
+
+
+/* Define to the name of a file containing a list of extra machine modes for
+   this architecture. */
+#ifndef USED_FOR_TARGET
+#define EXTRA_MODES_FILE "config/i386/i386-modes.def"
+#endif
+
+
+/* Define to enable detailed memory allocation stats gathering. */
+#ifndef USED_FOR_TARGET
+#define GATHER_STATISTICS 0
+#endif
+
+
+/* Define to 1 if `TIOCGWINSZ' requires <sys/ioctl.h>. */
+#ifndef USED_FOR_TARGET
+/* #undef GWINSZ_IN_SYS_IOCTL */
+#endif
+
+
+/* mcontext_t fields start with __ */
+#ifndef USED_FOR_TARGET
+/* #undef HAS_MCONTEXT_T_UNDERSCORES */
+#endif
+
+
+/* Define if your assembler supports cmpb. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_CMPB */
+#endif
+
+
+/* Define to the level of your assembler's compressed debug section support.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_COMPRESS_DEBUG 1
+#endif
+
+
+/* Define if your assembler supports the DCI/ICI instructions. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_DCI */
+#endif
+
+
+/* Define if your assembler supports the --debug-prefix-map option. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_DEBUG_PREFIX_MAP 1
+#endif
+
+
+/* Define if your assembler supports DFP instructions. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_DFP */
+#endif
+
+
+/* Define if your assembler supports .module. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_DOT_MODULE */
+#endif
+
+
+/* Define if your assembler supports DSPR1 mult. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_DSPR1_MULT */
+#endif
+
+
+/* Define if your assembler supports .dtprelword. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_DTPRELWORD */
+#endif
+
+
+/* Define if your assembler supports dwarf2 .file/.loc directives, and
+   preserves file table indices exactly as given. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_DWARF2_DEBUG_LINE 1
+#endif
+
+
+/* Define if your assembler supports explicit relocations. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_EXPLICIT_RELOCS */
+#endif
+
+
+/* Define if your assembler supports FMAF, HPC, and VIS 3.0 instructions. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_FMAF_HPC_VIS3 */
+#endif
+
+
+/* Define if your assembler supports fprnd. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_FPRND */
+#endif
+
+
+/* Define if your assembler supports the --gdwarf2 option. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_GDWARF2_DEBUG_FLAG 1
+#endif
+
+
+/* Define if your assembler supports .gnu_attribute. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_GNU_ATTRIBUTE */
+#endif
+
+
+/* Define true if the assembler supports '.long foo@GOTOFF'. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_GOTOFF_IN_DATA 1
+#endif
+
+
+/* Define if your assembler supports the --gstabs option. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_GSTABS_DEBUG_FLAG 1
+#endif
+
+
+/* Define if your assembler supports the Sun syntax for cmov. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_IX86_CMOV_SUN_SYNTAX */
+#endif
+
+
+/* Define if your assembler supports the subtraction of symbols in different
+   sections. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_DIFF_SECT_DELTA 1
+#endif
+
+
+/* Define if your assembler supports the ffreep mnemonic. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_FFREEP 1
+#endif
+
+
+/* Define if your assembler uses fildq and fistq mnemonics. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_FILDQ 1
+#endif
+
+
+/* Define if your assembler uses filds and fists mnemonics. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_FILDS 1
+#endif
+
+
+/* Define if your assembler supports HLE prefixes. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_HLE 1
+#endif
+
+
+/* Define if your assembler supports interunit movq mnemonic. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_INTERUNIT_MOVQ 1
+#endif
+
+
+/* Define if your assembler supports the .quad directive. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_QUAD 1
+#endif
+
+
+/* Define if the assembler supports 'rep <insn>, lock <insn>'. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_REP_LOCK_PREFIX 1
+#endif
+
+
+/* Define if your assembler supports the sahf mnemonic in 64bit mode. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_SAHF 1
+#endif
+
+
+/* Define if your assembler supports the swap suffix. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_SWAP 1
+#endif
+
+
+/* Define if your assembler and linker support @tlsgdplt. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_IX86_TLSGDPLT */
+#endif
+
+
+/* Define to 1 if your assembler and linker support @tlsldm. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_TLSLDM 0
+#endif
+
+
+/* Define to 1 if your assembler and linker support @tlsldmplt. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_TLSLDMPLT 0
+#endif
+
+
+/* Define if your assembler supports the 'ud2' mnemonic. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_IX86_UD2 1
+#endif
+
+
+/* Define if your assembler supports the lituse_jsrdirect relocation. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_JSRDIRECT_RELOCS */
+#endif
+
+
+/* Define if your assembler supports .sleb128 and .uleb128. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_LEB128 1
+#endif
+
+
+/* Define if your assembler supports LEON instructions. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_LEON */
+#endif
+
+
+/* Define if the assembler won't complain about a line such as # 0 "" 2. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_LINE_ZERO 1
+#endif
+
+
+/* Define if your assembler supports ltoffx and ldxmov relocations. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_LTOFFX_LDXMOV_RELOCS */
+#endif
+
+
+/* Define if your assembler supports LWSYNC instructions. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_LWSYNC */
+#endif
+
+
+/* Define if your assembler supports the -mabi option. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_MABI_OPTION */
+#endif
+
+
+/* Define if your assembler supports mfcr field. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_MFCRF */
+#endif
+
+
+/* Define if your assembler supports mffgpr and mftgpr. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_MFPGPR */
+#endif
+
+
+/* Define if the assembler understands -mnan=. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_NAN */
+#endif
+
+
+/* Define if your assembler supports the -no-mul-bug-abort option. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_NO_MUL_BUG_ABORT_OPTION */
+#endif
+
+
+/* Define if the assembler understands -mno-shared. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_NO_SHARED */
+#endif
+
+
+/* Define if your assembler supports offsetable %lo(). */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_OFFSETABLE_LO10 */
+#endif
+
+
+/* Define if your assembler supports popcntb field. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_POPCNTB */
+#endif
+
+
+/* Define if your assembler supports POPCNTD instructions. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_POPCNTD */
+#endif
+
+
+/* Define if your assembler supports POWER8 instructions. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_POWER8 */
+#endif
+
+
+/* Define if your assembler supports .ref */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_REF */
+#endif
+
+
+/* Define if your assembler supports .register. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_REGISTER_PSEUDO_OP */
+#endif
+
+
+/* Define if your assembler supports R_PPC_REL16 relocs. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_REL16 */
+#endif
+
+
+/* Define if your assembler supports -relax option. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_RELAX_OPTION */
+#endif
+
+
+/* Define if your assembler supports SPARC4 instructions. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_SPARC4 */
+#endif
+
+
+/* Define if your assembler and linker support GOTDATA_OP relocs. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_SPARC_GOTDATA_OP */
+#endif
+
+
+/* Define to 1 if your assembler supports #nobits, 0 otherwise. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_SPARC_NOBITS */
+#endif
+
+
+/* Define if your assembler and linker support unaligned PC relative relocs.
+   */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_SPARC_UA_PCREL */
+#endif
+
+
+/* Define if your assembler and linker support unaligned PC relative relocs
+   against hidden symbols. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_SPARC_UA_PCREL_HIDDEN */
+#endif
+
+
+/* Define if your assembler and linker support thread-local storage. */
+#ifndef USED_FOR_TARGET
+#define HAVE_AS_TLS 1
+#endif
+
+
+/* Define if your assembler supports arg info for __tls_get_addr. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_TLS_MARKERS */
+#endif
+
+
+/* Define if your assembler supports VSX instructions. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_AS_VSX */
+#endif
+
+
+/* Define to 1 if you have the `atoll' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_ATOLL 1
+#endif
+
+
+/* Define to 1 if you have the `atoq' function. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_ATOQ */
+#endif
+
+
+/* Define to 1 if you have the `clearerr_unlocked' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_CLEARERR_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if you have the `clock' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_CLOCK 1
+#endif
+
+
+/* Define if <time.h> defines clock_t. */
+#ifndef USED_FOR_TARGET
+#define HAVE_CLOCK_T 1
+#endif
+
+
+/* Define 0/1 if your assembler and linker support COMDAT groups. */
+#ifndef USED_FOR_TARGET
+#define HAVE_COMDAT_GROUP 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'abort', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_ABORT 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'asprintf', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_ASPRINTF 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'atof', otherwise define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_ATOF 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'atol', otherwise define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_ATOL 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'basename', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_BASENAME 0
+#endif
+
+
+/* Define to 1 if we found a declaration for 'calloc', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_CALLOC 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'clearerr_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_CLEARERR_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'clock', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_CLOCK 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'errno', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_ERRNO 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'feof_unlocked', otherwise define
+   to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FEOF_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'ferror_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FERROR_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'fflush_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FFLUSH_UNLOCKED 0
+#endif
+
+
+/* Define to 1 if we found a declaration for 'ffs', otherwise define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FFS 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'fgetc_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FGETC_UNLOCKED 0
+#endif
+
+
+/* Define to 1 if we found a declaration for 'fgets_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FGETS_UNLOCKED 0
+#endif
+
+
+/* Define to 1 if we found a declaration for 'fileno_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FILENO_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'fprintf_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FPRINTF_UNLOCKED 0
+#endif
+
+
+/* Define to 1 if we found a declaration for 'fputc_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FPUTC_UNLOCKED 0
+#endif
+
+
+/* Define to 1 if we found a declaration for 'fputs_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FPUTS_UNLOCKED 0
+#endif
+
+
+/* Define to 1 if we found a declaration for 'fread_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FREAD_UNLOCKED 0
+#endif
+
+
+/* Define to 1 if we found a declaration for 'free', otherwise define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FREE 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'fwrite_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_FWRITE_UNLOCKED 0
+#endif
+
+
+/* Define to 1 if we found a declaration for 'getchar_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_GETCHAR_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'getcwd', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_GETCWD 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'getc_unlocked', otherwise define
+   to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_GETC_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'getenv', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_GETENV 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'getopt', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_GETOPT 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'getpagesize', otherwise define
+   to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_GETPAGESIZE 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'getrlimit', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_GETRLIMIT 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'getrusage', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_GETRUSAGE 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'getwd', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_GETWD 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'ldgetname', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_LDGETNAME 0
+#endif
+
+
+/* Define to 1 if we found a declaration for 'madvise', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_MADVISE 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'malloc', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_MALLOC 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'putchar_unlocked', otherwise
+   define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_PUTCHAR_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'putc_unlocked', otherwise define
+   to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_PUTC_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'realloc', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_REALLOC 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'sbrk', otherwise define to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_SBRK 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'setrlimit', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_SETRLIMIT 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'sigaltstack', otherwise define
+   to 0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_SIGALTSTACK 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'snprintf', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_SNPRINTF 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'stpcpy', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_STPCPY 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'strnlen', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_STRNLEN 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'strsignal', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_STRSIGNAL 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'strstr', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_STRSTR 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'strtol', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_STRTOL 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'strtoll', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_STRTOLL 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'strtoul', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_STRTOUL 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'strtoull', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_STRTOULL 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'strverscmp', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_STRVERSCMP 0
+#endif
+
+
+/* Define to 1 if we found a declaration for 'times', otherwise define to 0.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_TIMES 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'vasprintf', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_VASPRINTF 1
+#endif
+
+
+/* Define to 1 if we found a declaration for 'vsnprintf', otherwise define to
+   0. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DECL_VSNPRINTF 1
+#endif
+
+
+/* Define to 1 if you have the <direct.h> header file. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_DIRECT_H */
+#endif
+
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_DLFCN_H 1
+#endif
+
+
+/* Define to 1 if you have the <ext/hash_map> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_EXT_HASH_MAP 1
+#endif
+
+
+/* Define to 1 if you have the <fcntl.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_FCNTL_H 1
+#endif
+
+
+/* Define to 1 if you have the `feof_unlocked' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_FEOF_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if you have the `ferror_unlocked' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_FERROR_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if you have the `fflush_unlocked' function. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_FFLUSH_UNLOCKED */
+#endif
+
+
+/* Define to 1 if you have the `fgetc_unlocked' function. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_FGETC_UNLOCKED */
+#endif
+
+
+/* Define to 1 if you have the `fgets_unlocked' function. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_FGETS_UNLOCKED */
+#endif
+
+
+/* Define to 1 if you have the `fileno_unlocked' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_FILENO_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if you have the `fork' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_FORK 1
+#endif
+
+
+/* Define to 1 if you have the `fprintf_unlocked' function. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_FPRINTF_UNLOCKED */
+#endif
+
+
+/* Define to 1 if you have the `fputc_unlocked' function. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_FPUTC_UNLOCKED */
+#endif
+
+
+/* Define to 1 if you have the `fputs_unlocked' function. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_FPUTS_UNLOCKED */
+#endif
+
+
+/* Define to 1 if you have the `fread_unlocked' function. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_FREAD_UNLOCKED */
+#endif
+
+
+/* Define to 1 if you have the `fwrite_unlocked' function. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_FWRITE_UNLOCKED */
+#endif
+
+
+/* Define if your assembler supports specifying the alignment of objects
+   allocated using the GAS .comm command. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_GAS_ALIGNED_COMM */
+#endif
+
+
+/* Define if your assembler supports .balign and .p2align. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GAS_BALIGN_AND_P2ALIGN 1
+#endif
+
+
+/* Define 0/1 if your assembler supports CFI directives. */
+#define HAVE_GAS_CFI_DIRECTIVE 1
+
+/* Define 0/1 if your assembler supports .cfi_personality. */
+#define HAVE_GAS_CFI_PERSONALITY_DIRECTIVE 1
+
+/* Define 0/1 if your assembler supports .cfi_sections. */
+#define HAVE_GAS_CFI_SECTIONS_DIRECTIVE 1
+
+/* Define if your assembler supports the .loc discriminator sub-directive. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GAS_DISCRIMINATOR 1
+#endif
+
+
+/* Define if your assembler supports @gnu_unique_object. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_GAS_GNU_UNIQUE_OBJECT */
+#endif
+
+
+/* Define if your assembler and linker support .hidden. */
+#define HAVE_GAS_HIDDEN 1
+
+/* Define if your assembler supports .lcomm with an alignment field. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_GAS_LCOMM_WITH_ALIGNMENT */
+#endif
+
+
+/* Define if your assembler supports .literal16. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_GAS_LITERAL16 */
+#endif
+
+
+/* Define if your assembler supports specifying the maximum number of bytes to
+   skip when using the GAS .p2align command. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GAS_MAX_SKIP_P2ALIGN 1
+#endif
+
+
+/* Define if your assembler supports the .set micromips directive */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_GAS_MICROMIPS */
+#endif
+
+
+/* Define if your assembler supports .nsubspa comdat option. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_GAS_NSUBSPA_COMDAT */
+#endif
+
+
+/* Define if your assembler and linker support 32-bit section relative relocs
+   via '.secrel32 label'. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_GAS_PE_SECREL32_RELOC */
+#endif
+
+
+/* Define if your assembler supports specifying the section flag e. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GAS_SECTION_EXCLUDE 1
+#endif
+
+
+/* Define 0/1 if your assembler supports marking sections with SHF_MERGE flag.
+   */
+#ifndef USED_FOR_TARGET
+#define HAVE_GAS_SHF_MERGE 1
+#endif
+
+
+/* Define if your assembler supports .subsection and .subsection -1 starts
+   emitting at the beginning of your section. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GAS_SUBSECTION_ORDERING 1
+#endif
+
+
+/* Define if your assembler supports .weak. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GAS_WEAK 1
+#endif
+
+
+/* Define if your assembler supports .weakref. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GAS_WEAKREF 1
+#endif
+
+
+/* Define to 1 if you have the `getchar_unlocked' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GETCHAR_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if you have the `getc_unlocked' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GETC_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if you have the `getrlimit' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GETRLIMIT 1
+#endif
+
+
+/* Define to 1 if you have the `getrusage' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GETRUSAGE 1
+#endif
+
+
+/* Define to 1 if you have the `gettimeofday' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GETTIMEOFDAY 1
+#endif
+
+
+/* Define to 1 if using GNU as. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GNU_AS 1
+#endif
+
+
+/* Define if your system supports gnu indirect functions. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GNU_INDIRECT_FUNCTION 1
+#endif
+
+
+/* Define to 1 if using GNU ld. */
+#ifndef USED_FOR_TARGET
+#define HAVE_GNU_LD 1
+#endif
+
+
+/* Define if you have the iconv() function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_ICONV 1
+#endif
+
+
+/* Define to 1 if you have the <iconv.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_ICONV_H 1
+#endif
+
+
+/* Define .init_array/.fini_array sections are available and working. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_INITFINI_ARRAY_SUPPORT */
+#endif
+
+
+/* Define to 1 if the system has the type `intmax_t'. */
+#ifndef USED_FOR_TARGET
+#define HAVE_INTMAX_T 1
+#endif
+
+
+/* Define to 1 if the system has the type `intptr_t'. */
+#ifndef USED_FOR_TARGET
+#define HAVE_INTPTR_T 1
+#endif
+
+
+/* Define if you have a working <inttypes.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_INTTYPES_H 1
+#endif
+
+
+/* Define if isl_schedule_constraints_compute_schedule exists. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE */
+#endif
+
+
+/* Define to 1 if you have the `kill' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_KILL 1
+#endif
+
+
+/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
+#ifndef USED_FOR_TARGET
+#define HAVE_LANGINFO_CODESET 1
+#endif
+
+
+/* Define to 1 if you have the <langinfo.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LANGINFO_H 1
+#endif
+
+
+/* Define if your <locale.h> file defines LC_MESSAGES. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LC_MESSAGES 1
+#endif
+
+
+/* Define to 1 if you have the <ldfcn.h> header file. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_LDFCN_H */
+#endif
+
+
+/* Define if your linker supports --as-needed/--no-as-needed or equivalent
+   options. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LD_AS_NEEDED 1
+#endif
+
+
+/* Define if your linker supports --build-id. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LD_BUILDID 1
+#endif
+
+
+/* Define if the linker supports clearing hardware capabilities via mapfile.
+   */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_LD_CLEARCAP */
+#endif
+
+
+/* Define to the level of your linker's compressed debug section support. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LD_COMPRESS_DEBUG 1
+#endif
+
+
+/* Define if your linker supports --demangle option. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LD_DEMANGLE 1
+#endif
+
+
+/* Define 0/1 if your linker supports CIE v3 in .eh_frame. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LD_EH_FRAME_CIEV3 1
+#endif
+
+
+/* Define if your linker supports .eh_frame_hdr. */
+#define HAVE_LD_EH_FRAME_HDR 1
+
+/* Define if your linker supports garbage collection of sections in presence
+   of EH frames. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LD_EH_GC_SECTIONS 1
+#endif
+
+
+/* Define if your linker has buggy garbage collection of sections support when
+   .text.startup.foo like sections are used. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_LD_EH_GC_SECTIONS_BUG */
+#endif
+
+
+/* Define if your PowerPC64 linker supports a large TOC. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_LD_LARGE_TOC */
+#endif
+
+
+/* Define if your PowerPC64 linker only needs function descriptor syms. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_LD_NO_DOT_SYMS */
+#endif
+
+
+/* Define if your linker can relax absolute .eh_frame personality pointers
+   into PC-relative form. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_LD_PERSONALITY_RELAXATION */
+#endif
+
+
+/* Define if your linker supports -pie option. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LD_PIE 1
+#endif
+
+
+/* Define 0/1 if your linker supports -pie option with copy reloc. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LD_PIE_COPYRELOC 0
+#endif
+
+
+/* Define if your linker links a mix of read-only and read-write sections into
+   a read-write section. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LD_RO_RW_SECTION_MIXING 1
+#endif
+
+
+/* Define if your linker supports the *_sol2 emulations. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_LD_SOL2_EMULATION */
+#endif
+
+
+/* Define if your linker supports -Bstatic/-Bdynamic or equivalent options. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LD_STATIC_DYNAMIC 1
+#endif
+
+
+/* Define if your linker supports --sysroot. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LD_SYSROOT 1
+#endif
+
+
+/* Define to 1 if you have the <limits.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LIMITS_H 1
+#endif
+
+
+/* Define to 1 if you have the <locale.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LOCALE_H 1
+#endif
+
+
+/* Define to 1 if the system has the type `long long'. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LONG_LONG 1
+#endif
+
+
+/* Define to 1 if the system has the type `long long int'. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LONG_LONG_INT 1
+#endif
+
+
+/* Define to the level of your linker's plugin support. */
+#ifndef USED_FOR_TARGET
+#define HAVE_LTO_PLUGIN 2
+#endif
+
+
+/* Define to 1 if you have the `madvise' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_MADVISE 1
+#endif
+
+
+/* Define to 1 if you have the <malloc.h> header file. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_MALLOC_H */
+#endif
+
+
+/* Define to 1 if you have the `mbstowcs' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_MBSTOWCS 1
+#endif
+
+
+/* Define if valgrind's memcheck.h header is installed. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_MEMCHECK_H */
+#endif
+
+
+/* Define to 1 if you have the <memory.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_MEMORY_H 1
+#endif
+
+
+/* Define to 1 if you have the `mmap' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_MMAP 1
+#endif
+
+
+/* Define if mmap with MAP_ANON(YMOUS) works. */
+#ifndef USED_FOR_TARGET
+#define HAVE_MMAP_ANON 1
+#endif
+
+
+/* Define if mmap of /dev/zero works. */
+#ifndef USED_FOR_TARGET
+#define HAVE_MMAP_DEV_ZERO 1
+#endif
+
+
+/* Define if read-only mmap of a plain file works. */
+#ifndef USED_FOR_TARGET
+#define HAVE_MMAP_FILE 1
+#endif
+
+
+/* Define to 1 if you have the `nl_langinfo' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_NL_LANGINFO 1
+#endif
+
+
+/* Define to 1 if you have the `popen' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_POPEN 1
+#endif
+
+
+/* Define to 1 if you have the `putchar_unlocked' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_PUTCHAR_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if you have the `putc_unlocked' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_PUTC_UNLOCKED 1
+#endif
+
+
+/* Define to 1 if you have the `setlocale' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SETLOCALE 1
+#endif
+
+
+/* Define to 1 if you have the `setrlimit' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SETRLIMIT 1
+#endif
+
+
+/* Define to 1 if you have the <stddef.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_STDDEF_H 1
+#endif
+
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_STDINT_H 1
+#endif
+
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_STDLIB_H 1
+#endif
+
+
+/* Define to 1 if you have the <strings.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_STRINGS_H 1
+#endif
+
+
+/* Define to 1 if you have the <string.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_STRING_H 1
+#endif
+
+
+/* Define to 1 if you have the `strsignal' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_STRSIGNAL 1
+#endif
+
+
+/* Define if <sys/times.h> defines struct tms. */
+#ifndef USED_FOR_TARGET
+#define HAVE_STRUCT_TMS 1
+#endif
+
+
+/* Define to 1 if you have the `sysconf' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SYSCONF 1
+#endif
+
+
+/* Define to 1 if you have the <sys/file.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SYS_FILE_H 1
+#endif
+
+
+/* Define to 1 if you have the <sys/mman.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SYS_MMAN_H 1
+#endif
+
+
+/* Define to 1 if you have the <sys/param.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SYS_PARAM_H 1
+#endif
+
+
+/* Define to 1 if you have the <sys/resource.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SYS_RESOURCE_H 1
+#endif
+
+
+/* Define if your target C library provides sys/sdt.h */
+/* #undef HAVE_SYS_SDT_H */
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SYS_STAT_H 1
+#endif
+
+
+/* Define to 1 if you have the <sys/times.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SYS_TIMES_H 1
+#endif
+
+
+/* Define to 1 if you have the <sys/time.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SYS_TIME_H 1
+#endif
+
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SYS_TYPES_H 1
+#endif
+
+
+/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
+#ifndef USED_FOR_TARGET
+#define HAVE_SYS_WAIT_H 1
+#endif
+
+
+/* Define to 1 if you have the `times' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_TIMES 1
+#endif
+
+
+/* Define to 1 if you have the <time.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_TIME_H 1
+#endif
+
+
+/* Define to 1 if you have the <tr1/unordered_map> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_TR1_UNORDERED_MAP 1
+#endif
+
+
+/* Define to 1 if the system has the type `uintmax_t'. */
+#ifndef USED_FOR_TARGET
+#define HAVE_UINTMAX_T 1
+#endif
+
+
+/* Define to 1 if the system has the type `uintptr_t'. */
+#ifndef USED_FOR_TARGET
+#define HAVE_UINTPTR_T 1
+#endif
+
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_UNISTD_H 1
+#endif
+
+
+/* Define to 1 if you have the <unordered_map> header file. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_UNORDERED_MAP */
+#endif
+
+
+/* Define to 1 if the system has the type `unsigned long long int'. */
+#ifndef USED_FOR_TARGET
+#define HAVE_UNSIGNED_LONG_LONG_INT 1
+#endif
+
+
+/* Define if valgrind's valgrind/memcheck.h header is installed. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_VALGRIND_MEMCHECK_H */
+#endif
+
+
+/* Define to 1 if you have the `vfork' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_VFORK 1
+#endif
+
+
+/* Define to 1 if you have the <vfork.h> header file. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_VFORK_H */
+#endif
+
+
+/* Define to 1 if you have the <wchar.h> header file. */
+#ifndef USED_FOR_TARGET
+#define HAVE_WCHAR_H 1
+#endif
+
+
+/* Define to 1 if you have the `wcswidth' function. */
+#ifndef USED_FOR_TARGET
+#define HAVE_WCSWIDTH 1
+#endif
+
+
+/* Define to 1 if `fork' works. */
+#ifndef USED_FOR_TARGET
+#define HAVE_WORKING_FORK 1
+#endif
+
+
+/* Define this macro if mbstowcs does not crash when its first argument is
+   NULL. */
+#ifndef USED_FOR_TARGET
+#define HAVE_WORKING_MBSTOWCS 1
+#endif
+
+
+/* Define to 1 if `vfork' works. */
+#ifndef USED_FOR_TARGET
+#define HAVE_WORKING_VFORK 1
+#endif
+
+
+/* Define if isl is in use. */
+#ifndef USED_FOR_TARGET
+/* #undef HAVE_isl */
+#endif
+
+
+/* Define if F_SETLKW supported by fcntl. */
+#ifndef USED_FOR_TARGET
+#define HOST_HAS_F_SETLKW 1
+#endif
+
+
+/* Define as const if the declaration of iconv() needs const. */
+#ifndef USED_FOR_TARGET
+#define ICONV_CONST const
+#endif
+
+
+/* Define if int64_t uses long as underlying type. */
+#ifndef USED_FOR_TARGET
+#define INT64_T_IS_LONG 1
+#endif
+
+
+/* Define to the linker option to ignore unused dependencies. */
+#ifndef USED_FOR_TARGET
+#define LD_AS_NEEDED_OPTION "--as-needed"
+#endif
+
+
+/* Define to the linker option to enable compressed debug sections. */
+#ifndef USED_FOR_TARGET
+#define LD_COMPRESS_DEBUG_OPTION ""
+#endif
+
+
+/* Define to the linker option to enable use of shared objects. */
+#ifndef USED_FOR_TARGET
+#define LD_DYNAMIC_OPTION "-Bdynamic"
+#endif
+
+
+/* Define to the linker option to keep unused dependencies. */
+#ifndef USED_FOR_TARGET
+#define LD_NO_AS_NEEDED_OPTION "--no-as-needed"
+#endif
+
+
+/* Define to the linker option to disable use of shared objects. */
+#ifndef USED_FOR_TARGET
+#define LD_STATIC_OPTION "-Bstatic"
+#endif
+
+
+/* The linker hash style */
+#ifndef USED_FOR_TARGET
+/* #undef LINKER_HASH_STYLE */
+#endif
+
+
+/* Define to the name of the LTO plugin DSO that must be passed to the
+   linker's -plugin=LIB option. */
+#ifndef USED_FOR_TARGET
+#define LTOPLUGINSONAME "liblto_plugin.so"
+#endif
+
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+   */
+#ifndef USED_FOR_TARGET
+#define LT_OBJDIR ".libs/"
+#endif
+
+
+/* Define if host mkdir takes a single argument. */
+#ifndef USED_FOR_TARGET
+/* #undef MKDIR_TAKES_ONE_ARG */
+#endif
+
+
+/* Define to hold the list of target names suitable for offloading. */
+#ifndef USED_FOR_TARGET
+#define OFFLOAD_TARGETS ""
+#endif
+
+
+/* Define to the address where bug reports for this package should be sent. */
+#ifndef USED_FOR_TARGET
+#define PACKAGE_BUGREPORT ""
+#endif
+
+
+/* Define to the full name of this package. */
+#ifndef USED_FOR_TARGET
+#define PACKAGE_NAME ""
+#endif
+
+
+/* Define to the full name and version of this package. */
+#ifndef USED_FOR_TARGET
+#define PACKAGE_STRING ""
+#endif
+
+
+/* Define to the one symbol short name of this package. */
+#ifndef USED_FOR_TARGET
+#define PACKAGE_TARNAME ""
+#endif
+
+
+/* Define to the home page for this package. */
+#ifndef USED_FOR_TARGET
+#define PACKAGE_URL ""
+#endif
+
+
+/* Define to the version of this package. */
+#ifndef USED_FOR_TARGET
+#define PACKAGE_VERSION ""
+#endif
+
+
+/* Specify plugin linker */
+#ifndef USED_FOR_TARGET
+#define PLUGIN_LD_SUFFIX "ld"
+#endif
+
+
+/* Define to PREFIX/include if cpp should also search that directory. */
+#ifndef USED_FOR_TARGET
+/* #undef PREFIX_INCLUDE_DIR */
+#endif
+
+
+/* The size of `int', as computed by sizeof. */
+#ifndef USED_FOR_TARGET
+#define SIZEOF_INT 4
+#endif
+
+
+/* The size of `long', as computed by sizeof. */
+#ifndef USED_FOR_TARGET
+#define SIZEOF_LONG 8
+#endif
+
+
+/* The size of `long long', as computed by sizeof. */
+#ifndef USED_FOR_TARGET
+#define SIZEOF_LONG_LONG 8
+#endif
+
+
+/* The size of `short', as computed by sizeof. */
+#ifndef USED_FOR_TARGET
+#define SIZEOF_SHORT 2
+#endif
+
+
+/* The size of `void *', as computed by sizeof. */
+#ifndef USED_FOR_TARGET
+#define SIZEOF_VOID_P 8
+#endif
+
+
+/* Define to 1 if you have the ANSI C header files. */
+#ifndef USED_FOR_TARGET
+#define STDC_HEADERS 1
+#endif
+
+
+/* Define if you can safely include both <string.h> and <strings.h>. */
+#ifndef USED_FOR_TARGET
+#define STRING_WITH_STRINGS 1
+#endif
+
+
+/* Define if TFmode long double should be the default */
+#ifndef USED_FOR_TARGET
+/* #undef TARGET_DEFAULT_LONG_DOUBLE_128 */
+#endif
+
+
+/* Define if your target C library provides the `dl_iterate_phdr' function. */
+#define TARGET_DL_ITERATE_PHDR 1
+
+/* GNU C Library major version number used on the target, or 0. */
+#ifndef USED_FOR_TARGET
+#define TARGET_GLIBC_MAJOR 0
+#endif
+
+
+/* GNU C Library minor version number used on the target, or 0. */
+#ifndef USED_FOR_TARGET
+#define TARGET_GLIBC_MINOR 0
+#endif
+
+
+/* Define if your target C library provides stack protector support */
+#ifndef USED_FOR_TARGET
+/* #undef TARGET_LIBC_PROVIDES_SSP */
+#endif
+
+
+/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
+#ifndef USED_FOR_TARGET
+#define TIME_WITH_SYS_TIME 1
+#endif
+
+
+/* Define to the flag used to mark TLS sections if the default (`T') doesn't
+   work. */
+#ifndef USED_FOR_TARGET
+/* #undef TLS_SECTION_ASM_FLAG */
+#endif
+
+
+/* Define if your assembler mis-optimizes .eh_frame data. */
+#ifndef USED_FOR_TARGET
+/* #undef USE_AS_TRADITIONAL_FORMAT */
+#endif
+
+
+/* Define if you want to generate code by default that assumes that the Cygwin
+   DLL exports wrappers to support libstdc++ function replacement. */
+#ifndef USED_FOR_TARGET
+/* #undef USE_CYGWIN_LIBSTDCXX_WRAPPERS */
+#endif
+
+
+/* Define to 1 if the 'long long' type is wider than 'long' but still
+   efficiently supported by the host hardware. */
+#ifndef USED_FOR_TARGET
+/* #undef USE_LONG_LONG_FOR_WIDEST_FAST_INT */
+#endif
+
+
+/* Define if we should use leading underscore on 64 bit mingw targets */
+#ifndef USED_FOR_TARGET
+/* #undef USE_MINGW64_LEADING_UNDERSCORES */
+#endif
+
+
+/* Enable extensions on AIX 3, Interix.  */
+#ifndef _ALL_SOURCE
+# define _ALL_SOURCE 1
+#endif
+/* Enable GNU extensions on systems that have them.  */
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE 1
+#endif
+/* Enable threading extensions on Solaris.  */
+#ifndef _POSIX_PTHREAD_SEMANTICS
+# define _POSIX_PTHREAD_SEMANTICS 1
+#endif
+/* Enable extensions on HP NonStop.  */
+#ifndef _TANDEM_SOURCE
+# define _TANDEM_SOURCE 1
+#endif
+/* Enable general extensions on Solaris.  */
+#ifndef __EXTENSIONS__
+# define __EXTENSIONS__ 1
+#endif
+
+
+/* Define to be the last component of the Windows registry key under which to
+   look for installation paths. The full key used will be
+   HKEY_LOCAL_MACHINE/SOFTWARE/Free Software Foundation/{WIN32_REGISTRY_KEY}.
+   The default is the GCC version number. */
+#ifndef USED_FOR_TARGET
+/* #undef WIN32_REGISTRY_KEY */
+#endif
+
+
+/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
+   significant byte first (like Motorola and SPARC, unlike Intel). */
+#if defined AC_APPLE_UNIVERSAL_BUILD
+# if defined __BIG_ENDIAN__
+#  define WORDS_BIGENDIAN 1
+# endif
+#else
+# ifndef WORDS_BIGENDIAN
+/* #  undef WORDS_BIGENDIAN */
+# endif
+#endif
+
+/* Number of bits in a file offset, on hosts where this is settable. */
+#ifndef USED_FOR_TARGET
+/* #undef _FILE_OFFSET_BITS */
+#endif
+
+
+/* Define for large files, on AIX-style hosts. */
+#ifndef USED_FOR_TARGET
+/* #undef _LARGE_FILES */
+#endif
+
+
+/* Define to 1 if on MINIX. */
+#ifndef USED_FOR_TARGET
+/* #undef _MINIX */
+#endif
+
+
+/* Define to 2 if the system does not provide POSIX.1 features except with
+   this defined. */
+#ifndef USED_FOR_TARGET
+/* #undef _POSIX_1_SOURCE */
+#endif
+
+
+/* Define to 1 if you need to in order for `stat' and other things to work. */
+#ifndef USED_FOR_TARGET
+/* #undef _POSIX_SOURCE */
+#endif
+
+
+/* Define for Solaris 2.5.1 so the uint32_t typedef from <sys/synch.h>,
+   <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
+   #define below would cause a syntax error. */
+#ifndef USED_FOR_TARGET
+/* #undef _UINT32_T */
+#endif
+
+
+/* Define for Solaris 2.5.1 so the uint64_t typedef from <sys/synch.h>,
+   <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
+   #define below would cause a syntax error. */
+#ifndef USED_FOR_TARGET
+/* #undef _UINT64_T */
+#endif
+
+
+/* Define for Solaris 2.5.1 so the uint8_t typedef from <sys/synch.h>,
+   <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
+   #define below would cause a syntax error. */
+#ifndef USED_FOR_TARGET
+/* #undef _UINT8_T */
+#endif
+
+
+/* Define to `char *' if <sys/types.h> does not define. */
+#ifndef USED_FOR_TARGET
+/* #undef caddr_t */
+#endif
+
+
+/* Define to `__inline__' or `__inline' if that's what the C compiler
+   calls it, or to nothing if 'inline' is not supported under any name.  */
+#ifndef __cplusplus
+/* #undef inline */
+#endif
+
+/* Define to the type of a signed integer type of width exactly 16 bits if
+   such a type exists and the standard includes do not define it. */
+#ifndef USED_FOR_TARGET
+/* #undef int16_t */
+#endif
+
+
+/* Define to the type of a signed integer type of width exactly 32 bits if
+   such a type exists and the standard includes do not define it. */
+#ifndef USED_FOR_TARGET
+/* #undef int32_t */
+#endif
+
+
+/* Define to the type of a signed integer type of width exactly 64 bits if
+   such a type exists and the standard includes do not define it. */
+#ifndef USED_FOR_TARGET
+/* #undef int64_t */
+#endif
+
+
+/* Define to the type of a signed integer type of width exactly 8 bits if such
+   a type exists and the standard includes do not define it. */
+#ifndef USED_FOR_TARGET
+/* #undef int8_t */
+#endif
+
+
+/* Define to the widest signed integer type if <stdint.h> and <inttypes.h> do
+   not define. */
+#ifndef USED_FOR_TARGET
+/* #undef intmax_t */
+#endif
+
+
+/* Define to the type of a signed integer type wide enough to hold a pointer,
+   if such a type exists, and if the system does not define it. */
+#ifndef USED_FOR_TARGET
+/* #undef intptr_t */
+#endif
+
+
+/* Define to `int' if <sys/types.h> does not define. */
+#ifndef USED_FOR_TARGET
+/* #undef pid_t */
+#endif
+
+
+/* Define to `long' if <sys/resource.h> doesn't define. */
+#ifndef USED_FOR_TARGET
+/* #undef rlim_t */
+#endif
+
+
+/* Define to `int' if <sys/types.h> does not define. */
+#ifndef USED_FOR_TARGET
+/* #undef ssize_t */
+#endif
+
+
+/* Define to the type of an unsigned integer type of width exactly 16 bits if
+   such a type exists and the standard includes do not define it. */
+#ifndef USED_FOR_TARGET
+/* #undef uint16_t */
+#endif
+
+
+/* Define to the type of an unsigned integer type of width exactly 32 bits if
+   such a type exists and the standard includes do not define it. */
+#ifndef USED_FOR_TARGET
+/* #undef uint32_t */
+#endif
+
+
+/* Define to the type of an unsigned integer type of width exactly 64 bits if
+   such a type exists and the standard includes do not define it. */
+#ifndef USED_FOR_TARGET
+/* #undef uint64_t */
+#endif
+
+
+/* Define to the type of an unsigned integer type of width exactly 8 bits if
+   such a type exists and the standard includes do not define it. */
+#ifndef USED_FOR_TARGET
+/* #undef uint8_t */
+#endif
+
+
+/* Define to the widest unsigned integer type if <stdint.h> and <inttypes.h>
+   do not define. */
+#ifndef USED_FOR_TARGET
+/* #undef uintmax_t */
+#endif
+
+
+/* Define to the type of an unsigned integer type wide enough to hold a
+   pointer, if such a type exists, and if the system does not define it. */
+#ifndef USED_FOR_TARGET
+/* #undef uintptr_t */
+#endif
+
+
+/* Define as `fork' if `vfork' does not work. */
+#ifndef USED_FOR_TARGET
+/* #undef vfork */
+#endif
+
diff --git a/gnu/usr.bin/cc50/cc_prep/config.h b/gnu/usr.bin/cc50/cc_prep/config.h
new file mode 100644 (file)
index 0000000..aa6dd6b
--- /dev/null
@@ -0,0 +1,10 @@
+#ifndef GCC_CONFIG_H
+#define GCC_CONFIG_H
+#ifdef GENERATOR_FILE
+#error config.h is for the host, not build, machine.
+#endif
+#include "auto-host.h"
+#ifdef IN_GCC
+# include "ansidecl.h"
+#endif
+#endif /* GCC_CONFIG_H */
diff --git a/gnu/usr.bin/cc50/cc_prep/config/dragonfly-native.h b/gnu/usr.bin/cc50/cc_prep/config/dragonfly-native.h
new file mode 100644 (file)
index 0000000..d4861df
--- /dev/null
@@ -0,0 +1,57 @@
+#undef  PREFIX
+#define PREFIX  PREFIX1
+#ifndef PREFIX2
+#define PREFIX2        PREFIX1
+#endif
+
+#define LINK_LIBGCC_SPEC ""
+#define LIBGCC_SPEC \
+"%{static|static-libgcc:-lgcc -lgcc_eh} \
+ %{!static: \
+  %{!static-libgcc: \
+   %{!shared-libgcc:-lgcc --as-needed -lgcc_pic --no-as-needed} \
+   %{shared-libgcc:-lgcc_pic \
+    %{!shared: -lgcc} \
+   } \
+  } \
+ }"
+
+#undef LINK_SPEC
+#define LINK_SPEC DFBSD_LINK_SPEC \
+"%{pg: -L"PREFIX2"/lib/gcc"GCCSHORTVER"/profile \
+  %{!static: -rpath /usr/lib/gcc"GCCSHORTVER"/profile} \
+ } \
+ -L"PREFIX2"/lib/gcc"GCCSHORTVER" \
+ %{!static: -rpath /usr/lib/gcc"GCCSHORTVER"} \
+ %{pg: \
+  %{!nostdlib: \
+   %{!nodefaultlibs: -L"PREFIX2"/lib/profile \
+    %{!static: -rpath /usr/lib/profile} \
+   } \
+  } \
+ }"
+
+#define NATIVE_SYSTEM_HEADER_DIR       PREFIX2"/include"
+#define STD_EXEC_PATH                  PREFIX1"/libexec/gcc"GCCSHORTVER
+#define STANDARD_EXEC_PREFIX           STD_EXEC_PATH"/"
+#define STANDARD_LIBEXEC_PREFIX        STANDARD_EXEC_PREFIX
+#define STANDARD_BINDIR_PREFIX         STANDARD_EXEC_PREFIX
+#define STANDARD_STARTFILE_PREFIX      STANDARD_EXEC_PREFIX
+#define STANDARD_STARTFILE_PREFIX_1    ""
+#define STANDARD_STARTFILE_PREFIX_2    ""
+#define MD_EXEC_PREFIX                 ""
+#define MD_STARTFILE_PREFIX            ""
+#define MD_STARTFILE_PREFIX_1          ""
+#define TOOLDIR_BASE_PREFIX            "./"
+
+#define STARTFILE_PREFIX_SPEC          PREFIX2"/lib/gcc"GCCSHORTVER"/ "PREFIX2"/lib/"
+
+#define GPLUSPLUS_INCLUDE_DIR          PREFIX2"/include/c++/"GCCPOINTVER
+#define GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT 0
+#undef GPLUSPLUS_TOOL_INCLUDE_DIR
+#define        GPLUSPLUS_BACKWARD_INCLUDE_DIR  PREFIX2"/include/c++/"GCCPOINTVER"/backward"
+#undef LOCAL_INCLUDE_DIR
+#define        GCC_INCLUDE_DIR                 PREFIX2"/libdata/gcc"GCCSHORTVER
+#undef FIXED_INCLUDE_DIR
+#undef CROSS_INCLUDE_DIR
+#undef TOOL_INCLUDE_DIR
diff --git a/gnu/usr.bin/cc50/cc_prep/multilib.h b/gnu/usr.bin/cc50/cc_prep/multilib.h
new file mode 100644 (file)
index 0000000..5b80557
--- /dev/null
@@ -0,0 +1,20 @@
+static const char *const multilib_raw[] = {
+". ;",
+NULL
+};
+
+static const char *const multilib_reuse_raw[] = {
+NULL
+};
+
+static const char *const multilib_matches_raw[] = {
+NULL
+};
+
+static const char *multilib_extra = "";
+
+static const char *const multilib_exclusions_raw[] = {
+NULL
+};
+
+static const char *multilib_options = "";
diff --git a/gnu/usr.bin/cc50/cc_prep/tconfig.h b/gnu/usr.bin/cc50/cc_prep/tconfig.h
new file mode 100644 (file)
index 0000000..7ec80a1
--- /dev/null
@@ -0,0 +1,10 @@
+#ifndef GCC_TCONFIG_H
+#define GCC_TCONFIG_H
+#ifndef USED_FOR_TARGET
+# define USED_FOR_TARGET
+#endif
+#include "auto-host.h"
+#ifdef IN_GCC
+# include "ansidecl.h"
+#endif
+#endif /* GCC_TCONFIG_H */
diff --git a/gnu/usr.bin/cc50/cc_tools/Makefile b/gnu/usr.bin/cc50/cc_tools/Makefile
new file mode 100644 (file)
index 0000000..2a70176
--- /dev/null
@@ -0,0 +1,6 @@
+# Both libraries must be built before "tools"
+# Just don't define SUBDIR_ORDERED and it will build serially, correctly
+
+SUBDIR=  libcpp libiberty tools
+
+.include <bsd.obj.mk>
diff --git a/gnu/usr.bin/cc50/cc_tools/Makefile.inc b/gnu/usr.bin/cc50/cc_tools/Makefile.inc
new file mode 100644 (file)
index 0000000..5c9febb
--- /dev/null
@@ -0,0 +1,11 @@
+# Portions of our build system need this file early, make sure it isn't
+# included twice (because e.g. bsd.init.mk would also include it)
+
+.if !target(__<cctools50.Makefile.inc>__)
+__<cctools50.Makefile.inc>__:
+
+TOP_PREFIX=    ../
+GCC_NO_LIBS=   # yes
+
+.include "../Makefile.inc"
+.endif
diff --git a/gnu/usr.bin/cc50/cc_tools/libcpp/Makefile b/gnu/usr.bin/cc50/cc_tools/libcpp/Makefile
new file mode 100644 (file)
index 0000000..5d6d6ab
--- /dev/null
@@ -0,0 +1,42 @@
+# Despite the source files ending in ".c", the c++ compiler needs to build
+# everything.  We have to roll our own targets to properly support this.
+
+GCC_NO_PATH=   yes
+LOCAL_CONFIG=  yes
+.include "../Makefile.inc"
+.PATH: ${GCCDIR}/libcpp
+
+LIB=           cpp
+
+CFLAGS+=       -I${.CURDIR}
+CFLAGS+=       -Duchar="unsigned char"
+GOOD_CONFIG=   ${.CURDIR}/../../support-libs/libcpp/config.h
+
+SRCS=          charset.c \
+               directives-only.c \
+               directives.c \
+               errors.c \
+               expr.c \
+               files.c \
+               identifiers.c \
+               init.c \
+               lex.c \
+               line-map.c \
+               macro.c \
+               mkdeps.c \
+               pch.c \
+               symtab.c \
+               traditional.c
+
+localedir.h:
+       touch $@
+
+config.h: ${GOOD_CONFIG}
+       cp ${.ALLSRC} .
+
+beforedepend: localedir.h config.h
+afterdepend: libcpp.na
+
+CLEANFILES=    localedir.h config.h
+
+.include "../../Makefile.intcxx_lib"
diff --git a/gnu/usr.bin/cc50/cc_tools/libiberty/Makefile b/gnu/usr.bin/cc50/cc_tools/libiberty/Makefile
new file mode 100644 (file)
index 0000000..0271f7f
--- /dev/null
@@ -0,0 +1,22 @@
+LIB=           iberty
+INTERNALLIB=   YES
+CFLAGS+=       -I${.CURDIR}
+GOOD_CONFIG=   ${.CURDIR}/../../support-libs/libiberty/config.h
+CLEANFILES=    config.h
+
+SRCS=  concat.c cp-demangle.c cp-demint.c cplus-dem.c dyn-string.c \
+       fibheap.c fopen_unlocked.c getpwd.c getruntime.c hashtab.c hex.c \
+       lbasename.c lrealpath.c make-relative-prefix.c make-temp-file.c \
+       md5.c obstack.c partition.c pex-unix.c physmem.c safe-ctype.c \
+       splay-tree.c xexit.c xmalloc.c xmemdup.c xstrdup.c xstrerror.c \
+       filename_cmp.c regex.c xstrndup.c xasprintf.c xvasprintf.c \
+       vprintf-support.c
+
+config.h: ${GOOD_CONFIG}
+       cp ${.ALLSRC} .
+
+beforedepend: config.h
+afterdepend: libiberty.na
+
+.include <bsd.hostlib.mk>
+.PATH: ${GCCDIR}/libiberty
diff --git a/gnu/usr.bin/cc50/cc_tools/tools/Makefile b/gnu/usr.bin/cc50/cc_tools/tools/Makefile
new file mode 100644 (file)
index 0000000..e3381a5
--- /dev/null
@@ -0,0 +1,197 @@
+# Despite the source files ending in ".c", the c++ compiler needs to build
+# everything.  We have to roll our own targets to properly support this.
+
+.include "../Makefile.inc"
+.include "../../Makefile.langs"
+
+NXCXXFLAGS+=           -DGENERATOR_FILE -I${.OBJDIR}
+BUILD_LIBS=            ../libiberty/libiberty.na
+BUILD_LIBS_genmatch=   ../libcpp/libcpp.na
+NXLD_genautomata=      -lm
+
+MIC=           sh ${GCCDIR}/move-if-change
+
+BUILD_RTL=     rtl.no \
+               read-rtl.no \
+               ggc-none.no \
+               vec.no \
+               min-insn-modes.no \
+               gensupport.no \
+               print-rtl.no
+BUILD_MD=      read-md.no
+BUILD_ERRORS=  errors.no
+BUILD_GTYPE=   gengtype-lex.no \
+               gengtype-parse.no \
+               gengtype-state.no \
+               version.no
+BUILD_MATCH=   hash-table.no
+
+genprogrtl=    attr attr-common attrtab automata codes conditions config \
+               emit extract flags opinit output peep preds recog mddump
+genprogmd=     $(genprogrtl) mddeps constants enums
+genprogerr=    $(genprogmd) genrtl modes gtype hooks match
+genprog=       $(genprogerr) check checksum condmd
+
+NO_RTL=                ${genprogrtl:S/^/gen/g:S/$/.no/g}
+NO_MD=         ${genprogmd:S/^/gen/g:S/$/.no/g}
+NO_PROGERR=    ${genprogerr:S/^/gen/g:S/$/.no/g}
+NO_PROG=       ${genprog:S/^/gen/g:S/$/.no/g}
+NO_LIST=       ${BUILD_RTL} ${BUILD_MD} ${BUILD_ERRORS} \
+               ${BUILD_GTYPE} ${BUILD_MATCH} ${NO_PROG}
+
+# All these RTL objects needs common headers (tbc)
+${BUILD_RTL}: tm.h insn-modes.h gtype-desc.h insn-constants.h
+# All these programs use the RTL reader ($(BUILD_RTL)).
+${NO_RTL}: ${BUILD_RTL}
+# All these programs use the MD reader
+${NO_MD}: ${BUILD_MD}
+# All these programs need to report errors.
+${NO_PROGERR}: ${BUILD_ERRORS}
+
+.for f in ${genprogrtl}
+gen${f}.nx: ${BUILD_RTL}
+.endfor
+
+.for f in ${genprogmd}
+gen${f}.nx: ${BUILD_MD}
+.endfor
+
+.for f in ${genprogerr}
+gen${f}.nx: ${BUILD_ERRORS}
+.endfor
+
+.for f in ${genprog}
+GENTOOLS+= gen${f}.nx
+.endfor
+
+# For some reason, gcov-iov is an oddball
+GENTOOLS+=     gcov-iov.nx
+NO_LIST+=      gcov-iov.no
+
+gengtype.nx: ${BUILD_GTYPE}
+genmatch.nx: ${BUILD_MATCH} vec.no
+
+.for f in ${GENTOOLS}
+$f: ${f:.nx=.no} ${BUILD_LIBS_${f:R}} ${BUILD_LIBS}
+       ${NXCXX} ${NXCXXFLAGS} ${NXLDFLAGS} ${.ALLSRC:M*.n[oa]} \
+               ${NXLD_${f:R}} -o ${.TARGET}
+.endfor
+
+.for nofile in ${NO_LIST}
+${nofile}: ${nofile:.no=.c}
+       ${NXCXX} ${NXCXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
+.endfor
+
+gencheck.no: tm.h insn-constants.h
+gencondmd.no: insn-constants.h
+
+MD_DEPS=       ${GCCDIR}/gcc/common.md ${md_file}
+MD_DEPS_PLUS=  ${MD_DEPS} insn-conditions.md
+
+_MIC: .USE
+       ${MIC} ${.TARGET}.tmp ${.TARGET}
+_PL: .USE
+       ${.OBJDIR}/${.ALLSRC:M*.nx} > ${.TARGET}.tmp
+       ${MIC} ${.TARGET}.tmp ${.TARGET}
+_MD: .USE
+       ${.OBJDIR}/${.ALLSRC:M*.nx} ${MD_DEPS} > ${.TARGET}.tmp
+       ${MIC} ${.TARGET}.tmp ${.TARGET}
+
+simple_rtl_generated_h=        insn-attr.h insn-attr-common.h insn-codes.h \
+                       insn-config.h insn-flags.h
+simple_rtl_generated_c=        insn-automata.c insn-emit.c insn-extract.c \
+                       insn-output.c insn-peep.c insn-recog.c
+simple_generated_h=    $(simple_rtl_generated_h) insn-constants.h
+simple_generated_c=    $(simple_rtl_generated_c) insn-enums.c insn-preds.c
+
+.for f in ${simple_rtl_generated_h} ${simple_rtl_generated_c}
+. for generator in gen${f:R:S/^insn-//}.nx
+$f: ${generator} ${MD_DEPS_PLUS} _MIC
+       ${.OBJDIR}/${generator} ${MD_DEPS_PLUS} > ${.TARGET}.tmp
+. endfor
+.endfor
+
+insn-modes.h: genmodes.nx _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} -h > ${.TARGET}.tmp
+gtyp-input.list: _MIC
+       rm -f ${.TARGET}.tmp
+       for f in ${GTFILES}; do \
+               echo "$$f" >> ${.TARGET}.tmp; \
+       done
+gtype.state: gengtype.nx gtyp-input.list ${GTFILES:N[*]} _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} -S ${GCCDIR}/gcc -I ${.ALLSRC:M*.list} \
+         -w gtype.state.tmp
+gtype-desc.c gtype-desc.h: gengtype.nx gtype.state
+       ${.OBJDIR}/${.ALLSRC:M*.nx} -r gtype.state
+genrtl.h: gengenrtl.nx _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} > ${.TARGET}.tmp
+min-insn-modes.c: genmodes.nx _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} -m > ${.TARGET}.tmp
+tm-preds.h: genpreds.nx ${MD_DEPS} _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} -h ${MD_DEPS} > ${.TARGET}.tmp
+tm-constrs.h: genpreds.nx ${MD_DEPS} _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} -c ${MD_DEPS} > ${.TARGET}.tmp
+insn-constants.h:   genconstants.nx ${MD_DEPS} _MD
+insn-enums.c:       genenums.nx ${MD_DEPS} _MD
+insn-preds.c:       genpreds.nx ${MD_DEPS} _MD
+gencondmd.c:        genconditions.nx ${MD_DEPS} tm-preds.h tm-constrs.h _MD
+insn-conditions.md: gencondmd.nx _PL
+insn-modes.c:       genmodes.nx _PL
+tree-check.h:       gencheck.nx _PL
+gcov-iov.h: gcov-iov.nx BASE-VER _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} '${GCCCOMPLETEVER}' '' > ${.TARGET}.tmp
+target-hooks-def.h: genhooks.nx _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} "Target Hook" > ${.TARGET}.tmp
+common/common-target-hooks-def.h: genhooks.nx _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} "Common Target Hook" > ${.TARGET}.tmp
+c-family/c-target-hooks-def.h: genhooks.nx _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} "C Target Hook" > ${.TARGET}.tmp
+stamp-opinit: genopinit.nx ${MD_DEPS_PLUS}
+       ${.OBJDIR}/${.ALLSRC:M*.nx} ${.ALLSRC:M*.md} \
+               -hinsn-opinit.h.tmp -cinsn-opinit.c.tmp
+       ${MIC} insn-opinit.h.tmp insn-opinit.h
+       ${MIC} insn-opinit.c.tmp insn-opinit.c
+       touch stamp-opinit
+stamp-tabs: genattrtab.nx ${MD_DEPS_PLUS}
+       ${.OBJDIR}/${.ALLSRC:M*.nx} ${.ALLSRC:M*.md} \
+               -Ainsn-attrtab.c.tmp -Dinsn-dfatab.c.tmp \
+               -Linsn-latencytab.c.tmp
+       ${MIC} insn-attrtab.c.tmp insn-attrtab.c
+       ${MIC} insn-dfatab.c.tmp insn-dfatab.c
+       ${MIC} insn-latencytab.c.tmp insn-latencytab.c
+       touch stamp-tabs
+gimple-match.c: genmatch.nx match.pd _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} --gimple ${GCCDIR}/gcc/match.pd \
+       > ${.TARGET}.tmp
+generic-match.c: genmatch.nx match.pd _MIC
+       ${.OBJDIR}/${.ALLSRC:M*.nx} --generic ${GCCDIR}/gcc/match.pd \
+       > ${.TARGET}.tmp
+genmatch.c hash-table.c: gtype-desc.h
+
+pass-instances.def: ${GCCDIR}/gcc/passes.def
+       /usr/bin/awk -f ${GCCDIR}/gcc/gen-pass-instances.awk \
+               ${.ALLSRC} > ${.TARGET}
+
+GENFILES=      ${simple_generated_h} ${simple_generated_c} \
+               tree-check.h genrtl.h insn-modes.h tm-preds.h tm-constrs.h \
+               gtype-desc.c gtype-desc.h gcov-iov.h target-hooks-def.h \
+               common/common-target-hooks-def.h pass-instances.def \
+               c-family/c-target-hooks-def.h min-insn-modes.c \
+               insn-modes.c insn-constants.h insn-conditions.md \
+               gencondmd.c gimple-match.c generic-match.c \
+               stamp-opinit stamp-tabs
+
+CLEANFILES+=   ${GENTOOLS} ${NO_LIST} gengtype-lex.c
+CLEANFILES+=   ${GENFILES} gtyp-input.list gtype.state
+CLEANFILES+=   gt-* gtype-*.h pass-instances.def
+CLEANFILES+=   insn-opinit.[ch] insn-*tab.c
+CLEANDIRS+=    common c-family
+
+dossier:
+       mkdir -p common c-family
+
+genfiles: dossier ${GENTOOLS} ${GENFILES}
+depend all: genfiles
+
+.include <bsd.obj.mk>
+.include <bsd.dep.mk>
diff --git a/gnu/usr.bin/cc50/drivers/Makefile b/gnu/usr.bin/cc50/drivers/Makefile
new file mode 100644 (file)
index 0000000..40817c6
--- /dev/null
@@ -0,0 +1,10 @@
+# These drivers can be built in parallel
+
+SUBDIR_ORDERED=                # maximum parallelism
+
+SUBDIR=                c++
+SUBDIR+=       cc
+SUBDIR+=       cpp
+SUBDIR+=       gcov
+
+.include <bsd.subdir.mk>
diff --git a/gnu/usr.bin/cc50/drivers/Makefile.inc b/gnu/usr.bin/cc50/drivers/Makefile.inc
new file mode 100644 (file)
index 0000000..7616911
--- /dev/null
@@ -0,0 +1,7 @@
+.if !target(__<driver50.Makefile.inc>__)
+__<driver50.Makefile.inc>__:
+
+TOP_PREFIX=    ../
+
+.include "../Makefile.inc"
+.endif
diff --git a/gnu/usr.bin/cc50/drivers/c++/Makefile b/gnu/usr.bin/cc50/drivers/c++/Makefile
new file mode 100644 (file)
index 0000000..ae922b9
--- /dev/null
@@ -0,0 +1,23 @@
+GCC_LANG_DIR=  gcc/cp
+.include "../Makefile.inc"
+.include "../../Makefile.langs"
+.include "../../../Makefile.cco"
+
+PROG_CXX=      c++
+LINKS=         ${BINDIR}/c++ ${BINDIR}/g++
+LINKS+=                ${BINDIR}/c++ ${BINDIR}/CC
+MAN=           # man pages installed by cc (MLINK)
+
+SRCS=          ${GCC_SRCS} g++spec.c ${EXTRA_GCC_SRCS}
+
+CFLAGS+=       -DCONFIGURE_SPECS="\"\"" \
+               -DACCEL_DIR_SUFFIX="\"\"" \
+               -DDEFAULT_REAL_TARGET_MACHINE="\"${target_machine}\""
+
+# hack to force c++ compiler to compile *.c files to create program
+.for cfile in ${SRCS}
+${cfile:.c=.o}: ${cfile}
+       ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
+.endfor
+
+.include <bsd.prog.mk>
diff --git a/gnu/usr.bin/cc50/drivers/cc/Makefile b/gnu/usr.bin/cc50/drivers/cc/Makefile
new file mode 100644 (file)
index 0000000..0f9552a
--- /dev/null
@@ -0,0 +1,43 @@
+.include "../Makefile.inc"
+.include "../../Makefile.langs"
+.include "../../../Makefile.cco"
+
+PROG_CXX=      cc
+LINKS=         ${BINDIR}/cc ${BINDIR}/gcc
+MFILE=         gcc${MANPAGEVER}.1
+MAN=           ${MFILE}
+
+SRCS=          ${GCC_SRCS} gccspec.c ${EXTRA_GCC_SRCS}
+
+CFLAGS+=       -DCONFIGURE_SPECS="\"\"" \
+               -DACCEL_DIR_SUFFIX="\"\"" \
+               -DDEFAULT_REAL_TARGET_MACHINE="\"${target_machine}\""
+
+DOC_Release=   ${GCCDIR}/gcc/doc/gcc.1
+DOC_Snapshot=  gcc.1
+
+${MFILE}: ${DOC_${GCCRELEASE}}
+       cp ${.ALLSRC} ${.TARGET}
+
+CLEANFILES+=   ${MFILE}
+
+MLINKS+= ${MFILE} cc${MANPAGEVER}.1
+MLINKS+= ${MFILE} CC${MANPAGEVER}.1
+MLINKS+= ${MFILE} c++${MANPAGEVER}.1
+MLINKS+= ${MFILE} g++${MANPAGEVER}.1
+       
+.if defined(IS_PRIMARY)
+MLINKS+= ${MFILE} cc.1
+MLINKS+= ${MFILE} CC.1
+MLINKS+= ${MFILE} gcc.1
+MLINKS+= ${MFILE} c++.1
+MLINKS+= ${MFILE} g++.1
+.endif
+
+# hack to force c++ compiler to compile *.c files to create program
+.for cfile in ${SRCS}
+${cfile:.c=.o}: ${cfile}
+       ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
+.endfor
+
+.include <bsd.prog.mk>
diff --git a/gnu/usr.bin/cc50/drivers/cc/gcc.1 b/gnu/usr.bin/cc50/drivers/cc/gcc.1
new file mode 100644 (file)
index 0000000..023ecd0
--- /dev/null
@@ -0,0 +1,22408 @@
+.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.20)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings.  \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote.  \*(C+ will
+.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
+.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
+.\" nothing in troff, for use with C<>.
+.tr \(*W-
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+.    ds -- \(*W-
+.    ds PI pi
+.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
+.    ds L" ""
+.    ds R" ""
+.    ds C` ""
+.    ds C' ""
+'br\}
+.el\{\
+.    ds -- \|\(em\|
+.    ds PI \(*p
+.    ds L" ``
+.    ds R" ''
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el       .ds Aq '
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD.  Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.ie \nF \{\
+.    de IX
+.    tm Index:\\$1\t\\n%\t"\\$2"
+..
+.    nr % 0
+.    rr F
+.\}
+.el \{\
+.    de IX
+..
+.\}
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
+.    \" fudge factors for nroff and troff
+.if n \{\
+.    ds #H 0
+.    ds #V .8m
+.    ds #F .3m
+.    ds #[ \f1
+.    ds #] \fP
+.\}
+.if t \{\
+.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+.    ds #V .6m
+.    ds #F 0
+.    ds #[ \&
+.    ds #] \&
+.\}
+.    \" simple accents for nroff and troff
+.if n \{\
+.    ds ' \&
+.    ds ` \&
+.    ds ^ \&
+.    ds , \&
+.    ds ~ ~
+.    ds /
+.\}
+.if t \{\
+.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+.    \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+.    \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+.    \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+.    ds : e
+.    ds 8 ss
+.    ds o a
+.    ds d- d\h'-1'\(ga
+.    ds D- D\h'-1'\(hy
+.    ds th \o'bp'
+.    ds Th \o'LP'
+.    ds ae ae
+.    ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "GCC 1"
+.TH GCC 1 "2015-01-11" "gcc-5.0.0" "GNU"
+.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH "NAME"
+gcc \- GNU project C and C++ compiler
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+gcc [\fB\-c\fR|\fB\-S\fR|\fB\-E\fR] [\fB\-std=\fR\fIstandard\fR]
+    [\fB\-g\fR] [\fB\-pg\fR] [\fB\-O\fR\fIlevel\fR]
+    [\fB\-W\fR\fIwarn\fR...] [\fB\-Wpedantic\fR]
+    [\fB\-I\fR\fIdir\fR...] [\fB\-L\fR\fIdir\fR...]
+    [\fB\-D\fR\fImacro\fR[=\fIdefn\fR]...] [\fB\-U\fR\fImacro\fR]
+    [\fB\-f\fR\fIoption\fR...] [\fB\-m\fR\fImachine-option\fR...]
+    [\fB\-o\fR \fIoutfile\fR] [@\fIfile\fR] \fIinfile\fR...
+.PP
+Only the most useful options are listed here; see below for the
+remainder.  \fBg++\fR accepts mostly the same options as \fBgcc\fR.
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+When you invoke \s-1GCC\s0, it normally does preprocessing, compilation,
+assembly and linking.  The \*(L"overall options\*(R" allow you to stop this
+process at an intermediate stage.  For example, the \fB\-c\fR option
+says not to run the linker.  Then the output consists of object files
+output by the assembler.
+.PP
+Other options are passed on to one stage of processing.  Some options
+control the preprocessor and others the compiler itself.  Yet other
+options control the assembler and linker; most of these are not
+documented here, since you rarely need to use any of them.
+.PP
+Most of the command-line options that you can use with \s-1GCC\s0 are useful
+for C programs; when an option is only useful with another language
+(usually \*(C+), the explanation says so explicitly.  If the description
+for a particular option does not mention a source language, you can use
+that option with all supported languages.
+.PP
+The \fBgcc\fR program accepts options and file names as operands.  Many
+options have multi-letter names; therefore multiple single-letter options
+may \fInot\fR be grouped: \fB\-dv\fR is very different from \fB\-d\ \-v\fR.
+.PP
+You can mix options and other arguments.  For the most part, the order
+you use doesn't matter.  Order does matter when you use several
+options of the same kind; for example, if you specify \fB\-L\fR more
+than once, the directories are searched in the order specified.  Also,
+the placement of the \fB\-l\fR option is significant.
+.PP
+Many options have long names starting with \fB\-f\fR or with
+\&\fB\-W\fR\-\-\-for example,
+\&\fB\-fmove\-loop\-invariants\fR, \fB\-Wformat\fR and so on.  Most of
+these have both positive and negative forms; the negative form of
+\&\fB\-ffoo\fR is \fB\-fno\-foo\fR.  This manual documents
+only one of these two forms, whichever one is not the default.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+.SS "Option Summary"
+.IX Subsection "Option Summary"
+Here is a summary of all the options, grouped by type.  Explanations are
+in the following sections.
+.IP "\fIOverall Options\fR" 4
+.IX Item "Overall Options"
+\&\fB\-c  \-S  \-E  \-o\fR \fIfile\fR  \fB\-no\-canonical\-prefixes  
+\&\-pipe  \-pass\-exit\-codes  
+\&\-x\fR \fIlanguage\fR  \fB\-v  \-###  \-\-help\fR[\fB=\fR\fIclass\fR[\fB,...\fR]]  \fB\-\-target\-help  
+\&\-\-version \-wrapper @\fR\fIfile\fR \fB\-fplugin=\fR\fIfile\fR \fB\-fplugin\-arg\-\fR\fIname\fR\fB=\fR\fIarg\fR  
+\&\fB\-fdump\-ada\-spec\fR[\fB\-slim\fR] \fB\-fada\-spec\-parent=\fR\fIunit\fR \fB\-fdump\-go\-spec=\fR\fIfile\fR
+.IP "\fIC Language Options\fR" 4
+.IX Item "C Language Options"
+\&\fB\-ansi  \-std=\fR\fIstandard\fR  \fB\-fgnu89\-inline 
+\&\-aux\-info\fR \fIfilename\fR \fB\-fallow\-parameterless\-variadic\-functions 
+\&\-fno\-asm  \-fno\-builtin  \-fno\-builtin\-\fR\fIfunction\fR 
+\&\fB\-fhosted  \-ffreestanding \-fopenmp \-fopenmp\-simd \-fms\-extensions 
+\&\-fplan9\-extensions \-trigraphs  \-traditional  \-traditional\-cpp 
+\&\-fallow\-single\-precision  \-fcond\-mismatch \-flax\-vector\-conversions 
+\&\-fsigned\-bitfields  \-fsigned\-char 
+\&\-funsigned\-bitfields  \-funsigned\-char\fR
+.IP "\fI\*(C+ Language Options\fR" 4
+.IX Item " Language Options"
+\&\fB\-fabi\-version=\fR\fIn\fR  \fB\-fno\-access\-control  \-fcheck\-new 
+\&\-fconstexpr\-depth=\fR\fIn\fR  \fB\-ffriend\-injection 
+\&\-fno\-elide\-constructors 
+\&\-fno\-enforce\-eh\-specs 
+\&\-ffor\-scope  \-fno\-for\-scope  \-fno\-gnu\-keywords 
+\&\-fno\-implicit\-templates 
+\&\-fno\-implicit\-inline\-templates 
+\&\-fno\-implement\-inlines  \-fms\-extensions 
+\&\-fno\-nonansi\-builtins  \-fnothrow\-opt  \-fno\-operator\-names 
+\&\-fno\-optional\-diags  \-fpermissive 
+\&\-fno\-pretty\-templates 
+\&\-frepo  \-fno\-rtti \-fsized\-deallocation 
+\&\-fstats  \-ftemplate\-backtrace\-limit=\fR\fIn\fR 
+\&\fB\-ftemplate\-depth=\fR\fIn\fR 
+\&\fB\-fno\-threadsafe\-statics  \-fuse\-cxa\-atexit 
+\&\-fno\-weak  \-nostdinc++ 
+\&\-fvisibility\-inlines\-hidden 
+\&\-fvtable\-verify=\fR[\fBstd\fR|\fBpreinit\fR|\fBnone\fR] 
+\&\fB\-fvtv\-counts \-fvtv\-debug 
+\&\-fvisibility\-ms\-compat 
+\&\-fext\-numeric\-literals 
+\&\-Wabi=\fR\fIn\fR  \fB\-Wconversion\-null  \-Wctor\-dtor\-privacy 
+\&\-Wdelete\-non\-virtual\-dtor \-Wliteral\-suffix \-Wnarrowing 
+\&\-Wnoexcept \-Wnon\-virtual\-dtor  \-Wreorder 
+\&\-Weffc++  \-Wstrict\-null\-sentinel 
+\&\-Wno\-non\-template\-friend  \-Wold\-style\-cast 
+\&\-Woverloaded\-virtual  \-Wno\-pmf\-conversions 
+\&\-Wsign\-promo\fR
+.IP "\fIObjective-C and Objective\-\*(C+ Language Options\fR" 4
+.IX Item "Objective-C and Objective- Language Options"
+\&\fB\-fconstant\-string\-class=\fR\fIclass-name\fR 
+\&\fB\-fgnu\-runtime  \-fnext\-runtime 
+\&\-fno\-nil\-receivers 
+\&\-fobjc\-abi\-version=\fR\fIn\fR 
+\&\fB\-fobjc\-call\-cxx\-cdtors 
+\&\-fobjc\-direct\-dispatch 
+\&\-fobjc\-exceptions 
+\&\-fobjc\-gc 
+\&\-fobjc\-nilcheck 
+\&\-fobjc\-std=objc1 
+\&\-fno\-local\-ivars 
+\&\-fivar\-visibility=\fR[\fBpublic\fR|\fBprotected\fR|\fBprivate\fR|\fBpackage\fR] 
+\&\fB\-freplace\-objc\-classes 
+\&\-fzero\-link 
+\&\-gen\-decls 
+\&\-Wassign\-intercept 
+\&\-Wno\-protocol  \-Wselector 
+\&\-Wstrict\-selector\-match 
+\&\-Wundeclared\-selector\fR
+.IP "\fILanguage Independent Options\fR" 4
+.IX Item "Language Independent Options"
+\&\fB\-fmessage\-length=\fR\fIn\fR  
+\&\fB\-fdiagnostics\-show\-location=\fR[\fBonce\fR|\fBevery-line\fR]  
+\&\fB\-fdiagnostics\-color=\fR[\fBauto\fR|\fBnever\fR|\fBalways\fR]  
+\&\fB\-fno\-diagnostics\-show\-option \-fno\-diagnostics\-show\-caret\fR
+.IP "\fIWarning Options\fR" 4
+.IX Item "Warning Options"
+\&\fB\-fsyntax\-only  \-fmax\-errors=\fR\fIn\fR  \fB\-Wpedantic 
+\&\-pedantic\-errors 
+\&\-w  \-Wextra  \-Wall  \-Waddress  \-Waggregate\-return  
+\&\-Waggressive\-loop\-optimizations \-Warray\-bounds 
+\&\-Wbool\-compare 
+\&\-Wno\-attributes \-Wno\-builtin\-macro\-redefined 
+\&\-Wc90\-c99\-compat \-Wc99\-c11\-compat 
+\&\-Wc++\-compat \-Wc++11\-compat \-Wc++14\-compat \-Wcast\-align  \-Wcast\-qual  
+\&\-Wchar\-subscripts \-Wclobbered  \-Wcomment \-Wconditionally\-supported  
+\&\-Wconversion \-Wcoverage\-mismatch \-Wdate\-time \-Wdelete\-incomplete \-Wno\-cpp  
+\&\-Wno\-deprecated \-Wno\-deprecated\-declarations \-Wno\-designated\-init 
+\&\-Wdisabled\-optimization 
+\&\-Wno\-discarded\-qualifiers \-Wno\-discarded\-array\-qualifiers 
+\&\-Wno\-div\-by\-zero \-Wdouble\-promotion \-Wempty\-body  \-Wenum\-compare 
+\&\-Wno\-endif\-labels \-Werror  \-Werror=* 
+\&\-Wfatal\-errors  \-Wfloat\-equal  \-Wformat  \-Wformat=2 
+\&\-Wno\-format\-contains\-nul \-Wno\-format\-extra\-args \-Wformat\-nonliteral 
+\&\-Wformat\-security  \-Wformat\-signedness  \-Wformat\-y2k 
+\&\-Wframe\-larger\-than=\fR\fIlen\fR \fB\-Wno\-free\-nonheap\-object \-Wjump\-misses\-init 
+\&\-Wignored\-qualifiers  \-Wincompatible\-pointer\-types 
+\&\-Wimplicit  \-Wimplicit\-function\-declaration  \-Wimplicit\-int 
+\&\-Winit\-self  \-Winline  \-Wno\-int\-conversion 
+\&\-Wno\-int\-to\-pointer\-cast \-Wno\-invalid\-offsetof 
+\&\-Winvalid\-pch \-Wlarger\-than=\fR\fIlen\fR  \fB\-Wunsafe\-loop\-optimizations 
+\&\-Wlogical\-op \-Wlogical\-not\-parentheses \-Wlong\-long 
+\&\-Wmain \-Wmaybe\-uninitialized \-Wmemset\-transposed\-args \-Wmissing\-braces 
+\&\-Wmissing\-field\-initializers \-Wmissing\-include\-dirs 
+\&\-Wno\-multichar  \-Wnonnull  \-Wnormalized=\fR[\fBnone\fR|\fBid\fR|\fBnfc\fR|\fBnfkc\fR] 
+ \fB\-Wodr  \-Wno\-overflow  \-Wopenmp\-simd 
+\&\-Woverlength\-strings  \-Wpacked  \-Wpacked\-bitfield\-compat  \-Wpadded 
+\&\-Wparentheses  \-Wpedantic\-ms\-format \-Wno\-pedantic\-ms\-format 
+\&\-Wpointer\-arith  \-Wno\-pointer\-to\-int\-cast 
+\&\-Wredundant\-decls  \-Wno\-return\-local\-addr 
+\&\-Wreturn\-type  \-Wsequence\-point  \-Wshadow  \-Wno\-shadow\-ivar 
+\&\-Wshift\-count\-negative \-Wshift\-count\-overflow 
+\&\-Wsign\-compare  \-Wsign\-conversion \-Wfloat\-conversion 
+\&\-Wsizeof\-pointer\-memaccess  \-Wsizeof\-array\-argument 
+\&\-Wstack\-protector \-Wstack\-usage=\fR\fIlen\fR \fB\-Wstrict\-aliasing 
+\&\-Wstrict\-aliasing=n  \-Wstrict\-overflow \-Wstrict\-overflow=\fR\fIn\fR 
+\&\fB\-Wsuggest\-attribute=\fR[\fBpure\fR|\fBconst\fR|\fBnoreturn\fR|\fBformat\fR] 
+\&\fB\-Wsuggest\-final\-types  \-Wsuggest\-final\-methods  \-Wsuggest\-override 
+\&\-Wmissing\-format\-attribute 
+\&\-Wswitch  \-Wswitch\-default  \-Wswitch\-enum \-Wswitch\-bool \-Wsync\-nand 
+\&\-Wsystem\-headers  \-Wtrampolines  \-Wtrigraphs  \-Wtype\-limits  \-Wundef 
+\&\-Wuninitialized  \-Wunknown\-pragmas  \-Wno\-pragmas 
+\&\-Wunsuffixed\-float\-constants  \-Wunused  \-Wunused\-function 
+\&\-Wunused\-label  \-Wunused\-local\-typedefs \-Wunused\-parameter 
+\&\-Wno\-unused\-result \-Wunused\-value  \-Wunused\-variable 
+\&\-Wunused\-but\-set\-parameter \-Wunused\-but\-set\-variable 
+\&\-Wuseless\-cast \-Wvariadic\-macros \-Wvector\-operation\-performance 
+\&\-Wvla \-Wvolatile\-register\-var  \-Wwrite\-strings 
+\&\-Wzero\-as\-null\-pointer\-constant\fR
+.IP "\fIC and Objective-C-only Warning Options\fR" 4
+.IX Item "C and Objective-C-only Warning Options"
+\&\fB\-Wbad\-function\-cast  \-Wmissing\-declarations 
+\&\-Wmissing\-parameter\-type  \-Wmissing\-prototypes  \-Wnested\-externs 
+\&\-Wold\-style\-declaration  \-Wold\-style\-definition 
+\&\-Wstrict\-prototypes  \-Wtraditional  \-Wtraditional\-conversion 
+\&\-Wdeclaration\-after\-statement \-Wpointer\-sign\fR
+.IP "\fIDebugging Options\fR" 4
+.IX Item "Debugging Options"
+\&\fB\-d\fR\fIletters\fR  \fB\-dumpspecs  \-dumpmachine  \-dumpversion 
+\&\-fsanitize=\fR\fIstyle\fR \fB\-fsanitize\-recover \-fsanitize\-recover=\fR\fIstyle\fR 
+\&\fB\-fasan\-shadow\-offset=\fR\fInumber\fR \fB\-fsanitize\-undefined\-trap\-on\-error 
+\&\-fdbg\-cnt\-list \-fdbg\-cnt=\fR\fIcounter-value-list\fR 
+\&\fB\-fdisable\-ipa\-\fR\fIpass_name\fR 
+\&\fB\-fdisable\-rtl\-\fR\fIpass_name\fR 
+\&\fB\-fdisable\-rtl\-\fR\fIpass-name\fR\fB=\fR\fIrange-list\fR 
+\&\fB\-fdisable\-tree\-\fR\fIpass_name\fR 
+\&\fB\-fdisable\-tree\-\fR\fIpass-name\fR\fB=\fR\fIrange-list\fR 
+\&\fB\-fdump\-noaddr \-fdump\-unnumbered \-fdump\-unnumbered\-links 
+\&\-fdump\-translation\-unit\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-class\-hierarchy\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-ipa\-all \-fdump\-ipa\-cgraph \-fdump\-ipa\-inline 
+\&\-fdump\-passes 
+\&\-fdump\-statistics 
+\&\-fdump\-tree\-all 
+\&\-fdump\-tree\-original\fR[\fB\-\fR\fIn\fR]  
+\&\fB\-fdump\-tree\-optimized\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-cfg \-fdump\-tree\-alias 
+\&\-fdump\-tree\-ch 
+\&\-fdump\-tree\-ssa\fR[\fB\-\fR\fIn\fR] \fB\-fdump\-tree\-pre\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-ccp\fR[\fB\-\fR\fIn\fR] \fB\-fdump\-tree\-dce\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-gimple\fR[\fB\-raw\fR] 
+\&\fB\-fdump\-tree\-dom\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-dse\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-phiprop\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-phiopt\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-forwprop\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-copyrename\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-nrv \-fdump\-tree\-vect 
+\&\-fdump\-tree\-sink 
+\&\-fdump\-tree\-sra\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-forwprop\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-fre\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-vtable\-verify 
+\&\-fdump\-tree\-vrp\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-tree\-storeccp\fR[\fB\-\fR\fIn\fR] 
+\&\fB\-fdump\-final\-insns=\fR\fIfile\fR 
+\&\fB\-fcompare\-debug\fR[\fB=\fR\fIopts\fR]  \fB\-fcompare\-debug\-second 
+\&\-feliminate\-dwarf2\-dups \-fno\-eliminate\-unused\-debug\-types 
+\&\-feliminate\-unused\-debug\-symbols \-femit\-class\-debug\-always 
+\&\-fenable\-\fR\fIkind\fR\fB\-\fR\fIpass\fR 
+\&\fB\-fenable\-\fR\fIkind\fR\fB\-\fR\fIpass\fR\fB=\fR\fIrange-list\fR 
+\&\fB\-fdebug\-types\-section \-fmem\-report\-wpa 
+\&\-fmem\-report \-fpre\-ipa\-mem\-report \-fpost\-ipa\-mem\-report \-fprofile\-arcs 
+\&\-fopt\-info 
+\&\-fopt\-info\-\fR\fIoptions\fR[\fB=\fR\fIfile\fR] 
+\&\fB\-frandom\-seed=\fR\fInumber\fR \fB\-fsched\-verbose=\fR\fIn\fR 
+\&\fB\-fsel\-sched\-verbose \-fsel\-sched\-dump\-cfg \-fsel\-sched\-pipelining\-verbose 
+\&\-fstack\-usage  \-ftest\-coverage  \-ftime\-report \-fvar\-tracking 
+\&\-fvar\-tracking\-assignments  \-fvar\-tracking\-assignments\-toggle 
+\&\-g  \-g\fR\fIlevel\fR  \fB\-gtoggle  \-gcoff  \-gdwarf\-\fR\fIversion\fR 
+\&\fB\-ggdb  \-grecord\-gcc\-switches  \-gno\-record\-gcc\-switches 
+\&\-gstabs  \-gstabs+  \-gstrict\-dwarf  \-gno\-strict\-dwarf 
+\&\-gvms  \-gxcoff  \-gxcoff+ \-gz\fR[\fB=\fR\fItype\fR] 
+\&\fB\-fno\-merge\-debug\-strings \-fno\-dwarf2\-cfi\-asm 
+\&\-fdebug\-prefix\-map=\fR\fIold\fR\fB=\fR\fInew\fR 
+\&\fB\-femit\-struct\-debug\-baseonly \-femit\-struct\-debug\-reduced 
+\&\-femit\-struct\-debug\-detailed\fR[\fB=\fR\fIspec-list\fR] 
+\&\fB\-p  \-pg  \-print\-file\-name=\fR\fIlibrary\fR  \fB\-print\-libgcc\-file\-name 
+\&\-print\-multi\-directory  \-print\-multi\-lib  \-print\-multi\-os\-directory 
+\&\-print\-prog\-name=\fR\fIprogram\fR  \fB\-print\-search\-dirs  \-Q 
+\&\-print\-sysroot \-print\-sysroot\-headers\-suffix 
+\&\-save\-temps \-save\-temps=cwd \-save\-temps=obj \-time\fR[\fB=\fR\fIfile\fR]
+.IP "\fIOptimization Options\fR" 4
+.IX Item "Optimization Options"
+\&\fB\-faggressive\-loop\-optimizations \-falign\-functions[=\fR\fIn\fR\fB] 
+\&\-falign\-jumps[=\fR\fIn\fR\fB] 
+\&\-falign\-labels[=\fR\fIn\fR\fB] \-falign\-loops[=\fR\fIn\fR\fB] 
+\&\-fassociative\-math \-fauto\-profile \-fauto\-profile[=\fR\fIpath\fR\fB] 
+\&\-fauto\-inc\-dec \-fbranch\-probabilities 
+\&\-fbranch\-target\-load\-optimize \-fbranch\-target\-load\-optimize2 
+\&\-fbtr\-bb\-exclusive \-fcaller\-saves 
+\&\-fcheck\-data\-deps \-fcombine\-stack\-adjustments \-fconserve\-stack 
+\&\-fcompare\-elim \-fcprop\-registers \-fcrossjumping 
+\&\-fcse\-follow\-jumps \-fcse\-skip\-blocks \-fcx\-fortran\-rules 
+\&\-fcx\-limited\-range 
+\&\-fdata\-sections \-fdce \-fdelayed\-branch 
+\&\-fdelete\-null\-pointer\-checks \-fdevirtualize \-fdevirtualize\-speculatively 
+\&\-fdevirtualize\-at\-ltrans \-fdse 
+\&\-fearly\-inlining \-fipa\-sra \-fexpensive\-optimizations \-ffat\-lto\-objects 
+\&\-ffast\-math \-ffinite\-math\-only \-ffloat\-store \-fexcess\-precision=\fR\fIstyle\fR 
+\&\fB\-fforward\-propagate \-ffp\-contract=\fR\fIstyle\fR \fB\-ffunction\-sections 
+\&\-fgcse \-fgcse\-after\-reload \-fgcse\-las \-fgcse\-lm \-fgraphite\-identity 
+\&\-fgcse\-sm \-fhoist\-adjacent\-loads \-fif\-conversion 
+\&\-fif\-conversion2 \-findirect\-inlining 
+\&\-finline\-functions \-finline\-functions\-called\-once \-finline\-limit=\fR\fIn\fR 
+\&\fB\-finline\-small\-functions \-fipa\-cp \-fipa\-cp\-clone 
+\&\-fipa\-pta \-fipa\-profile \-fipa\-pure\-const \-fipa\-reference \-fipa\-icf 
+\&\-fira\-algorithm=\fR\fIalgorithm\fR 
+\&\fB\-fira\-region=\fR\fIregion\fR \fB\-fira\-hoist\-pressure 
+\&\-fira\-loop\-pressure \-fno\-ira\-share\-save\-slots 
+\&\-fno\-ira\-share\-spill\-slots \-fira\-verbose=\fR\fIn\fR 
+\&\fB\-fisolate\-erroneous\-paths\-dereference \-fisolate\-erroneous\-paths\-attribute 
+\&\-fivopts \-fkeep\-inline\-functions \-fkeep\-static\-consts 
+\&\-flive\-range\-shrinkage 
+\&\-floop\-block \-floop\-interchange \-floop\-strip\-mine   
+\&\-floop\-unroll\-and\-jam \-floop\-nest\-optimize 
+\&\-floop\-parallelize\-all \-flra\-remat \-flto \-flto\-compression\-level 
+\&\-flto\-partition=\fR\fIalg\fR \fB\-flto\-report \-flto\-report\-wpa \-fmerge\-all\-constants 
+\&\-fmerge\-constants \-fmodulo\-sched \-fmodulo\-sched\-allow\-regmoves 
+\&\-fmove\-loop\-invariants \-fno\-branch\-count\-reg 
+\&\-fno\-defer\-pop \-fno\-function\-cse \-fno\-guess\-branch\-probability 
+\&\-fno\-inline \-fno\-math\-errno \-fno\-peephole \-fno\-peephole2 
+\&\-fno\-sched\-interblock \-fno\-sched\-spec \-fno\-signed\-zeros 
+\&\-fno\-toplevel\-reorder \-fno\-trapping\-math \-fno\-zero\-initialized\-in\-bss 
+\&\-fomit\-frame\-pointer \-foptimize\-sibling\-calls 
+\&\-fpartial\-inlining \-fpeel\-loops \-fpredictive\-commoning 
+\&\-fprefetch\-loop\-arrays \-fprofile\-report 
+\&\-fprofile\-correction \-fprofile\-dir=\fR\fIpath\fR \fB\-fprofile\-generate 
+\&\-fprofile\-generate=\fR\fIpath\fR 
+\&\fB\-fprofile\-use \-fprofile\-use=\fR\fIpath\fR \fB\-fprofile\-values 
+\&\-fprofile\-reorder\-functions 
+\&\-freciprocal\-math \-free \-frename\-registers \-freorder\-blocks 
+\&\-freorder\-blocks\-and\-partition \-freorder\-functions 
+\&\-frerun\-cse\-after\-loop \-freschedule\-modulo\-scheduled\-loops 
+\&\-frounding\-math \-fsched2\-use\-superblocks \-fsched\-pressure 
+\&\-fsched\-spec\-load \-fsched\-spec\-load\-dangerous 
+\&\-fsched\-stalled\-insns\-dep[=\fR\fIn\fR\fB] \-fsched\-stalled\-insns[=\fR\fIn\fR\fB] 
+\&\-fsched\-group\-heuristic \-fsched\-critical\-path\-heuristic 
+\&\-fsched\-spec\-insn\-heuristic \-fsched\-rank\-heuristic 
+\&\-fsched\-last\-insn\-heuristic \-fsched\-dep\-count\-heuristic 
+\&\-fschedule\-fusion 
+\&\-fschedule\-insns \-fschedule\-insns2 \-fsection\-anchors 
+\&\-fselective\-scheduling \-fselective\-scheduling2 
+\&\-fsel\-sched\-pipelining \-fsel\-sched\-pipelining\-outer\-loops 
+\&\-fsemantic\-interposition 
+\&\-fshrink\-wrap \-fsignaling\-nans \-fsingle\-precision\-constant 
+\&\-fsplit\-ivs\-in\-unroller \-fsplit\-wide\-types \-fssa\-phiopt \-fstack\-protector 
+\&\-fstack\-protector\-all \-fstack\-protector\-strong \-fstrict\-aliasing 
+\&\-fstrict\-overflow \-fthread\-jumps \-ftracer \-ftree\-bit\-ccp 
+\&\-ftree\-builtin\-call\-dce \-ftree\-ccp \-ftree\-ch 
+\&\-ftree\-coalesce\-inline\-vars \-ftree\-coalesce\-vars \-ftree\-copy\-prop 
+\&\-ftree\-copyrename \-ftree\-dce \-ftree\-dominator\-opts \-ftree\-dse 
+\&\-ftree\-forwprop \-ftree\-fre \-ftree\-loop\-if\-convert 
+\&\-ftree\-loop\-if\-convert\-stores \-ftree\-loop\-im 
+\&\-ftree\-phiprop \-ftree\-loop\-distribution \-ftree\-loop\-distribute\-patterns 
+\&\-ftree\-loop\-ivcanon \-ftree\-loop\-linear \-ftree\-loop\-optimize 
+\&\-ftree\-loop\-vectorize 
+\&\-ftree\-parallelize\-loops=\fR\fIn\fR \fB\-ftree\-pre \-ftree\-partial\-pre \-ftree\-pta 
+\&\-ftree\-reassoc \-ftree\-sink \-ftree\-slsr \-ftree\-sra 
+\&\-ftree\-switch\-conversion \-ftree\-tail\-merge \-ftree\-ter 
+\&\-ftree\-vectorize \-ftree\-vrp 
+\&\-funit\-at\-a\-time \-funroll\-all\-loops \-funroll\-loops 
+\&\-funsafe\-loop\-optimizations \-funsafe\-math\-optimizations \-funswitch\-loops 
+\&\-fipa\-ra \-fvariable\-expansion\-in\-unroller \-fvect\-cost\-model \-fvpt 
+\&\-fweb \-fwhole\-program \-fwpa \-fuse\-ld=\fR\fIlinker\fR \fB\-fuse\-linker\-plugin 
+\&\-\-param\fR \fIname\fR\fB=\fR\fIvalue\fR
+\&\fB\-O  \-O0  \-O1  \-O2  \-O3  \-Os \-Ofast \-Og\fR
+.IP "\fIPreprocessor Options\fR" 4
+.IX Item "Preprocessor Options"
+\&\fB\-A\fR\fIquestion\fR\fB=\fR\fIanswer\fR 
+\&\fB\-A\-\fR\fIquestion\fR[\fB=\fR\fIanswer\fR] 
+\&\fB\-C  \-dD  \-dI  \-dM  \-dN 
+\&\-D\fR\fImacro\fR[\fB=\fR\fIdefn\fR]  \fB\-E  \-H 
+\&\-idirafter\fR \fIdir\fR 
+\&\fB\-include\fR \fIfile\fR  \fB\-imacros\fR \fIfile\fR 
+\&\fB\-iprefix\fR \fIfile\fR  \fB\-iwithprefix\fR \fIdir\fR 
+\&\fB\-iwithprefixbefore\fR \fIdir\fR  \fB\-isystem\fR \fIdir\fR 
+\&\fB\-imultilib\fR \fIdir\fR \fB\-isysroot\fR \fIdir\fR 
+\&\fB\-M  \-MM  \-MF  \-MG  \-MP  \-MQ  \-MT  \-nostdinc  
+\&\-P  \-fdebug\-cpp \-ftrack\-macro\-expansion \-fworking\-directory 
+\&\-remap \-trigraphs  \-undef  \-U\fR\fImacro\fR  
+\&\fB\-Wp,\fR\fIoption\fR \fB\-Xpreprocessor\fR \fIoption\fR \fB\-no\-integrated\-cpp\fR
+.IP "\fIAssembler Option\fR" 4
+.IX Item "Assembler Option"
+\&\fB\-Wa,\fR\fIoption\fR  \fB\-Xassembler\fR \fIoption\fR
+.IP "\fILinker Options\fR" 4
+.IX Item "Linker Options"
+\&\fIobject-file-name\fR  \fB\-l\fR\fIlibrary\fR 
+\&\fB\-nostartfiles  \-nodefaultlibs  \-nostdlib \-pie \-rdynamic 
+\&\-s  \-static \-static\-libgcc \-static\-libstdc++ 
+\&\-static\-libasan \-static\-libtsan \-static\-liblsan \-static\-libubsan 
+\&\-shared \-shared\-libgcc  \-symbolic 
+\&\-T\fR \fIscript\fR  \fB\-Wl,\fR\fIoption\fR  \fB\-Xlinker\fR \fIoption\fR 
+\&\fB\-u\fR \fIsymbol\fR \fB\-z\fR \fIkeyword\fR
+.IP "\fIDirectory Options\fR" 4
+.IX Item "Directory Options"
+\&\fB\-B\fR\fIprefix\fR \fB\-I\fR\fIdir\fR \fB\-iplugindir=\fR\fIdir\fR 
+\&\fB\-iquote\fR\fIdir\fR \fB\-L\fR\fIdir\fR \fB\-specs=\fR\fIfile\fR \fB\-I\- 
+\&\-\-sysroot=\fR\fIdir\fR \fB\-\-no\-sysroot\-suffix\fR
+.IP "\fIMachine Dependent Options\fR" 4
+.IX Item "Machine Dependent Options"
+\&\fIAArch64 Options\fR
+\&\fB\-mabi=\fR\fIname\fR  \fB\-mbig\-endian  \-mlittle\-endian 
+\&\-mgeneral\-regs\-only 
+\&\-mcmodel=tiny  \-mcmodel=small  \-mcmodel=large 
+\&\-mstrict\-align 
+\&\-momit\-leaf\-frame\-pointer  \-mno\-omit\-leaf\-frame\-pointer 
+\&\-mtls\-dialect=desc  \-mtls\-dialect=traditional 
+\&\-mfix\-cortex\-a53\-835769  \-mno\-fix\-cortex\-a53\-835769 
+\&\-march=\fR\fIname\fR  \fB\-mcpu=\fR\fIname\fR  \fB\-mtune=\fR\fIname\fR
+.Sp
+\&\fIAdapteva Epiphany Options\fR
+\&\fB\-mhalf\-reg\-file \-mprefer\-short\-insn\-regs 
+\&\-mbranch\-cost=\fR\fInum\fR \fB\-mcmove \-mnops=\fR\fInum\fR \fB\-msoft\-cmpsf 
+\&\-msplit\-lohi \-mpost\-inc \-mpost\-modify \-mstack\-offset=\fR\fInum\fR 
+\&\fB\-mround\-nearest \-mlong\-calls \-mshort\-calls \-msmall16 
+\&\-mfp\-mode=\fR\fImode\fR \fB\-mvect\-double \-max\-vect\-align=\fR\fInum\fR 
+\&\fB\-msplit\-vecmove\-early \-m1reg\-\fR\fIreg\fR
+.Sp
+\&\fI\s-1ARC\s0 Options\fR
+\&\fB\-mbarrel\-shifter 
+\&\-mcpu=\fR\fIcpu\fR \fB\-mA6 \-mARC600 \-mA7 \-mARC700 
+\&\-mdpfp \-mdpfp\-compact \-mdpfp\-fast \-mno\-dpfp\-lrsr 
+\&\-mea \-mno\-mpy \-mmul32x16 \-mmul64 
+\&\-mnorm \-mspfp \-mspfp\-compact \-mspfp\-fast \-msimd \-msoft\-float \-mswap 
+\&\-mcrc \-mdsp\-packa \-mdvbf \-mlock \-mmac\-d16 \-mmac\-24 \-mrtsc \-mswape 
+\&\-mtelephony \-mxy \-misize \-mannotate\-align \-marclinux \-marclinux_prof 
+\&\-mepilogue\-cfi \-mlong\-calls \-mmedium\-calls \-msdata 
+\&\-mucb\-mcount \-mvolatile\-cache 
+\&\-malign\-call \-mauto\-modify\-reg \-mbbit\-peephole \-mno\-brcc 
+\&\-mcase\-vector\-pcrel \-mcompact\-casesi \-mno\-cond\-exec \-mearly\-cbranchsi 
+\&\-mexpand\-adddi \-mindexed\-loads \-mlra \-mlra\-priority\-none 
+\&\-mlra\-priority\-compact mlra-priority-noncompact \-mno\-millicode 
+\&\-mmixed\-code \-mq\-class \-mRcq \-mRcw \-msize\-level=\fR\fIlevel\fR 
+\&\fB\-mtune=\fR\fIcpu\fR \fB\-mmultcost=\fR\fInum\fR \fB\-munalign\-prob\-threshold=\fR\fIprobability\fR
+.Sp
+\&\fI\s-1ARM\s0 Options\fR
+\&\fB\-mapcs\-frame  \-mno\-apcs\-frame 
+\&\-mabi=\fR\fIname\fR 
+\&\fB\-mapcs\-stack\-check  \-mno\-apcs\-stack\-check 
+\&\-mapcs\-float  \-mno\-apcs\-float 
+\&\-mapcs\-reentrant  \-mno\-apcs\-reentrant 
+\&\-msched\-prolog  \-mno\-sched\-prolog 
+\&\-mlittle\-endian  \-mbig\-endian 
+\&\-mfloat\-abi=\fR\fIname\fR 
+\&\fB\-mfp16\-format=\fR\fIname\fR
+\&\fB\-mthumb\-interwork  \-mno\-thumb\-interwork 
+\&\-mcpu=\fR\fIname\fR  \fB\-march=\fR\fIname\fR  \fB\-mfpu=\fR\fIname\fR  
+\&\fB\-mstructure\-size\-boundary=\fR\fIn\fR 
+\&\fB\-mabort\-on\-noreturn 
+\&\-mlong\-calls  \-mno\-long\-calls 
+\&\-msingle\-pic\-base  \-mno\-single\-pic\-base 
+\&\-mpic\-register=\fR\fIreg\fR 
+\&\fB\-mnop\-fun\-dllimport 
+\&\-mpoke\-function\-name 
+\&\-mthumb  \-marm 
+\&\-mtpcs\-frame  \-mtpcs\-leaf\-frame 
+\&\-mcaller\-super\-interworking  \-mcallee\-super\-interworking 
+\&\-mtp=\fR\fIname\fR \fB\-mtls\-dialect=\fR\fIdialect\fR 
+\&\fB\-mword\-relocations 
+\&\-mfix\-cortex\-m3\-ldrd 
+\&\-munaligned\-access 
+\&\-mneon\-for\-64bits 
+\&\-mslow\-flash\-data 
+\&\-masm\-syntax\-unified 
+\&\-mrestrict\-it\fR
+.Sp
+\&\fI\s-1AVR\s0 Options\fR
+\&\fB\-mmcu=\fR\fImcu\fR \fB\-maccumulate\-args \-mbranch\-cost=\fR\fIcost\fR 
+\&\fB\-mcall\-prologues \-mint8 \-mno\-interrupts \-mrelax 
+\&\-mstrict\-X \-mtiny\-stack \-Waddr\-space\-convert\fR
+.Sp
+\&\fIBlackfin Options\fR
+\&\fB\-mcpu=\fR\fIcpu\fR[\fB\-\fR\fIsirevision\fR] 
+\&\fB\-msim \-momit\-leaf\-frame\-pointer  \-mno\-omit\-leaf\-frame\-pointer 
+\&\-mspecld\-anomaly  \-mno\-specld\-anomaly  \-mcsync\-anomaly  \-mno\-csync\-anomaly 
+\&\-mlow\-64k \-mno\-low64k  \-mstack\-check\-l1  \-mid\-shared\-library 
+\&\-mno\-id\-shared\-library  \-mshared\-library\-id=\fR\fIn\fR 
+\&\fB\-mleaf\-id\-shared\-library  \-mno\-leaf\-id\-shared\-library 
+\&\-msep\-data  \-mno\-sep\-data  \-mlong\-calls  \-mno\-long\-calls 
+\&\-mfast\-fp \-minline\-plt \-mmulticore  \-mcorea  \-mcoreb  \-msdram 
+\&\-micplb\fR
+.Sp
+\&\fIC6X Options\fR
+\&\fB\-mbig\-endian  \-mlittle\-endian \-march=\fR\fIcpu\fR 
+\&\fB\-msim \-msdata=\fR\fIsdata-type\fR
+.Sp
+\&\fI\s-1CRIS\s0 Options\fR
+\&\fB\-mcpu=\fR\fIcpu\fR  \fB\-march=\fR\fIcpu\fR  \fB\-mtune=\fR\fIcpu\fR 
+\&\fB\-mmax\-stack\-frame=\fR\fIn\fR  \fB\-melinux\-stacksize=\fR\fIn\fR 
+\&\fB\-metrax4  \-metrax100  \-mpdebug  \-mcc\-init  \-mno\-side\-effects 
+\&\-mstack\-align  \-mdata\-align  \-mconst\-align 
+\&\-m32\-bit  \-m16\-bit  \-m8\-bit  \-mno\-prologue\-epilogue  \-mno\-gotplt 
+\&\-melf  \-maout  \-melinux  \-mlinux  \-sim  \-sim2 
+\&\-mmul\-bug\-workaround  \-mno\-mul\-bug\-workaround\fR
+.Sp
+\&\fI\s-1CR16\s0 Options\fR
+\&\fB\-mmac 
+\&\-mcr16cplus \-mcr16c 
+\&\-msim \-mint32 \-mbit\-ops
+\&\-mdata\-model=\fR\fImodel\fR
+.Sp
+\&\fIDarwin Options\fR
+\&\fB\-all_load  \-allowable_client  \-arch  \-arch_errors_fatal 
+\&\-arch_only  \-bind_at_load  \-bundle  \-bundle_loader 
+\&\-client_name  \-compatibility_version  \-current_version 
+\&\-dead_strip 
+\&\-dependency\-file  \-dylib_file  \-dylinker_install_name 
+\&\-dynamic  \-dynamiclib  \-exported_symbols_list 
+\&\-filelist  \-flat_namespace  \-force_cpusubtype_ALL 
+\&\-force_flat_namespace  \-headerpad_max_install_names 
+\&\-iframework 
+\&\-image_base  \-init  \-install_name  \-keep_private_externs 
+\&\-multi_module  \-multiply_defined  \-multiply_defined_unused 
+\&\-noall_load   \-no_dead_strip_inits_and_terms 
+\&\-nofixprebinding \-nomultidefs  \-noprebind  \-noseglinkedit 
+\&\-pagezero_size  \-prebind  \-prebind_all_twolevel_modules 
+\&\-private_bundle  \-read_only_relocs  \-sectalign 
+\&\-sectobjectsymbols  \-whyload  \-seg1addr 
+\&\-sectcreate  \-sectobjectsymbols  \-sectorder 
+\&\-segaddr \-segs_read_only_addr \-segs_read_write_addr 
+\&\-seg_addr_table  \-seg_addr_table_filename  \-seglinkedit 
+\&\-segprot  \-segs_read_only_addr  \-segs_read_write_addr 
+\&\-single_module  \-static  \-sub_library  \-sub_umbrella 
+\&\-twolevel_namespace  \-umbrella  \-undefined 
+\&\-unexported_symbols_list  \-weak_reference_mismatches 
+\&\-whatsloaded \-F \-gused \-gfull \-mmacosx\-version\-min=\fR\fIversion\fR 
+\&\fB\-mkernel \-mone\-byte\-bool\fR
+.Sp
+\&\fI\s-1DEC\s0 Alpha Options\fR
+\&\fB\-mno\-fp\-regs  \-msoft\-float 
+\&\-mieee  \-mieee\-with\-inexact  \-mieee\-conformant 
+\&\-mfp\-trap\-mode=\fR\fImode\fR  \fB\-mfp\-rounding\-mode=\fR\fImode\fR 
+\&\fB\-mtrap\-precision=\fR\fImode\fR  \fB\-mbuild\-constants 
+\&\-mcpu=\fR\fIcpu-type\fR  \fB\-mtune=\fR\fIcpu-type\fR 
+\&\fB\-mbwx  \-mmax  \-mfix  \-mcix 
+\&\-mfloat\-vax  \-mfloat\-ieee 
+\&\-mexplicit\-relocs  \-msmall\-data  \-mlarge\-data 
+\&\-msmall\-text  \-mlarge\-text 
+\&\-mmemory\-latency=\fR\fItime\fR
+.Sp
+\&\fI\s-1FR30\s0 Options\fR
+\&\fB\-msmall\-model \-mno\-lsim\fR
+.Sp
+\&\fI\s-1FRV\s0 Options\fR
+\&\fB\-mgpr\-32  \-mgpr\-64  \-mfpr\-32  \-mfpr\-64 
+\&\-mhard\-float  \-msoft\-float 
+\&\-malloc\-cc  \-mfixed\-cc  \-mdword  \-mno\-dword 
+\&\-mdouble  \-mno\-double 
+\&\-mmedia  \-mno\-media  \-mmuladd  \-mno\-muladd 
+\&\-mfdpic  \-minline\-plt \-mgprel\-ro  \-multilib\-library\-pic 
+\&\-mlinked\-fp  \-mlong\-calls  \-malign\-labels 
+\&\-mlibrary\-pic  \-macc\-4  \-macc\-8 
+\&\-mpack  \-mno\-pack  \-mno\-eflags  \-mcond\-move  \-mno\-cond\-move 
+\&\-moptimize\-membar \-mno\-optimize\-membar 
+\&\-mscc  \-mno\-scc  \-mcond\-exec  \-mno\-cond\-exec 
+\&\-mvliw\-branch  \-mno\-vliw\-branch 
+\&\-mmulti\-cond\-exec  \-mno\-multi\-cond\-exec  \-mnested\-cond\-exec 
+\&\-mno\-nested\-cond\-exec  \-mtomcat\-stats 
+\&\-mTLS \-mtls 
+\&\-mcpu=\fR\fIcpu\fR
+.Sp
+\&\fIGNU/Linux Options\fR
+\&\fB\-mglibc \-muclibc \-mbionic \-mandroid 
+\&\-tno\-android\-cc \-tno\-android\-ld\fR
+.Sp
+\&\fIH8/300 Options\fR
+\&\fB\-mrelax  \-mh  \-ms  \-mn  \-mexr \-mno\-exr  \-mint32  \-malign\-300\fR
+.Sp
+\&\fI\s-1HPPA\s0 Options\fR
+\&\fB\-march=\fR\fIarchitecture-type\fR 
+\&\fB\-mdisable\-fpregs  \-mdisable\-indexing 
+\&\-mfast\-indirect\-calls  \-mgas  \-mgnu\-ld   \-mhp\-ld 
+\&\-mfixed\-range=\fR\fIregister-range\fR 
+\&\fB\-mjump\-in\-delay \-mlinker\-opt \-mlong\-calls 
+\&\-mlong\-load\-store  \-mno\-disable\-fpregs 
+\&\-mno\-disable\-indexing  \-mno\-fast\-indirect\-calls  \-mno\-gas 
+\&\-mno\-jump\-in\-delay  \-mno\-long\-load\-store 
+\&\-mno\-portable\-runtime  \-mno\-soft\-float 
+\&\-mno\-space\-regs  \-msoft\-float  \-mpa\-risc\-1\-0 
+\&\-mpa\-risc\-1\-1  \-mpa\-risc\-2\-0  \-mportable\-runtime 
+\&\-mschedule=\fR\fIcpu-type\fR  \fB\-mspace\-regs  \-msio  \-mwsio 
+\&\-munix=\fR\fIunix-std\fR  \fB\-nolibdld  \-static  \-threads\fR
+.Sp
+\&\fIi386 and x86\-64 Options\fR
+\&\fB\-mtune=\fR\fIcpu-type\fR  \fB\-march=\fR\fIcpu-type\fR 
+\&\fB\-mtune\-ctrl=\fR\fIfeature-list\fR \fB\-mdump\-tune\-features \-mno\-default 
+\&\-mfpmath=\fR\fIunit\fR 
+\&\fB\-masm=\fR\fIdialect\fR  \fB\-mno\-fancy\-math\-387 
+\&\-mno\-fp\-ret\-in\-387  \-msoft\-float 
+\&\-mno\-wide\-multiply  \-mrtd  \-malign\-double 
+\&\-mpreferred\-stack\-boundary=\fR\fInum\fR 
+\&\fB\-mincoming\-stack\-boundary=\fR\fInum\fR 
+\&\fB\-mcld \-mcx16 \-msahf \-mmovbe \-mcrc32 
+\&\-mrecip \-mrecip=\fR\fIopt\fR 
+\&\fB\-mvzeroupper \-mprefer\-avx128 
+\&\-mmmx  \-msse  \-msse2 \-msse3 \-mssse3 \-msse4.1 \-msse4.2 \-msse4 \-mavx 
+\&\-mavx2 \-mavx512f \-mavx512pf \-mavx512er \-mavx512cd \-msha 
+\&\-maes \-mpclmul \-mfsgsbase \-mrdrnd \-mf16c \-mfma \-mprefetchwt1 
+\&\-mclflushopt \-mxsavec \-mxsaves 
+\&\-msse4a \-m3dnow \-mpopcnt \-mabm \-mbmi \-mtbm \-mfma4 \-mxop \-mlzcnt 
+\&\-mbmi2 \-mfxsr \-mxsave \-mxsaveopt \-mrtm \-mlwp \-mmpx \-mthreads 
+\&\-mno\-align\-stringops  \-minline\-all\-stringops 
+\&\-minline\-stringops\-dynamically \-mstringop\-strategy=\fR\fIalg\fR 
+\&\fB\-mmemcpy\-strategy=\fR\fIstrategy\fR \fB\-mmemset\-strategy=\fR\fIstrategy\fR 
+\&\fB\-mpush\-args  \-maccumulate\-outgoing\-args  \-m128bit\-long\-double 
+\&\-m96bit\-long\-double \-mlong\-double\-64 \-mlong\-double\-80 \-mlong\-double\-128 
+\&\-mregparm=\fR\fInum\fR  \fB\-msseregparm 
+\&\-mveclibabi=\fR\fItype\fR \fB\-mvect8\-ret\-in\-mem 
+\&\-mpc32 \-mpc64 \-mpc80 \-mstackrealign 
+\&\-momit\-leaf\-frame\-pointer  \-mno\-red\-zone \-mno\-tls\-direct\-seg\-refs 
+\&\-mcmodel=\fR\fIcode-model\fR \fB\-mabi=\fR\fIname\fR \fB\-maddress\-mode=\fR\fImode\fR 
+\&\fB\-m32 \-m64 \-mx32 \-m16 \-mlarge\-data\-threshold=\fR\fInum\fR 
+\&\fB\-msse2avx \-mfentry \-mrecord\-mcount \-mnop\-mcount \-m8bit\-idiv 
+\&\-mavx256\-split\-unaligned\-load \-mavx256\-split\-unaligned\-store 
+\&\-malign\-data=\fR\fItype\fR \fB\-mstack\-protector\-guard=\fR\fIguard\fR
+.Sp
+\&\fIi386 and x86\-64 Windows Options\fR
+\&\fB\-mconsole \-mcygwin \-mno\-cygwin \-mdll 
+\&\-mnop\-fun\-dllimport \-mthread 
+\&\-municode \-mwin32 \-mwindows \-fno\-set\-stack\-executable\fR
+.Sp
+\&\fI\s-1IA\-64\s0 Options\fR
+\&\fB\-mbig\-endian  \-mlittle\-endian  \-mgnu\-as  \-mgnu\-ld  \-mno\-pic 
+\&\-mvolatile\-asm\-stop  \-mregister\-names  \-msdata \-mno\-sdata 
+\&\-mconstant\-gp  \-mauto\-pic  \-mfused\-madd 
+\&\-minline\-float\-divide\-min\-latency 
+\&\-minline\-float\-divide\-max\-throughput 
+\&\-mno\-inline\-float\-divide 
+\&\-minline\-int\-divide\-min\-latency 
+\&\-minline\-int\-divide\-max\-throughput  
+\&\-mno\-inline\-int\-divide 
+\&\-minline\-sqrt\-min\-latency \-minline\-sqrt\-max\-throughput 
+\&\-mno\-inline\-sqrt 
+\&\-mdwarf2\-asm \-mearly\-stop\-bits 
+\&\-mfixed\-range=\fR\fIregister-range\fR \fB\-mtls\-size=\fR\fItls-size\fR 
+\&\fB\-mtune=\fR\fIcpu-type\fR \fB\-milp32 \-mlp64 
+\&\-msched\-br\-data\-spec \-msched\-ar\-data\-spec \-msched\-control\-spec 
+\&\-msched\-br\-in\-data\-spec \-msched\-ar\-in\-data\-spec \-msched\-in\-control\-spec 
+\&\-msched\-spec\-ldc \-msched\-spec\-control\-ldc 
+\&\-msched\-prefer\-non\-data\-spec\-insns \-msched\-prefer\-non\-control\-spec\-insns 
+\&\-msched\-stop\-bits\-after\-every\-cycle \-msched\-count\-spec\-in\-critical\-path 
+\&\-msel\-sched\-dont\-check\-control\-spec \-msched\-fp\-mem\-deps\-zero\-cost 
+\&\-msched\-max\-memory\-insns\-hard\-limit \-msched\-max\-memory\-insns=\fR\fImax-insns\fR
+.Sp
+\&\fI\s-1LM32\s0 Options\fR
+\&\fB\-mbarrel\-shift\-enabled \-mdivide\-enabled \-mmultiply\-enabled 
+\&\-msign\-extend\-enabled \-muser\-enabled\fR
+.Sp
+\&\fIM32R/D Options\fR
+\&\fB\-m32r2 \-m32rx \-m32r 
+\&\-mdebug 
+\&\-malign\-loops \-mno\-align\-loops 
+\&\-missue\-rate=\fR\fInumber\fR 
+\&\fB\-mbranch\-cost=\fR\fInumber\fR 
+\&\fB\-mmodel=\fR\fIcode-size-model-type\fR 
+\&\fB\-msdata=\fR\fIsdata-type\fR 
+\&\fB\-mno\-flush\-func \-mflush\-func=\fR\fIname\fR 
+\&\fB\-mno\-flush\-trap \-mflush\-trap=\fR\fInumber\fR 
+\&\fB\-G\fR \fInum\fR
+.Sp
+\&\fIM32C Options\fR
+\&\fB\-mcpu=\fR\fIcpu\fR \fB\-msim \-memregs=\fR\fInumber\fR
+.Sp
+\&\fIM680x0 Options\fR
+\&\fB\-march=\fR\fIarch\fR  \fB\-mcpu=\fR\fIcpu\fR  \fB\-mtune=\fR\fItune\fR 
+\&\fB\-m68000  \-m68020  \-m68020\-40  \-m68020\-60  \-m68030  \-m68040 
+\&\-m68060  \-mcpu32  \-m5200  \-m5206e  \-m528x  \-m5307  \-m5407 
+\&\-mcfv4e  \-mbitfield  \-mno\-bitfield  \-mc68000  \-mc68020 
+\&\-mnobitfield  \-mrtd  \-mno\-rtd  \-mdiv  \-mno\-div  \-mshort 
+\&\-mno\-short  \-mhard\-float  \-m68881  \-msoft\-float  \-mpcrel 
+\&\-malign\-int  \-mstrict\-align  \-msep\-data  \-mno\-sep\-data 
+\&\-mshared\-library\-id=n  \-mid\-shared\-library  \-mno\-id\-shared\-library 
+\&\-mxgot \-mno\-xgot\fR
+.Sp
+\&\fIMCore Options\fR
+\&\fB\-mhardlit  \-mno\-hardlit  \-mdiv  \-mno\-div  \-mrelax\-immediates 
+\&\-mno\-relax\-immediates  \-mwide\-bitfields  \-mno\-wide\-bitfields 
+\&\-m4byte\-functions  \-mno\-4byte\-functions  \-mcallgraph\-data 
+\&\-mno\-callgraph\-data  \-mslow\-bytes  \-mno\-slow\-bytes  \-mno\-lsim 
+\&\-mlittle\-endian  \-mbig\-endian  \-m210  \-m340  \-mstack\-increment\fR
+.Sp
+\&\fIMeP Options\fR
+\&\fB\-mabsdiff \-mall\-opts \-maverage \-mbased=\fR\fIn\fR \fB\-mbitops 
+\&\-mc=\fR\fIn\fR \fB\-mclip \-mconfig=\fR\fIname\fR \fB\-mcop \-mcop32 \-mcop64 \-mivc2 
+\&\-mdc \-mdiv \-meb \-mel \-mio\-volatile \-ml \-mleadz \-mm \-mminmax 
+\&\-mmult \-mno\-opts \-mrepeat \-ms \-msatur \-msdram \-msim \-msimnovec \-mtf 
+\&\-mtiny=\fR\fIn\fR
+.Sp
+\&\fIMicroBlaze Options\fR
+\&\fB\-msoft\-float \-mhard\-float \-msmall\-divides \-mcpu=\fR\fIcpu\fR 
+\&\fB\-mmemcpy \-mxl\-soft\-mul \-mxl\-soft\-div \-mxl\-barrel\-shift 
+\&\-mxl\-pattern\-compare \-mxl\-stack\-check \-mxl\-gp\-opt \-mno\-clearbss 
+\&\-mxl\-multiply\-high \-mxl\-float\-convert \-mxl\-float\-sqrt 
+\&\-mbig\-endian \-mlittle\-endian \-mxl\-reorder \-mxl\-mode\-\fR\fIapp-model\fR
+.Sp
+\&\fI\s-1MIPS\s0 Options\fR
+\&\fB\-EL  \-EB  \-march=\fR\fIarch\fR  \fB\-mtune=\fR\fIarch\fR 
+\&\fB\-mips1  \-mips2  \-mips3  \-mips4  \-mips32  \-mips32r2  \-mips32r3  \-mips32r5 
+\&\-mips32r6  \-mips64  \-mips64r2  \-mips64r3  \-mips64r5  \-mips64r6 
+\&\-mips16  \-mno\-mips16  \-mflip\-mips16 
+\&\-minterlink\-compressed \-mno\-interlink\-compressed 
+\&\-minterlink\-mips16  \-mno\-interlink\-mips16 
+\&\-mabi=\fR\fIabi\fR  \fB\-mabicalls  \-mno\-abicalls 
+\&\-mshared  \-mno\-shared  \-mplt  \-mno\-plt  \-mxgot  \-mno\-xgot 
+\&\-mgp32  \-mgp64  \-mfp32  \-mfpxx  \-mfp64  \-mhard\-float  \-msoft\-float 
+\&\-mno\-float  \-msingle\-float  \-mdouble\-float 
+\&\-modd\-spreg \-mno\-odd\-spreg 
+\&\-mabs=\fR\fImode\fR  \fB\-mnan=\fR\fIencoding\fR 
+\&\fB\-mdsp  \-mno\-dsp  \-mdspr2  \-mno\-dspr2 
+\&\-mmcu \-mmno\-mcu 
+\&\-meva \-mno\-eva 
+\&\-mvirt \-mno\-virt 
+\&\-mxpa \-mno\-xpa 
+\&\-mmicromips \-mno\-micromips 
+\&\-mfpu=\fR\fIfpu-type\fR 
+\&\fB\-msmartmips  \-mno\-smartmips 
+\&\-mpaired\-single  \-mno\-paired\-single  \-mdmx  \-mno\-mdmx 
+\&\-mips3d  \-mno\-mips3d  \-mmt  \-mno\-mt  \-mllsc  \-mno\-llsc 
+\&\-mlong64  \-mlong32  \-msym32  \-mno\-sym32 
+\&\-G\fR\fInum\fR  \fB\-mlocal\-sdata  \-mno\-local\-sdata 
+\&\-mextern\-sdata  \-mno\-extern\-sdata  \-mgpopt  \-mno\-gopt 
+\&\-membedded\-data  \-mno\-embedded\-data 
+\&\-muninit\-const\-in\-rodata  \-mno\-uninit\-const\-in\-rodata 
+\&\-mcode\-readable=\fR\fIsetting\fR 
+\&\fB\-msplit\-addresses  \-mno\-split\-addresses 
+\&\-mexplicit\-relocs  \-mno\-explicit\-relocs 
+\&\-mcheck\-zero\-division  \-mno\-check\-zero\-division 
+\&\-mdivide\-traps  \-mdivide\-breaks 
+\&\-mmemcpy  \-mno\-memcpy  \-mlong\-calls  \-mno\-long\-calls 
+\&\-mmad \-mno\-mad \-mimadd \-mno\-imadd \-mfused\-madd  \-mno\-fused\-madd  \-nocpp 
+\&\-mfix\-24k \-mno\-fix\-24k 
+\&\-mfix\-r4000  \-mno\-fix\-r4000  \-mfix\-r4400  \-mno\-fix\-r4400 
+\&\-mfix\-r10000 \-mno\-fix\-r10000  \-mfix\-rm7000 \-mno\-fix\-rm7000 
+\&\-mfix\-vr4120  \-mno\-fix\-vr4120 
+\&\-mfix\-vr4130  \-mno\-fix\-vr4130  \-mfix\-sb1  \-mno\-fix\-sb1 
+\&\-mflush\-func=\fR\fIfunc\fR  \fB\-mno\-flush\-func 
+\&\-mbranch\-cost=\fR\fInum\fR  \fB\-mbranch\-likely  \-mno\-branch\-likely 
+\&\-mfp\-exceptions \-mno\-fp\-exceptions 
+\&\-mvr4130\-align \-mno\-vr4130\-align \-msynci \-mno\-synci 
+\&\-mrelax\-pic\-calls \-mno\-relax\-pic\-calls \-mmcount\-ra\-address\fR
+.Sp
+\&\fI\s-1MMIX\s0 Options\fR
+\&\fB\-mlibfuncs  \-mno\-libfuncs  \-mepsilon  \-mno\-epsilon  \-mabi=gnu 
+\&\-mabi=mmixware  \-mzero\-extend  \-mknuthdiv  \-mtoplevel\-symbols 
+\&\-melf  \-mbranch\-predict  \-mno\-branch\-predict  \-mbase\-addresses 
+\&\-mno\-base\-addresses  \-msingle\-exit  \-mno\-single\-exit\fR
+.Sp
+\&\fI\s-1MN10300\s0 Options\fR
+\&\fB\-mmult\-bug  \-mno\-mult\-bug 
+\&\-mno\-am33 \-mam33 \-mam33\-2 \-mam34 
+\&\-mtune=\fR\fIcpu-type\fR 
+\&\fB\-mreturn\-pointer\-on\-d0 
+\&\-mno\-crt0  \-mrelax \-mliw \-msetlb\fR
+.Sp
+\&\fIMoxie Options\fR
+\&\fB\-meb \-mel \-mmul.x \-mno\-crt0\fR
+.Sp
+\&\fI\s-1MSP430\s0 Options\fR
+\&\fB\-msim \-masm\-hex \-mmcu= \-mcpu= \-mlarge \-msmall \-mrelax 
+\&\-mhwmult= \-minrt\fR
+.Sp
+\&\fI\s-1NDS32\s0 Options\fR
+\&\fB\-mbig\-endian \-mlittle\-endian 
+\&\-mreduced\-regs \-mfull\-regs 
+\&\-mcmov \-mno\-cmov 
+\&\-mperf\-ext \-mno\-perf\-ext 
+\&\-mv3push \-mno\-v3push 
+\&\-m16bit \-mno\-16bit 
+\&\-mgp\-direct \-mno\-gp\-direct 
+\&\-misr\-vector\-size=\fR\fInum\fR 
+\&\fB\-mcache\-block\-size=\fR\fInum\fR 
+\&\fB\-march=\fR\fIarch\fR 
+\&\fB\-mforce\-fp\-as\-gp \-mforbid\-fp\-as\-gp 
+\&\-mex9 \-mctor\-dtor \-mrelax\fR
+.Sp
+\&\fINios \s-1II\s0 Options\fR
+\&\fB\-G\fR \fInum\fR \fB\-mgpopt \-mno\-gpopt \-mel \-meb 
+\&\-mno\-bypass\-cache \-mbypass\-cache 
+\&\-mno\-cache\-volatile \-mcache\-volatile 
+\&\-mno\-fast\-sw\-div \-mfast\-sw\-div 
+\&\-mhw\-mul \-mno\-hw\-mul \-mhw\-mulx \-mno\-hw\-mulx \-mno\-hw\-div \-mhw\-div 
+\&\-mcustom\-\fR\fIinsn\fR\fB=\fR\fIN\fR \fB\-mno\-custom\-\fR\fIinsn\fR 
+\&\fB\-mcustom\-fpu\-cfg=\fR\fIname\fR 
+\&\fB\-mhal \-msmallc \-msys\-crt0=\fR\fIname\fR \fB\-msys\-lib=\fR\fIname\fR
+.Sp
+\&\fI\s-1PDP\-11\s0 Options\fR
+\&\fB\-mfpu  \-msoft\-float  \-mac0  \-mno\-ac0  \-m40  \-m45  \-m10 
+\&\-mbcopy  \-mbcopy\-builtin  \-mint32  \-mno\-int16 
+\&\-mint16  \-mno\-int32  \-mfloat32  \-mno\-float64 
+\&\-mfloat64  \-mno\-float32  \-mabshi  \-mno\-abshi 
+\&\-mbranch\-expensive  \-mbranch\-cheap 
+\&\-munix\-asm  \-mdec\-asm\fR
+.Sp
+\&\fIpicoChip Options\fR
+\&\fB\-mae=\fR\fIae_type\fR \fB\-mvliw\-lookahead=\fR\fIN\fR 
+\&\fB\-msymbol\-as\-address \-mno\-inefficient\-warnings\fR
+.Sp
+\&\fIPowerPC Options\fR
+See \s-1RS/6000\s0 and PowerPC Options.
+.Sp
+\&\fI\s-1RL78\s0 Options\fR
+\&\fB\-msim \-mmul=none \-mmul=g13 \-mmul=rl78 
+\&\-m64bit\-doubles \-m32bit\-doubles\fR
+.Sp
+\&\fI\s-1RS/6000\s0 and PowerPC Options\fR
+\&\fB\-mcpu=\fR\fIcpu-type\fR 
+\&\fB\-mtune=\fR\fIcpu-type\fR 
+\&\fB\-mcmodel=\fR\fIcode-model\fR 
+\&\fB\-mpowerpc64 
+\&\-maltivec  \-mno\-altivec 
+\&\-mpowerpc\-gpopt  \-mno\-powerpc\-gpopt 
+\&\-mpowerpc\-gfxopt  \-mno\-powerpc\-gfxopt 
+\&\-mmfcrf  \-mno\-mfcrf  \-mpopcntb  \-mno\-popcntb \-mpopcntd \-mno\-popcntd 
+\&\-mfprnd  \-mno\-fprnd 
+\&\-mcmpb \-mno\-cmpb \-mmfpgpr \-mno\-mfpgpr \-mhard\-dfp \-mno\-hard\-dfp 
+\&\-mfull\-toc   \-mminimal\-toc  \-mno\-fp\-in\-toc  \-mno\-sum\-in\-toc 
+\&\-m64  \-m32  \-mxl\-compat  \-mno\-xl\-compat  \-mpe 
+\&\-malign\-power  \-malign\-natural 
+\&\-msoft\-float  \-mhard\-float  \-mmultiple  \-mno\-multiple 
+\&\-msingle\-float \-mdouble\-float \-msimple\-fpu 
+\&\-mstring  \-mno\-string  \-mupdate  \-mno\-update 
+\&\-mavoid\-indexed\-addresses  \-mno\-avoid\-indexed\-addresses 
+\&\-mfused\-madd  \-mno\-fused\-madd  \-mbit\-align  \-mno\-bit\-align 
+\&\-mstrict\-align  \-mno\-strict\-align  \-mrelocatable 
+\&\-mno\-relocatable  \-mrelocatable\-lib  \-mno\-relocatable\-lib 
+\&\-mtoc  \-mno\-toc  \-mlittle  \-mlittle\-endian  \-mbig  \-mbig\-endian 
+\&\-mdynamic\-no\-pic  \-maltivec \-mswdiv  \-msingle\-pic\-base 
+\&\-mprioritize\-restricted\-insns=\fR\fIpriority\fR 
+\&\fB\-msched\-costly\-dep=\fR\fIdependence_type\fR 
+\&\fB\-minsert\-sched\-nops=\fR\fIscheme\fR 
+\&\fB\-mcall\-sysv  \-mcall\-netbsd 
+\&\-maix\-struct\-return  \-msvr4\-struct\-return 
+\&\-mabi=\fR\fIabi-type\fR \fB\-msecure\-plt \-mbss\-plt 
+\&\-mblock\-move\-inline\-limit=\fR\fInum\fR 
+\&\fB\-misel \-mno\-isel 
+\&\-misel=yes  \-misel=no 
+\&\-mspe \-mno\-spe 
+\&\-mspe=yes  \-mspe=no 
+\&\-mpaired 
+\&\-mgen\-cell\-microcode \-mwarn\-cell\-microcode 
+\&\-mvrsave \-mno\-vrsave 
+\&\-mmulhw \-mno\-mulhw 
+\&\-mdlmzb \-mno\-dlmzb 
+\&\-mfloat\-gprs=yes  \-mfloat\-gprs=no \-mfloat\-gprs=single \-mfloat\-gprs=double 
+\&\-mprototype  \-mno\-prototype 
+\&\-msim  \-mmvme  \-mads  \-myellowknife  \-memb  \-msdata 
+\&\-msdata=\fR\fIopt\fR  \fB\-mvxworks  \-G\fR \fInum\fR  \fB\-pthread 
+\&\-mrecip \-mrecip=\fR\fIopt\fR \fB\-mno\-recip \-mrecip\-precision 
+\&\-mno\-recip\-precision 
+\&\-mveclibabi=\fR\fItype\fR \fB\-mfriz \-mno\-friz 
+\&\-mpointers\-to\-nested\-functions \-mno\-pointers\-to\-nested\-functions 
+\&\-msave\-toc\-indirect \-mno\-save\-toc\-indirect 
+\&\-mpower8\-fusion \-mno\-mpower8\-fusion \-mpower8\-vector \-mno\-power8\-vector 
+\&\-mcrypto \-mno\-crypto \-mdirect\-move \-mno\-direct\-move 
+\&\-mquad\-memory \-mno\-quad\-memory 
+\&\-mquad\-memory\-atomic \-mno\-quad\-memory\-atomic 
+\&\-mcompat\-align\-parm \-mno\-compat\-align\-parm 
+\&\-mupper\-regs\-df \-mno\-upper\-regs\-df \-mupper\-regs\-sf \-mno\-upper\-regs\-sf 
+\&\-mupper\-regs \-mno\-upper\-regs\fR
+.Sp
+\&\fI\s-1RX\s0 Options\fR
+\&\fB\-m64bit\-doubles  \-m32bit\-doubles  \-fpu  \-nofpu
+\&\-mcpu=
+\&\-mbig\-endian\-data \-mlittle\-endian\-data 
+\&\-msmall\-data 
+\&\-msim  \-mno\-sim
+\&\-mas100\-syntax \-mno\-as100\-syntax
+\&\-mrelax
+\&\-mmax\-constant\-size=
+\&\-mint\-register=
+\&\-mpid
+\&\-mno\-warn\-multiple\-fast\-interrupts
+\&\-msave\-acc\-in\-interrupts\fR
+.Sp
+\&\fIS/390 and zSeries Options\fR
+\&\fB\-mtune=\fR\fIcpu-type\fR  \fB\-march=\fR\fIcpu-type\fR 
+\&\fB\-mhard\-float  \-msoft\-float  \-mhard\-dfp \-mno\-hard\-dfp 
+\&\-mlong\-double\-64 \-mlong\-double\-128 
+\&\-mbackchain  \-mno\-backchain \-mpacked\-stack  \-mno\-packed\-stack 
+\&\-msmall\-exec  \-mno\-small\-exec  \-mmvcle \-mno\-mvcle 
+\&\-m64  \-m31  \-mdebug  \-mno\-debug  \-mesa  \-mzarch 
+\&\-mtpf\-trace \-mno\-tpf\-trace  \-mfused\-madd  \-mno\-fused\-madd 
+\&\-mwarn\-framesize  \-mwarn\-dynamicstack  \-mstack\-size \-mstack\-guard 
+\&\-mhotpatch[=\fR\fIhalfwords\fR\fB] \-mno\-hotpatch\fR
+.Sp
+\&\fIScore Options\fR
+\&\fB\-meb \-mel 
+\&\-mnhwloop 
+\&\-muls 
+\&\-mmac 
+\&\-mscore5 \-mscore5u \-mscore7 \-mscore7d\fR
+.Sp
+\&\fI\s-1SH\s0 Options\fR
+\&\fB\-m1  \-m2  \-m2e 
+\&\-m2a\-nofpu \-m2a\-single\-only \-m2a\-single \-m2a 
+\&\-m3  \-m3e 
+\&\-m4\-nofpu  \-m4\-single\-only  \-m4\-single  \-m4 
+\&\-m4a\-nofpu \-m4a\-single\-only \-m4a\-single \-m4a \-m4al 
+\&\-m5\-64media  \-m5\-64media\-nofpu 
+\&\-m5\-32media  \-m5\-32media\-nofpu 
+\&\-m5\-compact  \-m5\-compact\-nofpu 
+\&\-mb  \-ml  \-mdalign  \-mrelax 
+\&\-mbigtable \-mfmovd \-mhitachi \-mrenesas \-mno\-renesas \-mnomacsave 
+\&\-mieee \-mno\-ieee \-mbitops  \-misize  \-minline\-ic_invalidate \-mpadstruct 
+\&\-mspace \-mprefergot  \-musermode \-multcost=\fR\fInumber\fR \fB\-mdiv=\fR\fIstrategy\fR 
+\&\fB\-mdivsi3_libfunc=\fR\fIname\fR \fB\-mfixed\-range=\fR\fIregister-range\fR 
+\&\fB\-mindexed\-addressing \-mgettrcost=\fR\fInumber\fR \fB\-mpt\-fixed 
+\&\-maccumulate\-outgoing\-args \-minvalid\-symbols 
+\&\-matomic\-model=\fR\fIatomic-model\fR 
+\&\fB\-mbranch\-cost=\fR\fInum\fR \fB\-mzdcbranch \-mno\-zdcbranch 
+\&\-mfused\-madd \-mno\-fused\-madd \-mfsca \-mno\-fsca \-mfsrra \-mno\-fsrra 
+\&\-mpretend\-cmove \-mtas\fR
+.Sp
+\&\fISolaris 2 Options\fR
+\&\fB\-mclear\-hwcap \-mno\-clear\-hwcap \-mimpure\-text  \-mno\-impure\-text 
+\&\-pthreads \-pthread\fR
+.Sp
+\&\fI\s-1SPARC\s0 Options\fR
+\&\fB\-mcpu=\fR\fIcpu-type\fR 
+\&\fB\-mtune=\fR\fIcpu-type\fR 
+\&\fB\-mcmodel=\fR\fIcode-model\fR 
+\&\fB\-mmemory\-model=\fR\fImem-model\fR 
+\&\fB\-m32  \-m64  \-mapp\-regs  \-mno\-app\-regs 
+\&\-mfaster\-structs  \-mno\-faster\-structs  \-mflat  \-mno\-flat 
+\&\-mfpu  \-mno\-fpu  \-mhard\-float  \-msoft\-float 
+\&\-mhard\-quad\-float  \-msoft\-quad\-float 
+\&\-mstack\-bias  \-mno\-stack\-bias 
+\&\-munaligned\-doubles  \-mno\-unaligned\-doubles 
+\&\-muser\-mode  \-mno\-user\-mode 
+\&\-mv8plus  \-mno\-v8plus  \-mvis  \-mno\-vis 
+\&\-mvis2  \-mno\-vis2  \-mvis3  \-mno\-vis3 
+\&\-mcbcond \-mno\-cbcond 
+\&\-mfmaf  \-mno\-fmaf  \-mpopc  \-mno\-popc 
+\&\-mfix\-at697f \-mfix\-ut699\fR
+.Sp
+\&\fI\s-1SPU\s0 Options\fR
+\&\fB\-mwarn\-reloc \-merror\-reloc 
+\&\-msafe\-dma \-munsafe\-dma 
+\&\-mbranch\-hints 
+\&\-msmall\-mem \-mlarge\-mem \-mstdmain 
+\&\-mfixed\-range=\fR\fIregister-range\fR 
+\&\fB\-mea32 \-mea64 
+\&\-maddress\-space\-conversion \-mno\-address\-space\-conversion 
+\&\-mcache\-size=\fR\fIcache-size\fR 
+\&\fB\-matomic\-updates \-mno\-atomic\-updates\fR
+.Sp
+\&\fISystem V Options\fR
+\&\fB\-Qy  \-Qn  \-YP,\fR\fIpaths\fR  \fB\-Ym,\fR\fIdir\fR
+.Sp
+\&\fITILE-Gx Options\fR
+\&\fB\-mcpu=CPU \-m32 \-m64 \-mbig\-endian \-mlittle\-endian 
+\&\-mcmodel=\fR\fIcode-model\fR
+.Sp
+\&\fITILEPro Options\fR
+\&\fB\-mcpu=\fR\fIcpu\fR \fB\-m32\fR
+.Sp
+\&\fIV850 Options\fR
+\&\fB\-mlong\-calls  \-mno\-long\-calls  \-mep  \-mno\-ep 
+\&\-mprolog\-function  \-mno\-prolog\-function  \-mspace 
+\&\-mtda=\fR\fIn\fR  \fB\-msda=\fR\fIn\fR  \fB\-mzda=\fR\fIn\fR 
+\&\fB\-mapp\-regs  \-mno\-app\-regs 
+\&\-mdisable\-callt  \-mno\-disable\-callt 
+\&\-mv850e2v3 \-mv850e2 \-mv850e1 \-mv850es 
+\&\-mv850e \-mv850 \-mv850e3v5 
+\&\-mloop 
+\&\-mrelax 
+\&\-mlong\-jumps 
+\&\-msoft\-float 
+\&\-mhard\-float 
+\&\-mgcc\-abi 
+\&\-mrh850\-abi 
+\&\-mbig\-switch\fR
+.Sp
+\&\fI\s-1VAX\s0 Options\fR
+\&\fB\-mg  \-mgnu  \-munix\fR
+.Sp
+\&\fIVisium Options\fR
+\&\fB\-mdebug \-msim \-mfpu \-mno\-fpu \-mhard\-float \-msoft\-float 
+\&\-mcpu=\fR\fIcpu-type\fR \fB\-mtune=\fR\fIcpu-type\fR \fB\-msv\-mode \-muser\-mode\fR
+.Sp
+\&\fI\s-1VMS\s0 Options\fR
+\&\fB\-mvms\-return\-codes \-mdebug\-main=\fR\fIprefix\fR \fB\-mmalloc64 
+\&\-mpointer\-size=\fR\fIsize\fR
+.Sp
+\&\fIVxWorks Options\fR
+\&\fB\-mrtp  \-non\-static  \-Bstatic  \-Bdynamic 
+\&\-Xbind\-lazy  \-Xbind\-now\fR
+.Sp
+\&\fIx86\-64 Options\fR
+See i386 and x86\-64 Options.
+.Sp
+\&\fIXstormy16 Options\fR
+\&\fB\-msim\fR
+.Sp
+\&\fIXtensa Options\fR
+\&\fB\-mconst16 \-mno\-const16 
+\&\-mfused\-madd  \-mno\-fused\-madd 
+\&\-mforce\-no\-pic 
+\&\-mserialize\-volatile  \-mno\-serialize\-volatile 
+\&\-mtext\-section\-literals  \-mno\-text\-section\-literals 
+\&\-mtarget\-align  \-mno\-target\-align 
+\&\-mlongcalls  \-mno\-longcalls\fR
+.Sp
+\&\fIzSeries Options\fR
+See S/390 and zSeries Options.
+.IP "\fICode Generation Options\fR" 4
+.IX Item "Code Generation Options"
+\&\fB\-fcall\-saved\-\fR\fIreg\fR  \fB\-fcall\-used\-\fR\fIreg\fR 
+\&\fB\-ffixed\-\fR\fIreg\fR  \fB\-fexceptions 
+\&\-fnon\-call\-exceptions  \-fdelete\-dead\-exceptions  \-funwind\-tables 
+\&\-fasynchronous\-unwind\-tables 
+\&\-fno\-gnu\-unique 
+\&\-finhibit\-size\-directive  \-finstrument\-functions 
+\&\-finstrument\-functions\-exclude\-function\-list=\fR\fIsym\fR\fB,\fR\fIsym\fR\fB,... 
+\&\-finstrument\-functions\-exclude\-file\-list=\fR\fIfile\fR\fB,\fR\fIfile\fR\fB,... 
+\&\-fno\-common  \-fno\-ident 
+\&\-fpcc\-struct\-return  \-fpic  \-fPIC \-fpie \-fPIE 
+\&\-fno\-jump\-tables 
+\&\-frecord\-gcc\-switches 
+\&\-freg\-struct\-return  \-fshort\-enums 
+\&\-fshort\-double  \-fshort\-wchar 
+\&\-fverbose\-asm  \-fpack\-struct[=\fR\fIn\fR\fB]  \-fstack\-check 
+\&\-fstack\-limit\-register=\fR\fIreg\fR  \fB\-fstack\-limit\-symbol=\fR\fIsym\fR 
+\&\fB\-fno\-stack\-limit \-fsplit\-stack 
+\&\-fleading\-underscore  \-ftls\-model=\fR\fImodel\fR 
+\&\fB\-fstack\-reuse=\fR\fIreuse_level\fR 
+\&\fB\-ftrapv  \-fwrapv  \-fbounds\-check 
+\&\-fvisibility=\fR[\fBdefault\fR|\fBinternal\fR|\fBhidden\fR|\fBprotected\fR] 
+\&\fB\-fstrict\-volatile\-bitfields \-fsync\-libcalls\fR
+.SS "Options Controlling the Kind of Output"
+.IX Subsection "Options Controlling the Kind of Output"
+Compilation can involve up to four stages: preprocessing, compilation
+proper, assembly and linking, always in that order.  \s-1GCC\s0 is capable of
+preprocessing and compiling several files either into several
+assembler input files, or into one assembler input file; then each
+assembler input file produces an object file, and linking combines all
+the object files (those newly compiled, and those specified as input)
+into an executable file.
+.PP
+For any given input file, the file name suffix determines what kind of
+compilation is done:
+.IP "\fIfile\fR\fB.c\fR" 4
+.IX Item "file.c"
+C source code that must be preprocessed.
+.IP "\fIfile\fR\fB.i\fR" 4
+.IX Item "file.i"
+C source code that should not be preprocessed.
+.IP "\fIfile\fR\fB.ii\fR" 4
+.IX Item "file.ii"
+\&\*(C+ source code that should not be preprocessed.
+.IP "\fIfile\fR\fB.m\fR" 4
+.IX Item "file.m"
+Objective-C source code.  Note that you must link with the \fIlibobjc\fR
+library to make an Objective-C program work.
+.IP "\fIfile\fR\fB.mi\fR" 4
+.IX Item "file.mi"
+Objective-C source code that should not be preprocessed.
+.IP "\fIfile\fR\fB.mm\fR" 4
+.IX Item "file.mm"
+.PD 0
+.IP "\fIfile\fR\fB.M\fR" 4
+.IX Item "file.M"
+.PD
+Objective\-\*(C+ source code.  Note that you must link with the \fIlibobjc\fR
+library to make an Objective\-\*(C+ program work.  Note that \fB.M\fR refers
+to a literal capital M.
+.IP "\fIfile\fR\fB.mii\fR" 4
+.IX Item "file.mii"
+Objective\-\*(C+ source code that should not be preprocessed.
+.IP "\fIfile\fR\fB.h\fR" 4
+.IX Item "file.h"
+C, \*(C+, Objective-C or Objective\-\*(C+ header file to be turned into a
+precompiled header (default), or C, \*(C+ header file to be turned into an
+Ada spec (via the \fB\-fdump\-ada\-spec\fR switch).
+.IP "\fIfile\fR\fB.cc\fR" 4
+.IX Item "file.cc"
+.PD 0
+.IP "\fIfile\fR\fB.cp\fR" 4
+.IX Item "file.cp"
+.IP "\fIfile\fR\fB.cxx\fR" 4
+.IX Item "file.cxx"
+.IP "\fIfile\fR\fB.cpp\fR" 4
+.IX Item "file.cpp"
+.IP "\fIfile\fR\fB.CPP\fR" 4
+.IX Item "file.CPP"
+.IP "\fIfile\fR\fB.c++\fR" 4
+.IX Item "file.c++"
+.IP "\fIfile\fR\fB.C\fR" 4
+.IX Item "file.C"
+.PD
+\&\*(C+ source code that must be preprocessed.  Note that in \fB.cxx\fR,
+the last two letters must both be literally \fBx\fR.  Likewise,
+\&\fB.C\fR refers to a literal capital C.
+.IP "\fIfile\fR\fB.mm\fR" 4
+.IX Item "file.mm"
+.PD 0
+.IP "\fIfile\fR\fB.M\fR" 4
+.IX Item "file.M"
+.PD
+Objective\-\*(C+ source code that must be preprocessed.
+.IP "\fIfile\fR\fB.mii\fR" 4
+.IX Item "file.mii"
+Objective\-\*(C+ source code that should not be preprocessed.
+.IP "\fIfile\fR\fB.hh\fR" 4
+.IX Item "file.hh"
+.PD 0
+.IP "\fIfile\fR\fB.H\fR" 4
+.IX Item "file.H"
+.IP "\fIfile\fR\fB.hp\fR" 4
+.IX Item "file.hp"
+.IP "\fIfile\fR\fB.hxx\fR" 4
+.IX Item "file.hxx"
+.IP "\fIfile\fR\fB.hpp\fR" 4
+.IX Item "file.hpp"
+.IP "\fIfile\fR\fB.HPP\fR" 4
+.IX Item "file.HPP"
+.IP "\fIfile\fR\fB.h++\fR" 4
+.IX Item "file.h++"
+.IP "\fIfile\fR\fB.tcc\fR" 4
+.IX Item "file.tcc"
+.PD
+\&\*(C+ header file to be turned into a precompiled header or Ada spec.
+.IP "\fIfile\fR\fB.f\fR" 4
+.IX Item "file.f"
+.PD 0
+.IP "\fIfile\fR\fB.for\fR" 4
+.IX Item "file.for"
+.IP "\fIfile\fR\fB.ftn\fR" 4
+.IX Item "file.ftn"
+.PD
+Fixed form Fortran source code that should not be preprocessed.
+.IP "\fIfile\fR\fB.F\fR" 4
+.IX Item "file.F"
+.PD 0
+.IP "\fIfile\fR\fB.FOR\fR" 4
+.IX Item "file.FOR"
+.IP "\fIfile\fR\fB.fpp\fR" 4
+.IX Item "file.fpp"
+.IP "\fIfile\fR\fB.FPP\fR" 4
+.IX Item "file.FPP"
+.IP "\fIfile\fR\fB.FTN\fR" 4
+.IX Item "file.FTN"
+.PD
+Fixed form Fortran source code that must be preprocessed (with the traditional
+preprocessor).
+.IP "\fIfile\fR\fB.f90\fR" 4
+.IX Item "file.f90"
+.PD 0
+.IP "\fIfile\fR\fB.f95\fR" 4
+.IX Item "file.f95"
+.IP "\fIfile\fR\fB.f03\fR" 4
+.IX Item "file.f03"
+.IP "\fIfile\fR\fB.f08\fR" 4
+.IX Item "file.f08"
+.PD
+Free form Fortran source code that should not be preprocessed.
+.IP "\fIfile\fR\fB.F90\fR" 4
+.IX Item "file.F90"
+.PD 0
+.IP "\fIfile\fR\fB.F95\fR" 4
+.IX Item "file.F95"
+.IP "\fIfile\fR\fB.F03\fR" 4
+.IX Item "file.F03"
+.IP "\fIfile\fR\fB.F08\fR" 4
+.IX Item "file.F08"
+.PD
+Free form Fortran source code that must be preprocessed (with the
+traditional preprocessor).
+.IP "\fIfile\fR\fB.go\fR" 4
+.IX Item "file.go"
+Go source code.
+.IP "\fIfile\fR\fB.ads\fR" 4
+.IX Item "file.ads"
+Ada source code file that contains a library unit declaration (a
+declaration of a package, subprogram, or generic, or a generic
+instantiation), or a library unit renaming declaration (a package,
+generic, or subprogram renaming declaration).  Such files are also
+called \fIspecs\fR.
+.IP "\fIfile\fR\fB.adb\fR" 4
+.IX Item "file.adb"
+Ada source code file containing a library unit body (a subprogram or
+package body).  Such files are also called \fIbodies\fR.
+.IP "\fIfile\fR\fB.s\fR" 4
+.IX Item "file.s"
+Assembler code.
+.IP "\fIfile\fR\fB.S\fR" 4
+.IX Item "file.S"
+.PD 0
+.IP "\fIfile\fR\fB.sx\fR" 4
+.IX Item "file.sx"
+.PD
+Assembler code that must be preprocessed.
+.IP "\fIother\fR" 4
+.IX Item "other"
+An object file to be fed straight into linking.
+Any file name with no recognized suffix is treated this way.
+.PP
+You can specify the input language explicitly with the \fB\-x\fR option:
+.IP "\fB\-x\fR \fIlanguage\fR" 4
+.IX Item "-x language"
+Specify explicitly the \fIlanguage\fR for the following input files
+(rather than letting the compiler choose a default based on the file
+name suffix).  This option applies to all following input files until
+the next \fB\-x\fR option.  Possible values for \fIlanguage\fR are:
+.Sp
+.Vb 9
+\&        c  c\-header  cpp\-output
+\&        c++  c++\-header  c++\-cpp\-output
+\&        objective\-c  objective\-c\-header  objective\-c\-cpp\-output
+\&        objective\-c++ objective\-c++\-header objective\-c++\-cpp\-output
+\&        assembler  assembler\-with\-cpp
+\&        ada
+\&        f77  f77\-cpp\-input f95  f95\-cpp\-input
+\&        go
+\&        java
+.Ve
+.IP "\fB\-x none\fR" 4
+.IX Item "-x none"
+Turn off any specification of a language, so that subsequent files are
+handled according to their file name suffixes (as they are if \fB\-x\fR
+has not been used at all).
+.IP "\fB\-pass\-exit\-codes\fR" 4
+.IX Item "-pass-exit-codes"
+Normally the \fBgcc\fR program exits with the code of 1 if any
+phase of the compiler returns a non-success return code.  If you specify
+\&\fB\-pass\-exit\-codes\fR, the \fBgcc\fR program instead returns with
+the numerically highest error produced by any phase returning an error
+indication.  The C, \*(C+, and Fortran front ends return 4 if an internal
+compiler error is encountered.
+.PP
+If you only want some of the stages of compilation, you can use
+\&\fB\-x\fR (or filename suffixes) to tell \fBgcc\fR where to start, and
+one of the options \fB\-c\fR, \fB\-S\fR, or \fB\-E\fR to say where
+\&\fBgcc\fR is to stop.  Note that some combinations (for example,
+\&\fB\-x cpp-output \-E\fR) instruct \fBgcc\fR to do nothing at all.
+.IP "\fB\-c\fR" 4
+.IX Item "-c"
+Compile or assemble the source files, but do not link.  The linking
+stage simply is not done.  The ultimate output is in the form of an
+object file for each source file.
+.Sp
+By default, the object file name for a source file is made by replacing
+the suffix \fB.c\fR, \fB.i\fR, \fB.s\fR, etc., with \fB.o\fR.
+.Sp
+Unrecognized input files, not requiring compilation or assembly, are
+ignored.
+.IP "\fB\-S\fR" 4
+.IX Item "-S"
+Stop after the stage of compilation proper; do not assemble.  The output
+is in the form of an assembler code file for each non-assembler input
+file specified.
+.Sp
+By default, the assembler file name for a source file is made by
+replacing the suffix \fB.c\fR, \fB.i\fR, etc., with \fB.s\fR.
+.Sp
+Input files that don't require compilation are ignored.
+.IP "\fB\-E\fR" 4
+.IX Item "-E"
+Stop after the preprocessing stage; do not run the compiler proper.  The
+output is in the form of preprocessed source code, which is sent to the
+standard output.
+.Sp
+Input files that don't require preprocessing are ignored.
+.IP "\fB\-o\fR \fIfile\fR" 4
+.IX Item "-o file"
+Place output in file \fIfile\fR.  This applies to whatever
+sort of output is being produced, whether it be an executable file,
+an object file, an assembler file or preprocessed C code.
+.Sp
+If \fB\-o\fR is not specified, the default is to put an executable
+file in \fIa.out\fR, the object file for
+\&\fI\fIsource\fI.\fIsuffix\fI\fR in \fI\fIsource\fI.o\fR, its
+assembler file in \fI\fIsource\fI.s\fR, a precompiled header file in
+\&\fI\fIsource\fI.\fIsuffix\fI.gch\fR, and all preprocessed C source on
+standard output.
+.IP "\fB\-v\fR" 4
+.IX Item "-v"
+Print (on standard error output) the commands executed to run the stages
+of compilation.  Also print the version number of the compiler driver
+program and of the preprocessor and the compiler proper.
+.IP "\fB\-###\fR" 4
+.IX Item "-###"
+Like \fB\-v\fR except the commands are not executed and arguments
+are quoted unless they contain only alphanumeric characters or \f(CW\*(C`./\-_\*(C'\fR.
+This is useful for shell scripts to capture the driver-generated command lines.
+.IP "\fB\-pipe\fR" 4
+.IX Item "-pipe"
+Use pipes rather than temporary files for communication between the
+various stages of compilation.  This fails to work on some systems where
+the assembler is unable to read from a pipe; but the \s-1GNU\s0 assembler has
+no trouble.
+.IP "\fB\-\-help\fR" 4
+.IX Item "--help"
+Print (on the standard output) a description of the command-line options
+understood by \fBgcc\fR.  If the \fB\-v\fR option is also specified
+then \fB\-\-help\fR is also passed on to the various processes
+invoked by \fBgcc\fR, so that they can display the command-line options
+they accept.  If the \fB\-Wextra\fR option has also been specified
+(prior to the \fB\-\-help\fR option), then command-line options that
+have no documentation associated with them are also displayed.
+.IP "\fB\-\-target\-help\fR" 4
+.IX Item "--target-help"
+Print (on the standard output) a description of target-specific command-line
+options for each tool.  For some targets extra target-specific
+information may also be printed.
+.IP "\fB\-\-help={\fR\fIclass\fR|[\fB^\fR]\fIqualifier\fR\fB}\fR[\fB,...\fR]" 4
+.IX Item "--help={class|[^]qualifier}[,...]"
+Print (on the standard output) a description of the command-line
+options understood by the compiler that fit into all specified classes
+and qualifiers.  These are the supported classes:
+.RS 4
+.IP "\fBoptimizers\fR" 4
+.IX Item "optimizers"
+Display all of the optimization options supported by the
+compiler.
+.IP "\fBwarnings\fR" 4
+.IX Item "warnings"
+Display all of the options controlling warning messages
+produced by the compiler.
+.IP "\fBtarget\fR" 4
+.IX Item "target"
+Display target-specific options.  Unlike the
+\&\fB\-\-target\-help\fR option however, target-specific options of the
+linker and assembler are not displayed.  This is because those
+tools do not currently support the extended \fB\-\-help=\fR syntax.
+.IP "\fBparams\fR" 4
+.IX Item "params"
+Display the values recognized by the \fB\-\-param\fR
+option.
+.IP "\fIlanguage\fR" 4
+.IX Item "language"
+Display the options supported for \fIlanguage\fR, where
+\&\fIlanguage\fR is the name of one of the languages supported in this
+version of \s-1GCC\s0.
+.IP "\fBcommon\fR" 4
+.IX Item "common"
+Display the options that are common to all languages.
+.RE
+.RS 4
+.Sp
+These are the supported qualifiers:
+.IP "\fBundocumented\fR" 4
+.IX Item "undocumented"
+Display only those options that are undocumented.
+.IP "\fBjoined\fR" 4
+.IX Item "joined"
+Display options taking an argument that appears after an equal
+sign in the same continuous piece of text, such as:
+\&\fB\-\-help=target\fR.
+.IP "\fBseparate\fR" 4
+.IX Item "separate"
+Display options taking an argument that appears as a separate word
+following the original option, such as: \fB\-o output-file\fR.
+.RE
+.RS 4
+.Sp
+Thus for example to display all the undocumented target-specific
+switches supported by the compiler, use:
+.Sp
+.Vb 1
+\&        \-\-help=target,undocumented
+.Ve
+.Sp
+The sense of a qualifier can be inverted by prefixing it with the
+\&\fB^\fR character, so for example to display all binary warning
+options (i.e., ones that are either on or off and that do not take an
+argument) that have a description, use:
+.Sp
+.Vb 1
+\&        \-\-help=warnings,^joined,^undocumented
+.Ve
+.Sp
+The argument to \fB\-\-help=\fR should not consist solely of inverted
+qualifiers.
+.Sp
+Combining several classes is possible, although this usually
+restricts the output so much that there is nothing to display.  One
+case where it does work, however, is when one of the classes is
+\&\fItarget\fR.  For example, to display all the target-specific
+optimization options, use:
+.Sp
+.Vb 1
+\&        \-\-help=target,optimizers
+.Ve
+.Sp
+The \fB\-\-help=\fR option can be repeated on the command line.  Each
+successive use displays its requested class of options, skipping
+those that have already been displayed.
+.Sp
+If the \fB\-Q\fR option appears on the command line before the
+\&\fB\-\-help=\fR option, then the descriptive text displayed by
+\&\fB\-\-help=\fR is changed.  Instead of describing the displayed
+options, an indication is given as to whether the option is enabled,
+disabled or set to a specific value (assuming that the compiler
+knows this at the point where the \fB\-\-help=\fR option is used).
+.Sp
+Here is a truncated example from the \s-1ARM\s0 port of \fBgcc\fR:
+.Sp
+.Vb 5
+\&          % gcc \-Q \-mabi=2 \-\-help=target \-c
+\&          The following options are target specific:
+\&          \-mabi=                                2
+\&          \-mabort\-on\-noreturn                   [disabled]
+\&          \-mapcs                                [disabled]
+.Ve
+.Sp
+The output is sensitive to the effects of previous command-line
+options, so for example it is possible to find out which optimizations
+are enabled at \fB\-O2\fR by using:
+.Sp
+.Vb 1
+\&        \-Q \-O2 \-\-help=optimizers
+.Ve
+.Sp
+Alternatively you can discover which binary optimizations are enabled
+by \fB\-O3\fR by using:
+.Sp
+.Vb 3
+\&        gcc \-c \-Q \-O3 \-\-help=optimizers > /tmp/O3\-opts
+\&        gcc \-c \-Q \-O2 \-\-help=optimizers > /tmp/O2\-opts
+\&        diff /tmp/O2\-opts /tmp/O3\-opts | grep enabled
+.Ve
+.RE
+.IP "\fB\-no\-canonical\-prefixes\fR" 4
+.IX Item "-no-canonical-prefixes"
+Do not expand any symbolic links, resolve references to \fB/../\fR
+or \fB/./\fR, or make the path absolute when generating a relative
+prefix.
+.IP "\fB\-\-version\fR" 4
+.IX Item "--version"
+Display the version number and copyrights of the invoked \s-1GCC\s0.
+.IP "\fB\-wrapper\fR" 4
+.IX Item "-wrapper"
+Invoke all subcommands under a wrapper program.  The name of the
+wrapper program and its parameters are passed as a comma separated
+list.
+.Sp
+.Vb 1
+\&        gcc \-c t.c \-wrapper gdb,\-\-args
+.Ve
+.Sp
+This invokes all subprograms of \fBgcc\fR under
+\&\fBgdb \-\-args\fR, thus the invocation of \fBcc1\fR is
+\&\fBgdb \-\-args cc1 ...\fR.
+.IP "\fB\-fplugin=\fR\fIname\fR\fB.so\fR" 4
+.IX Item "-fplugin=name.so"
+Load the plugin code in file \fIname\fR.so, assumed to be a
+shared object to be dlopen'd by the compiler.  The base name of
+the shared object file is used to identify the plugin for the
+purposes of argument parsing (See
+\&\fB\-fplugin\-arg\-\fR\fIname\fR\fB\-\fR\fIkey\fR\fB=\fR\fIvalue\fR below).
+Each plugin should define the callback functions specified in the
+Plugins \s-1API\s0.
+.IP "\fB\-fplugin\-arg\-\fR\fIname\fR\fB\-\fR\fIkey\fR\fB=\fR\fIvalue\fR" 4
+.IX Item "-fplugin-arg-name-key=value"
+Define an argument called \fIkey\fR with a value of \fIvalue\fR
+for the plugin called \fIname\fR.
+.IP "\fB\-fdump\-ada\-spec\fR[\fB\-slim\fR]" 4
+.IX Item "-fdump-ada-spec[-slim]"
+For C and \*(C+ source and include files, generate corresponding Ada specs.
+.IP "\fB\-fada\-spec\-parent=\fR\fIunit\fR" 4
+.IX Item "-fada-spec-parent=unit"
+In conjunction with \fB\-fdump\-ada\-spec\fR[\fB\-slim\fR] above, generate
+Ada specs as child units of parent \fIunit\fR.
+.IP "\fB\-fdump\-go\-spec=\fR\fIfile\fR" 4
+.IX Item "-fdump-go-spec=file"
+For input files in any language, generate corresponding Go
+declarations in \fIfile\fR.  This generates Go \f(CW\*(C`const\*(C'\fR,
+\&\f(CW\*(C`type\*(C'\fR, \f(CW\*(C`var\*(C'\fR, and \f(CW\*(C`func\*(C'\fR declarations which may be a
+useful way to start writing a Go interface to code written in some
+other language.
+.IP "\fB@\fR\fIfile\fR" 4
+.IX Item "@file"
+Read command-line options from \fIfile\fR.  The options read are
+inserted in place of the original @\fIfile\fR option.  If \fIfile\fR
+does not exist, or cannot be read, then the option will be treated
+literally, and not removed.
+.Sp
+Options in \fIfile\fR are separated by whitespace.  A whitespace
+character may be included in an option by surrounding the entire
+option in either single or double quotes.  Any character (including a
+backslash) may be included by prefixing the character to be included
+with a backslash.  The \fIfile\fR may itself contain additional
+@\fIfile\fR options; any such options will be processed recursively.
+.SS "Compiling \*(C+ Programs"
+.IX Subsection "Compiling  Programs"
+\&\*(C+ source files conventionally use one of the suffixes \fB.C\fR,
+\&\fB.cc\fR, \fB.cpp\fR, \fB.CPP\fR, \fB.c++\fR, \fB.cp\fR, or
+\&\fB.cxx\fR; \*(C+ header files often use \fB.hh\fR, \fB.hpp\fR,
+\&\fB.H\fR, or (for shared template code) \fB.tcc\fR; and
+preprocessed \*(C+ files use the suffix \fB.ii\fR.  \s-1GCC\s0 recognizes
+files with these names and compiles them as \*(C+ programs even if you
+call the compiler the same way as for compiling C programs (usually
+with the name \fBgcc\fR).
+.PP
+However, the use of \fBgcc\fR does not add the \*(C+ library.
+\&\fBg++\fR is a program that calls \s-1GCC\s0 and automatically specifies linking
+against the \*(C+ library.  It treats \fB.c\fR,
+\&\fB.h\fR and \fB.i\fR files as \*(C+ source files instead of C source
+files unless \fB\-x\fR is used.  This program is also useful when
+precompiling a C header file with a \fB.h\fR extension for use in \*(C+
+compilations.  On many systems, \fBg++\fR is also installed with
+the name \fBc++\fR.
+.PP
+When you compile \*(C+ programs, you may specify many of the same
+command-line options that you use for compiling programs in any
+language; or command-line options meaningful for C and related
+languages; or options that are meaningful only for \*(C+ programs.
+.SS "Options Controlling C Dialect"
+.IX Subsection "Options Controlling C Dialect"
+The following options control the dialect of C (or languages derived
+from C, such as \*(C+, Objective-C and Objective\-\*(C+) that the compiler
+accepts:
+.IP "\fB\-ansi\fR" 4
+.IX Item "-ansi"
+In C mode, this is equivalent to \fB\-std=c90\fR. In \*(C+ mode, it is
+equivalent to \fB\-std=c++98\fR.
+.Sp
+This turns off certain features of \s-1GCC\s0 that are incompatible with \s-1ISO\s0
+C90 (when compiling C code), or of standard \*(C+ (when compiling \*(C+ code),
+such as the \f(CW\*(C`asm\*(C'\fR and \f(CW\*(C`typeof\*(C'\fR keywords, and
+predefined macros such as \f(CW\*(C`unix\*(C'\fR and \f(CW\*(C`vax\*(C'\fR that identify the
+type of system you are using.  It also enables the undesirable and
+rarely used \s-1ISO\s0 trigraph feature.  For the C compiler,
+it disables recognition of \*(C+ style \fB//\fR comments as well as
+the \f(CW\*(C`inline\*(C'\fR keyword.
+.Sp
+The alternate keywords \f(CW\*(C`_\|_asm_\|_\*(C'\fR, \f(CW\*(C`_\|_extension_\|_\*(C'\fR,
+\&\f(CW\*(C`_\|_inline_\|_\*(C'\fR and \f(CW\*(C`_\|_typeof_\|_\*(C'\fR continue to work despite
+\&\fB\-ansi\fR.  You would not want to use them in an \s-1ISO\s0 C program, of
+course, but it is useful to put them in header files that might be included
+in compilations done with \fB\-ansi\fR.  Alternate predefined macros
+such as \f(CW\*(C`_\|_unix_\|_\*(C'\fR and \f(CW\*(C`_\|_vax_\|_\*(C'\fR are also available, with or
+without \fB\-ansi\fR.
+.Sp
+The \fB\-ansi\fR option does not cause non-ISO programs to be
+rejected gratuitously.  For that, \fB\-Wpedantic\fR is required in
+addition to \fB\-ansi\fR.
+.Sp
+The macro \f(CW\*(C`_\|_STRICT_ANSI_\|_\*(C'\fR is predefined when the \fB\-ansi\fR
+option is used.  Some header files may notice this macro and refrain
+from declaring certain functions or defining certain macros that the
+\&\s-1ISO\s0 standard doesn't call for; this is to avoid interfering with any
+programs that might use these names for other things.
+.Sp
+Functions that are normally built in but do not have semantics
+defined by \s-1ISO\s0 C (such as \f(CW\*(C`alloca\*(C'\fR and \f(CW\*(C`ffs\*(C'\fR) are not built-in
+functions when \fB\-ansi\fR is used.
+.IP "\fB\-std=\fR" 4
+.IX Item "-std="
+Determine the language standard.   This option
+is currently only supported when compiling C or \*(C+.
+.Sp
+The compiler can accept several base standards, such as \fBc90\fR or
+\&\fBc++98\fR, and \s-1GNU\s0 dialects of those standards, such as
+\&\fBgnu90\fR or \fBgnu++98\fR.  When a base standard is specified, the
+compiler accepts all programs following that standard plus those
+using \s-1GNU\s0 extensions that do not contradict it.  For example,
+\&\fB\-std=c90\fR turns off certain features of \s-1GCC\s0 that are
+incompatible with \s-1ISO\s0 C90, such as the \f(CW\*(C`asm\*(C'\fR and \f(CW\*(C`typeof\*(C'\fR
+keywords, but not other \s-1GNU\s0 extensions that do not have a meaning in
+\&\s-1ISO\s0 C90, such as omitting the middle term of a \f(CW\*(C`?:\*(C'\fR
+expression. On the other hand, when a \s-1GNU\s0 dialect of a standard is
+specified, all features supported by the compiler are enabled, even when
+those features change the meaning of the base standard.  As a result, some
+strict-conforming programs may be rejected.  The particular standard
+is used by \fB\-Wpedantic\fR to identify which features are \s-1GNU\s0
+extensions given that version of the standard. For example
+\&\fB\-std=gnu90 \-Wpedantic\fR warns about \*(C+ style \fB//\fR
+comments, while \fB\-std=gnu99 \-Wpedantic\fR does not.
+.Sp
+A value for this option must be provided; possible values are
+.RS 4
+.IP "\fBc90\fR" 4
+.IX Item "c90"
+.PD 0
+.IP "\fBc89\fR" 4
+.IX Item "c89"
+.IP "\fBiso9899:1990\fR" 4
+.IX Item "iso9899:1990"
+.PD
+Support all \s-1ISO\s0 C90 programs (certain \s-1GNU\s0 extensions that conflict
+with \s-1ISO\s0 C90 are disabled). Same as \fB\-ansi\fR for C code.
+.IP "\fBiso9899:199409\fR" 4
+.IX Item "iso9899:199409"
+\&\s-1ISO\s0 C90 as modified in amendment 1.
+.IP "\fBc99\fR" 4
+.IX Item "c99"
+.PD 0
+.IP "\fBc9x\fR" 4
+.IX Item "c9x"
+.IP "\fBiso9899:1999\fR" 4
+.IX Item "iso9899:1999"
+.IP "\fBiso9899:199x\fR" 4
+.IX Item "iso9899:199x"
+.PD
+\&\s-1ISO\s0 C99.  This standard is substantially completely supported, modulo
+bugs and floating-point issues
+(mainly but not entirely relating to optional C99 features from
+Annexes F and G).  See
+<\fBhttp://gcc.gnu.org/c99status.html\fR> for more information.  The
+names \fBc9x\fR and \fBiso9899:199x\fR are deprecated.
+.IP "\fBc11\fR" 4
+.IX Item "c11"
+.PD 0
+.IP "\fBc1x\fR" 4
+.IX Item "c1x"
+.IP "\fBiso9899:2011\fR" 4
+.IX Item "iso9899:2011"
+.PD
+\&\s-1ISO\s0 C11, the 2011 revision of the \s-1ISO\s0 C standard.  This standard is
+substantially completely supported, modulo bugs, floating-point issues
+(mainly but not entirely relating to optional C11 features from
+Annexes F and G) and the optional Annexes K (Bounds-checking
+interfaces) and L (Analyzability).  The name \fBc1x\fR is deprecated.
+.IP "\fBgnu90\fR" 4
+.IX Item "gnu90"
+.PD 0
+.IP "\fBgnu89\fR" 4
+.IX Item "gnu89"
+.PD
+\&\s-1GNU\s0 dialect of \s-1ISO\s0 C90 (including some C99 features).
+.IP "\fBgnu99\fR" 4
+.IX Item "gnu99"
+.PD 0
+.IP "\fBgnu9x\fR" 4
+.IX Item "gnu9x"
+.PD
+\&\s-1GNU\s0 dialect of \s-1ISO\s0 C99.  The name \fBgnu9x\fR is deprecated.
+.IP "\fBgnu11\fR" 4
+.IX Item "gnu11"
+.PD 0
+.IP "\fBgnu1x\fR" 4
+.IX Item "gnu1x"
+.PD
+\&\s-1GNU\s0 dialect of \s-1ISO\s0 C11.  This is the default for C code.
+The name \fBgnu1x\fR is deprecated.
+.IP "\fBc++98\fR" 4
+.IX Item "c++98"
+.PD 0
+.IP "\fBc++03\fR" 4
+.IX Item "c++03"
+.PD
+The 1998 \s-1ISO\s0 \*(C+ standard plus the 2003 technical corrigendum and some
+additional defect reports. Same as \fB\-ansi\fR for \*(C+ code.
+.IP "\fBgnu++98\fR" 4
+.IX Item "gnu++98"
+.PD 0
+.IP "\fBgnu++03\fR" 4
+.IX Item "gnu++03"
+.PD
+\&\s-1GNU\s0 dialect of \fB\-std=c++98\fR.  This is the default for
+\&\*(C+ code.
+.IP "\fBc++11\fR" 4
+.IX Item "c++11"
+.PD 0
+.IP "\fBc++0x\fR" 4
+.IX Item "c++0x"
+.PD
+The 2011 \s-1ISO\s0 \*(C+ standard plus amendments.
+The name \fBc++0x\fR is deprecated.
+.IP "\fBgnu++11\fR" 4
+.IX Item "gnu++11"
+.PD 0
+.IP "\fBgnu++0x\fR" 4
+.IX Item "gnu++0x"
+.PD
+\&\s-1GNU\s0 dialect of \fB\-std=c++11\fR.
+The name \fBgnu++0x\fR is deprecated.
+.IP "\fBc++14\fR" 4
+.IX Item "c++14"
+.PD 0
+.IP "\fBc++1y\fR" 4
+.IX Item "c++1y"
+.PD
+The 2014 \s-1ISO\s0 \*(C+ standard plus amendments.
+The name \fBc++1y\fR is deprecated.
+.IP "\fBgnu++14\fR" 4
+.IX