Initial attempt at using the standard CMake system

pull/1/head
Timothy Pearson 13 years ago
parent 094b95b8a8
commit a9fbdbd29b

@ -0,0 +1,30 @@
#################################################
#
# (C) 2011 Timothy Pearson
# kb9vqf (AT) pearsoncomputing.net
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
if( BUILD_TRANSLATIONS AND NOT DEFINED MSGFMT_EXECUTABLE )
find_program( MSGFMT_EXECUTABLE msgfmt )
if( NOT MSGFMT_EXECUTABLE )
tde_message_fatal( "msgfmt program is required, but was not found on your system" )
endif( )
endif( )
check_type_size( "int" SIZEOF_INT BUILTIN_TYPES_ONLY )
check_type_size( "long" SIZEOF_LONG BUILTIN_TYPES_ONLY )
check_include_file( stdint.h HAVE_STDINT_H )
check_include_file( systems.h HAVE_SYSTEMS_H )
check_include_file( linux/inotify.h HAVE_INOTIFY )
check_function_exists( statvfs HAVE_STATVFS )
# common required stuff
find_package( TQt )
find_package( TDE )

@ -1 +1 @@
Subproject commit 26d642b2620397b76d5fbb64a9ef5ca8f2334f72 Subproject commit 21cb4a9d2a0e083b10dee6d22958c4f58de6c5b2

@ -0,0 +1,5 @@
#cmakedefine SIZEOF_INT @SIZEOF_INT@
#cmakedefine SIZEOF_LONG @SIZEOF_LONG@
#cmakedefine HAVE_STDINT_H 1
#cmakedefine HAVE_SYSTEMS_H 1
#cmakedefine HAVE_STATVFS 1

@ -1,57 +1,73 @@
ADD_EXECUTABLE(tdesvnaskpass askpass/tdesvn-askpass.cpp) #################################################
SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib${LIB_SUFFIX}/trinity) #
# (C) 2011 Timothy Pearson
# kb9vqf (AT) pearsoncomputing.net
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
SET(tdesvnsrc include_directories(
main.cpp ${TQT_INCLUDE_DIRS}
tdesvn.cpp ${TDE_INCLUDE_DIR}
urldlg.cpp ${CMAKE_BINARY_DIR}
commandline.cpp) ${CMAKE_BINARY_DIR}/src
${CMAKE_SOURCE_DIR}/src
)
SET(partsrc link_directories(
tdesvn_events.cpp ${TQT_LIBRARY_DIRS}
tdesvn_events.h )
tdesvn_part.cpp
tdesvnview.cpp
commandline_part.cpp)
KDE3_AUTOMOC(${tdesvnsrc})
KDE3_AUTOMOC(${partsrc})
SET(partsrc ${partsrc} tdesvn_part.h tdesvnview.h commandline_part.h) ##### other data ################################
SET(tdesvnsrc ${tdesvnsrc} tdesvn.h urldlg.h commandline.h)
ADD_SUBDIRECTORY(svnqt) INSTALL(FILES tdesvnui.rc DESTINATION ${DATA_INSTALL_DIR}/tdesvn)
ADD_SUBDIRECTORY(ksvnwidgets) INSTALL(FILES tdesvn_part.rc DESTINATION ${DATA_INSTALL_DIR}/tdesvnpart)
ADD_SUBDIRECTORY(settings) INSTALL(FILES tdesvn.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
ADD_SUBDIRECTORY(svnfrontend)
ADD_SUBDIRECTORY(helpers)
ADD_SUBDIRECTORY(tdesvnd)
ADD_SUBDIRECTORY(kiosvn)
ADD_SUBDIRECTORY(pics)
ADD_SUBDIRECTORY(icons)
ADD_EXECUTABLE(tdesvn ${tdesvnsrc})
KDE3_ADD_KPART(tdesvnpart WITH_PREFIX ${partsrc}) ##### tdesvnaskpass #############################
TARGET_LINK_LIBRARIES(tdesvnpart svnfrontend tdesvnhelpers ksvnwidgets settingsdlgs tdesvncfgreader svnqt
${QT_AND_TDECORE_LIBS} ${KDE3_KIO_LIBRARY} ${KDE3_PART_LIBRARY} ${KDE3_UI_LIBRARY} ${KDE3_WALLET_LIBRARY} )
SET_TARGET_PROPERTIES(tdesvnpart
PROPERTIES
LINK_FLAGS "${_BASE_LDADD} ${APR_EXTRA_LIBFLAGS} ${APU_EXTRA_LIBFLAGS} ${LINK_NO_UNDEFINED}")
INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}/src/svnqt) tde_add_executable( tdesvnaskpass AUTOMOC
SOURCES askpass/tdesvn-askpass.cpp
# LINK tdecore-shared
DESTINATION ${BIN_INSTALL_DIR}
)
KDESVN_GENERATE_LIBTOOL_FILE(tdesvnpart)
##### tdesvn #####################################
TARGET_LINK_LIBRARIES(tdesvnaskpass ${QT_AND_TDECORE_LIBS} ${KDE3_UI_LIBRARY}) tde_add_executable( tdesvn AUTOMOC
TARGET_LINK_LIBRARIES(tdesvn ${QT_AND_TDECORE_LIBS} ${KDE3_UI_LIBRARY} ${KDE3_PART_LIBRARY} ${KDE3_DCOP_LIBRARY} ${KDE3_KIO_LIBRARY}) SOURCES main.cpp tdesvn.cpp urldlg.cpp commandline.cpp
LINK tdecore-shared tdeui-shared kparts-shared DCOP-shared kio-shared)
DESTINATION ${BIN_INSTALL_DIR}
)
INSTALL(TARGETS tdesvn tdesvnaskpass tdesvnpart
RUNTIME DESTINATION ${BIN_INSTALL_DIR}
LIBRARY DESTINATION ${PLUGIN_INSTALL_DIR})
# the resources ##### tdesvnpart #################################
INSTALL(FILES tdesvnui.rc DESTINATION ${DATA_INSTALL_DIR}/tdesvn)
INSTALL(FILES tdesvn_part.rc DESTINATION ${DATA_INSTALL_DIR}/tdesvnpart) set( target tdesvnpart )
INSTALL(FILES tdesvn.desktop DESTINATION ${XDG_APPS_DIR})
set( ${target}_SRCS
tdesvn_events.cpp tdesvn_events.h tdesvn_part.cpp
tdesvnview.cpp commandline_part.cpp
)
tde_add_kpart( ${target} AUTOMOC
SOURCES ${${target}_SRCS}
LINK tdecore-shared kio-shared kparts-shared tdeui-shared kwallet-shared
DESTINATION ${PLUGIN_INSTALL_DIR}
)
add_subdirectory( svnqt )
add_subdirectory( ksvnwidgets )
add_subdirectory( settings )
add_subdirectory( svnfrontend )
add_subdirectory( helpers )
add_subdirectory( tdesvnd )
add_subdirectory( kiosvn )
add_subdirectory( pics )
add_subdirectory( icons )

