ECM5/IncompatibleChangesKDELibs4ToECM

    From KDE TechBase
    Revision as of 20:19, 2 August 2011 by Neundorf (talk | contribs)
    The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

    FindGIF.cmake

    We use the version from CMake now. There is a minor difference, which will not affect many systems. The KDE version accepted only giflib version 4, while the CMake version accepted any version of giflib. If giflib version 4 .x is required, the version can now be specified:

    • find_package(GIF) -> find_package(GIF 4 )

    This actually only was an issue on some relatively old Sun machines in 2006. Maybe today it is not even there a problem anymore.

    FindRUBY.cmake

    This file does not exist anymore, use FindRuby.cmake coming with CMake instead. Most variables are the same. Below are the changes:

    • find_package(RUBY) -> find_package(Ruby)
    • RUBY_INCLUDE_PATH -> RUBY_INCLUDE_DIRS

    MacroAddCompileFlags.cmake

    This file has been removed. Use set_property(.. APPEND_STRING) instead (new in CMake 2.8.6).

    • include(MacroAddCompileFlags) -> delete
    • macro_add_compile_flags(target "-O2 -g") -> set_property(TARGET target APPEND_STRING PROPERTY COMPILE_FLAGS " -O2 -g")

    MacroAddLinkFlags.cmake

    This file has been removed. Use set_property(.. APPEND_STRING) instead (new in CMake 2.8.6).

    • include(MacroAddLinkFlags) -> delete
    • macro_add_link_flags(target "-no-rpath") -> set_property(TARGET target APPEND_STRING PROPERTY LINK_FLAGS " -no-rpath")

    MacroAdditionalCleanFiles.cmake

    This file has been removed. Use set_property(... APPEND ...) instead.

    • include(MacroAdditionalCleanFiles) -> delete
    • macro_additional_clean_files(file1 file2 fileN) -> set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "file1;file2;fileN" )

    MacroOptionalAddSubdirectory.cmake

    This file is now part of the extra-cmake-modules package and thus has been renamed to ECMOptionalAddSubdirectory.cmake

    • include(MacroOptionalAddSubdirectory) -> include (ECMOptionalAddSubdirectory)
    • macro_optional_add_subdirectory(...) -> ecm_optional_add_subdirectory(...)

    MacroOptionalDependPackage.cmake

    This file has been removed, the purpose was broken.

    • include (MacroOptionalDependPackage) -> delete
    • macro_optional_depend_package() -> delete

    MacroOptionalFindPackage.cmake

    This file does not exist anymore. Instead, starting with CMake 2.8.6, every find_package() call which is not REQUIRED can be disabled by setting the variable CMAKE_DISABLE_FIND_PACKAGE_<PackageName> to TRUE. This makes this macro unnecessary.

    • include(MacroFindPackage) -> delete
    • macro_optional_find_package(Foo ...) -> find_package(Foo ... )

    MacroPushRequiredVars.cmake

    This file has been merged into CMake, but has been renamed to CMakePushCheckState.cmake.

    • include(MacroPushRequiredVars) -> include(CMakePushCheckState)
    • macro_push_required_vars() -> cmake_push_check_state()
    • macro_pop_required_vars() -> cmake_pop_check_state()