Rex Dieter 29094f
From 1f56930d7aee139be24f38ee01fb681f05ea693a Mon Sep 17 00:00:00 2001
Rex Dieter 29094f
From: Alexander Neundorf <neundorf@kde.org>
Rex Dieter 29094f
Date: Sat, 18 Apr 2009 16:39:20 +0000
Rex Dieter 29094f
Subject: [PATCH 06/33] -support for nightly builds at
Rex Dieter 29094f
 http://my.cdash.org/index.php?project=automoc4
Rex Dieter 29094f
Rex Dieter 29094f
Alex
Rex Dieter 29094f
Rex Dieter 29094f
Rex Dieter 29094f
Rex Dieter 29094f
svn path=/trunk/kdesupport/automoc/; revision=955848
Rex Dieter 29094f
---
Rex Dieter 29094f
 AutomocNightly.cmake  | 19 +++++++++++
Rex Dieter 29094f
 CMakeLists.txt        |  2 ++
Rex Dieter 29094f
 KDECTestNightly.cmake | 91 +++++++++++++++++++++++++++++++++++++++++++++++++++
Rex Dieter 29094f
 kde4automoc.cpp       |  4 +++
Rex Dieter 29094f
 4 files changed, 116 insertions(+)
Rex Dieter 29094f
 create mode 100644 AutomocNightly.cmake
Rex Dieter 29094f
 create mode 100644 KDECTestNightly.cmake
