Skip to content

Commit d9b675d

Browse files
committed
m3 target
1 parent 59cbf54 commit d9b675d

File tree

4 files changed

+40
-45
lines changed

4 files changed

+40
-45
lines changed

.travis.yml

+27-12
Original file line numberDiff line numberDiff line change
@@ -34,18 +34,33 @@ env:
3434
- BUILD_TYPE=Debug CMAKE_ARGS="-DCMAKE_STAGING_PREFIX=`pwd`/staging/usr/local"
3535
- BUILD_TYPE=Release CMAKE_ARGS="-DCMAKE_STAGING_PREFIX=`pwd`/staging/usr/local"
3636
- BUILD_TYPE=MinSizeRel CMAKE_ARGS="-DCMAKE_STAGING_PREFIX=`pwd`/staging/usr/local"
37-
- BUILD_TYPE=Debug \
38-
PATH=${TRAVIS_BUILD_DIR}/../mazda/m3-toolchain:$PATH \
39-
CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=${TRAVIS_BUILD_DIR}/../cmake/gcc-toolchain.cmake \
40-
-DBUILD_MAZDA=ON -DCMAKE_STAGING_PREFIX=`pwd`/staging/usr/local"
41-
- BUILD_TYPE=Release \
42-
PATH=${TRAVIS_BUILD_DIR}/../mazda/m3-toolchain:$PATH \
43-
CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=${TRAVIS_BUILD_DIR}/../cmake/gcc-toolchain.cmake \
44-
-DBUILD_MAZDA=ON -DCMAKE_STAGING_PREFIX=`pwd`/staging/usr/local"
45-
- BUILD_TYPE=MinSizeRel \
46-
PATH=${TRAVIS_BUILD_DIR}/../mazda/m3-toolchain:$PATH \
47-
CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=${TRAVIS_BUILD_DIR}/../cmake/gcc-toolchain.cmake \
48-
-DBUILD_MAZDA=ON -DCMAKE_STAGING_PREFIX=`pwd`/staging/usr/local"
37+
- BUILD_TYPE=Debug
38+
CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=${TRAVIS_BUILD_DIR}/cmake/gcc-toolchain.cmake
39+
-DBUILD_MAZDA=ON -DCMAKE_STAGING_PREFIX=`pwd`/staging/usr/local
40+
-DOPENSSL_CRYPTO_LIBRARY=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/lib/libcrypto.a
41+
-DOPENSSL_INCLUDE_DIR=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/include
42+
-DProtobuf_LIBRARIES=${TRAVIS_BUILD_DIR}/mazda/protobuf-2.6.1-arm/lib/libprotobuf-lite.a
43+
-DProtobuf_INCLUDE_DIR=${TRAVIS_BUILD_DIR}/mazda/protobuf-2.6.1-arm/include"
44+
export PKG_CONFIG_PATH=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/lib/pkgconfig:${TRAVIS_BUILD_DIR}/mazda/protobuf-2.6.1-arm/lib/pkgconfig
45+
export PATH=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/bin:$PATH
46+
- BUILD_TYPE=Release
47+
CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=${TRAVIS_BUILD_DIR}/cmake/gcc-toolchain.cmake
48+
-DBUILD_MAZDA=ON -DCMAKE_STAGING_PREFIX=`pwd`/staging/usr/local
49+
-DOPENSSL_CRYPTO_LIBRARY=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/lib/libcrypto.a
50+
-DOPENSSL_INCLUDE_DIR=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/include
51+
-DProtobuf_LIBRARIES=${TRAVIS_BUILD_DIR}/mazda/protobuf-2.6.1-arm/lib/libprotobuf-lite.a
52+
-DProtobuf_INCLUDE_DIR=${TRAVIS_BUILD_DIR}/mazda/protobuf-2.6.1-arm/include"
53+
export PKG_CONFIG_PATH=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/lib/pkgconfig:${TRAVIS_BUILD_DIR}/mazda/protobuf-2.6.1-arm/lib/pkgconfig
54+
export PATH=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/bin:$PATH
55+
- BUILD_TYPE=MinSizeRel
56+
CMAKE_ARGS="-DCMAKE_TOOLCHAIN_FILE=${TRAVIS_BUILD_DIR}/cmake/gcc-toolchain.cmake
57+
-DBUILD_MAZDA=ON -DCMAKE_STAGING_PREFIX=`pwd`/staging/usr/local
58+
-DOPENSSL_CRYPTO_LIBRARY=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/lib/libcrypto.a
59+
-DOPENSSL_INCLUDE_DIR=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/include
60+
-DProtobuf_LIBRARIES=${TRAVIS_BUILD_DIR}/mazda/protobuf-2.6.1-arm/lib/libprotobuf-lite.a
61+
-DProtobuf_INCLUDE_DIR=${TRAVIS_BUILD_DIR}/mazda/protobuf-2.6.1-arm/include"
62+
export PKG_CONFIG_PATH=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/lib/pkgconfig:${TRAVIS_BUILD_DIR}/mazda/protobuf-2.6.1-arm/lib/pkgconfig
63+
export PATH=${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/bin:$PATH
4964

5065
script:
5166
- env

CMakeLists.txt

-2
Original file line numberDiff line numberDiff line change
@@ -100,8 +100,6 @@ target_link_libraries(headunit PUBLIC
100100
)
101101

102102
if(BUILD_MAZDA)
103-
add_dependencies(headunit dbus-cplusplus)
104-
105103
target_compile_options(headunit PUBLIC -static-libstdc++ -DCMU=1)
106104

107105
target_include_directories(headunit PUBLIC

cmake/deps.cmake

+10-30
Original file line numberDiff line numberDiff line change
@@ -54,37 +54,17 @@ if(GIT_EXECUTABLE)
5454
endif()
5555

5656
if(BUILD_MAZDA)
57+
set(GEN_DBUS_HEADER_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/mazda/dbus/dbusxx-xml2cpp)
58+
add_custom_command(TARGET dbus-cplusplus POST_BUILD
59+
COMMAND ${GEN_DBUS_HEADER_COMMAND} cmu_interfaces.xml --proxy=generated_cmu.h
60+
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/mazda/dbus
61+
COMMENT "Generating generated_cmu.h")
5762

58-
find_package(DBus REQUIRED)
59-
60-
set(THIRD_PARTY_DIR ${CMAKE_SOURCE_DIR}/third_party)
61-
62-
include(ExternalProject)
63-
ExternalProject_Add(dbus-cplusplus
64-
GIT_REPOSITORY https://github.com/GENIVI/dbus-cplusplus.git
65-
GIT_TAG master
66-
GIT_SHALLOW true
67-
PATCH_COMMAND
68-
cd ${THIRD_PARTY_DIR}/dbus-cplusplus &&
69-
git checkout . &&
70-
git apply ${CMAKE_CURRENT_SOURCE_DIR}/cmake/dbus.patch
71-
SOURCE_DIR ${THIRD_PARTY_DIR}/dbus-cplusplus
72-
BUILD_IN_SOURCE 0
73-
WORKING_DIRECTORY ${THIRD_PARTY_DIR}/dbus-cplusplus
74-
CONFIGURE_COMMAND ./autogen.sh --prefix=${CMAKE_STAGING_PREFIX} --disable--ecore --disable-tests --disable-examples
75-
BUILD_COMMAND make
76-
INSTALL_COMMAND make install
77-
)
78-
79-
if(NOT CMAKE_CROSSCOMPILING)
80-
set(GEN_DBUS_HEADER_COMMAND ${CMAKE_STAGING_PREFIX}/bin/dbusxx-xml2cpp)
81-
else() # TODO - expect cross compile host to be x86-64
82-
set(GEN_DBUS_HEADER_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/mazda/dbus/dbusxx-xml2cpp)
83-
endif()
63+
set(DBUS1_LIBRARY="${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/lib/libdbus-1.so.3.7.12")
8464

85-
add_custom_command(TARGET dbus-cplusplus POST_BUILD
86-
COMMAND ${GEN_DBUS_HEADER_COMMAND} cmu_interfaces.xml --proxy=generated_cmu.h
87-
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/mazda/dbus
88-
COMMENT "Generating generated_cmu.h")
65+
set(OPENSSL_CRYPTO_LIBRARY="${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/lib/libcrypto.a")
66+
set(OPENSSL_INCLUDE_DIR="${TRAVIS_BUILD_DIR}/mazda/m3-toolchain/arm-cortexa9_neon-linux-gnueabi/sysroot/usr/include")
8967

68+
set(Protobuf_LIBRARIES="${TRAVIS_BUILD_DIR}/mazda/protobuf-2.6.1-arm/lib/libprotobuf-lite.a")
69+
set(Protobuf_INCLUDE_DIR="${TRAVIS_BUILD_DIR}/mazda/protobuf-2.6.1-arm/include")
9070
endif()

cmake/gcc-toolchain.cmake

+3-1
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,10 @@
2222
# SOFTWARE.
2323
#
2424

25+
include_guard()
26+
2527
IF(NOT TRIPLE)
26-
set(TRIPLE arm-none-eabi)
28+
set(TRIPLE arm-cortexa9_neon-linux-gnueabi)
2729
endif()
2830

2931
message(STATUS "Triple ................. ${TRIPLE}")

0 commit comments

Comments
 (0)