Replace manual export files with CMake's generate_export_header

Review Request #121083 - Created Nov. 9, 2014 and submitted

Information
Andrius da Costa Ribas
oxygen
Reviewers
kde-workspace, kdewin

These files currently use

__attribute__((visibility("...")))

which doesn't work on MSVC.

Builds with msvc 2013 64bit

Issues

  • 0
  • 2
  • 0
  • 2
Description From Last Updated
Cristian Oneț
Aleix Pol Gonzalez
Andrius da Costa Ribas
Andrius da Costa Ribas
Review request changed

Status: Closed (submitted)

Harald Sitter

This breaks the kde4 build as ECM is not being used there and generate_export_header is not available without ECM.

  1. generate_export_header isn't in ECM, but in cmake itself (http://www.cmake.org/cmake/help/v3.0/module/GenerateExportHeader.html). Does kde4 required cmake version not support it? Should I revert this commit?

  2. Ah, I was not aware of that. So the solution probably is to move the include(GenerateExportheader) line outside the if-else for kf5/kde4

  3. Andrius: kdelibs4 has to work on cmake 2.8.9, when was that introduced?

  4. If kubuntu packaging can be trusted it was there before that (e.g. was already in 2.8.7)

  5. http://www.cmake.org/cmake/help/v2.8.9/cmake.html#module:GenerateExportHeader

  6. I'm running cmake 3.1 here and still can't get oxygen to build in KDE4 mode anyway.
    Cmake aborts with: Unknown CMake command "generate_export_header"
    So surely something seems broken with this patch (missing module include ?)

    Can you either test compilation with option -DUSE_KDE4=1, and fix, or provide instructions, or revert ?

    Thanks !

    Hugo

Loading...