Skip to content

Commit 531f92e

Browse files
committed
migrate from mqtt to amq
1 parent 84d0c2f commit 531f92e

File tree

5 files changed

+398
-63
lines changed

5 files changed

+398
-63
lines changed

CMakeLists.txt

Lines changed: 26 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ cmake_minimum_required(VERSION 3.21)
22
set(CMAKE_CXX_STANDARD 20)
33
set(CMAKE_CXX_STANDARD_REQUIRED ON)
44

5+
set(CMAKE_POLICY_VERSION_MINIMUM 3.5)
6+
57
if ("${CMAKE_SYSTEM_NAME}" STREQUAL "iOS" OR IOS)
68
set(CMAKE_OSX_ARCHITECTURES "arm64")
79
add_definitions(-DGLES_SILENCE_DEPRECATION)
@@ -49,42 +51,31 @@ file(GLOB SOURCES
4951
# Set up the mod binary
5052
add_library(${PROJECT_NAME} SHARED ${SOURCES})
5153

52-
set(PAHO_BUILD_SHARED OFF CACHE INTERNAL "")
53-
set(PAHO_BUILD_STATIC ON CACHE INTERNAL "")
54-
set(PAHO_ENABLE_TESTING OFF CACHE INTERNAL "")
55-
set(PAHO_BUILD_TESTS OFF CACHE INTERNAL "")
56-
set(PAHO_WITH_MQTT_C ON CACHE INTERNAL "")
57-
set(PAHO_WITH_SSL OFF CACHE INTERNAL "")
58-
59-
FetchContent_Declare(
60-
paho-mqttpp3-static
61-
GIT_REPOSITORY https://github.com/eclipse-paho/paho.mqtt.cpp.git
62-
GIT_TAG 71f78aafc3246c05d624098b8438129f5e0a70e5
63-
)
54+
set(ENABLE_SSL_SUPPORT OFF)
55+
set(BUILD_EXAMPLES OFF)
56+
set(BUILD_SHARED_LIBS OFF)
57+
set(BUILD_TESTING OFF)
58+
set(BUILD_TOOLS OFF)
59+
set(BUILD_TOOLS_DOCS OFF)
60+
#set(INSTALL_STATIC_LIBS OFF)
61+
CPMAddPackage("gh:alanxz/rabbitmq-c#035eaa8")
62+
63+
set(BUILD_TESTING OFF)
64+
set(BUILD_BENCH OFF)
65+
set(BUILD_SHARED_LIBS OFF)
66+
67+
#CPMAddPackage("gh:libuv/libuv#c1a9f01")
68+
#CPMAddPackage("gh:CopernicaMarketingSoftware/AMQP-CPP#ca49382")
6469

65-
#FetchContent_MakeAvailable(paho-mqttpp3-static)
66-
FetchContent_GetProperties(paho-mqttpp3-static)
67-
# patch it because apparently stl doesnt like basic_string
68-
if(NOT paho-mqttpp3-static_POPULATED)
69-
FetchContent_Populate(paho-mqttpp3-static)
70-
configure_file(
71-
${CMAKE_CURRENT_SOURCE_DIR}/patch/ssl_options.h
72-
${paho-mqttpp3-static_SOURCE_DIR}/include/mqtt/ssl_options.h
73-
COPYONLY
74-
)
75-
configure_file(
76-
${CMAKE_CURRENT_SOURCE_DIR}/patch/ssl_options.cpp
77-
${paho-mqttpp3-static_SOURCE_DIR}/src/ssl_options.cpp
78-
COPYONLY
79-
)
80-
add_subdirectory(${paho-mqttpp3-static_SOURCE_DIR} ${paho-mqttpp3-static_BINARY_DIR})
81-
endif()
8270

8371
target_include_directories(${PROJECT_NAME} PRIVATE
8472
libs/filesystem
8573
libs/pl_mpeg/
8674
libs/glew/
87-
${paho-mqttpp3-static_SOURCE_DIR}/src
75+
${rabbitmq-c_SOURCE_DIR}/include
76+
#${amqpcpp_SOURCE_DIR}/src
77+
#${amqpcpp_SOURCE_DIR}/include
78+
#${libuv_SOURCE_DIR}/include
8879
)
8980

9081
if (NOT DEFINED ENV{GEODE_SDK})
@@ -96,9 +87,11 @@ endif()
9687
add_subdirectory($ENV{GEODE_SDK} ${CMAKE_CURRENT_BINARY_DIR}/geode)
9788

9889
if (APPLE AND NOT (${CMAKE_SYSTEM_NAME} STREQUAL "iOS" OR IOS))
99-
target_link_libraries(${PROJECT_NAME} paho-mqttpp3-static "-framework OpenGL")
90+
target_link_libraries(${PROJECT_NAME} rabbitmq::rabbitmq-static "-framework OpenGL")
91+
#target_link_libraries(${PROJECT_NAME} uv_a amqpcpp "-framework OpenGL")
10092
else()
101-
target_link_libraries(${PROJECT_NAME} paho-mqttpp3-static)
93+
target_link_libraries(${PROJECT_NAME} rabbitmq::rabbitmq-static)
94+
#target_link_libraries(${PROJECT_NAME} uv_a amqpcpp)
10295
endif()
10396
if (CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux" AND WIN32)
10497
message("compiling on linux!!")
@@ -108,6 +101,7 @@ elseif(${GEODE_TARGET_PLATFORM} STREQUAL "Win32")
108101
target_link_libraries(${PROJECT_NAME} opengl32 ws2_32 Crypt32 Wldap32 Normaliz)
109102
endif()
110103
if (WIN32)
104+
add_compile_definitions(WIN32_LEAN_AND_MEAN _WIN32_WINNT=0x0601)
111105
# Disable annoying warnings
112106
target_compile_definitions(${PROJECT_NAME} PRIVATE _CRT_SECURE_NO_WARNINGS)
113107
endif()

src/Notifications/EventsPush.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -851,8 +851,8 @@ void EventsPush::stopNow(CCScene* scene) {
851851
EventsPush::eventCompletedCallback(scene);
852852
}
853853

854-
void EventsPush::pushRateLevel(CCScene* self, mqtt::const_message_ptr data) {
855-
EventData eventData = matjson::Serialize<EventData>::fromJson(matjson::parse(data->to_string()).unwrapOrDefault()).unwrapOrDefault();
854+
void EventsPush::pushRateLevel(CCScene* self, std::string data) {
855+
EventData eventData = matjson::Serialize<EventData>::fromJson(matjson::parse(data).unwrapOrDefault()).unwrapOrDefault();
856856
/*log::info(
857857
"EventData [\ndemon = {};\nstarsum = {};\nstars = {};\nrate = {};\ntype = {};\ntitle = {};\nsprite = {};\nlevel_name = {};\nlevel_creator = {};\ncoins = {};\nverified_coins = {};\nplatformer = {};\nlevel_id = {};\nlevels_list = {};\nmaxToCompleteList = {};\n]",
858858
eventData.demon,

src/Notifications/EventsPush.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ class EventsPush : public CCLayer {
1717
void destroySelf();
1818
void onClickBtn(CCObject*);
1919
static EventsPush* create(EventData data);
20-
static void pushRateLevel(CCScene* self, mqtt::const_message_ptr data);
20+
static void pushRateLevel(CCScene* self, std::string data);
2121
static void pushRateLevel(CCScene* self, EventData data);
2222
static void processNextEvent(CCScene* self);
2323
static void eventCompletedCallback(CCScene* self);

src/includes.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,10 @@
33
#include <random>
44
using namespace geode::prelude;
55

6-
#include <mqtt/async_client.h>
76
#include <variant>
87
#include <mutex>
98
#include <thread>
109
#include <algorithm>
11-
#ifdef GEODE_IS_WINDOWS
12-
#include <synchapi.h>
13-
#endif
1410

1511
#define OPT(expr) if (auto __opt__ = expr) __opt__
1612

0 commit comments

Comments
 (0)