[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdebindings/smoke
From:       Maciej Mrozowski <reavertm () gmail ! com>
Date:       2010-05-09 13:49:53
Message-ID: 20100509134953.83AE5AC8B2 () svn ! kde ! org
[Download RAW message or body]

SVN commit 1124574 by mmrozowski:

More flexible SMOKE bindings selection

Introduce macro:
# Conditionally enable SMOKE bindings.
# Pass -DDISABLE_<component_name>=OFF to disable certain binding.
# Usage:
#     SMOKE_ADD_BINDINGS(<component_found> <component_name> <subdir1> [<subdir2> ...])

 M  +59 -109   CMakeLists.txt  


--- trunk/KDE/kdebindings/smoke/CMakeLists.txt #1124573:1124574
@@ -1,128 +1,78 @@
+# Conditionally enable SMOKE bindings.
+# Pass -DDISABLE_<component_name>=OFF to disable certain binding even if
+# its dependencies are found.
+# Usage:
+#     SMOKE_ADD_BINDINGS(<component_found> <component_name> <subdir1> [<subdir2> ...])
+macro(SMOKE_ADD_BINDINGS _component_found _component_name)
+    if(${_component_found} AND NOT DISABLE_${_component_name})
+        foreach(_subdir ${ARGN})
+            add_subdirectory(${_subdir})
+        endforeach(_subdir ${ARGN})
+        set(SMOKE_ENABLED "${SMOKE_ENABLED} ${_component_name}")
+    else(${_component_found} AND NOT DISABLE_${_component_name})
+        set(SMOKE_DISABLED "${SMOKE_DISABLED} ${_component_name}")
+    endif(${_component_found} AND NOT DISABLE_${_component_name})
+endmacro(SMOKE_ADD_BINDINGS)
+
 add_definitions(-DSMOKE_BUILDING)
-set(SMOKE_ENABLED "yes - QtCore")
+set(SMOKE_ENABLED "")
+set(SMOKE_DISABLED "")
 
-add_subdirectory(qtcore)
+smoke_add_bindings(QT_QTCORE_FOUND "QtCore" qtcore)
 add_subdirectory(deptool)
 add_subdirectory(smokeapi)
 
-add_subdirectory(qtnetwork)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtNetwork")
-add_subdirectory(qtdbus)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtDBus")
-add_subdirectory(qtgui)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtGui")
-add_subdirectory(qtsvg)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtSvg")
-add_subdirectory(qtsql)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtSql")
-add_subdirectory(qtxml)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtXml")
-add_subdirectory(qtxmlpatterns)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtXmlPatterns")
-add_subdirectory(qtopengl)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtOpenGL")
-add_subdirectory(qtwebkit)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtWebKit")
-add_subdirectory(qtscript)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtScript")
-add_subdirectory(qtuitools)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtUiTools")
-add_subdirectory(qttest)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtTest")
-add_subdirectory(qtmultimedia)
-set(SMOKE_ENABLED "${SMOKE_ENABLED}, QtMultimedia")
+smoke_add_bindings(QT_QTNETWORK_FOUND "QtNetwork" qtnetwork)
+smoke_add_bindings(QT_QTDBUS_FOUND "QtDBus" qtdbus)
+smoke_add_bindings(QT_QTGUI_FOUND "QtGui" qtgui)
+smoke_add_bindings(QT_QTSVG_FOUND "QtSvg" qtsvg)
+smoke_add_bindings(QT_QTSQL_FOUND "QtSql" qtsql)
+smoke_add_bindings(QT_QTXML_FOUND "QtXml" qtxml)
+smoke_add_bindings(QT_QTXMLPATTERNS_FOUND "QtXmlPatterns" qtxmlpatterns)
+smoke_add_bindings(QT_QTOPENGL_FOUND "QtOpenGL" qtopengl)
+smoke_add_bindings(QT_QTWEBKIT_FOUND "QtWebKit" qtwebkit)
+smoke_add_bindings(QT_QTSCRIPT_FOUND "QtScript" qtscript)
+smoke_add_bindings(QT_QTUITOOLS_FOUND "QtUiTools" qtuitools)
+smoke_add_bindings(QT_QTTEST_FOUND "QtTest" qttest)
+smoke_add_bindings(QT_QTMULTIMEDIA_FOUND "QtMultimedia" qtmultimedia)
 
-if(PHONON_FOUND)
-    add_subdirectory(phonon)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, Phonon")
-endif(PHONON_FOUND)
+smoke_add_bindings(PHONON_FOUND "Phonon" phonon)
 
-if(QSCINTILLA_FOUND)
-    add_subdirectory(qsci)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, QScintilla2")
-endif(QSCINTILLA_FOUND)
+smoke_add_bindings(QSCINTILLA_FOUND "QScintilla2" qsci)
 
-if(Qwt5_Qt4_FOUND)
-    add_subdirectory(qwt)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, Qwt")
-endif(Qwt5_Qt4_FOUND)
+smoke_add_bindings(Qwt5_Qt4_FOUND "Qwt" qwt)
 
-if(QIMAGEBLITZ_FOUND)
-    add_subdirectory(qimageblitz)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, QImageBlitz")
-endif(QIMAGEBLITZ_FOUND)
+smoke_add_bindings(QIMAGEBLITZ_FOUND "QImageBlitz" qimageblitz)
 
-if(KDE4_FOUND)
-    add_subdirectory(kdecore)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, KDECore")
+smoke_add_bindings(KDE4_FOUND "KDECore" kdecore)
+smoke_add_bindings(KDE4_FOUND "KDEUi" kdeui)
+smoke_add_bindings(KDE4_FOUND "KIO" kio)
+smoke_add_bindings(KDE4_FOUND "KParts" kparts)
+smoke_add_bindings(KDE4_FOUND "KFile" kfile)
+smoke_add_bindings(KDE4_FOUND "KNewStuff2" knewstuff2)
+smoke_add_bindings(KDE4_FOUND "KNewStuff3" knewstuff3)
+smoke_add_bindings(KDE4_FOUND "KUtils" kutils)
+smoke_add_bindings(KDE4_FOUND "KHTML" khtml)
+smoke_add_bindings(KDE4_FOUND "KTextEditor" ktexteditor)
+smoke_add_bindings(KDE4_FOUND "Solid" solid)
+smoke_add_bindings(KDE4_FOUND "Plasma" plasma)
 
-    add_subdirectory(kdeui)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, KDEUi")
+smoke_add_bindings(Soprano_FOUND "Soprano" soprano sopranoclient sopranoserver)
 
-    add_subdirectory(kio)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, KIO")
-
-    add_subdirectory(kparts)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, KParts")
-
-    add_subdirectory(kfile)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, KFile")
-
-    add_subdirectory(knewstuff2)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, KNewStuff2")
-
-    add_subdirectory(knewstuff3)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, KNewStuff3")
-
-    add_subdirectory(kutils)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, KUtils")
-
-    add_subdirectory(khtml)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, KHTML")
-
-    add_subdirectory(ktexteditor)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, KTextEditor")
-
-
-    add_subdirectory(solid)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, Solid")
-    add_subdirectory(plasma)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, Plasma")
-
-endif(KDE4_FOUND)
-
-if(Soprano_FOUND)
-    add_subdirectory(soprano)
-    add_subdirectory(sopranoclient)
-    add_subdirectory(sopranoserver)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, Soprano")
-endif(Soprano_FOUND)
-
 if(KDEPIMLIBS_FOUND AND Akonadi_FOUND)
-    add_subdirectory(akonadi)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, Akonadi")
+    set(BUILD_Akonadi TRUE)
+elseif(KDEPIMLIBS_FOUND AND Akonadi_FOUND)
+    set(BUILD_Akonadi FALSE)
 endif(KDEPIMLIBS_FOUND AND Akonadi_FOUND)
+smoke_add_bindings(BUILD_Akonadi "Akonadi" akonadi)
 
-if(KDEVPLATFORM_FOUND)
-    add_subdirectory(kdevplatform)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, KDevPlatform")
-endif(KDEVPLATFORM_FOUND)
+smoke_add_bindings(KDEVPLATFORM_FOUND "KDevPlatform" kdevplatform)
 
-if(LIBATTICA_FOUND)
-    add_subdirectory(attica)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, Attica")
-endif(LIBATTICA_FOUND)
+smoke_add_bindings(LIBATTICA_FOUND "Attica" attica)
 
-if(Nepomuk_FOUND)
-    add_subdirectory(nepomuk)
-    add_subdirectory(nepomukquery)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, Nepomuk")
-endif(Nepomuk_FOUND)
+smoke_add_bindings(Nepomuk_FOUND "Nepomuk" nepomuk nepomukquery)
 
-if(OKULAR_FOUND)
-    add_subdirectory(okular)
-    set(SMOKE_ENABLED "${SMOKE_ENABLED}, Okular")
-endif(OKULAR_FOUND)
+smoke_add_bindings(OKULAR_FOUND "Okular" okular)
 
 # for qtguess.pl
 if (APPLE)
@@ -131,9 +81,9 @@
 set(qt_test_threshold 10)
 endif (APPLE)
 
-message(STATUS "Build Smoke... " ${SMOKE_ENABLED})
+message(STATUS "Build SMOKE bindings:" ${SMOKE_ENABLED})
+message(STATUS "Skip SMOKE bindings:" ${SMOKE_DISABLED})
 
-
 ########### install files ###############
 
 # KDE specific
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic