File tree Expand file tree Collapse file tree 1 file changed +35
-0
lines changed Expand file tree Collapse file tree 1 file changed +35
-0
lines changed Original file line number Diff line number Diff line change
1
+ find_package (CapnProto REQUIRED )
2
+ set (PROTOS LogicalNetlist.capnp PhysicalNetlist.capnp References.capnp )
3
+
4
+ set (INTERCHANGE_SCHEMA_DIR ${CMAKE_CURRENT_SOURCE_DIR} /../../interchange )
5
+
6
+ find_program (WGET wget REQUIRED )
7
+
8
+ set (JAVA_SCHEMA ${CMAKE_CURRENT_BINARY_DIR} /schema/capnp/java.capnp )
9
+ add_custom_command (
10
+ OUTPUT ${JAVA_SCHEMA}
11
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR} /schema/capnp/
12
+ COMMAND ${WGET}
13
+ https://raw.githubusercontent.com/capnproto/capnproto-java/master/compiler/src/main/schema/capnp/java.capnp
14
+ -O ${JAVA_SCHEMA}
15
+ )
16
+ add_custom_target (
17
+ get_java_capnp_schema
18
+ DEPENDS ${JAVA_SCHEMA} )
19
+
20
+ set (CAPNPC_IMPORT_DIRS )
21
+ list (APPEND CAPNPC_IMPORT_DIRS ${CMAKE_CURRENT_BINARY_DIR} /schema )
22
+
23
+ set (CAPNPC_SRC_PREFIX ${INTERCHANGE_SCHEMA_DIR} )
24
+ set (CAPNP_SRCS )
25
+ set (CAPNP_HDRS )
26
+ foreach (proto ${PROTOS} )
27
+ capnp_generate_cpp (CAPNP_SRC CAPNP_HDR ${INTERCHANGE_SCHEMA_DIR} /${proto} )
28
+ list (APPEND CAPNP_HDRS ${CAPNP_HDR} )
29
+ list (APPEND CAPNP_SRCS ${CAPNP_SRC} )
30
+ endforeach ()
31
+ add_library (fpga_interchange_capnp STATIC ${CAPNP_SRCS} )
32
+ add_dependencies (fpga_interchange_capnp get_java_capnp_schema )
33
+ target_link_libraries (fpga_interchange_capnp PRIVATE CapnProto::capnp )
34
+
35
+ set (FPGA_INTERCHANGE_CAPNP_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR} /../../interchange )
You can’t perform that action at this time.
0 commit comments