]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Move non-exported code to a static library
authorElvis Angelaccio <elvis.angelaccio@kde.org>
Sun, 21 May 2017 19:41:13 +0000 (21:41 +0200)
committerElvis Angelaccio <elvis.angelaccio@kde.org>
Sat, 27 May 2017 08:23:47 +0000 (10:23 +0200)
This allows us to speed up the compilation because we don't need to
build twice the source files we use in the unit tests.

Test Plan: Builds, dolphin works and tests pass.

Reviewers: emmanuelp, dfaure

Differential Revision: https://phabricator.kde.org/D5935

src/CMakeLists.txt
src/tests/CMakeLists.txt

index ce4cec80c5417af3084c9611e0638083325250ee..bc6f75d6280e02ab6f135b7a5963da85456e70f4 100644 (file)
@@ -193,7 +193,7 @@ install(FILES dolphinpart.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR})
 
 ##########################################
 
-set(dolphin_SRCS
+set(dolphinstatic_SRCS
     dolphindockwidget.cpp
     dolphinmainwindow.cpp
     dolphinviewcontainer.cpp
@@ -248,11 +248,10 @@ set(dolphin_SRCS
     statusbar/statusbarspaceinfo.cpp
     views/zoomlevelinfo.cpp
     dolphindebug.cpp
-    dbusinterface.cpp
     global.cpp
 )
 
-kconfig_add_kcfg_files(dolphin_SRCS GENERATE_MOC
+kconfig_add_kcfg_files(dolphinstatic_SRCS GENERATE_MOC
     panels/folders/dolphin_folderspanelsettings.kcfgc
     panels/information/dolphin_informationpanelsettings.kcfgc
     panels/places/dolphin_placespanelsettings.kcfgc
@@ -265,36 +264,44 @@ kconfig_add_kcfg_files(dolphin_SRCS GENERATE_MOC
 )
 
 if(NOT WIN32)
-   set(dolphin_SRCS ${dolphin_SRCS} panels/terminal/terminalpanel.cpp)
+   set(dolphinstatic_SRCS ${dolphinstatic_SRCS} panels/terminal/terminalpanel.cpp)
 endif()
 
-# Sets the icon on Windows and OSX
-file(GLOB ICONS_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/icons/*system-file-manager.png")
-ecm_add_app_icon(dolphin_SRCS ICONS ${ICONS_SRCS})
-
-kf5_add_kdeinit_executable(dolphin ${dolphin_SRCS})
+add_library(dolphinstatic STATIC ${dolphinstatic_SRCS})
 
-target_include_directories(kdeinit_dolphin PRIVATE ${PHONON_INCLUDES})
-
-target_link_libraries(kdeinit_dolphin
+target_include_directories(dolphinstatic PRIVATE ${PHONON_INCLUDES})
+target_link_libraries(dolphinstatic
     dolphinprivate
-    KF5::Parts
     KF5::KCMUtils
-    KF5::Solid
-    KF5::CoreAddons
     KF5::DBusAddons
-    KF5::Bookmarks
     KF5::Notifications
     Phonon::phonon4qt5
 )
 
 if (KF5Activities_FOUND)
     target_link_libraries(
-        kdeinit_dolphin
+        dolphinstatic
         KF5::Activities
     )
 endif()
 
+set(dolphin_SRCS
+    dbusinterface.cpp
+    main.cpp
+)
+
+# Sets the icon on Windows and OSX
+file(GLOB ICONS_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/icons/*system-file-manager.png")
+ecm_add_app_icon(dolphin_SRCS ICONS ${ICONS_SRCS})
+
+kf5_add_kdeinit_executable(dolphin ${dolphin_SRCS})
+
+
+target_link_libraries(kdeinit_dolphin
+    dolphinstatic
+    dolphinprivate
+)
+
 include(DbusInterfaceMacros)
 
 generate_and_install_dbus_interface(
index f29ae53d42de215c8678cc0cf8e5470c2671752c..fa47ca2cb6300c33f7a865b4955a45827654f70c 100644 (file)
@@ -14,35 +14,22 @@ ecm_add_test(kitemrangetest.cpp LINK_LIBRARIES dolphinprivate Qt5::Test)
 ecm_add_test(kitemlistselectionmanagertest.cpp LINK_LIBRARIES dolphinprivate Qt5::Test)
 
 # KItemListControllerTest
-
-kconfig_add_kcfg_files(kitemlistcontrollertest_SRCS GENERATE_MOC
-    ../settings/dolphin_generalsettings.kcfgc
-)
-ecm_add_test(kitemlistcontrollertest.cpp testdir.cpp ../dolphindebug.cpp ${kitemlistcontrollertest_SRCS}
+ecm_add_test(kitemlistcontrollertest.cpp testdir.cpp
 TEST_NAME kitemlistcontrollertest
 LINK_LIBRARIES dolphinprivate Qt5::Test)
 
 # KFileItemListViewTest
-kconfig_add_kcfg_files(kfileitemlistviewtest_SRCS GENERATE_MOC
-    ../settings/dolphin_generalsettings.kcfgc
-)
-ecm_add_test(kfileitemlistviewtest.cpp testdir.cpp ../dolphindebug.cpp ${kfileitemlistviewtest_SRCS}
+ecm_add_test(kfileitemlistviewtest.cpp testdir.cpp
 TEST_NAME kfileitemlistviewtest
 LINK_LIBRARIES dolphinprivate Qt5::Test)
 
 # KFileItemModelTest
-kconfig_add_kcfg_files(kfileitemmodeltest_SRCS GENERATE_MOC
-    ../settings/dolphin_generalsettings.kcfgc
-)
-ecm_add_test(kfileitemmodeltest.cpp testdir.cpp ../dolphindebug.cpp ${kfileitemmodeltest_SRCS}
+ecm_add_test(kfileitemmodeltest.cpp testdir.cpp
 TEST_NAME kfileitemmodeltest
-LINK_LIBRARIES dolphinprivate Qt5::Test)
+LINK_LIBRARIES dolphinprivate dolphinstatic Qt5::Test)
 
 # KFileItemModelBenchmark
-kconfig_add_kcfg_files(kfileitemmodelbenchmark_SRCS GENERATE_MOC
-    ../settings/dolphin_generalsettings.kcfgc
-)
-ecm_add_test(kfileitemmodelbenchmark.cpp testdir.cpp ../dolphindebug.cpp ${kfileitemmodelbenchmark_SRCS}
+ecm_add_test(kfileitemmodelbenchmark.cpp testdir.cpp
 TEST_NAME kfileitemmodelbenchmark
 LINK_LIBRARIES  dolphinprivate Qt5::Test)
 
@@ -51,24 +38,17 @@ ecm_add_test(kitemlistkeyboardsearchmanagertest.cpp LINK_LIBRARIES dolphinprivat
 
 # DolphinSearchBox
 if (KF5Baloo_FOUND)
-  kconfig_add_kcfg_files(dolphinsearchboxtest_SRCS
-      ../search/dolphin_searchsettings.kcfgc
-  )
-  ecm_add_test(dolphinsearchboxtest.cpp ../search/dolphinfacetswidget.cpp ../search/dolphinsearchbox.cpp ${dolphinsearchboxtest_SRCS}
+  ecm_add_test(dolphinsearchboxtest.cpp
   TEST_NAME dolphinsearchboxtest
-  LINK_LIBRARIES dolphinprivate Qt5::Test)
+  LINK_LIBRARIES dolphinprivate dolphinstatic Qt5::Test)
 endif()
 
 # KStandardItemModelTest
-ecm_add_test(kstandarditemmodeltest.cpp ../dolphindebug.cpp
+ecm_add_test(kstandarditemmodeltest.cpp
 TEST_NAME kstandarditemmodeltest
-LINK_LIBRARIES dolphinprivate Qt5::Test)
+LINK_LIBRARIES dolphinprivate dolphinstatic Qt5::Test)
 
 # ViewPropertiesTest
-kconfig_add_kcfg_files(viewpropertiestest_SRCS GENERATE_MOC
-  ../settings/dolphin_generalsettings.kcfgc
-  ../settings/dolphin_directoryviewpropertysettings.kcfgc
-)
-ecm_add_test(viewpropertiestest.cpp testdir.cpp ../dolphindebug.cpp ${viewpropertiestest_SRCS}
+ecm_add_test(viewpropertiestest.cpp testdir.cpp
 TEST_NAME viewpropertiestest
-LINK_LIBRARIES dolphinprivate Qt5::Test)
+LINK_LIBRARIES dolphinprivate dolphinstatic Qt5::Test)