@@ -17,18 +17,19 @@ AC_LANG([Objective C++]) AC_PROG_OBJCXX(clang++ g++) AC_PROG_OBJCXXCPP AC_PROG_LN_S AC_PROG_INSTALL +AC_PROG_EGREP CPP="$OBJCXXCPP" CPPFLAGS="$CPPFLAGS $OBJCPPFLAGS $($OBJFW_CONFIG --cppflags)" OBJCFLAGS="$OBJCFLAGS -Wall $($OBJFW_CONFIG --objcflags)" LDFLAGS="$LDFLAGS $($OBJFW_CONFIG --ldflags --rpath)" LIBS="$LIBS $($OBJFW_CONFIG --libs)" -AX_CHECK_COMPILER_FLAGS(-std=c++11, [CXXFLAGS="$CXXFLAGS -std=c++11"], [ +AX_CHECK_COMPILER_FLAGS(-std=c++11, [OBJCXXFLAGS="$OBJCXXFLAGS -std=c++11"], [ AC_MSG_ERROR(You need a compiler that supports C++11!) ]) AX_CHECK_COMPILER_FLAGS(-pipe, [OBJCFLAGS="$OBJCFLAGS -pipe"]) AX_CHECK_COMPILER_FLAGS(-fno-common, [OBJCFLAGS="$OBJCFLAGS -fno-common"]) @@ -85,10 +86,24 @@ AC_MSG_ERROR(You need Qt5Widgets >= 5.5 installed!) ]) AS_IF([test x"$GOBJC" = x"yes"], [ OBJCFLAGS="$OBJCFLAGS -Wwrite-strings -Wpointer-arith -Werror" ]) + +AC_MSG_CHECKING(whether Qt requires PIC) +AC_EGREP_CPP(yes, [ + #include + + #ifdef QT_REDUCE_RELOCATIONS + yes + #endif +], [ + OBJCXXFLAGS="$LIB_CFLAGS $OBJCXXFLAGS" + AC_MSG_RESULT(yes) +], [ + AC_MSG_RESULT(no) +]) BUILDSYS_INIT dnl We don't call AC_PROG_CPP or AC_PROG_OBJC, but only AC_PROG_OBJCPPCXX and dnl set CPP and OBJCC to OBJCPPCXX and add OBJCXXCPPFLAGS to CPPFLAGS, thus we