Skip to content

Commit ee64afa

Browse files
committed
[C++] Generate codecs in a language specific directory.
1 parent 22f344b commit ee64afa

File tree

4 files changed

+14
-13
lines changed

4 files changed

+14
-13
lines changed

CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ add_custom_target(sbe-jar
121121
)
122122

123123
set(CODEC_TARGET_DIR "${CMAKE_CURRENT_BINARY_DIR}/generated")
124+
set(CXX_CODEC_TARGET_DIR "${CODEC_TARGET_DIR}/cpp")
124125
set(CODEC_SCHEMA_DIR "${CMAKE_CURRENT_SOURCE_DIR}/sbe-tool/src/test/resources")
125126
set(CODEC_PERF_SCHEMA_DIR "${CMAKE_CURRENT_SOURCE_DIR}/sbe-benchmarks/src/main/resources")
126127
set(CODEC_EXAMPLES_SCHEMA_DIR "${CMAKE_CURRENT_SOURCE_DIR}/sbe-samples/src/main/resources")

sbe-benchmarks/src/main/cpp/CMakeLists.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ endif ()
2929
set(SRCS_BENCHLET_MAIN benchlet-main.cpp)
3030

3131
set(GENERATED_CODECS
32-
${CODEC_TARGET_DIR}/uk_co_real_logic_sbe_examples_car
33-
${CODEC_TARGET_DIR}/uk_co_real_logic_sbe_samples_fix
32+
${CXX_CODEC_TARGET_DIR}/uk_co_real_logic_sbe_examples_car
33+
${CXX_CODEC_TARGET_DIR}/uk_co_real_logic_sbe_samples_fix
3434
)
3535

3636
set(SBE_CAR_SCHEMA ${CODEC_PERF_SCHEMA_DIR}/car.xml)
@@ -39,15 +39,15 @@ set(SBE_MD_SCHEMA ${CODEC_PERF_SCHEMA_DIR}/fix-message-samples.xml)
3939
add_custom_command(
4040
OUTPUT ${GENERATED_CODECS}
4141
DEPENDS ${SBE_CAR_SCHEMA} ${SBE_MD_SCHEMA} sbe-jar ${SBE_JAR}
42-
COMMAND ${Java_JAVA_EXECUTABLE} -Dsbe.output.dir=${CODEC_TARGET_DIR} -Dsbe.target.language="cpp" -jar ${SBE_JAR} ${SBE_CAR_SCHEMA} ${SBE_MD_SCHEMA}
42+
COMMAND ${Java_JAVA_EXECUTABLE} -Dsbe.output.dir=${CXX_CODEC_TARGET_DIR} -Dsbe.target.language="cpp" -jar ${SBE_JAR} ${SBE_CAR_SCHEMA} ${SBE_MD_SCHEMA}
4343
)
4444
add_custom_target(perf_codecs DEPENDS ${GENERATED_CODECS})
4545

4646
add_executable(benchlet-sbe-car-runner ${SRCS_BENCHLET_MAIN} CarBench.cpp)
47-
target_include_directories(benchlet-sbe-car-runner PRIVATE ${CODEC_TARGET_DIR})
47+
target_include_directories(benchlet-sbe-car-runner PRIVATE ${CXX_CODEC_TARGET_DIR})
4848
target_link_libraries(benchlet-sbe-car-runner sbe)
4949
add_executable(benchlet-sbe-md-runner ${SRCS_BENCHLET_MAIN} MarketDataBench.cpp)
50-
target_include_directories(benchlet-sbe-md-runner PRIVATE ${CODEC_TARGET_DIR})
50+
target_include_directories(benchlet-sbe-md-runner PRIVATE ${CXX_CODEC_TARGET_DIR})
5151
target_link_libraries(benchlet-sbe-md-runner sbe)
5252
add_dependencies(benchlet-sbe-md-runner perf_codecs)
5353
add_dependencies(benchlet-sbe-car-runner perf_codecs)

sbe-samples/src/main/cpp/CMakeLists.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
find_package(Java REQUIRED)
1818

1919
set(GENERATED_CODECS
20-
${CODEC_TARGET_DIR}/baseline
20+
${CXX_CODEC_TARGET_DIR}/baseline
2121
)
2222

