2021-10-27 08:12:26 +00:00
|
|
|
cmake_minimum_required (VERSION 3.20)
|
2019-06-02 09:33:44 +00:00
|
|
|
|
|
|
|
# projectname is the same as the main-executable
|
2019-07-14 06:22:20 +00:00
|
|
|
project(Renga)
|
2019-06-02 09:33:44 +00:00
|
|
|
|
|
|
|
add_definitions('-g')
|
2019-06-04 17:35:35 +00:00
|
|
|
add_definitions('-Wall' '-Wextra' '-Werror' '-Wno-multichar')
|
2019-09-29 18:55:34 +00:00
|
|
|
add_compile_options(-fdiagnostics-color=always)
|
2019-06-02 09:33:44 +00:00
|
|
|
|
2019-07-14 06:22:20 +00:00
|
|
|
add_executable(Renga
|
2019-09-29 20:12:10 +00:00
|
|
|
# TODO review all these files for usefulness and relevance
|
2019-06-02 09:33:44 +00:00
|
|
|
jabber/Agent.cpp
|
|
|
|
jabber/UserID.cpp
|
|
|
|
jabber/ChatTextView.cpp
|
|
|
|
jabber/CustomStatusWindow.cpp
|
|
|
|
jabber/LoginPreferencesView.cpp
|
|
|
|
jabber/PreferencesWindow.cpp
|
|
|
|
jabber/RosterItem.cpp
|
|
|
|
jabber/RosterView.cpp
|
|
|
|
jabber/SendTalkWindow.cpp
|
|
|
|
jabber/SoundPreferencesView.cpp
|
|
|
|
jabber/TalkListItem.cpp
|
|
|
|
jabber/TalkManager.cpp
|
|
|
|
jabber/TransportItem.cpp
|
|
|
|
jabber/TransportPreferencesView.cpp
|
|
|
|
jabber/BlabberApp.cpp
|
|
|
|
jabber/AgentList.cpp
|
|
|
|
jabber/BlabberSettings.cpp
|
|
|
|
jabber/JabberSpeak.cpp
|
|
|
|
jabber/JRoster.cpp
|
|
|
|
jabber/SoundSystem.cpp
|
|
|
|
jabber/GenericFunctions.cpp
|
|
|
|
jabber/FileItem.cpp
|
|
|
|
jabber/StatusView.cpp
|
|
|
|
jabber/MessageRepeater.cpp
|
|
|
|
jabber/FileXMLReader.cpp
|
|
|
|
jabber/XMLEntity.cpp
|
|
|
|
jabber/XMLReader.cpp
|
2019-09-27 19:27:39 +00:00
|
|
|
|
2019-09-28 08:28:24 +00:00
|
|
|
# Gloox extras (to be upstreamed, I guess)
|
2019-09-27 19:27:39 +00:00
|
|
|
network/bob.cpp
|
2019-09-28 08:28:24 +00:00
|
|
|
network/bookmark2storage.cpp
|
2019-09-27 19:27:39 +00:00
|
|
|
network/media.cpp
|
2019-09-28 08:28:24 +00:00
|
|
|
|
|
|
|
# "Modern" XMPP classes using gloox cleanly and directly
|
2019-09-29 15:13:50 +00:00
|
|
|
network/BobStore.cpp
|
2019-09-28 08:28:24 +00:00
|
|
|
network/BookmarkManager.cpp
|
2019-09-27 19:27:39 +00:00
|
|
|
network/GlooxHandler.cpp
|
|
|
|
|
2019-09-29 20:12:10 +00:00
|
|
|
# Misc. support stuff
|
2019-09-30 09:30:32 +00:00
|
|
|
support/AppLocation.cpp
|
2019-09-29 20:12:10 +00:00
|
|
|
support/main.cpp
|
|
|
|
|
2019-09-28 08:28:24 +00:00
|
|
|
# "Modern" UI classes using gloox types and StartWatching/SendNotices
|
2019-09-29 20:12:10 +00:00
|
|
|
ui/AboutWindow.cpp
|
2021-10-26 21:50:08 +00:00
|
|
|
ui/AddBuddyWindow.cpp
|
2019-09-28 08:28:24 +00:00
|
|
|
ui/BookmarkItem.cpp
|
2020-11-21 13:32:27 +00:00
|
|
|
ui/BuddyInfoWindow.cpp
|
2019-09-29 18:55:34 +00:00
|
|
|
ui/ChangeNameWindow.cpp
|
2020-08-21 17:43:43 +00:00
|
|
|
ui/EditingFilter.cpp
|
2021-05-23 08:26:08 +00:00
|
|
|
ui/HVIFUtil.cpp
|
2020-08-21 17:43:43 +00:00
|
|
|
ui/MainWindow.cpp
|
2019-09-29 08:29:20 +00:00
|
|
|
ui/ModalAlertFactory.cpp
|
2020-08-21 17:43:43 +00:00
|
|
|
ui/PeopleListItem.cpp
|
2019-09-29 08:29:20 +00:00
|
|
|
ui/PictureView.cpp
|
2019-09-27 19:27:39 +00:00
|
|
|
ui/RegisterAccountWindow.cpp
|
2019-09-29 20:12:10 +00:00
|
|
|
ui/RosterSuperitem.cpp
|
2020-08-21 17:43:43 +00:00
|
|
|
ui/RotateChatFilter.cpp
|
2020-08-21 09:49:53 +00:00
|
|
|
ui/TalkView.cpp
|
2019-06-02 09:33:44 +00:00
|
|
|
)
|
|
|
|
|
2019-09-29 15:41:05 +00:00
|
|
|
set_property(TARGET Renga PROPERTY CXX_STANDARD 14)
|
|
|
|
|
|
|
|
find_library(gloox gloox)
|
|
|
|
if(NOT gloox)
|
|
|
|
message(FATAL_ERROR "gloox not found, try pkgman install devel:libgloox_x86")
|
|
|
|
endif()
|
|
|
|
|
|
|
|
find_library(expat expat)
|
2019-12-10 07:15:08 +00:00
|
|
|
if(NOT expat)
|
2019-09-29 15:41:05 +00:00
|
|
|
message(FATAL_ERROR "expat not found, try pkgman install devel:libexpat_x86")
|
|
|
|
endif()
|
|
|
|
|
2019-07-14 06:22:20 +00:00
|
|
|
target_link_libraries(Renga
|
2020-11-21 21:05:56 +00:00
|
|
|
be expat game gloox shared tracker translation
|
2019-06-02 09:33:44 +00:00
|
|
|
)
|
|
|
|
|
2021-09-12 10:38:41 +00:00
|
|
|
add_custom_command(TARGET Renga POST_BUILD
|
2019-06-02 09:33:44 +00:00
|
|
|
COMMAND rc -o Resource.rsrc ${CMAKE_SOURCE_DIR}/jabber/Resource.rdef
|
2019-07-14 06:22:20 +00:00
|
|
|
COMMAND xres -o ${CMAKE_BINARY_DIR}/Renga Resource.rsrc
|
2019-06-02 09:33:44 +00:00
|
|
|
-a PiNG:2:bulb-normal ${CMAKE_SOURCE_DIR}/resources/graphics/bulb-normal.png
|
|
|
|
-a PiNG:3:bulb-big ${CMAKE_SOURCE_DIR}/resources/graphics/bulb-big.png
|
2021-05-22 12:12:13 +00:00
|
|
|
-a VICN:4:away-online ${CMAKE_SOURCE_DIR}/resources/icons/away-online.hvif
|
|
|
|
-a VICN:5:online ${CMAKE_SOURCE_DIR}/resources/icons/online.hvif
|
|
|
|
-a VICN:6:offline ${CMAKE_SOURCE_DIR}/resources/icons/offline.hvif
|
|
|
|
-a VICN:7:unknown ${CMAKE_SOURCE_DIR}/resources/icons/unknown.hvif
|
2020-11-21 21:05:56 +00:00
|
|
|
-a VICN:10:preferred ${CMAKE_SOURCE_DIR}/resources/icons/preferred.hvif
|
|
|
|
-a VICN:11:home ${CMAKE_SOURCE_DIR}/resources/icons/home.hvif
|
|
|
|
-a VICN:12:work ${CMAKE_SOURCE_DIR}/resources/icons/work.hvif
|
2019-07-14 06:22:20 +00:00
|
|
|
COMMAND mimeset -f ${CMAKE_BINARY_DIR}/Renga
|
2019-06-02 09:33:44 +00:00
|
|
|
DEPENDS jabber/Resource.rdef
|
|
|
|
)
|
|
|
|
|
2019-07-14 06:22:20 +00:00
|
|
|
install(TARGETS Renga RUNTIME DESTINATION apps/)
|
2019-09-27 19:27:39 +00:00
|
|
|
|
2020-08-21 17:43:43 +00:00
|
|
|
include_directories(${CMAKE_SOURCE_DIR})
|
|
|
|
|
2019-09-27 19:27:39 +00:00
|
|
|
# Testing support
|
|
|
|
|
|
|
|
#add_executable(Test
|
|
|
|
# tests/Test.cpp
|
|
|
|
#)
|
|
|
|
|
|
|
|
#target_link_libraries(Test be)
|
|
|
|
|
|
|
|
# YouCompleteMe support
|
|
|
|
|
|
|
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
|
|
|
|
|
|
|
if(EXISTS "${CMAKE_CURRENT_BINARY_DIR}/compile_commands.json")
|
|
|
|
EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/compile_commands.json
|
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/compile_commands.json
|
|
|
|
)
|
|
|
|
endif()
|