1#note vec.cc has been replaced by vec-cxx.cc due to object filename clash 2 3SUPCXX= \ 4 array_type_info.cc \ 5 atexit_arm.cc \ 6 bad_alloc.cc \ 7 bad_cast.cc \ 8 bad_typeid.cc \ 9 class_type_info.cc \ 10 del_op.cc \ 11 del_opnt.cc \ 12 del_opv.cc \ 13 del_opvnt.cc \ 14 dyncast.cc \ 15 eh_alloc.cc \ 16 eh_arm.cc \ 17 eh_aux_runtime.cc \ 18 eh_call.cc \ 19 eh_catch.cc \ 20 eh_exception.cc \ 21 eh_globals.cc \ 22 eh_personality.cc \ 23 eh_ptr.cc \ 24 eh_term_handler.cc \ 25 eh_terminate.cc \ 26 eh_tm.cc \ 27 eh_throw.cc \ 28 eh_type.cc \ 29 eh_unex_handler.cc \ 30 enum_type_info.cc \ 31 function_type_info.cc \ 32 fundamental_type_info.cc \ 33 guard.cc \ 34 guard_error.cc \ 35 hash_bytes.cc \ 36 nested_exception.cc \ 37 new_handler.cc \ 38 new_op.cc \ 39 new_opnt.cc \ 40 new_opv.cc \ 41 new_opvnt.cc \ 42 pbase_type_info.cc \ 43 pmem_type_info.cc \ 44 pointer_type_info.cc \ 45 pure.cc \ 46 si_class_type_info.cc \ 47 tinfo.cc \ 48 tinfo2.cc \ 49 vec-cxx.cc \ 50 vmi_class_type_info.cc \ 51 vterminate.cc 52 53gthr.h: ${GCCDIR}/libgcc/gthr.h 54 sed -e '/^#pragma/b' \ 55 -e '/^#/s/\([ABCDEFGHIJKLMNOPQRSTUVWXYZ_][ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*\)/_GLIBCXX_\1/g' \ 56 -e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \ 57 -e 's,^#include "\(.*\)",#include <bits/\1>,g' \ 58 < ${GCCDIR}/libgcc/gthr.h > ${.TARGET} 59 60gthr-default.h: ${GCCDIR}/libgcc/gthr-posix.h 61 sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \ 62 -e 's/\(GCC[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*_H\)/_GLIBCXX_\1/g' \ 63 -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \ 64 -e 's/\([ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*USE_WEAK\)/_GLIBCXX_\1/g' \ 65 < ${GCCDIR}/libgcc/gthr-posix.h > ${.TARGET} 66 67CXX_CONFIG_H = ${.CURDIR}/../libstdc++/config.h 68ns_version=0 69visibility=1 70externtemplate=1 71SUBST1='s,define __GLIBCXX__,define __GLIBCXX__ ${GCCSHORTDATE},' 72SUBST2='s,define _GLIBCXX_INLINE_VERSION, define _GLIBCXX_INLINE_VERSION ${ns_version},' 73SUBST3='s,define _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY, define _GLIBCXX_HAVE_ATTRIBUTE_VISIBILITY ${visibility},' 74SUBST4='s,define _GLIBCXX_EXTERN_TEMPLATE$$, define _GLIBCXX_EXTERN_TEMPLATE ${externtemplate},' 75 76c++config.h: ${CXX_CONFIG_H} 77 sed -e ${SUBST1} -e ${SUBST2} -e ${SUBST3} -e ${SUBST4} \ 78 < ${GCCDIR}/libstdc++-v3/include/bits/c++config > ${.TARGET} 79 sed -e 's/HAVE_/_GLIBCXX_HAVE_/g' \ 80 -e 's/PACKAGE/_GLIBCXX_PACKAGE/g' \ 81 -e 's/VERSION/_GLIBCXX_VERSION/g' \ 82 -e 's/WORDS_/_GLIBCXX_WORDS_/g' \ 83 -e 's/ICONV_CONST/_GLIBCXX_ICONV_CONST/g' \ 84 -e '/[ ]_GLIBCXX_LONG_DOUBLE_COMPAT[ ]/d' \ 85 < ${CXX_CONFIG_H} >> ${.TARGET} 86 echo "" >> ${.TARGET} 87 echo "#endif // _GLIBCXX_CXX_CONFIG_H" >> ${.TARGET} 88