File tree Expand file tree Collapse file tree 5 files changed +40
-10
lines changed Expand file tree Collapse file tree 5 files changed +40
-10
lines changed Original file line number Diff line number Diff line change 1
1
[submodule "libs/EXTERNAL/capnproto "]
2
2
path = libs/EXTERNAL/capnproto
3
- url = https://github.com/capnproto/capnproto
3
+ url = https://github.com/capnproto/capnproto.git
Original file line number Diff line number Diff line change @@ -40,6 +40,7 @@ option(VTR_ENABLE_CAPNPROTO "Enable capnproto binary serialization support in VP
40
40
#Allow the user to enable/disable VPR analytic placement
41
41
#VPR option --enable_analytic_placer is also required for Analytic Placement
42
42
option (VPR_ANALYTIC_PLACE "Enable analytic placement in VPR." ON )
43
+ option (VPR_ENABLE_INTERCHANGE "Enable FPGA interchange." ON )
43
44
44
45
option (WITH_BLIFEXPLORER "Enable build with blifexplorer" OFF )
45
46
@@ -365,7 +366,6 @@ if (VPR_USE_EZGL STREQUAL "auto")
365
366
endif ()
366
367
endif ()
367
368
368
-
369
369
#Add the various sub-projects
370
370
if (${WITH_ABC} )
371
371
add_subdirectory (abc )
Original file line number Diff line number Diff line change @@ -8,7 +8,7 @@ add_subdirectory(libsdcparse)
8
8
add_subdirectory (libblifparse )
9
9
add_subdirectory (libtatum )
10
10
11
- #VPR_USE_EZGL is initialized in the root CMakeLists.
11
+ #VPR_USE_EZGL is initialized in the root CMakeLists.
12
12
#compile libezgl only if the user asks for or has its dependencies installed.
13
13
if (VPR_USE_EZGL STREQUAL "on" )
14
14
add_subdirectory (libezgl )
Original file line number Diff line number Diff line change @@ -12,16 +12,23 @@ list(REMOVE_ITEM LIB_SOURCES ${EXEC_SOURCES})
12
12
13
13
#Create the library
14
14
add_library (libarchfpga STATIC
15
- ${LIB_HEADERS}
16
- ${LIB_SOURCES} )
15
+ ${LIB_HEADERS}
16
+ ${LIB_SOURCES}
17
+ )
18
+
17
19
target_include_directories (libarchfpga PUBLIC ${LIB_INCLUDE_DIRS} )
20
+
18
21
set_target_properties (libarchfpga PROPERTIES PREFIX "" ) #Avoid extra 'lib' prefix
19
22
20
23
#Specify link-time dependancies
21
24
target_link_libraries (libarchfpga
22
25
libvtrutil
23
26
libpugixml
24
- libpugiutil )
27
+ libpugiutil
28
+ libvtrcapnproto
29
+ )
30
+
31
+ target_compile_definitions (libarchfpga PUBLIC ${INTERCHANGE_SCHEMA_HEADERS} )
25
32
26
33
#Create the test executable
27
34
add_executable (read_arch ${EXEC_SOURCES} )
Original file line number Diff line number Diff line change 1
- include (GNUInstallDirs )
2
-
3
1
if (NOT MSCV )
4
2
# These flags generate noisy but non-bug warnings when using lib kj,
5
3
# supress them.
@@ -25,15 +23,40 @@ set(CAPNP_DEFS
25
23
gen/rr_graph_uxsdcxx.capnp
26
24
map_lookahead.capnp
27
25
extended_map_lookahead.capnp
28
- )
26
+ )
27
+
29
28
capnp_generate_cpp (CAPNP_SRCS CAPNP_HDRS
30
29
${CAPNP_DEFS}
30
+ )
31
+
32
+ if (VPR_ENABLE_INTERCHANGE )
33
+ set (IC_DIR ${CMAKE_SOURCE_DIR} /libs/EXTERNAL/libinterchange/interchange )
34
+ set (CAPNPC_SRC_PREFIX ${IC_DIR} )
35
+ set (IC_PROTOS
36
+ LogicalNetlist.capnp
37
+ PhysicalNetlist.capnp
38
+ DeviceResources.capnp
39
+ References.capnp
31
40
)
41
+ set (IC_SRCS )
42
+ set (IC_HDRS )
43
+ foreach (PROTO ${IC_PROTOS} )
44
+ capnp_generate_cpp (
45
+ IC_SRC
46
+ IC_HDR
47
+ ${IC_DIR} /${PROTO}
48
+ )
49
+ list (APPEND IC_SRCS ${IC_SRC} )
50
+ list (APPEND IC_HDRS ${IC_HDR} )
51
+ endforeach ()
52
+
53
+ endif ()
32
54
33
55
install (FILES ${CAPNP_DEFS} DESTINATION ${CMAKE_INSTALL_DATADIR} /vtr )
34
56
35
57
add_library (libvtrcapnproto STATIC
36
58
${CAPNP_SRCS}
59
+ ${IC_SRCS}
37
60
mmap_file.h
38
61
mmap_file.cpp
39
62
serdes_utils.h
@@ -47,4 +70,4 @@ target_include_directories(libvtrcapnproto PUBLIC
47
70
target_link_libraries (libvtrcapnproto
48
71
libvtrutil
49
72
CapnProto::capnp
50
- )
73
+ )
You can’t perform that action at this time.
0 commit comments