@ -1,14 +1,32 @@
SET(helperssrc #################################################
ktranslateurl.cpp #
sshagent.cpp # (C) 2011 Timothy Pearson
sub2qt.cpp) # kb9vqf (AT) pearsoncomputing.net
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
FILE(GLOB hdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h") include_directories(
${TQT_INCLUDE_DIRS}
${TDE_INCLUDE_DIR}
${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}/src
${CMAKE_SOURCE_DIR}/src
)
KDE3_AUTOMOC(${helperssrc} ) link_directories(
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) ${TQT_LIBRARY_DIRS}
ADD_LIBRARY(tdesvnhelpers STATIC ${helperssrc} ${hdr}) )
SET_TARGET_PROPERTIES(tdesvnhelpers ##### tdesvnhelpers ##############################
PROPERTIES
COMPILE_FLAGS ${CMAKE_SHARED_LIBRARY_CXX_FLAGS}) file (GLOB hdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h")
tde_add_library( tdesvnhelpers STATIC AUTOMOC
SOURCES helperssrc ktranslateurl.cpp sshagent.cpp sub2qt.cpp ${hdr}
# LINK kio-shared
DESTINATION ${LIB_INSTALL_DIR}
)

@ -1,2 +1,12 @@
KDESVN_INSTALL_ICONS(hicolor) #################################################
#
# (C) 2011 Timothy Pearson
# kb9vqf (AT) pearsoncomputing.net
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
tde_install_icons( DESTINATION ${DATA_INSTALL_DIR}/tdesvn/icons )

@ -1,26 +1,39 @@
INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}/src/svnqt #################################################
${CMAKE_BINARY_DIR}/src/ksvnwidgets) #
# (C) 2011 Timothy Pearson
# kb9vqf (AT) pearsoncomputing.net
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
SET(kiosvn_src kiosvn.cpp kiolistener.cpp kiobytestream.cpp ../ksvnwidgets/pwstorage.cpp) include_directories(
FILE(GLOB hdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h") ${TQT_INCLUDE_DIRS}
${TDE_INCLUDE_DIR}
${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}/src
${CMAKE_SOURCE_DIR}/src
)
KDE3_ADD_KPART(kio_ksvn ${kiosvn_src} ${hdr}) link_directories(
${TQT_LIBRARY_DIRS}
)
TARGET_LINK_LIBRARIES(kio_ksvn
svnqt
tdesvnhelpers
tdesvncfgreader
${QT_AND_TDECORE_LIBS}
${KDE3_UI_LIBRARY} ${KDE3_DCOP_LIBRARY} ${KDE3_KIO_LIBRARY} ${KDE3_WALLET_LIBRARY})
SET_TARGET_PROPERTIES(kio_ksvn ##### kio_ksvn ##################################
PROPERTIES
LINK_FLAG "${LINK_NO_UNDEFINED} ${_BASE_LDADD}")
INSTALL(TARGETS kio_ksvn file (GLOB hdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h")
LIBRARY DESTINATION ${PLUGIN_INSTALL_DIR})
FILE(GLOB PROTFILES *.protocol) tde_add_kpart( kio_ksvn AUTOMOC
SOURCES kiosvn.cpp kiolistener.cpp kiobytestream.cpp ../ksvnwidgets/pwstorage.cpp ${hdr}
LINK kio_ksvn svnqt tdesvnhelpers tdesvncfgreader tdecore-shared tdeui-shared DCOP-shared kio-shared kwallet-shared
DESTINATION ${PLUGIN_INSTALL_DIR}
)
INSTALL(FILES ${PROTFILES}
DESTINATION ${SERVICES_INSTALL_DIR}) ##### protocol files ############################
file( GLOB PROTFILES *.protocol )
install( FILES ${PROTFILES} DESTINATION ${SERVICES_INSTALL_DIR} )

@ -1,46 +1,41 @@
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_BINARY_DIR}/src/svnqt) #################################################
#
# (C) 2011 Timothy Pearson
# kb9vqf (AT) pearsoncomputing.net
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
KDE3_ADD_UI_FILES( include_directories(
tdesvn_shared_ui ${TQT_INCLUDE_DIRS}
logmessage.ui ${TDE_INCLUDE_DIR}
ssltrustprompt.ui ${CMAKE_BINARY_DIR}
authdlg.ui ${CMAKE_BINARY_DIR}/src
encodingselector.ui ${CMAKE_SOURCE_DIR}/src
depthform.ui ${CMAKE_CURRENT_BINARY_DIR}
revertform.ui ${CMAKE_BINARY_DIR}/src/svnqt
) )
SET(ksvnwidgetsrc link_directories(
authdialogimpl.cpp ${TQT_LIBRARY_DIRS}
logmsg_impl.cpp
ssltrustprompt_impl.cpp
pwstorage.cpp
diffbrowser.cpp
diffbrowserdata.cpp
diffsyntax.cpp
encodingselector_impl.cpp
depthselector.cpp
revertform_impl.cpp
)
SET(ksvnwidgethdr
authdialogimpl.h
logmsg_impl.h
ssltrustprompt_impl.h
pwstorage.h
diffbrowser.h
diffbrowserdata.h
diffsyntax.h
encodingselector_impl.h
depthselector.h
revertform_impl.h
) )
KDE3_AUTOMOC(${ksvnwidgetsrc}) ##### ksvnwidgets ###############################
file (GLOB hdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h")
ADD_LIBRARY(ksvnwidgets STATIC ${ksvnwidgetsrc} ${tdesvn_shared_ui} ${ksvnwidgethdr}) tde_add_library( ksvnwidgets STATIC AUTOMOC
SET_TARGET_PROPERTIES(ksvnwidgets SOURCES authdialogimpl.cpp logmsg_impl.cpp ssltrustprompt_impl.cpp
PROPERTIES pwstorage.cpp diffbrowser.cpp diffbrowserdata.cpp
COMPILE_FLAGS ${CMAKE_SHARED_LIBRARY_CXX_FLAGS}) diffsyntax.cpp encodingselector_impl.cpp depthselector.cpp
revertform_impl.cpp tdesvn_shared_ui logmessage.ui
ssltrustprompt.ui authdlg.ui encodingselector.ui
depthform.ui revertform.ui ${hdr}
# LINK kio-shared
DESTINATION ${LIB_INSTALL_DIR}
)
ADD_DEPENDENCIES(ksvnwidgets tdesvncfgreader) ADD_DEPENDENCIES(ksvnwidgets tdesvncfgreader)

@ -1,2 +1,2 @@
KDESVN_INSTALL_ICONS(hicolor) tde_install_icons( )

@ -1,50 +1,50 @@
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) #################################################
#
KDE3_ADD_KCFG_FILES(cfgsrc # (C) 2011 Timothy Pearson
tdesvnsettings.kcfgc) # kb9vqf (AT) pearsoncomputing.net
ADD_LIBRARY(tdesvncfgreader STATIC ${cfgsrc}) #
# Improvements and feedback are welcome
KDE3_ADD_UI_FILES( #
settings_ui_sources # This file is released under GPL >= 2
dispcolor_settings.ui #
display_settings.ui #################################################
revisiontree_settings.ui
subversion_settings.ui include_directories(
cmdexecsettings.ui ${TQT_INCLUDE_DIRS}
diffmergesettings.ui ${TDE_INCLUDE_DIR}
${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}/src
${CMAKE_SOURCE_DIR}/src
${CMAKE_CURRENT_BINARY_DIR}
) )
SET(settings_sources link_directories(
dispcolorsettings_impl.cpp ${TQT_LIBRARY_DIRS}
displaysettings_impl.cpp )
revisiontreesettingsdlg_impl.cpp
subversionsettings_impl.cpp
cmdexecsettings_impl.cpp
diffmergesettings_impl.cpp)
FILE(GLOB hdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h")
KDE3_AUTOMOC(${settings_sources})
ADD_LIBRARY(settingsdlgs STATIC ${settings_ui_sources} ${settings_sources} ${hdr})
ADD_DEPENDENCIES(settingsdlgs tdesvncfgreader)
SET_TARGET_PROPERTIES(tdesvncfgreader settingsdlgs ##### tdesvncfgreader ###########################
PROPERTIES
COMPILE_FLAGS ${CMAKE_SHARED_LIBRARY_CXX_FLAGS})
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/tdesvn_part.kcfg DESTINATION ${KCFG_INSTALL_DIR}) file (GLOB hdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h")
INSTALL( tde_add_library( tdesvncfgreader STATIC AUTOMOC
FILES SOURCES settings_ui_sources dispcolor_settings.ui
${CMAKE_CURRENT_SOURCE_DIR}/tdesvnpartrc-use-external.upd display_settings.ui revisiontree_settings.ui
DESTINATION subversion_settings.ui cmdexecsettings.ui
${DATA_INSTALL_DIR}/kconf_update diffmergesettings.ui dispcolorsettings_impl.cpp
displaysettings_impl.cpp revisiontreesettingsdlg_impl.cpp
subversionsettings_impl.cpp cmdexecsettings_impl.cpp
diffmergesettings_impl.cpp tdesvnsettings.kcfgc ${hdr}
# LINK kio-shared
DESTINATION ${LIB_INSTALL_DIR}
) )
INSTALL(
FILES ##### data files ################################
${CMAKE_CURRENT_SOURCE_DIR}/tdesvn-use-external-update.sh
DESTINATION install( FILES ${CMAKE_CURRENT_SOURCE_DIR}/tdesvn_part.kcfg DESTINATION ${KCFG_INSTALL_DIR} )
${DATA_INSTALL_DIR}/kconf_update install( FILES ${CMAKE_CURRENT_SOURCE_DIR}/tdesvnpartrc-use-external.upd DESTINATION ${DATA_INSTALL_DIR}/kconf_update )
PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ install( FILES ${CMAKE_CURRENT_SOURCE_DIR}/tdesvn-use-external-update.sh
DESTINATION ${DATA_INSTALL_DIR}/kconf_update
PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ
) )

@ -1,7 +1,35 @@
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/svnfrontend/fronthelpers ${CMAKE_BINARY_DIR}/src/svnqt) #################################################
#
# (C) 2011 Timothy Pearson
# kb9vqf (AT) pearsoncomputing.net
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
SET(svnfrontendsrc include_directories(
ccontextlistener.cpp ${TQT_INCLUDE_DIRS}
${TDE_INCLUDE_DIR}
${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}/src
${CMAKE_SOURCE_DIR}/src
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_SOURCE_DIR}/src/svnfrontend/fronthelpers
${CMAKE_BINARY_DIR}/src/svnqt
)
link_directories(
${TQT_LIBRARY_DIRS}
)
##### svnfrontend ###############################
file (GLOB hdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h")
tde_add_library( svnfrontend STATIC AUTOMOC
SOURCES ccontextlistener.cpp
commandexec.cpp commandexec.cpp
copymoveview_impl.cpp copymoveview_impl.cpp
createrepo_impl.cpp createrepo_impl.cpp
@ -56,9 +84,6 @@ SET(svnfrontendsrc
threadcontextlistenerdata.cpp threadcontextlistenerdata.cpp
fillcachethread.cpp fillcachethread.cpp
fillcachethread.h fillcachethread.h
)
SET(svnfrontendui
copymoveview.ui copymoveview.ui
createrepo_dlg.ui createrepo_dlg.ui
dumprepo_dlg.ui dumprepo_dlg.ui
@ -71,16 +96,9 @@ SET(svnfrontendui
merge_dlg.ui merge_dlg.ui
blamedisplay.ui blamedisplay.ui
svnlogdlg.ui svnlogdlg.ui
) ${hdr}
# LINK kio-shared
FILE(GLOB hdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h") DESTINATION ${LIB_INSTALL_DIR}
)
KDE3_AUTOMOC(${svnfrontendsrc})
KDE3_ADD_UI_FILES(frontend_ui_sources ${svnfrontendui})
ADD_LIBRARY(svnfrontend STATIC ${svnfrontendsrc} ${frontend_ui_sources} ${hdr})
SET_TARGET_PROPERTIES(svnfrontend
PROPERTIES
COMPILE_FLAGS ${CMAKE_SHARED_LIBRARY_CXX_FLAGS})
ADD_DEPENDENCIES(svnfrontend ksvnwidgets) ADD_DEPENDENCIES(svnfrontend ksvnwidgets)

@ -45,7 +45,6 @@ SET(SOURCES
cache/DatabaseException.cpp cache/DatabaseException.cpp
) )
IF (NOT QT4_FOUND)
IF (SQLITE_FOUND) IF (SQLITE_FOUND)
MESSAGE(STATUS "Build own sqlite3 database modul") MESSAGE(STATUS "Build own sqlite3 database modul")
SET(SOURCES SET(SOURCES
@ -58,10 +57,6 @@ IF (NOT QT4_FOUND)
ELSE (SQLITE_FOUND) ELSE (SQLITE_FOUND)
MESSAGE(SEND_ERROR "The QT3 version requires sqlite3 but could not found") MESSAGE(SEND_ERROR "The QT3 version requires sqlite3 but could not found")
ENDIF (SQLITE_FOUND) ENDIF (SQLITE_FOUND)
ELSE (NOT QT4_FOUND)
MESSAGE(STATUS "Build with QT4.")
ADD_DEFINITIONS(-DNO_SQLITE3)
ENDIF (NOT QT4_FOUND)
SET(CACHEINST_HEADERS SET(CACHEINST_HEADERS
cache/LogCache.hpp cache/LogCache.hpp
@ -108,19 +103,7 @@ SET(INST_HEADERS
FILE(GLOB svnhdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.hpp") FILE(GLOB svnhdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.hpp")
SET(svnhdr ${svnhdr} ${CACHE_INST_HEADERS}) SET(svnhdr ${svnhdr} ${CACHE_INST_HEADERS})
#IF(QT4_FOUND)
# MESSAGE(STATUS "Qt: ${QT_LIBRARY_DIR}")
# MESSAGE(STATUS "Qt: ${QT_QTCORE_LIBRARY}")
# SET(TOUTF8 "toUtf8")
# SET(FROMUTF8 "fromUtf8")
# SET(QLIST "QList")
# SET(TOASCII "toAscii")
# SET(HOMEDIR "homePath")
# SET(svnqt-name svnqt-qt4)
# SET(QDATABASE "QSqlDatabase")
# SET(QLONG "qlonglong")
#ELSE(QT4_FOUND)
# IF(QT_FOUND)
SET(TOUTF8 "utf8") SET(TOUTF8 "utf8")
SET(FROMUTF8 "fromUtf8") SET(FROMUTF8 "fromUtf8")
SET(QLIST "TQValueList") SET(QLIST "TQValueList")
@ -128,17 +111,12 @@ SET(svnhdr ${svnhdr} ${CACHE_INST_HEADERS})
SET(HOMEDIR "homeDirPath") SET(HOMEDIR "homeDirPath")
SET(QDATABASE "TQSqlDatabase*") SET(QDATABASE "TQSqlDatabase*")
SET(QLONG "Q_LLONG") SET(QLONG "Q_LLONG")
# ENDIF(QT_FOUND)
SET(svnqt-name svnqt) SET(svnqt-name svnqt)
#ENDIF(QT4_FOUND)
IF (HAVE_GCC_VISIBILITY) IF (HAVE_GCC_VISIBILITY)
SET(_SVNQT_EXPORT "__attribute__ ((visibility(\"default\")))") SET(_SVNQT_EXPORT "__attribute__ ((visibility(\"default\")))")
SET(_SVNQT_NOEXPORT "__attribute__ ((visibility(\"hidden\")))") SET(_SVNQT_NOEXPORT "__attribute__ ((visibility(\"hidden\")))")
ENDIF (HAVE_GCC_VISIBILITY) ENDIF (HAVE_GCC_VISIBILITY)
IF (WIN32)
SET(_SVNQT_EXPORT "__declspec(dllexport)")
ENDIF (WIN32)
CONFIGURE_FILE( CONFIGURE_FILE(
"${CMAKE_CURRENT_SOURCE_DIR}/svnqt_defines.hpp.in" "${CMAKE_CURRENT_SOURCE_DIR}/svnqt_defines.hpp.in"
@ -150,14 +128,10 @@ SET(INST_HEADERS ${INST_HEADERS} ${CMAKE_CURRENT_BINARY_DIR}/svnqt_defines.hpp)
INCLUDE_DIRECTORIES(BEFORE ${CMAKE_CURRENT_BINARY_DIR}) INCLUDE_DIRECTORIES(BEFORE ${CMAKE_CURRENT_BINARY_DIR})
ADD_LIBRARY(${svnqt-name} SHARED ${SOURCES} ${svnhdr}) ADD_LIBRARY(${svnqt-name} SHARED ${SOURCES} ${svnhdr})
IF(WIN32)
ADD_DEFINITIONS(-D_USE_32BIT_TIME_T)
ELSE(WIN32)
SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib${LIB_SUFFIX}) SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib${LIB_SUFFIX})
SET_TARGET_PROPERTIES(${svnqt-name} SET_TARGET_PROPERTIES(${svnqt-name}
PROPERTIES PROPERTIES
COMPILE_FLAGS ${CMAKE_SHARED_LIBRARY_CXX_FLAGS}) COMPILE_FLAGS ${CMAKE_SHARED_LIBRARY_CXX_FLAGS})
ENDIF(WIN32)
SET(LIB_MAJOR 4) SET(LIB_MAJOR 4)
SET(LIB_MINOR 2) SET(LIB_MINOR 2)
@ -174,16 +148,12 @@ SET(ALL_LINKFLAGS "${ALL_LINKFLAGS} ${APU_EXTRA_LIBFLAGS}")
SET_TARGET_PROPERTIES(${svnqt-name} PROPERTIES LINK_FLAGS "${ALL_LINKFLAGS} ${LINK_NO_UNDEFINED}") SET_TARGET_PROPERTIES(${svnqt-name} PROPERTIES LINK_FLAGS "${ALL_LINKFLAGS} ${LINK_NO_UNDEFINED}")
TARGET_LINK_LIBRARIES(${svnqt-name} ${QT_LIBRARIES} ${SUBVERSION_ALL_LIBS}) TARGET_LINK_LIBRARIES(${svnqt-name} ${QT_LIBRARIES} ${SUBVERSION_ALL_LIBS})
IF (SQLITE_FOUND AND NOT QT4_FOUND) IF (SQLITE_FOUND)
TARGET_LINK_LIBRARIES(${svnqt-name} ${SQLITE_LIBRARIES}) TARGET_LINK_LIBRARIES(${svnqt-name} ${SQLITE_LIBRARIES})
INCLUDE_DIRECTORIES(SQLITE_INCLUDE_DIR) INCLUDE_DIRECTORIES(SQLITE_INCLUDE_DIR)
ELSE (SQLITE_FOUND AND NOT QT4_FOUND) ELSE (SQLITE_FOUND)
TARGET_LINK_LIBRARIES(${svnqt-name} ${QT_QTSQL_LIBRARY}) TARGET_LINK_LIBRARIES(${svnqt-name} ${QT_QTSQL_LIBRARY})
ENDIF (SQLITE_FOUND AND NOT QT4_FOUND) ENDIF (SQLITE_FOUND)
IF (WIN32)
TARGET_LINK_LIBRARIES( ${svnqt-name} wsock32.lib )
ENDIF (WIN32)
# Just a small linking test # Just a small linking test
IF (BUILD_TESTS) IF (BUILD_TESTS)
@ -191,13 +161,9 @@ IF (BUILD_TESTS)
TARGET_LINK_LIBRARIES(testlink ${svnqt-name}) TARGET_LINK_LIBRARIES(testlink ${svnqt-name})
ENDIF (BUILD_TESTS) ENDIF (BUILD_TESTS)
# install rules
# in win32 we don't install it
IF(NOT WIN32)
INSTALL(TARGETS ${svnqt-name} DESTINATION ${LIB_INSTALL_DIR}) INSTALL(TARGETS ${svnqt-name} DESTINATION ${LIB_INSTALL_DIR})
INSTALL(FILES ${INST_HEADERS} DESTINATION include/${svnqt-name}) INSTALL(FILES ${INST_HEADERS} DESTINATION include/${svnqt-name})
INSTALL(FILES ${CACHEINST_HEADERS} DESTINATION include/${svnqt-name}/cache) INSTALL(FILES ${CACHEINST_HEADERS} DESTINATION include/${svnqt-name}/cache)
ENDIF(NOT WIN32)
IF (BUILD_TESTS) IF (BUILD_TESTS)
ADD_SUBDIRECTORY(tests) ADD_SUBDIRECTORY(tests)

@ -0,0 +1,171 @@
SET(SOURCES
apr.cpp
client_annotate.cpp
client_cat.cpp
client.cpp
client_diff.cpp
client_ls.cpp
client_modify.cpp
client_property.cpp
client_status.cpp
context.cpp
datetime.cpp
dirent.cpp
entry.cpp
exception.cpp
log_entry.cpp
path.cpp
pool.cpp
revision.cpp
status.cpp
targets.cpp
url.cpp
version_check.cpp
wc.cpp
lock_entry.cpp
client_lock.cpp
info_entry.cpp
client_impl.cpp
contextdata.cpp
commititem.cpp
repository.cpp
repositorydata.cpp
repositorylistener.cpp
svnstream.cpp
diff_data.cpp
svnfilestream.cpp
stringarray.cpp
diffoptions.cpp
conflictdescription.cpp
conflictresult.cpp
client_merge.cpp
cache/LogCache.cpp
cache/ReposLog.cpp
cache/DatabaseException.hpp
cache/DatabaseException.cpp
)
IF (SQLITE_FOUND)
MESSAGE(STATUS "Build own sqlite3 database modul")
SET(SOURCES
${SOURCES}
cache/sqlite3/qsqlcachedresult.cpp
cache/sqlite3/qsql_sqlite3.cpp
cache/sqlite3/qsqlcachedresult.h
cache/sqlite3/qsql_sqlite3.h
)
ELSE (SQLITE_FOUND)
MESSAGE(SEND_ERROR "The QT3 version requires sqlite3 but could not found")
ENDIF (SQLITE_FOUND)
SET(CACHEINST_HEADERS
cache/LogCache.hpp
cache/ReposLog.hpp
cache/DatabaseException.hpp
)
SET(INST_HEADERS
annotate_line.hpp
apr.hpp
check.hpp
client.hpp
commititem.hpp
context.hpp
context_listener.hpp
datetime.hpp
dirent.hpp
entry.hpp
exception.hpp
info_entry.hpp
lock_entry.hpp
log_entry.hpp
path.hpp
pool.hpp
repository.hpp
repositorylistener.hpp
revision.hpp
smart_pointer.hpp
shared_pointer.hpp
status.hpp
svnfilestream.hpp
svnstream.hpp
svnqttypes.hpp
targets.hpp
url.hpp
version_check.hpp
wc.hpp
stringarray.hpp
diffoptions.hpp
conflictdescription.hpp
conflictresult.hpp
)
FILE(GLOB svnhdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.hpp")
SET(svnhdr ${svnhdr} ${CACHE_INST_HEADERS})
SET(TOUTF8 "utf8")
SET(FROMUTF8 "fromUtf8")
SET(QLIST "TQValueList")
SET(TOASCII "latin1")
SET(HOMEDIR "homeDirPath")
SET(QDATABASE "TQSqlDatabase*")
SET(QLONG "Q_LLONG")
SET(svnqt-name svnqt)
IF (HAVE_GCC_VISIBILITY)
SET(_SVNQT_EXPORT "__attribute__ ((visibility(\"default\")))")
SET(_SVNQT_NOEXPORT "__attribute__ ((visibility(\"hidden\")))")
ENDIF (HAVE_GCC_VISIBILITY)
CONFIGURE_FILE(
"${CMAKE_CURRENT_SOURCE_DIR}/svnqt_defines.hpp.in"
"${CMAKE_CURRENT_BINARY_DIR}/svnqt_defines.hpp"
IMMEDIATE
@ONLY)
SET(INST_HEADERS ${INST_HEADERS} ${CMAKE_CURRENT_BINARY_DIR}/svnqt_defines.hpp)
INCLUDE_DIRECTORIES(BEFORE ${CMAKE_CURRENT_BINARY_DIR})
ADD_LIBRARY(${svnqt-name} SHARED ${SOURCES} ${svnhdr})
SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib${LIB_SUFFIX})
SET_TARGET_PROPERTIES(${svnqt-name}
PROPERTIES
COMPILE_FLAGS ${CMAKE_SHARED_LIBRARY_CXX_FLAGS})
SET(LIB_MAJOR 4)
SET(LIB_MINOR 2)
SET(LIB_RELEASE 2)
SET(_soversion ${LIB_MAJOR}.${LIB_MINOR}.${LIB_RELEASE})
SET_TARGET_PROPERTIES(${svnqt-name} PROPERTIES
SOVERSION ${LIB_MAJOR}
VERSION ${_soversion})
SET(ALL_LINKFLAGS ${APR_EXTRA_LIBFLAGS})
SET(ALL_LINKFLAGS "${ALL_LINKFLAGS} ${APU_EXTRA_LIBFLAGS}")
SET_TARGET_PROPERTIES(${svnqt-name} PROPERTIES LINK_FLAGS "${ALL_LINKFLAGS} ${LINK_NO_UNDEFINED}")
TARGET_LINK_LIBRARIES(${svnqt-name} ${QT_LIBRARIES} ${SUBVERSION_ALL_LIBS})
IF (SQLITE_FOUND)
TARGET_LINK_LIBRARIES(${svnqt-name} ${SQLITE_LIBRARIES})
INCLUDE_DIRECTORIES(SQLITE_INCLUDE_DIR)
ELSE (SQLITE_FOUND)
TARGET_LINK_LIBRARIES(${svnqt-name} ${QT_QTSQL_LIBRARY})
ENDIF (SQLITE_FOUND)
# Just a small linking test
IF (BUILD_TESTS)
ADD_EXECUTABLE(testlink testmain.cpp)
TARGET_LINK_LIBRARIES(testlink ${svnqt-name})
ENDIF (BUILD_TESTS)
INSTALL(TARGETS ${svnqt-name} DESTINATION ${LIB_INSTALL_DIR})
INSTALL(FILES ${INST_HEADERS} DESTINATION include/${svnqt-name})
INSTALL(FILES ${CACHEINST_HEADERS} DESTINATION include/${svnqt-name}/cache)
IF (BUILD_TESTS)
ADD_SUBDIRECTORY(tests)
ADD_SUBDIRECTORY(cache/test)
ENDIF (BUILD_TESTS)

@ -0,0 +1,30 @@
#################################################
#
# (C) 2011 Timothy Pearson
# kb9vqf (AT) pearsoncomputing.net
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
if( BUILD_TRANSLATIONS AND NOT DEFINED MSGFMT_EXECUTABLE )
find_program( MSGFMT_EXECUTABLE msgfmt )
if( NOT MSGFMT_EXECUTABLE )
tde_message_fatal( "msgfmt program is required, but was not found on your system" )
endif( )
endif( )
check_type_size( "int" SIZEOF_INT BUILTIN_TYPES_ONLY )
check_type_size( "long" SIZEOF_LONG BUILTIN_TYPES_ONLY )
check_include_file( stdint.h HAVE_STDINT_H )
check_include_file( systems.h HAVE_SYSTEMS_H )
check_include_file( linux/inotify.h HAVE_INOTIFY )
check_function_exists( statvfs HAVE_STATVFS )
# common required stuff
find_package( TQt )
find_package( TDE )

@ -0,0 +1,5 @@
#cmakedefine SIZEOF_INT @SIZEOF_INT@
#cmakedefine SIZEOF_LONG @SIZEOF_LONG@
#cmakedefine HAVE_STDINT_H 1
#cmakedefine HAVE_SYSTEMS_H 1
#cmakedefine HAVE_STATVFS 1

@ -1,55 +1,44 @@
INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}/src/svnqt) #################################################
FILE(GLOB hdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h") #
SET(kded_tdesvnd_src # (C) 2011 Timothy Pearson
tdesvnd_dcop.cpp # kb9vqf (AT) pearsoncomputing.net
${hdr} #
) # Improvements and feedback are welcome
#
KDE3_ADD_MOC_FILES(kded_tdesvnd_src tdesvnd_dcop.h) # This file is released under GPL >= 2
#
KDE3_ADD_DCOP_SKELS(kded_tdesvnd_src #################################################
tdesvnd_dcop.h)
include_directories(
KDE3_ADD_KPART(kded_tdesvnd ${kded_tdesvnd_src}) ${TQT_INCLUDE_DIRS}
${TDE_INCLUDE_DIR}
TARGET_LINK_LIBRARIES(kded_tdesvnd ${CMAKE_BINARY_DIR}
svnqt ${CMAKE_BINARY_DIR}/src
ksvnwidgets ${CMAKE_SOURCE_DIR}/src
tdesvnhelpers ${CMAKE_BINARY_DIR}/src/svnqt
tdesvncfgreader )
${QT_AND_TDECORE_LIBS} ${KDE3_KIO_LIBRARY} ${KDE3_DCOP_LIBRARY}
${KDE3_UI_LIBRARY} ${KDE3_WALLET_LIBRARY} link_directories(
${KDE3_KINIT_KDED_LIBRARY}) ${TQT_LIBRARY_DIRS}
)
SET_TARGET_PROPERTIES(kded_tdesvnd
PROPERTIES
LINK_FLAGS "${LINK_NO_UNDEFINED} ${_BASE_LDADD} ${APR_EXTRA_LIBFLAGS} ${APU_EXTRA_LIBFLAGS} -module") ##### kio_ksvn ##################################
INSTALL(TARGETS kded_tdesvnd file (GLOB hdr RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h")
RUNTIME DESTINATION ${BIN_INSTALL_DIR}
LIBRARY DESTINATION ${PLUGIN_INSTALL_DIR}) tde_add_kpart( kio_ksvn AUTOMOC
SOURCES kded_tdesvnd_src tdesvnd_dcop.cpp ${hdr}
KDESVN_GENERATE_LIBTOOL_FILE(kded_tdesvnd) LINK kio_ksvn kded_tdesvnd svnqt ksvnwidgets tdesvnhelpers tdesvncfgreader tdecore-shared tdeui-shared DCOP-shared kio-shared kwallet-shared
DESTINATION ${PLUGIN_INSTALL_DIR}
IF(KDE3_KDECONFIG_EXECUTABLE) )
EXECUTE_PROCESS(COMMAND ${KDE3_KDECONFIG_EXECUTABLE} "--version" OUTPUT_VARIABLE output)
STRING(REGEX MATCH "KDE: [0-9]+\\.[0-9]+\\.[0-9]+" KDEVERSION "${output}")
STRING(REGEX REPLACE "^KDE: " "" KDEVERSION "${KDEVERSION}") ##### other files ###############################
ENDIF(KDE3_KDECONFIG_EXECUTABLE)
SET(KDE_MIN_VERSION "3.5.0") set( ACTION_MENU "X-KDE-GetActionMenu=kded tdesvnd getActionMenu(KURL::List)" )
MACRO_ENSURE_VERSION(${KDE_MIN_VERSION} ${KDEVERSION} VERSION_OK)
configure_file (tdesvn_subversion.desktop.in ${CMAKE_CURRENT_BINARY_DIR}/tdesvn_subversion.desktop @ONLY )
IF(VERSION_OK)
SET(ACTION_MENU "X-KDE-GetActionMenu=kded tdesvnd getActionMenu(KURL::List)") install (FILES ${CMAKE_CURRENT_BINARY_DIR}/tdesvn_subversion.desktop DESTINATION ${DATA_INSTALL_DIR}/konqueror/servicemenus )
ELSE(VERSION_OK) install (FILES ${CMAKE_CURRENT_SOURCE_DIR}/tdesvnd.desktop DESTINATION ${SERVICES_INSTALL_DIR}/kded )
SET(ACTION_MENU "Actions=Update;Commit;Add;Delete;Blame;Log;Diff;Checkout;Export;Info;Addnew;Switch;Revert;Rename;Tree")
ENDIF(VERSION_OK)
CONFIGURE_FILE(tdesvn_subversion.desktop.in
${CMAKE_CURRENT_BINARY_DIR}/tdesvn_subversion.desktop @ONLY)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/tdesvn_subversion.desktop
DESTINATION ${DATA_INSTALL_DIR}/konqueror/servicemenus)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/tdesvnd.desktop
DESTINATION ${SERVICES_INSTALL_DIR}/kded)

Loading…
Cancel
Save