1298218Sbdrewery# $FreeBSD$ 2298218Sbdrewery# 3298218Sbdrewery# This is logic for common headers shared inside of gnu/lib. It used to 4298218Sbdrewery# live in gnu/usr.bin/cc/cc_tools/Makefile. 5298218Sbdrewery 6298218Sbdrewery.if !defined(TARGET_CPUARCH) || !defined(GCC_CPU) 7298218Sbdrewery.error ${.CURDIR}: Must include gnu/usr.bin/cc/Makefile.tgt first. 8298218Sbdrewery.endif 9298218Sbdrewery 10298218Sbdrewery# 11298218Sbdrewery# The list of headers to go into tm.h 12298218Sbdrewery# 13298218SbdreweryTARGET_INC+= options.h 14298218Sbdrewery.if ${TARGET_CPUARCH} == "amd64" 15298218SbdreweryTARGET_INC+= i386/biarch64.h 16298218Sbdrewery.endif 17298218Sbdrewery.if ${TARGET_CPUARCH} != "arm" 18298218SbdreweryTARGET_INC+= ${GCC_CPU}/${GCC_CPU}.h 19298218Sbdrewery.endif 20298218Sbdrewery.if ${TARGET_CPUARCH} == "i386" || ${TARGET_CPUARCH} == "amd64" 21298218SbdreweryTARGET_INC+= ${GCC_CPU}/unix.h 22298218SbdreweryTARGET_INC+= ${GCC_CPU}/att.h 23298218Sbdrewery.endif 24298218SbdreweryTARGET_INC+= dbxelf.h 25298218SbdreweryTARGET_INC+= elfos-undef.h 26298218SbdreweryTARGET_INC+= elfos.h 27298218SbdreweryTARGET_INC+= freebsd-native.h 28298218SbdreweryTARGET_INC+= freebsd-spec.h 29298218SbdreweryTARGET_INC+= freebsd.h 30298218Sbdrewery.if ${TARGET_CPUARCH} != "i386" && ${TARGET_CPUARCH} != "amd64" 31298218Sbdrewery. if exists(${GCCDIR}/config/${GCC_CPU}/sysv4.h) 32298218SbdreweryTARGET_INC+= ${GCC_CPU}/sysv4.h 33298218Sbdrewery. endif 34298218Sbdrewery.endif 35298218Sbdrewery.if ${TARGET_CPUARCH} == "amd64" 36298218SbdreweryTARGET_INC+= ${GCC_CPU}/x86-64.h 37298218Sbdrewery.endif 38298218Sbdrewery.if ${TARGET_CPUARCH} == "arm" || ${TARGET_CPUARCH} == "mips" 39298218SbdreweryTARGET_INC+= ${GCC_CPU}/elf.h 40298218Sbdrewery.endif 41298218Sbdrewery.if ${TARGET_CPUARCH} == "arm" 42298218SbdreweryTARGET_INC+= ${GCC_CPU}/aout.h 43298218SbdreweryTARGET_INC+= ${GCC_CPU}/bpabi.h 44298218Sbdrewery.endif 45298218Sbdrewery.if ${TARGET_ARCH} == "powerpc64" 46298218SbdreweryTARGET_INC+= ${GCC_CPU}/biarch64.h 47298218SbdreweryTARGET_INC+= ${GCC_CPU}/default64.h 48298218Sbdrewery.endif 49298218SbdreweryTARGET_INC+= ${GCC_CPU}/freebsd.h 50298218Sbdrewery.if ${TARGET_CPUARCH} == "amd64" 51298218SbdreweryTARGET_INC+= ${GCC_CPU}/freebsd64.h 52298218Sbdrewery.endif 53298218Sbdrewery.if ${TARGET_CPUARCH} == "arm" 54298218SbdreweryTARGET_INC+= ${GCC_CPU}/arm.h 55298218Sbdrewery.endif 56298218SbdreweryTARGET_INC+= defaults.h 57298218Sbdrewery 58298218Sbdrewery# 59298218Sbdrewery# Option files. 60298218Sbdrewery# 61298218SbdreweryOPT_FILES= c.opt common.opt 62298218Sbdrewery 63298218Sbdrewery.if exists(${GCCDIR}/config/${GCC_CPU}/${GCC_CPU}.opt) 64298218SbdreweryOPT_FILES+= ${GCCDIR}/config/${GCC_CPU}/${GCC_CPU}.opt 65298218Sbdrewery.endif 66298218Sbdrewery 67298218Sbdrewery.if exists(${.CURDIR}/${GCC_CPU}-freebsd.opt) 68298218SbdreweryOPT_FILES+= ${.CURDIR}/${GCC_CPU}-freebsd.opt 69298218Sbdrewery.endif 70298218Sbdrewery 71298218Sbdrewery.if ${TARGET_CPUARCH} == "powerpc" 72298218SbdreweryOPT_FILES+= ${GCCDIR}/config/${GCC_CPU}/sysv4.opt 73298218Sbdrewery.endif 74298218Sbdrewery 75298218Sbdrewery.if ${TARGET_CPUARCH} == "sparc64" 76298218SbdreweryOPT_FILES+= ${GCCDIR}/config/${GCC_CPU}/long-double-switch.opt 77298218Sbdrewery.endif 78298218Sbdrewery 79298218Sbdrewery.if exists(${.CURDIR}/freebsd.opt) 80298218SbdreweryOPT_FILES+= ${.CURDIR}/freebsd.opt 81298218Sbdrewery.endif 82298218Sbdrewery 83298218Sbdrewery 84298218Sbdrewery# Options 85298218Sbdreweryoptionlist: ${OPT_FILES} 86298218Sbdrewery LC_ALL=C awk -f ${GCCDIR}/opt-gather.awk ${.ALLSRC} > ${.TARGET} 87298218Sbdrewery 88298218Sbdreweryoptions.h: optionlist 89298218Sbdrewery LC_ALL=C awk -f ${GCCDIR}/opt-functions.awk \ 90298218Sbdrewery -f ${GCCDIR}/opth-gen.awk \ 91298218Sbdrewery < ${.ALLSRC} > ${.TARGET} 92298218Sbdrewery 93298218Sbdreweryoptions.c: optionlist 94298218Sbdrewery LC_ALL=C awk -f ${GCCDIR}/opt-functions.awk \ 95298218Sbdrewery -f ${GCCDIR}/optc-gen.awk \ 96298218Sbdrewery -v header_name="config.h system.h coretypes.h tm.h" \ 97298218Sbdrewery < ${.ALLSRC} > ${.TARGET} 98298218Sbdrewery 99298218Sbdrewery# Target machine config 100298218Sbdrewerytm.h: 101298218Sbdrewery TARGET_CPU_DEFAULT="${TARGET_CPU_DEFAULT}" \ 102298218Sbdrewery HEADERS="${TARGET_INC}" \ 103298218Sbdrewery DEFINES="" \ 104298218Sbdrewery /bin/sh ${GCCDIR}/mkconfig.sh ${.TARGET} 105298218Sbdrewery.if exists(${GCCDIR}/config/${GCC_CPU}/${GCC_CPU}-modes.def) 106298218Sbdrewery echo '#define EXTRA_MODES_FILE "${GCC_CPU}/${GCC_CPU}-modes.def"' >> ${.TARGET} 107298218Sbdrewery.endif 108298218Sbdrewery 109298218Sbdrewery# tconfig.h 110298218Sbdrewerytconfig.h: 111298218Sbdrewery TARGET_CPU_DEFAULT="${TARGET_CPU_DEFAULT}" \ 112298218Sbdrewery HEADERS="auto-host.h ansidecl.h" \ 113298218Sbdrewery DEFINES="USED_FOR_TARGET" \ 114298218Sbdrewery /bin/sh ${GCCDIR}/mkconfig.sh ${.TARGET} 115298218Sbdrewery 116298218Sbdrewery# Version header for gcov 117298218Sbdrewerygcov-iov.h: 118298218Sbdrewery echo "#define GCOV_VERSION ((gcov_unsigned_t)0x34303270)" >> ${.TARGET} 119298218Sbdrewery 120298218Sbdrewery# Linked headers 121298218Sbdrewerygthr-default.h: ${GCCDIR}/gthr-posix.h .NOMETA 122298218Sbdrewery ln -sf ${.ALLSRC} ${.TARGET} 123298218Sbdrewery 124298218Sbdrewery.if ${TARGET_CPUARCH} == "arm" 125298218Sbdreweryunwind.h: ${GCCDIR}/config/arm/unwind-arm.h 126298218Sbdrewery.else 127298218Sbdreweryunwind.h: ${GCCDIR}/unwind-generic.h 128298218Sbdrewery.endif 129298218Sbdrewery 130298218Sbdreweryunwind.h: .NOMETA 131298218Sbdrewery ln -sf ${.ALLSRC} ${.TARGET} 132298218Sbdrewery 133