Index: lib/clang/clang.lib.mk =================================================================== --- lib/clang/clang.lib.mk +++ lib/clang/clang.lib.mk @@ -6,4 +6,8 @@ INTERNALLIB= +.if ${MACHINE_CPUARCH} == "arm" +STATIC_CXXFLAGS+= -mlong-calls +.endif + .include Index: lib/libc++/Makefile =================================================================== --- lib/libc++/Makefile +++ lib/libc++/Makefile @@ -6,6 +6,9 @@ HDRDIR= ${.CURDIR}/../../contrib/libc++/include SRCDIR= ${.CURDIR}/../../contrib/libc++/src CXXINCLUDEDIR= ${INCLUDEDIR}/c++/v${SHLIB_MAJOR} +.if ${MACHINE_CPUARCH} == "arm" +STATIC_CXXFLAGS+= -mlong-calls +.endif .PATH: ${SRCDIR} Index: usr.bin/clang/clang/Makefile =================================================================== --- usr.bin/clang/clang/Makefile +++ usr.bin/clang/clang/Makefile @@ -11,6 +11,10 @@ .if ${MK_SHARED_TOOLCHAIN} == "no" NO_SHARED?= yes + +.if ${MACHINE_CPUARCH} == "arm" +CFLAGS+= -mlong-calls +.endif .endif LINKS= ${BINDIR}/clang ${BINDIR}/clang++ \ Index: usr.bin/clang/lldb/Makefile =================================================================== --- usr.bin/clang/lldb/Makefile +++ usr.bin/clang/lldb/Makefile @@ -8,6 +8,9 @@ CFLAGS+= -I${LLDB_SRCS}/include CXXFLAGS+= -std=c++11 +.if ${MACHINE_CPUARCH} == "arm" +CFLAGS+= -mlong-calls +.endif SRCDIR= tools/lldb/tools/driver SRCS= Driver.cpp \