Rex Dieter 29094f
Rex Dieter 29094f
diff --git a/AutomocNightly.cmake b/AutomocNightly.cmake
Rex Dieter 29094f
new file mode 100644
Rex Dieter 29094f
index 0000000..236f263
Rex Dieter 29094f
--- /dev/null
Rex Dieter 29094f
+++ b/AutomocNightly.cmake
Rex Dieter 29094f
@@ -0,0 +1,19 @@
Rex Dieter 29094f
+set(CTEST_VCS svn)
Rex Dieter 29094f
+set(CTEST_VCS_REPOSITORY https://neundorf@svn.kde.org/home/kde/trunk/kdesupport/automoc)
Rex Dieter 29094f
+set(CTEST_CMAKE_GENERATOR "Unix Makefiles" )
Rex Dieter 29094f
+
Rex Dieter 29094f
+# set(CTEST_AVOID_SPACES FALSE)
Rex Dieter 29094f
+
Rex Dieter 29094f
+get_filename_component(_currentDir "${CMAKE_CURRENT_LIST_FILE}" PATH)
Rex Dieter 29094f
+
Rex Dieter 29094f
+# generic support code, sets up everything required:
Rex Dieter 29094f
+include( "${_currentDir}/KDECTestNightly.cmake" )
Rex Dieter 29094f
+
Rex Dieter 29094f
+ctest_empty_binary_directory("${CTEST_BINARY_DIRECTORY}")
Rex Dieter 29094f
+ctest_start(Nightly)
Rex Dieter 29094f
+ctest_update(SOURCE "${CTEST_SOURCE_DIRECTORY}" )
Rex Dieter 29094f
+ctest_configure(BUILD "${CTEST_BINARY_DIRECTORY}" )
Rex Dieter 29094f
+ctest_build(BUILD "${CTEST_BINARY_DIRECTORY}" )
Rex Dieter 29094f
+ctest_test(BUILD "${CTEST_BINARY_DIRECTORY}" )
Rex Dieter 29094f
+ctest_submit()
Rex Dieter 29094f
+
Rex Dieter 29094f
diff --git a/CMakeLists.txt b/CMakeLists.txt
Rex Dieter 29094f
index 22447c9..16bfc92 100644
Rex Dieter 29094f
--- a/CMakeLists.txt
Rex Dieter 29094f
+++ b/CMakeLists.txt
Rex Dieter 29094f
@@ -2,6 +2,8 @@ project(Automoc4)
Rex Dieter 29094f
 
Rex Dieter 29094f
 cmake_minimum_required(VERSION 2.4.5 FATAL_ERROR)
Rex Dieter 29094f
 
Rex Dieter 29094f
+include(CTest)
Rex Dieter 29094f
+
Rex Dieter 29094f
 find_package(Qt4 REQUIRED)
Rex Dieter 29094f
 
Rex Dieter 29094f
 if (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_C_COMPILER MATCHES "icc")
Rex Dieter 29094f
diff --git a/KDECTestNightly.cmake b/KDECTestNightly.cmake
Rex Dieter 29094f
new file mode 100644
Rex Dieter 29094f
index 0000000..2db53d9
Rex Dieter 29094f
--- /dev/null
Rex Dieter 29094f
+++ b/KDECTestNightly.cmake
Rex Dieter 29094f
@@ -0,0 +1,91 @@
Rex Dieter 29094f
+# The following variables are set by the script if they haven't been set before:
Rex Dieter 29094f
+#
Rex Dieter 29094f
+# CTEST_SOURCE_DIRECTORY - defaults to $HOME/Dashboards/<CTEST_PROJECT_NAME>/src dir/
Rex Dieter 29094f
+# CTEST_BINARY_DIRECTORY - defaults to $HOME/Dashboards/<CTEST_PROJECT_NAME>/build dir/
Rex Dieter 29094f
+# if CTEST_AVOID_SPACES is TRUE, the spaces in the path above will be removed.
Rex Dieter 29094f
+
Rex Dieter 29094f
+
Rex Dieter 29094f
+###########################################################
Rex Dieter 29094f
+# generic code
Rex Dieter 29094f
+###########################################################
Rex Dieter 29094f
+
Rex Dieter 29094f
+cmake_minimum_required(VERSION 2.6)
Rex Dieter 29094f
+
Rex Dieter 29094f
+include(CMakeDetermineSystem)
Rex Dieter 29094f
+if(CMAKE_HOST_UNIX)
Rex Dieter 29094f
+   include(Platform/UnixPaths)
Rex Dieter 29094f
+endif(CMAKE_HOST_UNIX)
Rex Dieter 29094f
+
Rex Dieter 29094f
+if(CMAKE_HOST_WIN32)
Rex Dieter 29094f
+   include(Platform/WindowsPaths)
Rex Dieter 29094f
+endif(CMAKE_HOST_WIN32)
Rex Dieter 29094f
+
Rex Dieter 29094f
+get_filename_component(currentDirectory "${CMAKE_CURRENT_LIST_FILE}" PATH)
Rex Dieter 29094f
+
Rex Dieter 29094f
+if(NOT EXISTS "${currentDirectory}/CMakeLists.txt")
Rex Dieter 29094f
+   message(FATAL_ERROR "This script must be in the source tree of your project.")
Rex Dieter 29094f
+endif(NOT EXISTS "${currentDirectory}/CMakeLists.txt")
Rex Dieter 29094f
+
Rex Dieter 29094f
+include("${currentDirectory}/CTestConfig.cmake")
Rex Dieter 29094f
+include("${currentDirectory}/CTestCustom.cmake" OPTIONAL)
Rex Dieter 29094f
+
Rex Dieter 29094f
+set(DASHBOARD_DIR "$ENV{HOME}/Dashboards" )
Rex Dieter 29094f
+
Rex Dieter 29094f
+if(NOT DEFINED CTEST_SOURCE_DIRECTORY)
Rex Dieter 29094f
+   if(CTEST_AVOID_SPACES)
Rex Dieter 29094f
+      set(CTEST_SOURCE_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/srcdir" )
Rex Dieter 29094f
+   else(CTEST_AVOID_SPACES)
Rex Dieter 29094f
+      set(CTEST_SOURCE_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/src dir" )
Rex Dieter 29094f
+   endif(CTEST_AVOID_SPACES)
Rex Dieter 29094f
+endif(NOT DEFINED CTEST_SOURCE_DIRECTORY)
Rex Dieter 29094f
+
Rex Dieter 29094f
+if(NOT DEFINED CTEST_BINARY_DIRECTORY)
Rex Dieter 29094f
+   if(CTEST_AVOID_SPACES)
Rex Dieter 29094f
+      set(CTEST_BINARY_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/builddir" )
Rex Dieter 29094f
+   else(CTEST_AVOID_SPACES)
Rex Dieter 29094f
+      set(CTEST_BINARY_DIRECTORY "${DASHBOARD_DIR}/${CTEST_PROJECT_NAME}/build dir" )
Rex Dieter 29094f
+   endif(CTEST_AVOID_SPACES)
Rex Dieter 29094f
+endif(NOT DEFINED CTEST_BINARY_DIRECTORY)
Rex Dieter 29094f
+
Rex Dieter 29094f
+
Rex Dieter 29094f
+
Rex Dieter 29094f
+site_name(CTEST_SITE)
Rex Dieter 29094f
+set(CTEST_BUILD_NAME ${CMAKE_SYSTEM_NAME})
Rex Dieter 29094f
+
Rex Dieter 29094f
+if("${CTEST_CMAKE_GENERATOR}" MATCHES Makefile)
Rex Dieter 29094f
+   find_program(MAKE_EXECUTABLE make gmake)
Rex Dieter 29094f
+   set(CTEST_BUILD_COMMAND    "${MAKE_EXECUTABLE}" )
Rex Dieter 29094f
+else("${CTEST_CMAKE_GENERATOR}" MATCHES Makefile)
Rex Dieter 29094f
+   if(NOT DEFINED CTEST_BUILD_COMMAND)
Rex Dieter 29094f
+      message(FATAL_ERROR "CTEST_CMAKE_GENERATOR is set to \"${CTEST_CMAKE_GENERATOR}\", but CTEST_BUILD_COMMAND has not been set")
Rex Dieter 29094f
+   endif(NOT DEFINED CTEST_BUILD_COMMAND)
Rex Dieter 29094f
+endif("${CTEST_CMAKE_GENERATOR}" MATCHES Makefile)
Rex Dieter 29094f
+
Rex Dieter 29094f
+string(TOLOWER ${CTEST_VCS} _ctest_vcs)
Rex Dieter 29094f
+set(_have_vcs FALSE)
Rex Dieter 29094f
+# only set this if there is no checkout yet
Rex Dieter 29094f
+set(CTEST_CHECKOUT_COMMAND)
Rex Dieter 29094f
+
Rex Dieter 29094f
+if ("${_ctest_vcs}" STREQUAL svn)
Rex Dieter 29094f
+   find_program(SVN_EXECUTABLE svn)
Rex Dieter 29094f
+   if (NOT SVN_EXECUTABLE)
Rex Dieter 29094f
+      message(FATAL_ERROR "Error: CTEST_VCS is svn, but could not find svn executable")
Rex Dieter 29094f
+   endif (NOT SVN_EXECUTABLE)
Rex Dieter 29094f
+   set(CTEST_UPDATE_COMMAND ${SVN_EXECUTABLE})
Rex Dieter 29094f
+   if(NOT EXISTS "${CTEST_SOURCE_DIRECTORY}/.svn/entries")
Rex Dieter 29094f
+      set(CTEST_CHECKOUT_COMMAND "${SVN_EXECUTABLE} co ${CTEST_VCS_REPOSITORY}/${CTEST_VCS_PATH} \"${CTEST_SOURCE_DIRECTORY}\"")
Rex Dieter 29094f
+   endif(NOT EXISTS "${CTEST_SOURCE_DIRECTORY}/.svn/entries")
Rex Dieter 29094f
+   set(_have_vcs TRUE)
Rex Dieter 29094f
+endif ("${_ctest_vcs}" STREQUAL svn)
Rex Dieter 29094f
+
Rex Dieter 29094f
+if ("${_ctest_vcs}" STREQUAL cvs)
Rex Dieter 29094f
+   find_program(CVS_EXECUTABLE cvs cvsnt)
Rex Dieter 29094f
+   if (NOT CVS_EXECUTABLE)
Rex Dieter 29094f
+      message(FATAL_ERROR "Error: CTEST_VCS is cvs, but could not find cvs or cvsnt executable")
Rex Dieter 29094f
+   endif (NOT CVS_EXECUTABLE)
Rex Dieter 29094f
+   set(CTEST_UPDATE_COMMAND ${CVS_EXECUTABLE})
Rex Dieter 29094f
+   if(NOT EXISTS "${CTEST_SOURCE_DIRECTORY}/CVS/Entries")
Rex Dieter 29094f
+      set(CTEST_CHECKOUT_COMMAND "${CVS_EXECUTABLE} -d ${CTEST_VCS_REPOSITORY} co  -d \"${CTEST_SOURCE_DIRECTORY}\" ${CTEST_VCS_PATH}")
Rex Dieter 29094f
+   endif(NOT EXISTS "${CTEST_SOURCE_DIRECTORY}/CVS/Entries")
Rex Dieter 29094f
+   set(_have_vcs TRUE)
Rex Dieter 29094f
+endif ("${_ctest_vcs}" STREQUAL cvs)
Rex Dieter 29094f
diff --git a/kde4automoc.cpp b/kde4automoc.cpp
Rex Dieter 29094f
index e85ec62..34b2c74 100644
Rex Dieter 29094f
--- a/kde4automoc.cpp
Rex Dieter 29094f
+++ b/kde4automoc.cpp
Rex Dieter 29094f
@@ -23,6 +23,10 @@
Rex Dieter 29094f
     THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Rex Dieter 29094f
 */
Rex Dieter 29094f
 
Rex Dieter 29094f
+// warnings just for testing cdash, will remove soon again, Alex
Rex Dieter 29094f
+#warning "this is a test"
Rex Dieter 29094f
+#warning "kdecore/network/k2socket.h blub blub test"
Rex Dieter 29094f
+
Rex Dieter 29094f
 #include <QtCore/QCoreApplication>
Rex Dieter 29094f
 #include <QtCore/QDateTime>
Rex Dieter 29094f
 #include <QtCore/QDir>
Rex Dieter 29094f
-- 
Rex Dieter 29094f
2.4.3
Rex Dieter 29094f