Re-architecting build.

This commit is contained in:
Pedro Pinto committed 2018-07-06 16:25:37 +00:00
1 parent b8bd3944ce
commit 8e4d4782ce
45 files changed
+247 -188

No files matched your search

+13 -6
View File
@@ -32,10 +32,17 @@ if (WIN32)
add_subdirectory(src/lib)
else ()
set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} \
-Wall -pedantic -Wextra -Werror -Wno-missing-braces -Wno-ignored-qualifiers --std=c++14 -fdiagnostics-color")
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_DEBUG} -DNDEBUG -O3")
add_subdirectory(src/lib)
add_subdirectory(src/server/sparkd)
add_subdirectory(src/web)
# so that sparkd looks for libspark.so in its directory
set (CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
set (CMAKE_INSTALL_RPATH ".")
set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} \
-fPIC -Wall -pedantic -Wextra -Werror \
-Wno-missing-braces -Wno-ignored-qualifiers \
--std=c++14 -fdiagnostics-color")
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_DEBUG} -DNDEBUG -O3")
add_subdirectory(src/server/sparkd)
add_subdirectory(src/lib)
add_subdirectory(src/web)
add_subdirectory(src/sdk)
endif()
+1 -1
View File
@@ -4,7 +4,7 @@ VisualStudioVersion = 15.0.27130.2024
MinimumVisualStudioVersion = 15.0.26124.0
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "spark_api", "src\client\spark_api\spark_api.csproj", "{DC9A8975-8211-4FC9-A9BA-C8B9D26AD481}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spark_lib", "build\src\lib\spark_lib.vcxproj", "{502FD050-679A-3B50-B438-098500700919}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspark", "build\src\lib\libspark.vcxproj", "{502FD050-679A-3B50-B438-098500700919}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Spark", "src\client\spark\Spark.csproj", "{9A4D4D07-1AB6-4B2B-B111-A4F34D6C267E}"
EndProject
+1 -1
View File
@@ -5,7 +5,7 @@ VisualStudioVersion = 15.0.26730.10
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sparkd", "src\server\sparkd\sparkd.vcxproj", "{BBBAFD38-312D-4A8D-9AF0-F2BDEE72CE6F}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spark_lib", "build\src\lib\spark_lib.vcxproj", "{502FD050-679A-3B50-B438-098500700919}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspark", "build\src\lib\libspark.vcxproj", "{502FD050-679A-3B50-B438-098500700919}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
+2 -2
View File
@@ -177,9 +177,9 @@ namespace mbts.api.Test {
class ApiTestsNativeMethods {
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern IntPtr apitest_start_apitest_service(IntPtr context);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void apitest_stop_apitest_service(IntPtr server);
}
@@ -8,10 +8,10 @@ namespace mbts.ui.native
{
public static class BTSUINativeMethods
{
[DllImport("spark_lib")]
[DllImport("libspark")]
public static extern void enable_limits();
[DllImport("spark_lib", CharSet = CharSet.Unicode)]
[DllImport("libspark", CharSet = CharSet.Unicode)]
public static extern void set_window_app_id(IntPtr hwnd, string stack_id);
}
}
+14 -14
View File
@@ -10,10 +10,10 @@ using System.Threading.Tasks;
namespace bts.api.core {
static class ApiNativeMethods {
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern IntPtr api_create_quickbus(byte[] qbconfig, long length);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void api_destroy_quickbus(IntPtr qbus);
@@ -51,24 +51,24 @@ namespace bts.api.core {
int change_count,
IntPtr extra);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern IntPtr api_client_create(IntPtr qbus, string type_name, string service_qualifier);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void api_client_destroy(IntPtr client);
[DllImport("spark_lib")]
[DllImport("libspark")]
[return:MarshalAs(UnmanagedType.I1)]
internal static extern bool api_client_is_on_qb_thread(IntPtr client);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void api_client_send(IntPtr nchannel, byte[] buffer, int length, raw_pb_callback p, IntPtr extra);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern IntPtr api_client_subscribe(IntPtr client, string method_and_qualifier, raw_subscription_callback cb, IntPtr extra);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void api_client_unsubscribe(IntPtr client, IntPtr subscription);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void api_client_log_error(string msg);
#endregion
@@ -81,10 +81,10 @@ namespace bts.api.core {
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
internal unsafe delegate void raw_rpc_request_callback(byte* buffer, long buffer_size, IntPtr cb, IntPtr extra);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern IntPtr api_server_create(IntPtr qbus, string type_name, string service_qualifier, raw_rpc_request_callback callback, IntPtr extra);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void api_server_call_callback(ref IntPtr callback, byte[] buffer, int length);
[StructLayout(LayoutKind.Sequential)]
@@ -95,11 +95,11 @@ namespace bts.api.core {
public IntPtr buffer;
}
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern IntPtr api_server_create_table(IntPtr server, string method_and_qualifier);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void api_server_update_table(IntPtr table, [In] StreamUpdate[] changes, long change_count);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void api_server_destroy_table(IntPtr table);
#endregion
@@ -8,19 +8,19 @@ namespace mbts.utils
{
internal static class BTSNativeMethods
{
[DllImport("spark_lib")]
[DllImport("libspark")]
public static extern void provide_command_line(
[MarshalAs(UnmanagedType.LPArray, ArraySubType = UnmanagedType.LPStr)] string[] argv, int argc);
[DllImport("spark_lib")]
[DllImport("libspark")]
public static extern int get_random_port();
[DllImport("spark_lib")]
[DllImport("libspark")]
public static extern void init_spark_lib();
[DllImport("spark_lib")]
[DllImport("libspark")]
public static extern void finit_spark_lib();
[DllImport("spark_lib")]
[DllImport("libspark")]
public static extern UInt64 ll_now();
[DllImport("kernel32.dll")]
+23 -23
View File
@@ -23,14 +23,14 @@ namespace mbts.co2
}
}
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern IntPtr create_md_consumer(
[MarshalAs(UnmanagedType.LPArray)] UserSymbol[] symbols,
UInt32 count, bool shared);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void destroy_md_consumer(IntPtr consumer);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern bool md_consumer_all_heartbeats_ok(IntPtr consumer);
[StructLayout(LayoutKind.Sequential)]
@@ -42,72 +42,72 @@ namespace mbts.co2
public readonly IntPtr cold_header;
}
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern bool md_consumer_get_handle(IntPtr consumer, security_key key, out BlitPointerTuple tup);
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
internal unsafe delegate void raw_security_callback(security_key key, byte* buffer, UInt64 buffer_size, BlitPointerTuple tup);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern UInt64 md_consumer_walk_security_list(IntPtr consumer, raw_security_callback on_security);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void md_consumer_scan_securities(IntPtr consumer);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void md_consumer_set_on_security(IntPtr consumer, raw_security_callback on_security);
internal unsafe delegate void raw_just_security_callback(security_key key, byte* buffer, UInt64 buffer_size);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal unsafe static extern void md_consumer_get_single_security(MDConsumerHandle.ColdEntry* entry, raw_just_security_callback on_security);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal unsafe static extern bool md_consumer_is_heart_beating(MDConsumerHandle.ColdHeader* header);
internal unsafe delegate void raw_receive_pb(byte* buffer, UInt64 buffer_size);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal unsafe static extern int md_consumer_read_trades(IntPtr consumer, UserSymbol channel, ref Int64 cursor, raw_receive_pb cb);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal unsafe static extern int md_consumer_read_rfqs(IntPtr consumer, UserSymbol channel, ref Int64 cursor, raw_receive_pb cb);
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
internal unsafe delegate void raw_usersymbol_callback(UserSymbol us);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal unsafe static extern void md_consumer_get_system_md_symbols(raw_usersymbol_callback cb);
//
// Relay control
[DllImport("spark_lib")]
[DllImport("libspark")]
internal unsafe static extern IntPtr start_private_relay(IntPtr consumer, UInt32 interval);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal unsafe static extern IntPtr stop_relay(IntPtr relay);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal unsafe static extern IntPtr add_relay_symbol(IntPtr relay, UserSymbol symbol, bts.co2.MDRequest.Types.Flags flags);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal unsafe static extern void post_on_scan_security_thread(Action callback);
}
internal static class Co2NativeTestMethods
{
[DllImport("spark_lib", EntryPoint = "co2_get_1234_handle")]
[DllImport("libspark", EntryPoint = "co2_get_1234_handle")]
internal static extern void get_1234_handle(out UInt64 size, out Co2NativeMethods.BlitPointerTuple pt);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void co2_get_sample_hot(out ulong size, ref MDConsumerHandle.HotEntry entry);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void co2_get_sample_depth(out ulong size, ref MDConsumerHandle.HotDepthEntry entry);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void co2_get_sample_cold(out ulong size, ref MDConsumerHandle.ColdEntry entry);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void co2_get_sample_cold_header(ref MDConsumerHandle.ColdHeader entry);
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern IntPtr co2_produce_test_md();
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void co2_destroy_test_md(IntPtr handle);
}
+5 -5
View File
@@ -60,16 +60,16 @@ namespace mbts.config
/// private
////////////
[DllImport("spark_lib", EntryPoint = "get_buffer")]
[DllImport("libspark", EntryPoint = "get_buffer")]
private static extern IntPtr raw_get_buffer(string key_name, ref int length);
[DllImport("spark_lib")]
[DllImport("libspark")]
private static extern bool initialize_nothrow(StringBuilder buffer, int length);
[DllImport("spark_lib")]
[DllImport("libspark")]
private static extern void reset();
[DllImport("spark_lib")]
[DllImport("libspark")]
internal static extern void configcheck(int count, string[] args);
@@ -105,7 +105,7 @@ namespace mbts.config
public static bool is_running_nunit() {
return AppDomain.CurrentDomain.GetAssemblies().FirstOrDefault(ass => ass.FullName.ToLower().StartsWith("nunit.framework")) != null;
}
[DllImport("spark_lib")]
[DllImport("libspark")]
public static extern void force_unittest_environment();
}
+2 -2
View File
@@ -111,7 +111,7 @@ namespace mbts
return "Log file does not exist";
}
[DllImport("spark_lib")]
[DllImport("libspark")]
private static extern void Logger_log (Level level, Subsystem subsystem, string message, string file, int line);
delegate void on_crash_callback([MarshalAs(UnmanagedType.LPStr)]string msg, [MarshalAs(UnmanagedType.LPStr)] string details);
@@ -120,4 +120,4 @@ namespace mbts
}
public static event Action<string, object> OnSystemCrashing;
}
}
}
@@ -7,7 +7,7 @@ namespace mbts {
return string.Format(input, vals);
}
[DllImport("spark_lib")]
[DllImport("libspark")]
private static extern void ll_to_parts(UInt64 ll_time, out int year, out int month, out int day, out int hour, out int minute, out int second, out int ms);
public static DateTime lldatetime(this ulong ll) {
+1 -1
View File
@@ -50,7 +50,7 @@
<Target Name="CopyProjectReferencesToPackage" DependsOnTargets="ResolveReferences">
<ItemGroup>
<BuildOutputInPackage Include="@(ReferenceCopyLocalPaths->WithMetadataValue('ReferenceSourceTarget', 'ProjectReference'))" />
<BuildOutputInPackage Include="$(OutputPath)..\net471\spark_lib.dll"/>
<BuildOutputInPackage Include="$(OutputPath)..\net471\libspark.dll"/>
</ItemGroup>
</Target>
</Project>
+1 -1
View File
@@ -1 +1 @@
set(sources api/apicore.proto;api/apigateway.proto;api/apioptions.proto;api/core/ApiClientInterop.cpp;api/core/ApiServerInterop.cpp;api/public/ApiServer.cpp;api/public/ClientChannel.cpp;api/public/QuickbusClientChannel.cpp;api/public/ServerChannel.cpp;api/public/ServiceContext.cpp;api/service_helpers/AdminServiceUtils.cpp;api/services/AdminService.proto;api/services/ApiUnitTestService.proto;api/services/ErrorReportService.proto;api/services/HelloService.proto;api/services/MarketDataRelay.proto;api/services/OrderService.proto;api/services/OutOfProcessURLListener.proto;api/services/PersistenceService.proto;api/services/ShellDiagnosticService.proto;api/services/ShellLatencyService.proto;api/services/SyntheticSecurityService.proto;api/services/UserService.proto;api/test/ApiTests.cpp;api/test/HelloServiceServer.cpp;config/ConfigCheck.cpp;config/ConfigDownloader.cpp;config/ConfigErrorCollector.cpp;config/ConfigLog.cpp;config/ConfigPropertyEvaluator.cpp;config/ConfigValueQueue.cpp;config/ConfigurationException.cpp;config/ConfigurationState.cpp;config/PreprocessInputStream.cpp;config/config.cpp;config/defaults/Executor.conf;config/defaults/MarketData.conf;config/defaults/Ports.conf;config/defaults/Symbols.conf;config/defaults/edge.conf;config/defaults/expiration_display_offset.conf;config/defaults/jetfix.conf;config/defaults/logging.conf;config/defaults/testkeys.conf;config/defaults/toggles.conf;config/extensions/extensions.proto;config/invalid/invalid.proto;config/protos/ExchangeSimCfg.proto;config/protos/MarketData.proto;config/protos/Ports.proto;config/protos/Symbols.proto;config/protos/UI.proto;config/protos/environment.proto;config/protos/expiration_display_offset.proto;config/protos/jetfix.proto;config/protos/logging.proto;config/protos/quickbus_cfg.proto;config/protos/system.proto;config/protos/testkeys.proto;config/protos/toggles.proto;config/tests/HTTPServer.cpp;config/tests/config_ref_tests.cpp;config/tests/config_tests.cpp;config/text_format/text_format.cpp;domain_model/Security.cpp;domain_model/Security.proto;domain_model/SecurityTests.cpp;expression/BooleanGrammar.cpp;expression/ExpressionEvaluator.cpp;expression/ParserExceptions.cpp;expression/Value.cpp;expression/tests/expression_parser_tests.cpp;logging/LoggerHub.cpp;logging/Sink.cpp;logging/logging.cpp;logging/tests/logging_tests.cpp;md/Diag/MDPriceLantencyTester.cpp;md/Diag/ShmDumper.cpp;md/MDConsumer.cpp;md/MDConsumerHandle.cpp;md/MDConsumerInterop.cpp;md/MDProducer.cpp;md/MDProducerHandle.cpp;md/MDRecoverableConsumer.cpp;md/MemorySegmentUtils.cpp;md/PlatformLoader.cpp;md/PriceSize.cpp;md/SecurityDB.cpp;md/SecurityIDRecorder.cpp;md/SettlementRecorder.cpp;md/Shm/FixedSecurity.cpp;md/SyntheticSecurityService.cpp;md/common.cpp;md/protos/co2.proto;md/relay/QueryServer.cpp;md/relay/RelayClient.cpp;md/relay/RelayRecorder.cpp;md/test/Co2TestInstrument.cpp;md/test/md2_tests.cpp;md/test/synthetic_book_merge_tests.cpp;os/os.cpp;os/tests/os_tests.cpp;quickbus/core/LocalNode.cpp;quickbus/core/Quickbus.cpp;quickbus/core/SubscriptionID.cpp;quickbus/core/TableID.cpp;quickbus/message_model/Update.cpp;quickbus/message_model/merge_updates.cpp;quickbus/network/QBConnection.cpp;quickbus/network/QBConnectionManager.cpp;quickbus/network/endpoint_description.cpp;quickbus/network/quickbus_msgs.proto;quickbus/pubsub/TablePublisher.cpp;quickbus/pubsub/TableSubscriber.cpp;quickbus/pubsub/tests/qb_pubsub_tests.cpp;quickbus/routing/INode.cpp;quickbus/routing/NodeID.cpp;quickbus/routing/Router.cpp;quickbus/rpc/RPCClient.cpp;quickbus/rpc/RPCServer.cpp;quickbus/rpc/RPCSessionID.cpp;quickbus/rpc/rpc_utils.cpp;quickbus/rpc/tests/qb_rpc_tests.cpp;quickbus/tests/quickbus_tests.cpp;sparkproto/SparkProtos.proto;testing/windows_test_driver.cpp;utils/Dispatcher.cpp;utils/HTTPStream.cpp;utils/PBUtils.cpp;utils/Puid.cpp;utils/SecureLogon.cpp;utils/SharedMemory.cpp;utils/Sqlite_utils.cpp;utils/Uuid.cpp;utils/datetime.cpp;utils/download.cpp;utils/file_utils.cpp;utils/init_spark_lib.cpp;utils/is_unittest_environment.cpp)
set(sources api/apicore.proto;api/apigateway.proto;api/apioptions.proto;api/core/ApiClientInterop.cpp;api/core/ApiServerInterop.cpp;api/public/ApiServer.cpp;api/public/ClientChannel.cpp;api/public/QuickbusClientChannel.cpp;api/public/ServerChannel.cpp;api/public/ServiceContext.cpp;api/service_helpers/AdminServiceUtils.cpp;api/services/AdminService.proto;api/services/ApiUnitTestService.proto;api/services/ErrorReportService.proto;api/services/HelloService.proto;api/services/MarketDataRelay.proto;api/services/OrderService.proto;api/services/OutOfProcessURLListener.proto;api/services/PersistenceService.proto;api/services/ShellDiagnosticService.proto;api/services/ShellLatencyService.proto;api/services/SyntheticSecurityService.proto;api/services/UserService.proto;api/test/ApiTests.cpp;api/test/HelloServiceServer.cpp;config/ConfigCheck.cpp;config/ConfigDownloader.cpp;config/ConfigErrorCollector.cpp;config/ConfigLog.cpp;config/ConfigPropertyEvaluator.cpp;config/ConfigValueQueue.cpp;config/ConfigurationException.cpp;config/ConfigurationState.cpp;config/PreprocessInputStream.cpp;config/config.cpp;config/defaults/Executor.conf;config/defaults/MarketData.conf;config/defaults/Ports.conf;config/defaults/Symbols.conf;config/defaults/edge.conf;config/defaults/expiration_display_offset.conf;config/defaults/jetfix.conf;config/defaults/logging.conf;config/defaults/testkeys.conf;config/defaults/toggles.conf;config/extensions/extensions.proto;config/invalid/invalid.proto;config/protos/ExchangeSimCfg.proto;config/protos/MarketData.proto;config/protos/Ports.proto;config/protos/Symbols.proto;config/protos/UI.proto;config/protos/environment.proto;config/protos/expiration_display_offset.proto;config/protos/jetfix.proto;config/protos/logging.proto;config/protos/quickbus_cfg.proto;config/protos/system.proto;config/protos/testkeys.proto;config/protos/toggles.proto;config/tests/HTTPServer.cpp;config/tests/config_ref_tests.cpp;config/tests/config_tests.cpp;config/text_format/text_format.cpp;domain_model/Security.cpp;domain_model/Security.proto;domain_model/SecurityTests.cpp;expression/BooleanGrammar.cpp;expression/ExpressionEvaluator.cpp;expression/ParserExceptions.cpp;expression/Value.cpp;expression/tests/expression_parser_tests.cpp;logging/LoggerHub.cpp;logging/Sink.cpp;logging/logging.cpp;logging/tests/logging_tests.cpp;md/Diag/MDPriceLantencyTester.cpp;md/Diag/ShmDumper.cpp;md/MDConsumer.cpp;md/MDConsumerHandle.cpp;md/MDConsumerInterop.cpp;md/MDProducer.cpp;md/MDProducerHandle.cpp;md/MDRecoverableConsumer.cpp;md/MemorySegmentUtils.cpp;md/PlatformLoader.cpp;md/PriceSize.cpp;md/SecurityDB.cpp;md/SecurityIDRecorder.cpp;md/SettlementRecorder.cpp;md/Shm/FixedSecurity.cpp;md/SyntheticSecurityService.cpp;md/common.cpp;md/protos/co2.proto;md/relay/QueryServer.cpp;md/relay/RelayClient.cpp;md/relay/RelayRecorder.cpp;md/test/Co2TestInstrument.cpp;md/test/md2_tests.cpp;md/test/synthetic_book_merge_tests.cpp;metrics/metrics.cpp;metrics/system_metrics.cpp;os/os.cpp;os/tests/os_tests.cpp;quickbus/core/LocalNode.cpp;quickbus/core/Quickbus.cpp;quickbus/core/SubscriptionID.cpp;quickbus/core/TableID.cpp;quickbus/message_model/Update.cpp;quickbus/message_model/merge_updates.cpp;quickbus/network/QBConnection.cpp;quickbus/network/QBConnectionManager.cpp;quickbus/network/endpoint_description.cpp;quickbus/network/quickbus_msgs.proto;quickbus/pubsub/TablePublisher.cpp;quickbus/pubsub/TableSubscriber.cpp;quickbus/pubsub/tests/qb_pubsub_tests.cpp;quickbus/routing/INode.cpp;quickbus/routing/NodeID.cpp;quickbus/routing/Router.cpp;quickbus/rpc/RPCClient.cpp;quickbus/rpc/RPCServer.cpp;quickbus/rpc/RPCSessionID.cpp;quickbus/rpc/rpc_utils.cpp;quickbus/rpc/tests/qb_rpc_tests.cpp;quickbus/tests/quickbus_tests.cpp;sparkproto/SparkProtos.proto;testing/catch_test_runner.cpp;utils/Dispatcher.cpp;utils/HTTPStream.cpp;utils/PBUtils.cpp;utils/Puid.cpp;utils/SecureLogon.cpp;utils/SharedMemory.cpp;utils/Sqlite_utils.cpp;utils/Uuid.cpp;utils/datetime.cpp;utils/download.cpp;utils/file_utils.cpp;utils/init_spark_lib.cpp;utils/is_unittest_environment.cpp)
+33 -28
View File
@@ -1,28 +1,33 @@
cmake_minimum_required(VERSION 3.5)
project(spark_lib)
project(libspark)
set(CMAKE_SHARED_LIBRARY_PREFIX "")
include(${CMAKE_SOURCE_DIR}/tools/safe_dep_glob.cmake)
include(${CMAKE_SOURCE_DIR}/tools/Protobuf.cmake)
# DEPENDENCIES
# config protos
file(GLOB_RECURSE Config_Protos RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} config/protos/*.proto)
# service protos
file (GLOB_RECURSE Service_Protos RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} api/services/*.proto)
# non config/non service protos
file(GLOB_RECURSE NonConfig_Protos RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.proto)
list(REMOVE_ITEM NonConfig_Protos ${Service_Protos} ${Config_Protos})
# normal cpps
file(GLOB_RECURSE SparkLib_Sources RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp)
# defaults
file(GLOB_RECURSE Conf_Defaults RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} config/defaults/*.conf)
# this is used to communicate to other repositories that the build
# needs to happen again (because a file was added)
if (WIN32)
file(GLOB_RECURSE SparkLib_Sources RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
api/*.cpp
config/*.cpp
domain_model/*.cpp
expression/*.cpp
logging/*.cpp
md/*.cpp
os/*.cpp
quickbus/*.cpp
sparkproto/*.cpp
testing/*.cpp
utils/*.cpp)
else ()
file(GLOB_RECURSE SparkLib_Sources RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp)
endif()
update_deps_file("${SparkLib_Sources};${Config_Protos};${Service_Protos};${NonConfig_Protos};${Conf_Defaults}")
# END DEPENDENCIES
@@ -55,15 +60,15 @@ foreach (cfg_file_path ${Conf_Defaults})
configure_file(${cfg_file_path} ${CMAKE_BINARY_DIR}/src/server/sparkd/defaults/${cfg_file_name})
endforeach(cfg_file_path)
# spark_lib
# lib
if (WIN32)
add_library(spark_lib SHARED
add_library(libspark SHARED
${SparkLib_Sources}
${PROTO_SRCS}
${SERVICE_COMPILER_SRCS}
)
else ()
add_library(spark_lib STATIC
add_library(libspark SHARED
${SparkLib_Sources}
${PROTO_SRCS}
${SERVICE_COMPILER_SRCS}
@@ -71,10 +76,10 @@ else ()
endif()
#include paths
target_include_directories( spark_lib PUBLIC ${CMAKE_SOURCE_DIR}/src ${CMAKE_BINARY_DIR}/src)
target_include_directories( libspark PUBLIC ${CMAKE_SOURCE_DIR}/src ${CMAKE_BINARY_DIR}/src)
if (WIN32)
target_link_libraries( spark_lib
target_link_libraries( libspark
libcurl
libfmt
libtbb
@@ -88,12 +93,8 @@ if (WIN32)
libprotobuf
)
else ()
target_link_libraries( spark_lib
curl
ssl
crypto
fmt
tbb
target_link_libraries( libspark
protobuf
boost_system
boost_thread
boost_filesystem
@@ -101,9 +102,13 @@ else ()
boost_chrono
boost_date_time
boost_atomic
protobuf
uuid.a
sqlite3
curl
uuid
ssl
crypto
fmt
tbb
cryptopp
-lrt
-ldl
@@ -116,4 +121,4 @@ if (WIN32)
include(${CMAKE_SOURCE_DIR}/tools/vs_filters.cmake)
endif()
+1 -1
View File
@@ -84,7 +84,7 @@ private:
MDProducerHandle();
friend class tbb::concurrent_queue < MDProducerHandle > ;
friend class SecurityIDRecorder;
friend struct bts::co2::Work;//fuckingc++
friend struct bts::co2::Work;
HotEntry& hdata() const {
bts_assert_d(_hdata && !has_depth());
+1 -1
View File
@@ -16,7 +16,7 @@
#include "lib/api/services/MarketDataRelay.server.pb.h"
#include "lib/api/public/ServiceContext.h"
#ifndef _WIN32
#include "server/sparkd/metrics/metrics.h"
#include "lib/metrics/metrics.h"
#endif
#include <vector>
+1 -1
View File
@@ -10,7 +10,7 @@
#include "lib/utils/defer.h"
#include "lib/utils/warn_ctrl.h"
#include "lib/utils/bts_chrono.h"
#include "server/sparkd/metrics/metrics.h"
#include "lib/metrics/metrics.h"
#include "lib/config/protos/MarketData.pb.h"
File renamed without changes.
File renamed without changes.
File renamed without changes.
+1 -1
View File
@@ -438,7 +438,7 @@ std::string get_application_path(const char *module_name) {
std::string get_install_path() {
// The install path is the location of spark_lib (on Windows) since there may
// be an api client or other entry point (nunit?)
auto result = get_application_path("spark_lib");
auto result = get_application_path("libspark");
// Trim the filename
size_t last = result.find_last_of("/\\");
result.erase(last);
@@ -1,46 +1,46 @@
#include "catch_test_runner.h"
#define CATCH_CONFIG_RUNNER
#include "catch/catch.hpp"
#include "lib/logging/logging.h"
#include "lib/config/config.h"
#include "lib/config/protos/logging.pb.h"
#include "lib/utils/bts_assert.h"
#include "lib/utils/is_unittest_environment.h"
namespace bts {
int run_tests (std::vector<std::string> const&args)
{
// these are necessary to work around an issue with the catch auto
// registration
// https://groups.google.com/forum/#!msg/catch-forum/FV0Qo62DvgY/jxEO6c9_q3kJ
extern int config_tests; config_tests = 0;
extern int config_ref_tests; config_ref_tests=0;
extern int logging_tests; logging_tests=0;
extern int quickbus_tests; quickbus_tests=0;
extern int qb_rpc_tests; qb_rpc_tests=0;
extern int qb_pubsub_tests; qb_rpc_tests=0;
extern int md_tests; md_tests=42;
extern int synthetic_book_merge_tests; synthetic_book_merge_tests = 0;
extern int security_tests; security_tests = 0;
utils::internal::force_unittest_environment();
auto cfg = config::get<config::Logging> ();
cfg.mutable_console()->set_default_level("Fatal");
log::configure_logging(cfg);
bts_assert(args.size() < 100);
char const *argv[100];
argv[0] = "test"; //the cmd processor takes the first arg away
for (size_t i = 0; i < args.size();i++)
argv[i+1] = args[i].c_str();
int result = Catch::Session().run( args.size() + 1, argv );
return ( result < 0xff ? result : 0xff );
}
}
#define CATCH_CONFIG_RUNNER
#include "catch_test_runner.h"
#include "catch/catch.hpp"
#include "lib/logging/logging.h"
#include "lib/config/config.h"
#include "lib/config/protos/logging.pb.h"
#include "lib/utils/bts_assert.h"
#include "lib/utils/is_unittest_environment.h"
namespace bts {
int run_tests (std::vector<std::string> const&args)
{
// these are necessary to work around an issue with the catch auto
// registration
// https://groups.google.com/forum/#!msg/catch-forum/FV0Qo62DvgY/jxEO6c9_q3kJ
extern int config_tests; config_tests = 0;
extern int config_ref_tests; config_ref_tests=0;
extern int logging_tests; logging_tests=0;
extern int quickbus_tests; quickbus_tests=0;
extern int qb_rpc_tests; qb_rpc_tests=0;
extern int qb_pubsub_tests; qb_rpc_tests=0;
extern int md_tests; md_tests=42;
extern int synthetic_book_merge_tests; synthetic_book_merge_tests = 0;
extern int security_tests; security_tests = 0;
utils::internal::force_unittest_environment();
auto cfg = config::get<config::Logging> ();
cfg.mutable_console()->set_default_level("Fatal");
log::configure_logging(cfg);
bts_assert(args.size() < 100);
char const *argv[100];
argv[0] = "test"; //the cmd processor takes the first arg away
for (size_t i = 0; i < args.size();i++)
argv[i+1] = args[i].c_str();
int result = Catch::Session().run( args.size() + 1, argv );
return ( result < 0xff ? result : 0xff );
}
}
-6
View File
@@ -1,6 +0,0 @@
#ifdef WIN32
#define CATCH_CONFIG_RUNNER
#include "catch/catch.hpp"
#endif
+16
View File
@@ -0,0 +1,16 @@
cmake_minimum_required(VERSION 3.5)
project(sdk)
add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/sdk
COMMAND /bin/bash ${CMAKE_CURRENT_SOURCE_DIR}/make_sdk.sh
ARGS ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}
COMMENT "Building SDK"
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/make_sdk.sh
${CMAKE_CURRENT_SOURCE_DIR}/build_example.sh
${CMAKE_CURRENT_SOURCE_DIR}/example.cpp
sparkd
libspark)
add_custom_target(sdk_dir ALL DEPENDS ${CMAKE_BINARY_DIR}/sdk)
+18
View File
@@ -0,0 +1,18 @@
#!/bin/bash
if [ "$#" -ne 1 ]; then
echo "build_example.sh Debug|Release"
exit 0
fi
CONFIG=$1
g++ -isystem externals/linux/include \
-I include \
-I include/spark \
-o example \
example.cpp \
-Wl,-rpath,. \
-L . \
-l spark
+13
View File
@@ -0,0 +1,13 @@
#include "spark/lib/logging/logging.h"
#include "spark/lib/utils/init_spark_lib.h"
int main()
{
using namespace bts;
utils::init_spark_lib();
LOG(md, Error, "Hello world");
utils::finit_spark_lib();
while (true) ;
return 0;
}
+22
View File
@@ -0,0 +1,22 @@
#!/bin/bash
if [ "$#" -ne 2 ]; then
echo "make_sdk.sh <output_dir> <sdk_dir>"
exit 0
fi
mkdir -p $1/sdk
rm -rf $1/sdk/*
mkdir -p $1/sdk/include/spark
(cd $2/.. && find lib -type f -name "*.h" -exec cp --parents \{\} $1/sdk/include/spark \;)
ln -sf $2/../../externals $1/sdk/externals
ln -sf $1/src/lib/libspark.so $1/sdk/
ln -sf $1/src/server/sparkd/sparkd $1/sdk/
cp -r $1/src/server/sparkd/defaults $1/sdk/defaults
cp $2/example.cpp $1/sdk/
cp $2/build_example.sh $1/sdk/
chmod +x $1/sdk/build_example.sh
(cd $1/sdk && ./build_example.sh $1)
+1 -1
View File
@@ -1 +1 @@
set(sources cmds/AutoCert.cpp;cmds/Benchmark.cpp;cmds/CmdRegistry.cpp;cmds/ConfigCheck.cpp;cmds/Help.cpp;cmds/Md.cpp;cmds/QuickTest.cpp;cmds/Run.cpp;cmds/RunSim.cpp;cmds/Span.cpp;cmds/Test.cpp;cmds/TestCeloxica.cpp;cmds/Web.cpp;dspark/mirage.cpp;dspark/mirage/routing/Router.cpp;exchange_sim/ExchangeSim.cpp;exchange_sim/ExchangeSimApplication.cpp;exchange_sim/book/Book.cpp;exchange_sim/book/ExchangeSim.proto;exchange_sim/book/Order.cpp;exchange_sim/book/OrderMatcher.cpp;exchange_sim/book/book_transform.cpp;exchange_sim/tests/test_book_transform.cpp;http/ApiGateway.cpp;http/WebServer.cpp;jetfix/codec/FIXArray.cpp;jetfix/common/OutFIX.cpp;jetfix/connection/AsyncReader.cpp;jetfix/connection/IConnection.cpp;jetfix/connection/SocketConnection.cpp;jetfix/gateway/CoreGateway.cpp;jetfix/gateway/JetFIXGateway.cpp;jetfix/gateway/Session.cpp;jetfix/store/FIXFileStore.cpp;jetfix/store/session_name.cpp;jetfix/tests/async_reader_tests.cpp;jetfix/tests/decoding_tests.cpp;jetfix/tests/fix_encoding_stream_tests.cpp;jetfix/tests/fix_fragment_tests.cpp;jetfix/tests/jetfix_performance_tests.cpp;jetfix/tests/sample_fix.cpp;jetfix/tests/store_tests.cpp;main.cpp;md/platforms/celoxica/CXListener.cpp;md/platforms/celoxica/CXMain.cpp;md/platforms/celoxica/tests/cx_tests.cpp;md/platforms/mdp3_onixs/MDP3Listener.cpp;md/platforms/mdp3_onixs/MDP3Main.cpp;md/platforms/mdp3_onixs/MDP3Utils.cpp;md/platforms/mdp3_onixs/tests/mdp3_tests.cpp;md/run_md.cpp;mercury/actors/Actor.cpp;mercury/broker/AsyncEventBroker.cpp;mercury/broker/CoreEventBroker.cpp;mercury/broker/IEventBroker.cpp;mercury/events/TimerEvent.cpp;mercury/mercury_utils/Executor.cpp;mercury/mercury_utils/IPollableActor.cpp;mercury/mercury_utils/mercury_common.cpp;mercury/synopsis/SynopsisBuilder.cpp;mercury/topics/ITopic.cpp;metrics/metrics.cpp;metrics/system_metrics.cpp;orderman/actors/AsyncFactory.cpp;orderman/actors/ExecutionGateway.cpp;orderman/actors/FillStore.cpp;orderman/actors/OrderStore.cpp;orderman/actors/SecuritySrc.cpp;orderman/actors/ServiceBridge.cpp;orderman/actors/order_manager/OrderBuilder.cpp;orderman/actors/order_manager/OrderManager.cpp;orderman/actors/order_manager/OrderServicesData.cpp;orderman/events/CancelRejectEvent.cpp;orderman/events/NewExecutionReportEvent.cpp;orderman/limiter/LimitStore.cpp;orderman/limiter/Limiter.cpp;orderman/limiter/ProductLimitNode.cpp;orderman/limiter/ProductLimitTree.cpp;orderman/limiter/SecurityLimitNode.cpp;orderman/limiter/SecurityLimitTree.cpp;orderman/limiter/tests/limit_tests.cpp;orderman/order_factory/OrderFactory.cpp;orderman/order_router/OrderRouter.cpp;orderman/orderman_utils/fix_order_codec.cpp;orderman/orders/IcebergOrder.cpp;orderman/orders/NativeOrder.cpp;orderman/orders/Order.cpp;orderman/orders/TimeBoxOrder.cpp;orderman/orders/book_algos/BookAlgo.cpp;orderman/orders/book_algos/JoinOrder.cpp;orderman/orders/book_algos/LeanOrder.cpp;orderman/orders/book_algos/TickOrder.cpp;orderman/orders/book_algos/TopOrder.cpp;orderman/orders/spreader_orders/SpreaderOrder.cpp;orderman/orders/spreader_orders/spreader/LegPropertyData.cpp;orderman/orders/spreader_orders/spreader/QuoteLegPriceQuantityState.cpp;orderman/orders/spreader_orders/spreader/SingleFillHedger.cpp;orderman/orders/spreader_orders/spreader/SingleLegQuoter.cpp;orderman/orders/spreader_orders/spreader/SpreaderBookkeepingData.cpp;orderman/orders/spreader_orders/spreader/SpreaderChildOrderState.cpp;orderman/orders/spreader_orders/spreader/SpreaderLegData.cpp;orderman/orders/spreader_orders/spreader/SpreaderUtils.cpp;orderman/orders/spreader_orders/spreader/external_interfacing/SpreaderOrderBuilder.cpp;orderman/orders/spreader_orders/spreader/external_interfacing/SpreaderOrderServices.cpp;orderman/orders/spreader_orders/spreader/external_interfacing/SpreaderPreActivationOrderServices.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerEndStateWorker.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerStartStateWorker.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerWaitingForCancelAckStateWorker.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerWaitingForFirstAckCancelledStateWorker.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerWaitingForFirstAckStateWorker.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerWorkingStateWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterEndStateWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterStartStateWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterWaitingForCancelAckStateWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterWaitingForFirstAckCancelledWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterWaitingForFirstAckWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterWaitingForSizeStateWorker.cpp;orderman/orders/spreader_orders/spreaderLine truncated
set(sources cmds/AutoCert.cpp;cmds/Benchmark.cpp;cmds/CmdRegistry.cpp;cmds/ConfigCheck.cpp;cmds/Help.cpp;cmds/Md.cpp;cmds/QuickTest.cpp;cmds/Run.cpp;cmds/RunSim.cpp;cmds/Span.cpp;cmds/Test.cpp;cmds/TestCeloxica.cpp;cmds/Web.cpp;dspark/mirage.cpp;dspark/mirage/routing/Router.cpp;exchange_sim/ExchangeSim.cpp;exchange_sim/ExchangeSimApplication.cpp;exchange_sim/book/Book.cpp;exchange_sim/book/ExchangeSim.proto;exchange_sim/book/Order.cpp;exchange_sim/book/OrderMatcher.cpp;exchange_sim/book/book_transform.cpp;exchange_sim/tests/test_book_transform.cpp;http/ApiGateway.cpp;http/WebServer.cpp;jetfix/codec/FIXArray.cpp;jetfix/common/OutFIX.cpp;jetfix/connection/AsyncReader.cpp;jetfix/connection/IConnection.cpp;jetfix/connection/SocketConnection.cpp;jetfix/gateway/CoreGateway.cpp;jetfix/gateway/JetFIXGateway.cpp;jetfix/gateway/Session.cpp;jetfix/store/FIXFileStore.cpp;jetfix/store/session_name.cpp;jetfix/tests/async_reader_tests.cpp;jetfix/tests/decoding_tests.cpp;jetfix/tests/fix_encoding_stream_tests.cpp;jetfix/tests/fix_fragment_tests.cpp;jetfix/tests/jetfix_performance_tests.cpp;jetfix/tests/sample_fix.cpp;jetfix/tests/store_tests.cpp;main.cpp;md/platforms/celoxica/CXListener.cpp;md/platforms/celoxica/CXMain.cpp;md/platforms/celoxica/tests/cx_tests.cpp;md/platforms/mdp3_onixs/MDP3Listener.cpp;md/platforms/mdp3_onixs/MDP3Main.cpp;md/platforms/mdp3_onixs/MDP3Utils.cpp;md/platforms/mdp3_onixs/tests/mdp3_tests.cpp;md/run_md.cpp;mercury/actors/Actor.cpp;mercury/broker/AsyncEventBroker.cpp;mercury/broker/CoreEventBroker.cpp;mercury/broker/IEventBroker.cpp;mercury/events/TimerEvent.cpp;mercury/mercury_utils/Executor.cpp;mercury/mercury_utils/IPollableActor.cpp;mercury/mercury_utils/mercury_common.cpp;mercury/synopsis/SynopsisBuilder.cpp;mercury/topics/ITopic.cpp;orderman/actors/AsyncFactory.cpp;orderman/actors/ExecutionGateway.cpp;orderman/actors/FillStore.cpp;orderman/actors/OrderStore.cpp;orderman/actors/SecuritySrc.cpp;orderman/actors/ServiceBridge.cpp;orderman/actors/order_manager/OrderBuilder.cpp;orderman/actors/order_manager/OrderManager.cpp;orderman/actors/order_manager/OrderServicesData.cpp;orderman/events/CancelRejectEvent.cpp;orderman/events/NewExecutionReportEvent.cpp;orderman/limiter/LimitStore.cpp;orderman/limiter/Limiter.cpp;orderman/limiter/ProductLimitNode.cpp;orderman/limiter/ProductLimitTree.cpp;orderman/limiter/SecurityLimitNode.cpp;orderman/limiter/SecurityLimitTree.cpp;orderman/limiter/tests/limit_tests.cpp;orderman/order_factory/OrderFactory.cpp;orderman/order_router/OrderRouter.cpp;orderman/orderman_utils/fix_order_codec.cpp;orderman/orders/IcebergOrder.cpp;orderman/orders/NativeOrder.cpp;orderman/orders/Order.cpp;orderman/orders/TimeBoxOrder.cpp;orderman/orders/book_algos/BookAlgo.cpp;orderman/orders/book_algos/JoinOrder.cpp;orderman/orders/book_algos/LeanOrder.cpp;orderman/orders/book_algos/TickOrder.cpp;orderman/orders/book_algos/TopOrder.cpp;orderman/orders/spreader_orders/SpreaderOrder.cpp;orderman/orders/spreader_orders/spreader/LegPropertyData.cpp;orderman/orders/spreader_orders/spreader/QuoteLegPriceQuantityState.cpp;orderman/orders/spreader_orders/spreader/SingleFillHedger.cpp;orderman/orders/spreader_orders/spreader/SingleLegQuoter.cpp;orderman/orders/spreader_orders/spreader/SpreaderBookkeepingData.cpp;orderman/orders/spreader_orders/spreader/SpreaderChildOrderState.cpp;orderman/orders/spreader_orders/spreader/SpreaderLegData.cpp;orderman/orders/spreader_orders/spreader/SpreaderUtils.cpp;orderman/orders/spreader_orders/spreader/external_interfacing/SpreaderOrderBuilder.cpp;orderman/orders/spreader_orders/spreader/external_interfacing/SpreaderOrderServices.cpp;orderman/orders/spreader_orders/spreader/external_interfacing/SpreaderPreActivationOrderServices.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerEndStateWorker.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerStartStateWorker.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerWaitingForCancelAckStateWorker.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerWaitingForFirstAckCancelledStateWorker.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerWaitingForFirstAckStateWorker.cpp;orderman/orders/spreader_orders/spreader/hedger/hedger_states/HedgerWorkingStateWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterEndStateWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterStartStateWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterWaitingForCancelAckStateWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterWaitingForFirstAckCancelledWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterWaitingForFirstAckWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterWaitingForSizeStateWorker.cpp;orderman/orders/spreader_orders/spreader/quoter/quoter_states/QuoterWorkingStateWorker.Line truncated
+4 -13
View File
@@ -1,22 +1,12 @@
cmake_minimum_required(VERSION 3.5)
project(sparkd)
# proto sources
set (Protos)
include(${CMAKE_SOURCE_DIR}/tools/safe_dep_glob.cmake)
include(${CMAKE_SOURCE_DIR}/tools/Protobuf.cmake)
# DEPENDENCIES ------------------------------------------------------------
# protos
file(GLOB_RECURSE Protos RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.proto)
# normal cpps
file(GLOB_RECURSE Sparkd_Sources RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp *.c)
# this is used to communicate to other repositories that the build
# needs to happen again (because a file was added)
update_deps_file("${Protos};${Sparkd_Sources}")
#END DEPENDENCIES ------------------------------------------------------------
@@ -28,7 +18,8 @@ target_include_directories( sparkd PUBLIC ${CMAKE_SOURCE_DIR}/src ${CMAKE_BINARY
# linking
target_link_libraries( sparkd
spark_lib
libspark
ssl
cryptopp
tbb
double-conversion
@@ -41,5 +32,5 @@ target_link_libraries( sparkd
-static-libstdc++
-pthread)
# copy test data
file(COPY jetfix/tests/sample_fix.dat DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/test_data)
add_custom_command(TARGET sparkd POST_BUILD
COMMAND ln -fs ${CMAKE_BINARY_DIR}/src/lib/libspark.so ${CMAKE_CURRENT_BINARY_DIR})
+2 -2
View File
@@ -18,8 +18,8 @@
#include "server/sparkd/support/ErrorReportService.h"
#include "server/sparkd/support/ShellLatencyServer.h"
#include "server/sparkd/http/WebServer.h"
#include "server/sparkd/metrics/metrics.h"
#include "server/sparkd/metrics/system_metrics.h"
#include "lib/metrics/metrics.h"
#include "lib/metrics/system_metrics.h"
#include "server/sparkd/user/AdminServiceServer.h"
#include "server/sparkd/user/UserServiceServer.h"
+1 -1
View File
@@ -1,6 +1,6 @@
#include "Test.h"
#include "ICmd.h"
#include "server/sparkd/testing/catch_test_runner.h"
#include "lib/testing/catch_test_runner.h"
namespace bts {
namespace cmd {
+2 -2
View File
@@ -6,8 +6,8 @@
#include "lib/quickbus/quickbus.h"
#include "lib/api/public/ServiceContext.h"
#include "server/sparkd/metrics/metrics.h"
#include "server/sparkd/metrics/system_metrics.h"
#include "lib/metrics/metrics.h"
#include "lib/metrics/system_metrics.h"
#include "server/sparkd/http/WebServer.h"
#include "lib/md/relay/QueryServer.h"
#include "lib/md/SyntheticSecurityService.h"
+2 -2
View File
@@ -1,6 +1,6 @@
#pragma once
#include "lib/api/public/ServiceContext.h"
#include "server/sparkd/metrics/metrics.h"
#include "lib/metrics/metrics.h"
#include <memory>
namespace bts {
@@ -14,4 +14,4 @@ namespace http {
SparkWebServer(const api::ServiceContext& ctx, metrics::MetricsContainer& metrics, int port);
};
}}
}}
@@ -1,6 +1,6 @@
#pragma once
#include "server/sparkd/metrics/metrics.h"
#include "lib/metrics/metrics.h"
#include "lib/utils/Dispatcher.h"
#include "lib/api/services/ShellLatencyService.pb.h"
#include "lib/api/services/ShellLatencyService.server.pb.h"
+1 -1
View File
@@ -1 +1 @@
set(sources ../../externals/linux/include/google/protobuf/descriptor.proto;../../externals/linux/include/google/protobuf/timestamp.proto;../lib/api/apicore.proto;../lib/api/apigateway.proto;../lib/api/apioptions.proto;../lib/api/services/AdminService.proto;../lib/api/services/ApiUnitTestService.proto;../lib/api/services/ErrorReportService.proto;../lib/api/services/HelloService.proto;../lib/api/services/MarketDataRelay.proto;../lib/api/services/OrderService.proto;../lib/api/services/OutOfProcessURLListener.proto;../lib/api/services/PersistenceService.proto;../lib/api/services/ShellDiagnosticService.proto;../lib/api/services/SyntheticSecurityService.proto;../lib/api/services/UserService.proto;../lib/domain_model/Security.proto;../lib/md/protos/co2.proto;../lib/sparkproto/SparkProtos.proto;api/build.sh;api/node_modules/cssstyle/scripts/run_tests.sh;api/node_modules/exit/test/fixtures/create-files.sh;api/node_modules/protobufjs/cli/node_modules/acorn-jsx/node_modules/acorn/bin/update_authors.sh;api/node_modules/watch/release.sh;api/quiet_build.sh;api/src/DynamicService.ts;api/src/ServiceContext.ts;api/src/bts_assert.ts;ui/src/Access.fs;ui/src/Accounts/ClipLimits.fs;ui/src/Accounts/ProductLimits.fs;ui/src/Accounts/SecurityLimits.fs;ui/src/Accounts/State.fs;ui/src/Accounts/Types.fs;ui/src/Accounts/View.fs;ui/src/App.fs;ui/src/Cmd.fs;ui/src/Controls/Button.fs;ui/src/Controls/DataGrid.fs;ui/src/Controls/Fields.fs;ui/src/Controls/Modal.fs;ui/src/Controls/ReactGrid.fs;ui/src/Controls/Table.fs;ui/src/Controls/nbsp.fs;ui/src/Global.fs;ui/src/Imports.fs;ui/src/Lens.fs;ui/src/Login/Login.fs;ui/src/Navbar/View.fs;ui/src/State.fs;ui/src/Types.fs;ui/src/Users/State.fs;ui/src/Users/Types.fs;ui/src/Users/View.fs;ui/src/Util/EnumUtils.fs;ui/src/Util/JSMap.fs)
set(sources ../../externals/linux/include/google/protobuf/descriptor.proto;../../externals/linux/include/google/protobuf/timestamp.proto;../lib/api/apicore.proto;../lib/api/apigateway.proto;../lib/api/apioptions.proto;../lib/api/services/AdminService.proto;../lib/api/services/ApiUnitTestService.proto;../lib/api/services/ErrorReportService.proto;../lib/api/services/HelloService.proto;../lib/api/services/MarketDataRelay.proto;../lib/api/services/OrderService.proto;../lib/api/services/OutOfProcessURLListener.proto;../lib/api/services/PersistenceService.proto;../lib/api/services/ShellDiagnosticService.proto;../lib/api/services/ShellLatencyService.proto;../lib/api/services/SyntheticSecurityService.proto;../lib/api/services/UserService.proto;../lib/domain_model/Security.proto;../lib/md/protos/co2.proto;../lib/sparkproto/SparkProtos.proto;api/build.sh;api/node_modules/cssstyle/scripts/run_tests.sh;api/node_modules/exit/test/fixtures/create-files.sh;api/node_modules/protobufjs/cli/node_modules/acorn-jsx/node_modules/acorn/bin/update_authors.sh;api/node_modules/watch/release.sh;api/quiet_build.sh;api/src/DynamicService.ts;api/src/ServiceContext.ts;api/src/bts_assert.ts;ui/src/Access.fs;ui/src/Accounts/ClipLimits.fs;ui/src/Accounts/ProductLimits.fs;ui/src/Accounts/SecurityLimits.fs;ui/src/Accounts/State.fs;ui/src/Accounts/Types.fs;ui/src/Accounts/View.fs;ui/src/App.fs;ui/src/Cmd.fs;ui/src/Controls/Button.fs;ui/src/Controls/DataGrid.fs;ui/src/Controls/Fields.fs;ui/src/Controls/Modal.fs;ui/src/Controls/ReactGrid.fs;ui/src/Controls/Table.fs;ui/src/Controls/nbsp.fs;ui/src/Global.fs;ui/src/Imports.fs;ui/src/Lens.fs;ui/src/Login/Login.fs;ui/src/Navbar/View.fs;ui/src/State.fs;ui/src/Types.fs;ui/src/Users/State.fs;ui/src/Users/Types.fs;ui/src/Users/View.fs;ui/src/Util/EnumUtils.fs;ui/src/Util/JSMap.fs)
-7
View File
@@ -5,8 +5,6 @@ include(${CMAKE_SOURCE_DIR}/tools/safe_dep_glob.cmake)
include(${CMAKE_SOURCE_DIR}/tools/Protobuf.cmake)
# DEPENDENCIES
# service protos
set(PROTO_GLOBS
../lib/api/*.proto
../lib/api/services/*.proto
@@ -16,17 +14,12 @@ set(PROTO_GLOBS
../../externals/linux/include/google/protobuf/descriptor.proto
../../externals/linux/include/google/protobuf/timestamp.proto
)
file (GLOB_RECURSE Proto_Deps RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${PROTO_GLOBS})
file (GLOB_RECURSE Proto_Deps_For_Tool RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/api ${PROTO_GLOBS})
file (GLOB_RECURSE Api_Src RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ui/src/*.fs)
file (GLOB_RECURSE Ui_Src RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} api/src/*.ts)
file (GLOB_RECURSE build_scripts RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} api/*.sh)
set (All_Deps ${Proto_Deps} ${Api_Src} ${Ui_Src} ${build_scripts})
# this is used to communicate to other repositories that the build
# needs to happen again (because a file was added)
update_deps_file("${All_Deps}")
# END DEPENDENCIES
+1 -1
View File
@@ -1,7 +1,7 @@
@setlocal
@echo off
cd /d %~dp0\..
if not exist build\src\lib\spark_lib.vcxproj (
if not exist build\src\lib\libspark.vcxproj (
@call tools\setup_builds.bat
)
copy /y tools\cpp.build.props build\Directory.Build.Props > nul
+4 -4
View File
@@ -8,16 +8,16 @@
<Target Name="CopyToNet471" AfterTargets="Link">
<Copy
SourceFiles="$(OutDir)spark_lib.dll"
Condition="Exists('$(OutDir)spark_lib.dll')"
SourceFiles="$(OutDir)libspark.dll"
Condition="Exists('$(OutDir)libspark.dll')"
DestinationFolder="$(DesiredOutputPath)"
Retries="512"
RetryDelayMilliseconds="250"
SkipUnchangedFiles="true"
/>
<Copy
SourceFiles="$(OutDir)spark_lib.pdb"
Condition="Exists('$(OutDir)spark_lib.pdb')"
SourceFiles="$(OutDir)libspark.pdb"
Condition="Exists('$(OutDir)libspark.pdb')"
DestinationFolder="$(DesiredOutputPath)"
Retries="512"
RetryDelayMilliseconds="250"
+1 -1
View File
@@ -2,7 +2,7 @@
@echo off
cd %~dp0\..
if not exist build\src\lib\spark_lib.vcxproj (
if not exist build\src\lib\libspark.vcxproj (
@call tools\setup_builds.bat
)
+1 -1
View File
@@ -1,7 +1,7 @@
@setlocal
@echo off
cd %~dp0\..
if not exist c:\build\src\lib\spark_lib.vcxproj (
if not exist c:\build\src\lib\libspark.vcxproj (
@call tools\pp_setup_builds.bat
)
copy /y tools\cpp.build.props c:\build\Directory.Build.Props > nul
+1 -1
View File
@@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 3.5)
#add protos to the library to facilitate source_group
target_sources(spark_lib PUBLIC
target_sources(libspark PUBLIC
${Config_Protos}
${NonConfig_Protos}
${Service_Protos}