2323
set(EXAMPLES_SCHEMA ${CODEC_EXAMPLES_SCHEMA_DIR}/example-schema.xml)
@@ -26,15 +26,15 @@ add_custom_command(
2626
OUTPUT ${GENERATED_CODECS}
2727
WORKING_DIRECTORY ${CODEC_EXAMPLES_SCHEMA_DIR}
2828
DEPENDS ${EXAMPLES_SCHEMA} sbe-jar ${SBE_JAR}
29-
COMMAND ${Java_JAVA_EXECUTABLE} -Dsbe.output.dir=${CODEC_TARGET_DIR} -Dsbe.generate.ir=true -Dsbe.target.language=cpp -Dsbe.xinclude.aware=true -jar ${SBE_JAR} ${EXAMPLES_SCHEMA}
29+
COMMAND ${Java_JAVA_EXECUTABLE} -Dsbe.output.dir=${CXX_CODEC_TARGET_DIR} -Dsbe.generate.ir=true -Dsbe.target.language=cpp -Dsbe.xinclude.aware=true -jar ${SBE_JAR} ${EXAMPLES_SCHEMA}
3030
)
3131
add_custom_target(examples_codecs DEPENDS ${GENERATED_CODECS})
3232

3333
add_executable(GeneratedStubExample GeneratedStubExample.cpp)
34-
target_include_directories(GeneratedStubExample PRIVATE ${CODEC_TARGET_DIR})
34+
target_include_directories(GeneratedStubExample PRIVATE ${CXX_CODEC_TARGET_DIR})
3535
target_link_libraries(GeneratedStubExample sbe)
3636
add_executable(OtfExample OtfExample.cpp)
37-
target_include_directories(OtfExample PRIVATE ${CODEC_TARGET_DIR})
37+
target_include_directories(OtfExample PRIVATE ${CXX_CODEC_TARGET_DIR})
3838
target_link_libraries(OtfExample sbe)
3939

4040
add_dependencies(GeneratedStubExample examples_codecs)

sbe-tool/src/test/cpp/CMakeLists.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@ function(sbe_test name)
1818
add_executable("${name}" "${name}.cpp")
1919
target_include_directories("${name}"
2020
PRIVATE ${GTEST_SOURCE_DIR}/googletest/include
21-
PRIVATE ${CODEC_TARGET_DIR}
21+
PRIVATE ${CXX_CODEC_TARGET_DIR}
2222
)
2323
target_link_libraries("${name}" sbe ${GTEST_LIBS} ${CMAKE_THREAD_LIBS_INIT})
24-
add_test(NAME ${name} COMMAND ${name} WORKING_DIRECTORY ${CODEC_TARGET_DIR})
24+
add_test(NAME ${name} COMMAND ${name} WORKING_DIRECTORY ${CXX_CODEC_TARGET_DIR})
2525
add_dependencies(${name} gtest)
2626
if(${ARGC} GREATER 1)
2727
add_dependencies(${name} ${ARGV1})
@@ -37,15 +37,15 @@ set(GROUP_WITH_DATA_SCHEMA ${CODEC_SCHEMA_DIR}/group-with-data-schema.xml)
3737
set(COMPOSITE_ELEMENTS_SCHEMA ${CODEC_SCHEMA_DIR}/composite-elements-schema.xml)
3838

3939
set(GENERATED_CODECS
40-
${CODEC_TARGET_DIR}
40+
${CXX_CODEC_TARGET_DIR}
4141
)
4242

4343
add_custom_command(
4444
OUTPUT ${GENERATED_CODECS}
4545
DEPENDS ${CODE_GENERATION_SCHEMA} ${CODE_GENERATION_SCHEMA_CPP} ${COMPOSITE_OFFSETS_SCHEMA} ${MESSAGE_BLOCK_LENGTH_TEST}
4646
sbe-jar ${SBE_JAR}
4747
COMMAND ${Java_JAVA_EXECUTABLE}
48-
-Dsbe.output.dir=${CODEC_TARGET_DIR} -Dsbe.generate.ir="true" -Dsbe.target.language="cpp" -jar ${SBE_JAR}
48+
-Dsbe.output.dir=${CXX_CODEC_TARGET_DIR} -Dsbe.generate.ir="true" -Dsbe.target.language="cpp" -jar ${SBE_JAR}
4949
${CODE_GENERATION_SCHEMA}
5050
${COMPOSITE_OFFSETS_SCHEMA}
5151
${MESSAGE_BLOCK_LENGTH_TEST}

0 commit comments

Comments
 (0)