diff --git a/CMakeLists.txt b/CMakeLists.txt index 07f397a3e..86c42e27d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -488,6 +488,12 @@ if(NOT WITH_ACCESSIBILITY) katie_definition(-DQT_NO_ACCESSIBILITY) endif() +add_library(pic_test ${KATIE_TYPE} EXCLUDE_FROM_ALL "${CMAKE_SOURCE_DIR}/cmake/pic.cpp") +get_target_property(HAVE_pic pic_test POSITION_INDEPENDENT_CODE) +if(NOT HAVE_pic) + katie_definition(-DQ_NO_DATA_RELOCATION) +endif() + # keep in sync with the gui component CMake file, only definitions setup is needed here foreach(x11ext Xshape Xinerama Xrandr Xrender Xfixes Xcursor) if(NOT X11_${x11ext}_FOUND) diff --git a/cmake/pic.cpp b/cmake/pic.cpp new file mode 100644 index 000000000..489640298 --- /dev/null +++ b/cmake/pic.cpp @@ -0,0 +1,3 @@ +struct PIC { + bool abc; +}; \ No newline at end of file diff --git a/mkspecs/bsymbolic_functions.cpp b/mkspecs/bsymbolic_functions.cpp deleted file mode 100644 index 7f785bf43..000000000 --- a/mkspecs/bsymbolic_functions.cpp +++ /dev/null @@ -1 +0,0 @@ -int main() { return 0; } diff --git a/mkspecs/mkspecs.cmake b/mkspecs/mkspecs.cmake index 84c57aa55..12b1e0cd8 100644 --- a/mkspecs/mkspecs.cmake +++ b/mkspecs/mkspecs.cmake @@ -44,16 +44,6 @@ if(NOT CMAKE_BUILD_TYPE STREQUAL "Debug") katie_definition(-DQT_NO_DEBUG) endif() -try_compile(bsymbolic_functions_test - ${CMAKE_BINARY_DIR} - ${CMAKE_CURRENT_LIST_DIR}/bsymbolic_functions.cpp - CMAKE_FLAGS -shared -Wl,-Bsymbolic-functions -fPIC - OUTPUT_VARIABLE bsymbolic_functions_test_output -) -if(NOT bsymbolic_functions_test OR NOT CMAKE_POSITION_INDEPENDENT_CODE) - katie_definition(-DQ_NO_DATA_RELOCATION) -endif() - # Set compiler standard to C++ 11, appending to CMAKE_CXX_FLAGS is done so that try_compile() is # also affected, which KDE uses for visibility check for an example if(NOT CMAKE_VERSION VERSION_LESS "3.8.0") diff --git a/package/freebsd/pkg-plist b/package/freebsd/pkg-plist index 841e5605e..4d9bd79f1 100644 --- a/package/freebsd/pkg-plist +++ b/package/freebsd/pkg-plist @@ -1463,7 +1463,6 @@ lib/cmake/Katie/KatieConfigVersion.cmake lib/cmake/Katie/KatieTargets-%%CMAKE_BUILD_TYPE%%.cmake lib/cmake/Katie/KatieTargets.cmake lib/cmake/Katie/Qt4UseFile.cmake -lib/cmake/Katie/mkspecs/bsymbolic_functions.cpp lib/cmake/Katie/mkspecs/mkspecs.cmake lib/katie/imports/Qt/labs/folderlistmodel/libqmlfolderlistmodelplugin.so lib/katie/imports/Qt/labs/folderlistmodel/qmldir diff --git a/package/netbsd/PLIST b/package/netbsd/PLIST index 9e77e9152..602800d09 100644 --- a/package/netbsd/PLIST +++ b/package/netbsd/PLIST @@ -1466,7 +1466,6 @@ lib/cmake/Katie/KatieConfigVersion.cmake lib/cmake/Katie/KatieTargets-relwithdebinfo.cmake lib/cmake/Katie/KatieTargets.cmake lib/cmake/Katie/Qt4UseFile.cmake -lib/cmake/Katie/mkspecs/bsymbolic_functions.cpp lib/cmake/Katie/mkspecs/mkspecs.cmake lib/katie/imports/Qt/labs/folderlistmodel/libqmlfolderlistmodelplugin.so lib/katie/imports/Qt/labs/folderlistmodel/qmldir diff --git a/package/openbsd/pkg/PLIST b/package/openbsd/pkg/PLIST index 5d9e70552..47613e0f3 100644 --- a/package/openbsd/pkg/PLIST +++ b/package/openbsd/pkg/PLIST @@ -1481,7 +1481,6 @@ lib/cmake/Katie/KatieTargets${MODCMAKE_BUILD_SUFFIX} lib/cmake/Katie/KatieTargets.cmake lib/cmake/Katie/Qt4UseFile.cmake lib/cmake/Katie/mkspecs/ -lib/cmake/Katie/mkspecs/bsymbolic_functions.cpp lib/cmake/Katie/mkspecs/mkspecs.cmake lib/katie/ lib/katie/imports/