Commit 3f89642945bd8ffc2b3220e2a0370a7bccb4ab1c

  • avatar
  • Julien Wintz <julien.wintz @m…me.com>
  • Mon Aug 26 13:32:01 GMT 2013
Adding X-platform export rules using cmake generated headers.
CMakeLists.txt
(9 / 2)
  
44## Copyright (C) 2008-2011 - Julien Wintz, Inria.
55## Created: Tue Jan 15 15:24:14 2013 (+0100)
66## Version: $Id$
7## Last-Updated: Tue Jan 15 16:52:37 2013 (+0100)
7## Last-Updated: Mon Aug 26 14:19:57 2013 (+0200)
88## By: Julien Wintz
9## Update #: 11
9## Update #: 20
1010######################################################################
1111##
1212### Commentary:
5656## Dependencies - internal
5757## #################################################################
5858
59include_directories(${CMAKE_BINARY_DIR})
5960include_directories(${CMAKE_SOURCE_DIR}/src)
61
62## ###################################################################
63##
64## ###################################################################
65
66include(GenerateExportHeader)
6067
6168## #################################################################
6269## Input
plugins/tstPluginA/CMakeLists.txt
(11 / 2)
  
44## Copyright (C) 2008-2011 - Julien Wintz, Inria.
55## Created: Tue Jan 15 16:51:15 2013 (+0100)
66## Version: $Id$
7## Last-Updated: Tue Jan 15 17:04:44 2013 (+0100)
7## Last-Updated: Mon Aug 26 14:14:30 2013 (+0200)
88## By: Julien Wintz
9## Update #: 17
9## Update #: 20
1010######################################################################
1111##
1212### Commentary:
2525
2626add_definitions(-DQT_PLUGIN)
2727
28add_compiler_export_flags()
29
2830add_library(${PROJECT_NAME} SHARED
2931 tstPluginA.h
3032 tstPluginA.cpp)
33
34generate_export_header(${PROJECT_NAME}
35 EXPORT_FILE_NAME "${PROJECT_NAME}Export.h")
36
37add_custom_command(TARGET ${PROJECT_NAME} PRE_BUILD
38 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}"
39 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Export")
3140
3241qt5_use_modules(${PROJECT_NAME} Core)
3342qt5_use_modules(${PROJECT_NAME} Gui)
plugins/tstPluginA/tstPluginA.h
(4 / 3)
  
