Skip to content

Commit bf541ce

Browse files
Remove build-related files and python code
1 parent d7640ca commit bf541ce

File tree

8 files changed

+24
-732
lines changed

8 files changed

+24
-732
lines changed

CMakeLists.txt

Lines changed: 1 addition & 274 deletions
Original file line numberDiff line numberDiff line change
@@ -2,277 +2,4 @@ cmake_minimum_required(VERSION 3.5)
22

33
project(open_simulation_interface)
44

5-
# Toplevel check
6-
set(OSI_IS_TOP_LEVEL OFF)
7-
if(CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR)
8-
set(OSI_IS_TOP_LEVEL ON)
9-
endif()
10-
11-
# Set the C++ standard
12-
set(CMAKE_CXX_STANDARD 11 CACHE STRING "C++ standard to be used")
13-
set(CMAKE_CXX_STANDARD_REQUIRED ON)
14-
15-
# Optional Flatbuffer support
16-
option(OSI_BUILD_FLATBUFFER "Build flatbuffer versions of libraries" OFF)
17-
option(OSI_BUILD_DOCUMENTATION "Build flatbuffer versions of libraries" ${OSI_IS_TOP_LEVEL})
18-
19-
# Set a default build type if none was specified
20-
set(default_build_type "Release")
21-
if(EXISTS "${CMAKE_SOURCE_DIR}/.git")
22-
set(default_build_type "Debug")
23-
endif()
24-
25-
# read the version number from the file "VERSION"
26-
file(STRINGS "VERSION" VERSION_CONTENTS)
27-
foreach(LINE ${VERSION_CONTENTS})
28-
string(REGEX REPLACE " |\t" "" LINE ${LINE})
29-
string(REGEX MATCH "^[^=]+" VERSION_NAME ${LINE})
30-
string(REPLACE "${VERSION_NAME}=" "" VERSION_VALUE ${LINE})
31-
set(${VERSION_NAME} "${VERSION_VALUE}")
32-
endforeach()
33-
set(OPEN_SIMULATION_INTERFACE_VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH})
34-
35-
set(${PROJECT_NAME}_SOVERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
36-
set(${PROJECT_NAME}_LIBVERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
37-
38-
# configure build version
39-
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
40-
message(STATUS "Setting build type to '${default_build_type}' as none was specified.")
41-
set(CMAKE_BUILD_TYPE "${default_build_type}" CACHE
42-
STRING "Choose the type of build." FORCE)
43-
# Set the possible values of build type for cmake-gui
44-
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS
45-
"Debug" "Release" "MinSizeRel" "RelWithDebInfo")
46-
endif()
47-
48-
# Offer the user the choice of overriding the installation directories
49-
set(OSI_INSTALL_LIB_DIR lib CACHE PATH "Installation directory for libraries")
50-
set(OSI_INSTALL_INCLUDE_DIR include CACHE PATH "Installation directory for header files")
51-
52-
if(WIN32 AND NOT CYGWIN)
53-
set(DEF_INSTALL_CMAKE_DIR CMake/${PROJECT_NAME}-${VERSION_MAJOR})
54-
else()
55-
set(DEF_INSTALL_CMAKE_DIR lib/cmake/${PROJECT_NAME}-${VERSION_MAJOR})
56-
endif()
57-
set(OSI_INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH "Installation directory for CMake files")
58-
59-
set(OSI_INSTALL_LIB_DIR ${OSI_INSTALL_LIB_DIR}/osi${VERSION_MAJOR})
60-
set(OSI_INSTALL_INCLUDE_DIR ${OSI_INSTALL_INCLUDE_DIR}/osi${VERSION_MAJOR})
61-
62-
configure_file(osi_version.proto.in osi_version.proto)
63-
64-
find_package(Protobuf 2.6.1 REQUIRED)
65-
set(PROTOBUF_IMPORT_DIRS ${PROTOBUF_INCLUDE_DIRS})
66-
67-
set(OSI_PROTO_FILES
68-
${CMAKE_CURRENT_BINARY_DIR}/osi_version.proto
69-
osi_common.proto
70-
osi_datarecording.proto
71-
osi_detectedtrafficsign.proto
72-
osi_detectedtrafficlight.proto
73-
osi_detectedroadmarking.proto
74-
osi_detectedlane.proto
75-
osi_detectedobject.proto
76-
osi_detectedoccupant.proto
77-
osi_environment.proto
78-
osi_groundtruth.proto
79-
osi_hostvehicledata.proto
80-
osi_motionrequest.proto
81-
osi_trafficsign.proto
82-
osi_trafficlight.proto
83-
osi_trafficupdate.proto
84-
osi_trafficcommand.proto
85-
osi_trafficcommandupdate.proto
86-
osi_referenceline.proto
87-
osi_roadmarking.proto
88-
osi_route.proto
89-
osi_lane.proto
90-
osi_logicallane.proto
91-
osi_featuredata.proto
92-
osi_logicaldetectiondata.proto
93-
osi_object.proto
94-
osi_occupant.proto
95-
osi_sensordata.proto
96-
osi_sensorviewconfiguration.proto
97-
osi_sensorspecific.proto
98-
osi_sensorview.proto
99-
osi_streamingupdate.proto
100-
)
101-
102-
protobuf_generate_cpp(PROTO_SRCS PROTO_HEADERS ${OSI_PROTO_FILES})
103-
set(FLAT_HEADERS "")
104-
if(OSI_BUILD_FLATBUFFER)
105-
set(FLAT_FBS "")
106-
find_package(flatbuffers REQUIRED)
107-
if(NOT FLATBUFFERS_FLATC_EXECUTABLE)
108-
set(FLATBUFFERS_FLATC_EXECUTABLE ${flatbuffers_DIR}/../../tools/flatbuffers/flatc)
109-
endif()
110-
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/descriptor.fbs" "namespace osi3;")
111-
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/include")
112-
list(APPEND FLAT_FBS "${CMAKE_CURRENT_BINARY_DIR}/descriptor.fbs")
113-
foreach (proto ${OSI_PROTO_FILES})
114-
get_filename_component(proto_base ${proto} NAME_WE)
115-
set(fbs "${proto_base}.fbs")
116-
add_custom_command(
117-
OUTPUT "${fbs}"
118-
COMMAND ${FLATBUFFERS_FLATC_EXECUTABLE} -I "${PROTOBUF_IMPORT_DIRS}" -I "${CMAKE_CURRENT_BINARY_DIR}" -o "${CMAKE_CURRENT_BINARY_DIR}" --proto "${proto}"
119-
DEPENDS "${proto}"
120-
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
121-
COMMENT "Convert ${proto} to ${fbs} using flatc"
122-
)
123-
list(APPEND FLAT_FBS "${CMAKE_CURRENT_BINARY_DIR}/${fbs}")
124-
endforeach()
125-
126-
foreach (flat ${FLAT_FBS})
127-
get_filename_component(flat_base ${flat} NAME_WE)
128-
set(fbs "${flat_base}.fbs")
129-
set(fbh "${flat_base}_generated.h")
130-
add_custom_command(
131-
OUTPUT "include/${fbh}"
132-
COMMAND ${FLATBUFFERS_FLATC_EXECUTABLE} -o "${CMAKE_CURRENT_BINARY_DIR}/include" --cpp --gen-mutable --gen-name-strings --scoped-enums "${fbs}"
133-
DEPENDS "${FLAT_FBS}"
134-
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
135-
COMMENT "Process ${fbs} to ${fbh} using flatc"
136-
)
137-
list(APPEND FLAT_HEADERS "${CMAKE_CURRENT_BINARY_DIR}/include/${fbh}")
138-
endforeach()
139-
140-
add_custom_target(${PROJECT_NAME}_fbs_build ALL DEPENDS "${FLAT_HEADERS}")
141-
add_library(${PROJECT_NAME}_fbs INTERFACE)
142-
add_library(${PROJECT_NAME}::${PROJECT_NAME}_fbs ALIAS ${PROJECT_NAME}_fbs)
143-
target_include_directories(${PROJECT_NAME}_fbs INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/include/>)
144-
target_include_directories(${PROJECT_NAME}_fbs SYSTEM INTERFACE $<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>)
145-
target_link_libraries(${PROJECT_NAME}_fbs INTERFACE flatbuffers::flatbuffers)
146-
endif()
147-
148-
add_library(${PROJECT_NAME}_static STATIC ${PROTO_SRCS} ${PROTO_HEADERS})
149-
add_library(${PROJECT_NAME}::${PROJECT_NAME}_static ALIAS ${PROJECT_NAME}_static)
150-
target_include_directories(${PROJECT_NAME}_static
151-
PUBLIC
152-
${PROTOBUF_INCLUDE_DIR}
153-
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
154-
$<INSTALL_INTERFACE:${OSI_INSTALL_INCLUDE_DIR}>
155-
)
156-
target_link_libraries(${PROJECT_NAME}_static PUBLIC ${PROTOBUF_LIBRARY})
157-
install(TARGETS ${PROJECT_NAME}_static
158-
EXPORT ${PROJECT_NAME}_targets
159-
ARCHIVE DESTINATION "${OSI_INSTALL_LIB_DIR}" COMPONENT lib)
160-
161-
162-
add_library(${PROJECT_NAME}_obj OBJECT ${PROTO_SRCS} ${PROTO_HEADERS})
163-
add_library(${PROJECT_NAME}::${PROJECT_NAME}_obj ALIAS ${PROJECT_NAME}_obj)
164-
target_include_directories(${PROJECT_NAME}_obj
165-
PUBLIC
166-
${PROTOBUF_INCLUDE_DIR}
167-
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
168-
$<INSTALL_INTERFACE:${OSI_INSTALL_INCLUDE_DIR}>
169-
)
170-
set_property(TARGET ${PROJECT_NAME}_obj PROPERTY POSITION_INDEPENDENT_CODE ON)
171-
172-
173-
add_library(${PROJECT_NAME}_pic STATIC $<TARGET_OBJECTS:${PROJECT_NAME}_obj>)
174-
add_library(${PROJECT_NAME}::${PROJECT_NAME}_pic ALIAS ${PROJECT_NAME}_pic)
175-
target_include_directories(${PROJECT_NAME}_pic
176-
PUBLIC
177-
${PROTOBUF_INCLUDE_DIR}
178-
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
179-
$<INSTALL_INTERFACE:${OSI_INSTALL_INCLUDE_DIR}>
180-
)
181-
target_link_libraries(${PROJECT_NAME}_pic PUBLIC ${PROTOBUF_LIBRARY})
182-
183-
set_property(TARGET ${PROJECT_NAME}_pic PROPERTY POSITION_INDEPENDENT_CODE ON)
184-
185-
install(TARGETS ${PROJECT_NAME}_pic
186-
EXPORT ${PROJECT_NAME}_targets
187-
ARCHIVE DESTINATION "${OSI_INSTALL_LIB_DIR}" COMPONENT lib)
188-
189-
add_library(${PROJECT_NAME} SHARED $<TARGET_OBJECTS:${PROJECT_NAME}_obj>)
190-
add_library(${PROJECT_NAME}::${PROJECT_NAME} ALIAS ${PROJECT_NAME})
191-
target_include_directories(${PROJECT_NAME}
192-
PUBLIC
193-
${PROTOBUF_INCLUDE_DIR}
194-
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
195-
$<INSTALL_INTERFACE:${OSI_INSTALL_INCLUDE_DIR}>
196-
)
197-
198-
set_property(
199-
TARGET ${PROJECT_NAME}
200-
PROPERTY SOVERSION ${${PROJECT_NAME}_SOVERSION}
201-
)
202-
set_property(
203-
TARGET ${PROJECT_NAME}
204-
PROPERTY VERSION ${${PROJECT_NAME}_LIBVERSION}
205-
)
206-
207-
target_link_libraries(${PROJECT_NAME} PUBLIC ${PROTOBUF_LIBRARY})
208-
install(TARGETS ${PROJECT_NAME}
209-
EXPORT ${PROJECT_NAME}_targets
210-
DESTINATION "${OSI_INSTALL_LIB_DIR}" COMPONENT lib)
211-
212-
# Copy proto headers to where they are expected by the package config file
213-
add_custom_command(
214-
TARGET ${PROJECT_NAME} POST_BUILD
215-
COMMAND ${CMAKE_COMMAND} -E make_directory
216-
${CMAKE_CURRENT_BINARY_DIR}/${OSI_INSTALL_INCLUDE_DIR}
217-
COMMAND ${CMAKE_COMMAND} -E copy
218-
${PROTO_HEADERS}
219-
${CMAKE_CURRENT_BINARY_DIR}/${OSI_INSTALL_INCLUDE_DIR})
220-
221-
# Create the package config files
222-
include(CMakePackageConfigHelpers)
223-
write_basic_package_version_file(
224-
"${CMAKE_CURRENT_BINARY_DIR}/open_simulation_interface-config-version.cmake"
225-
VERSION ${OPEN_SIMULATION_INTERFACE_VERSION}
226-
COMPATIBILITY SameMajorVersion
227-
)
228-
229-
export(EXPORT ${PROJECT_NAME}_targets
230-
FILE "${CMAKE_CURRENT_BINARY_DIR}/open_simulation_interface-targets.cmake"
231-
NAMESPACE ${PROJECT_NAME}::
232-
)
233-
234-
configure_package_config_file(open_simulation_interface-config.cmake.in
235-
"${CMAKE_CURRENT_BINARY_DIR}/open_simulation_interface-config.cmake"
236-
INSTALL_DESTINATION ${OSI_INSTALL_CMAKE_DIR}
237-
PATH_VARS OSI_INSTALL_INCLUDE_DIR
238-
NO_CHECK_REQUIRED_COMPONENTS_MACRO
239-
)
240-
241-
# Install the *cmake files
242-
install(FILES
243-
"${CMAKE_CURRENT_BINARY_DIR}/open_simulation_interface-config.cmake"
244-
"${CMAKE_CURRENT_BINARY_DIR}/open_simulation_interface-config-version.cmake"
245-
DESTINATION "${OSI_INSTALL_CMAKE_DIR}"
246-
COMPONENT dev)
247-
248-
# Header files
249-
install(FILES ${PROTO_HEADERS} ${FLAT_HEADERS}
250-
DESTINATION "${OSI_INSTALL_INCLUDE_DIR}")
251-
252-
# Install the export set for use with the install-tree
253-
install(EXPORT ${PROJECT_NAME}_targets
254-
FILE open_simulation_interface-targets.cmake
255-
NAMESPACE ${PROJECT_NAME}::
256-
DESTINATION "${OSI_INSTALL_CMAKE_DIR}"
257-
COMPONENT dev)
258-
259-
if(OSI_BUILD_DOCUMENTATION)
260-
# add a target to generate API documentation with Doxygen
261-
# Dependencies: Doxygen and proto2cpp.py
262-
find_package(Doxygen)
263-
if(Doxygen_FOUND)
264-
set(FILTER_PROTO2CPP_PY_PATH CACHE PATH "directory to the filter proto2cpp.py")
265-
if(NOT EXISTS ${FILTER_PROTO2CPP_PY_PATH}/proto2cpp.py)
266-
message(WARNING "${FILTER_PROTO2CPP_PY_PATH}/proto2cpp.py could not be found.")
267-
else()
268-
set(doxyfile_in ${CMAKE_CURRENT_SOURCE_DIR}/doxygen_config.cmake.in)
269-
set(doxyfile ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
270-
271-
configure_file(${doxyfile_in} ${doxyfile} @ONLY)
272-
273-
add_custom_target(api_doc ALL
274-
COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile}
275-
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
276-
endif()
277-
endif()
278-
endif()
5+
add_subdirectory(doxygen)

MANIFEST.in

Lines changed: 0 additions & 1 deletion
This file was deleted.

doxygen/CMakeLists.txt

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
cmake_minimum_required(VERSION 3.5)
2+
3+
project(open_simulation_interface_doxygen)
4+
5+
# add a target to generate API documentation with Doxygen
6+
# Dependencies: Doxygen and proto2cpp.py
7+
find_package(Doxygen)
8+
if(Doxygen_FOUND)
9+
set(FILTER_PROTO2CPP_PY_PATH CACHE PATH "directory to the filter proto2cpp.py")
10+
if(NOT EXISTS ${FILTER_PROTO2CPP_PY_PATH}/proto2cpp.py)
11+
message(WARNING "${FILTER_PROTO2CPP_PY_PATH}/proto2cpp.py could not be found.")
12+
else()
13+
set(doxyfile_in ${CMAKE_CURRENT_SOURCE_DIR}/doxygen_config.cmake.in)
14+
set(doxyfile ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
15+
configure_file(${doxyfile_in} ${doxyfile} @ONLY)
16+
add_custom_target(api_doc ALL
17+
COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile}
18+
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
19+
endif()
20+
endif()

doxygen_config.cmake.in renamed to doxygen/doxygen_config.cmake.in

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@ PROJECT_NAME = "@CMAKE_PROJECT_NAME@"
33
PROJECT_NUMBER = @VERSION_MAJOR@.@VERSION_MINOR@.@VERSION_PATCH@
44

55
#Set input and output directories
6-
INPUT = "@CMAKE_CURRENT_SOURCE_DIR@"
7-
INPUT += "@CMAKE_CURRENT_SOURCE_DIR@/README.md"
6+
INPUT = "@CMAKE_SOURCE_DIR@"
7+
INPUT += "@CMAKE_SOURCE_DIR@/README.md"
88

9-
USE_MDFILE_AS_MAINPAGE = "@CMAKE_CURRENT_SOURCE_DIR@/README.md"
9+
USE_MDFILE_AS_MAINPAGE = "@CMAKE_SOURCE_DIR@/README.md"
1010

1111
OUTPUT_DIRECTORY = "@CMAKE_CURRENT_SOURCE_DIR@/doc"
1212
IMAGE_PATH = "@CMAKE_CURRENT_SOURCE_DIR@/doc/images"

osi3trace/osi2read.py

Lines changed: 0 additions & 66 deletions
This file was deleted.

0 commit comments

Comments
 (0)