1 # $NetBSD: Makefile,v 1.11 2011/07/18 19:11:28 joerg Exp $ 2 3 .include <bsd.init.mk> 4 5 # 6 # Do *not* set HOSTPROG or HOSTLIB at this point otherwise 7 # it will create a loop trying to extract the object directory. 8 # 9 .include "Makefile.inc" 10 .include "${LLVM_TOPLEVEL}/lib/Makefile.inc" 11 12 realdepends realall: config/config.status need-dl \ 13 config/include/clang/Basic/Version.inc 14 15 config/include/clang/Basic/Version.inc: \ 16 ${LLVM_TOPLEVEL}/config/clang/Basic/Version.inc 17 mkdir -p ${.TARGET:H} 18 cat < ${.ALLSRC} > ${.TARGET} 19 20 config/config.status: ${LLVM_SRCDIR}/configure 21 mkdir -p config 22 cd config && ${LLVM_SRCDIR}/configure CC=${HOST_CC:Q} --prefix=/usr \ 23 --enable-targets=x86,powerpc,sparc,arm,mips \ 24 --host=${MACHINE_GNU_PLATFORM} \ 25 --with-c-include-dirs=/usr/include/clang-3.0:/usr/include \ 26 --enable-optimized 27 # --disable-assertions 28 29 need-dl: 30 printf '#include <dlfcn.h>\nint main(void){void *p; return dladdr(p, p);}' > need-dl.c 31 if ${HOST_CC} -o need-dl.out -D_GNU_SOURCE need-dl.c > /dev/null 2>&1; then \ 32 echo > ${.TARGET}; \ 33 elif ${HOST_CC} -o need-dl.out -D_GNU_SOURCE need-dl.c -ldl > /dev/null 2>&1; then \ 34 echo -ldl > ${.TARGET}; \ 35 else \ 36 echo > ${.TARGET}; \ 37 fi 38 39 CLEANFILES+= need-dl need-dl.c need-dl.out 40 41 cleandir: cleandir-llvm 42 43 cleandir-llvm: 44 test ! -d config || rm -r config 45 rm -f need-dl need-dl.tmp 46 47 .include <bsd.hostprog.mk> 48