44 * Copyright (C) 2008-2011 - Julien Wintz, Inria.
55 * Created: Tue Jan 15 16:52:52 2013 (+0100)
66 * Version: $Id$
7 * Last-Updated: Tue Jan 15 17:25:26 2013 (+0100)
7 * Last-Updated: Mon Aug 26 15:25:09 2013 (+0200)
88 * By: Julien Wintz
9 * Update #: 43
9 * Update #: 46
1010 */
1111
1212/* Commentary:
1919
2020#pragma once
2121
22#include "tstPluginAExport.h"
2223#include <tstCore/tstPlugin.h>
2324
2425#include <QtCore>
2526#include <QtDebug>
2627
27class tstPluginA : public tstPlugin
28class TSTPLUGINA_EXPORT tstPluginA : public tstPlugin
2829{
2930 Q_INTERFACES(tstPlugin)
3031 Q_OBJECT
plugins/tstPluginB/CMakeLists.txt
(11 / 2)
  
44## Copyright (C) 2008-2011 - Julien Wintz, Inria.
55## Created: Tue Jan 15 16:51:15 2013 (+0100)
66## Version: $Id$
7## Last-Updated: Tue Jan 15 17:04:44 2013 (+0100)
7## Last-Updated: Mon Aug 26 14:15:07 2013 (+0200)
88## By: Julien Wintz
9## Update #: 17
9## Update #: 19
1010######################################################################
1111##
1212### Commentary:
2525
2626add_definitions(-DQT_PLUGIN)
2727
28add_compiler_export_flags()
29
2830add_library(${PROJECT_NAME} SHARED
2931 tstPluginB.h
3032 tstPluginB.cpp)
33
34generate_export_header(${PROJECT_NAME}
35 EXPORT_FILE_NAME "${PROJECT_NAME}Export.h")
36
37add_custom_command(TARGET ${PROJECT_NAME} PRE_BUILD
38 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}"
39 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Export")
3140
3241qt5_use_modules(${PROJECT_NAME} Core)
3342qt5_use_modules(${PROJECT_NAME} Gui)
plugins/tstPluginB/tstPluginB.h
(4 / 3)
  
44 * Copyright (C) 2008-2011 - Julien Wintz, Inria.
55 * Created: Tue Jan 15 16:52:52 2013 (+0100)
66 * Version: $Id$
7 * Last-Updated: Tue Jan 15 17:25:26 2013 (+0100)
7 * Last-Updated: Mon Aug 26 14:28:42 2013 (+0200)
88 * By: Julien Wintz
9 * Update #: 43
9 * Update #: 46
1010 */
1111
1212/* Commentary:
1919
2020#pragma once
2121
22#include "tstPluginBExport.h"
2223#include <tstCore/tstPlugin.h>
2324
2425#include <QtCore>
2526#include <QtDebug>
2627
27class tstPluginB : public tstPlugin
28class TSTPLUGINB_EXPORT tstPluginB : public tstPlugin
2829{
2930 Q_INTERFACES(tstPlugin)
3031 Q_OBJECT
plugins/tstPluginC/CMakeLists.txt
(11 / 2)
  
44## Copyright (C) 2008-2011 - Julien Wintz, Inria.
55## Created: Tue Jan 15 16:51:15 2013 (+0100)
66## Version: $Id$
7## Last-Updated: Tue Jan 15 17:04:44 2013 (+0100)
7## Last-Updated: Mon Aug 26 14:15:33 2013 (+0200)
88## By: Julien Wintz
9## Update #: 17
9## Update #: 19
1010######################################################################
1111##
1212### Commentary:
2525
2626add_definitions(-DQT_PLUGIN)
2727
28add_compiler_export_flags()
29
2830add_library(${PROJECT_NAME} SHARED
2931 tstPluginC.h
3032 tstPluginC.cpp)
33
34generate_export_header(${PROJECT_NAME}
35 EXPORT_FILE_NAME "${PROJECT_NAME}Export.h")
36
37add_custom_command(TARGET ${PROJECT_NAME} PRE_BUILD
38 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}"
39 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Export")
3140
3241qt5_use_modules(${PROJECT_NAME} Core)
3342qt5_use_modules(${PROJECT_NAME} Gui)
plugins/tstPluginC/tstPluginC.h
(4 / 3)
  
44 * Copyright (C) 2008-2011 - Julien Wintz, Inria.
55 * Created: Tue Jan 15 16:52:52 2013 (+0100)
66 * Version: $Id$
7 * Last-Updated: Tue Jan 15 17:25:26 2013 (+0100)
7 * Last-Updated: Mon Aug 26 14:31:35 2013 (+0200)
88 * By: Julien Wintz
9 * Update #: 43
9 * Update #: 46
1010 */
1111
1212/* Commentary:
1919
2020#pragma once
2121
22#include "tstPluginCExport.h"
2223#include <tstCore/tstPlugin.h>
2324
2425#include <QtCore>
2526#include <QtDebug>
2627
27class tstPluginC : public tstPlugin
28class TSTPLUGINC_EXPORT tstPluginC : public tstPlugin
2829{
2930 Q_INTERFACES(tstPlugin)
3031 Q_OBJECT
plugins/tstPluginD/CMakeLists.txt
(11 / 2)
  
44## Copyright (C) 2008-2011 - Julien Wintz, Inria.
55## Created: Tue Jan 15 16:51:15 2013 (+0100)
66## Version: $Id$
7## Last-Updated: Tue Jan 15 17:04:44 2013 (+0100)
7## Last-Updated: Mon Aug 26 14:15:55 2013 (+0200)
88## By: Julien Wintz
9## Update #: 17
9## Update #: 19
1010######################################################################
1111##
1212### Commentary:
2525
2626add_definitions(-DQT_PLUGIN)
2727
28add_compiler_export_flags()
29
2830add_library(${PROJECT_NAME} SHARED
2931 tstPluginD.h
3032 tstPluginD.cpp)
33
34generate_export_header(${PROJECT_NAME}
35 EXPORT_FILE_NAME "${PROJECT_NAME}Export.h")
36
37add_custom_command(TARGET ${PROJECT_NAME} PRE_BUILD
38 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}"
39 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Export")
3140
3241qt5_use_modules(${PROJECT_NAME} Core)
3342qt5_use_modules(${PROJECT_NAME} Gui)
plugins/tstPluginD/tstPluginD.h
(4 / 3)
  
44 * Copyright (C) 2008-2011 - Julien Wintz, Inria.
55 * Created: Tue Jan 15 16:52:52 2013 (+0100)
66 * Version: $Id$
7 * Last-Updated: Tue Jan 15 17:25:26 2013 (+0100)
7 * Last-Updated: Mon Aug 26 14:28:03 2013 (+0200)
88 * By: Julien Wintz
9 * Update #: 43
9 * Update #: 45
1010 */
1111
1212/* Commentary:
1919
2020#pragma once
2121
22#include "tstPluginDExport.h"
2223#include <tstCore/tstPlugin.h>
2324
2425#include <QtCore>
2526#include <QtDebug>
2627
27class tstPluginD : public tstPlugin
28class TSTPLUGIND_EXPORT tstPluginD : public tstPlugin
2829{
2930 Q_INTERFACES(tstPlugin)
3031 Q_OBJECT
plugins/tstPluginE-0.0.1/CMakeLists.txt
(11 / 2)
  
44## Copyright (C) 2008-2011 - Julien Wintz, Inria.
55## Created: Tue Jan 15 16:51:15 2013 (+0100)
66## Version: $Id$
7## Last-Updated: Tue Jan 15 17:04:44 2013 (+0100)
7## Last-Updated: Mon Aug 26 14:16:20 2013 (+0200)
88## By: Julien Wintz
9## Update #: 17
9## Update #: 19
1010######################################################################
1111##
1212### Commentary:
2525
2626add_definitions(-DQT_PLUGIN)
2727
28add_compiler_export_flags()
29
2830add_library(${PROJECT_NAME} SHARED
2931 tstPluginE.h
3032 tstPluginE.cpp)
33
34generate_export_header(${PROJECT_NAME}
35 EXPORT_FILE_NAME "${PROJECT_NAME}Export.h")
36
37add_custom_command(TARGET ${PROJECT_NAME} PRE_BUILD
38 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}"
39 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Export")
3140
3241qt5_use_modules(${PROJECT_NAME} Core)
3342qt5_use_modules(${PROJECT_NAME} Gui)
plugins/tstPluginE-0.0.1/tstPluginE.h
(4 / 3)
  
44 * Copyright (C) 2008-2011 - Julien Wintz, Inria.
55 * Created: Tue Jan 15 16:52:52 2013 (+0100)
66 * Version: $Id$
7 * Last-Updated: Tue Jan 15 17:25:26 2013 (+0100)
7 * Last-Updated: Mon Aug 26 14:27:50 2013 (+0200)
88 * By: Julien Wintz
9 * Update #: 43
9 * Update #: 45
1010 */
1111
1212/* Commentary:
1919
2020#pragma once
2121
22#include "tstPluginEExport.h"
2223#include <tstCore/tstPlugin.h>
2324
2425#include <QtCore>
2526#include <QtDebug>
2627
27class tstPluginE : public tstPlugin
28class TSTPLUGINE_EXPORT tstPluginE : public tstPlugin
2829{
2930 Q_INTERFACES(tstPlugin)
3031 Q_OBJECT
plugins/tstPluginE-0.0.2/CMakeLists.txt
(11 / 2)
  
44## Copyright (C) 2008-2011 - Julien Wintz, Inria.
55## Created: Tue Jan 15 16:51:15 2013 (+0100)
66## Version: $Id$
7## Last-Updated: Tue Jan 15 17:04:44 2013 (+0100)
7## Last-Updated: Mon Aug 26 14:16:45 2013 (+0200)
88## By: Julien Wintz
9## Update #: 17
9## Update #: 20
1010######################################################################
1111##
1212### Commentary:
2525
2626add_definitions(-DQT_PLUGIN)
2727
28add_compiler_export_flags()
29
2830add_library(${PROJECT_NAME} SHARED
2931 tstPluginE.h
3032 tstPluginE.cpp)
33
34generate_export_header(${PROJECT_NAME}
35 EXPORT_FILE_NAME "${PROJECT_NAME}Export.h")
36
37add_custom_command(TARGET ${PROJECT_NAME} PRE_BUILD
38 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}"
39 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Export")
3140
3241qt5_use_modules(${PROJECT_NAME} Core)
3342qt5_use_modules(${PROJECT_NAME} Gui)
plugins/tstPluginE-0.0.2/tstPluginE.h
(4 / 3)
  
44 * Copyright (C) 2008-2011 - Julien Wintz, Inria.
55 * Created: Tue Jan 15 16:52:52 2013 (+0100)
66 * Version: $Id$
7 * Last-Updated: Tue Jan 15 17:25:26 2013 (+0100)
7 * Last-Updated: Mon Aug 26 14:35:10 2013 (+0200)
88 * By: Julien Wintz
9 * Update #: 43
9 * Update #: 46
1010 */
1111
1212/* Commentary:
1919
2020#pragma once
2121
22#include "tstPluginEExport.h"
2223#include <tstCore/tstPlugin.h>
2324
2425#include <QtCore>
2526#include <QtDebug>
2627
27class tstPluginE : public tstPlugin
28class TSTPLUGINE_EXPORT tstPluginE : public tstPlugin
2829{
2930 Q_INTERFACES(tstPlugin)
3031 Q_OBJECT
plugins/tstPluginF/CMakeLists.txt
(11 / 2)
  
44## Copyright (C) 2008-2011 - Julien Wintz, Inria.
55## Created: Tue Jan 15 16:51:15 2013 (+0100)
66## Version: $Id$
7## Last-Updated: Tue Jan 15 17:04:44 2013 (+0100)
7## Last-Updated: Mon Aug 26 14:17:16 2013 (+0200)
88## By: Julien Wintz
9## Update #: 17
9## Update #: 19
1010######################################################################
1111##
1212### Commentary:
2525
2626add_definitions(-DQT_PLUGIN)
2727
28add_compiler_export_flags()
29
2830add_library(${PROJECT_NAME} SHARED
2931 tstPluginF.h
3032 tstPluginF.cpp)
33
34generate_export_header(${PROJECT_NAME}
35 EXPORT_FILE_NAME "${PROJECT_NAME}Export.h")
36
37add_custom_command(TARGET ${PROJECT_NAME} PRE_BUILD
38 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}"
39 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Export")
3140
3241qt5_use_modules(${PROJECT_NAME} Core)
3342qt5_use_modules(${PROJECT_NAME} Gui)
plugins/tstPluginF/tstPluginF.h
(4 / 3)
  
44 * Copyright (C) 2008-2011 - Julien Wintz, Inria.
55 * Created: Tue Jan 15 16:52:52 2013 (+0100)
66 * Version: $Id$
7 * Last-Updated: Tue Jan 15 17:25:26 2013 (+0100)
7 * Last-Updated: Mon Aug 26 14:36:09 2013 (+0200)
88 * By: Julien Wintz
9 * Update #: 43
9 * Update #: 45
1010 */
1111
1212/* Commentary:
1919
2020#pragma once
2121
22#include "tstPluginFExport.h"
2223#include <tstCore/tstPlugin.h>
2324
2425#include <QtCore>
2526#include <QtDebug>
2627
27class tstPluginF : public tstPlugin
28class TSTPLUGINF_EXPORT tstPluginF : public tstPlugin
2829{
2930 Q_INTERFACES(tstPlugin)
3031 Q_OBJECT
src/tstCore/CMakeLists.txt
(11 / 2)
  
44## Copyright (C) 2008-2011 - Julien Wintz, Inria.
55## Created: Tue Jan 15 15:28:31 2013 (+0100)
66## Version: $Id$
7## Last-Updated: Tue Jan 15 16:27:13 2013 (+0100)
7## Last-Updated: Mon Aug 26 15:17:04 2013 (+0200)
88## By: Julien Wintz
9## Update #: 13
9## Update #: 25
1010######################################################################
1111##
1212### Commentary:
3636## Build rules
3737## #################################################################
3838
39add_compiler_export_flags()
40
3941add_library(${PROJECT_NAME} SHARED
4042 ${${PROJECT_NAME}_SOURCES}
4143 ${${PROJECT_NAME}_HEADERS})
44
45generate_export_header(${PROJECT_NAME}
46 EXPORT_FILE_NAME "${PROJECT_NAME}Export.h")
47
48add_custom_command(TARGET ${PROJECT_NAME} PRE_BUILD
49 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}"
50 COMMAND ${CMAKE_COMMAND} ARGS -E copy_if_different "${${PROJECT_NAME}_BINARY_DIR}/${PROJECT_NAME}Export.h" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}Export")
4251
4352qt5_use_modules(${PROJECT_NAME} Core)
4453qt5_use_modules(${PROJECT_NAME} Gui)
src/tstCore/tstPlugin.h
(5 / 3)
  
44 * Copyright (C) 2008-2011 - Julien Wintz, Inria.
55 * Created: Tue Jan 15 16:18:30 2013 (+0100)
66 * Version: $Id$
7 * Last-Updated: Tue Jan 15 17:25:27 2013 (+0100)
7 * Last-Updated: Mon Aug 26 15:15:07 2013 (+0200)
88 * By: Julien Wintz
9 * Update #: 35
9 * Update #: 41
1010 */
1111
1212/* Commentary:
1919
2020#pragma once
2121
22#include "tstCoreExport.h"
23
2224#include <QtCore/QObject>
2325
24class tstPlugin : public QObject
26class TSTCORE_EXPORT tstPlugin : public QObject
2527{
2628 Q_OBJECT
2729
src/tstCore/tstPluginManager.h
(5 / 3)
  
44 * Copyright (C) 2008-2011 - Julien Wintz, Inria.
55 * Created: Tue Jan 15 16:22:48 2013 (+0100)
66 * Version: $Id$
7 * Last-Updated: Tue Jan 15 23:00:09 2013 (+0100)
7 * Last-Updated: Mon Aug 26 15:15:53 2013 (+0200)
88 * By: Julien Wintz
9 * Update #: 33
9 * Update #: 37
1010 */
1111
1212/* Commentary:
1919
2020#pragma once
2121
22#include "tstCoreExport.h"
23
2224#include <QtCore/QObject>
2325
2426class tstPluginManagerPrivate;
2527
26class tstPluginManager : public QObject
28class TSTCORE_EXPORT tstPluginManager : public QObject
2729{
2830 Q_OBJECT
2931

Comments

Add a new comment:

Login or create an account to post a comment

Add your comment