Fix build break for Tizen
authorSangjung Woo <sangjung.woo@samsung.com>
Tue, 16 Aug 2016 02:15:35 +0000 (11:15 +0900)
committerSangjung Woo <sangjung.woo@samsung.com>
Tue, 16 Aug 2016 05:10:26 +0000 (14:10 +0900)
- disable opencvlux plugin build
- json package name is changed from json to json-c
- add libssl pkgconfig to BuildRequires
- link libamb for bluemonkey plugin

Change-Id: I6fda18acea6b689369570667deedbdbab4fe6e34
Signed-off-by: Sangjung Woo <sangjung.woo@samsung.com>
packaging/automotive-message-broker.spec [new file with mode: 0644]
plugins/bluemonkey/CMakeLists.txt
plugins/cangenplugin/CMakeLists.txt
plugins/cangenplugin/test/CMakeLists.txt
plugins/cangenplugin/websockets.cpp
plugins/cansimplugin/CMakeLists.txt
plugins/cansimplugin/test/CMakeLists.txt
plugins/openxc/CMakeLists.txt
plugins/websocket/websocketsinkmanager.cpp
tools/AmbSignalMapper/lib/Intel/IviPoc/templates/CMakeLists.txt

diff --git a/packaging/automotive-message-broker.spec b/packaging/automotive-message-broker.spec
new file mode 100644 (file)
index 0000000..bbe989a
--- /dev/null
@@ -0,0 +1,419 @@
+%bcond_without qt5
+
+%define enable_plugin_opencvlux OFF
+
+Name:       automotive-message-broker
+Summary:    Automotive Message Broker is a vehicle network abstraction system
+Version:    0.15
+Release:    0
+Group:      Automotive/Service
+License:    LGPL-2.1
+URL:        https://github.com/otcshare/automotive-message-broker
+Source0:    %{name}-%{version}.tar.bz2
+Requires: automotive-message-broker-plugins
+Requires: automotive-message-broker-plugins-murphy
+Requires(post): /sbin/ldconfig
+Requires(postun): /sbin/ldconfig
+Requires: default-ac-domains
+Requires: dbus-python
+Requires: python-curses
+Requires: python-gobject
+BuildRequires:  cmake
+BuildRequires:  boost-devel
+BuildRequires:  pkgconfig(json-c)
+BuildRequires:  libtool-ltdl-devel
+BuildRequires:  pkgconfig(libwebsockets)
+BuildRequires:  pkgconfig(uuid)
+BuildRequires:  pkgconfig(sqlite3)
+BuildRequires:  pkgconfig(glib-2.0)
+BuildRequires:  pkgconfig(libssl)
+%if %{?enable_plugin_opencvlux} == ON
+BuildRequires:  pkgconfig(opencv)
+%endif
+BuildRequires:  murphy
+BuildRequires:  pkgconfig(murphy-glib)
+BuildRequires:  pkgconfig(dbus-1)
+BuildRequires:  doxygen
+%if %{with qt5}
+BuildRequires:  qt5-qtcore-devel
+BuildRequires:  qt5-qtconcurrent-devel
+BuildRequires:  qt5-qtdbus-devel
+BuildRequires:  qt5-qtnetwork-devel
+BuildRequires:  qt5-qtdeclarative-devel
+BuildRequires:  qt5-plugin-bearer-generic
+BuildRequires:  qt5-plugin-bearer-connman
+BuildRequires:  qt5-plugin-bearer-nm
+BuildRequires:  qt5-plugin-sqldriver-sqlite
+%endif
+
+%description
+Automotive Message Broker is a vehicle network abstraction system.
+It brokers information from the vehicle to applications.
+
+%package devel
+Summary:    Automotive Message Broker development files
+Group:      Automotive/API
+Requires:   %{name} = %{version}-%{release}
+Requires:   libuuid-devel
+Requires:   boost-devel
+
+%description devel
+Development files for the automotive-message-broker
+
+%package doc
+Summary:    Documentation for the automotive-message-broker API
+Group:      Automotive/Documentation
+Requires:   %{name} = %{version}-%{release}
+
+%description doc
+Document files that describe the D-Bus API exposed by automotive-message-broker
+
+%if %{with qt5}
+%package plugins-qtmainloop
+Summary:    qt5 mainloop plugin
+Group:      Automotive/Libraries
+Requires:   %{name} = %{version}-%{release}
+Requires:   qt5-qtcore
+
+%description plugins-qtmainloop
+Qt mainloop plugin enables qt-based source and sink plugins to run using qt mainloop
+
+%package plugins-websocket
+Summary:    Websocket source and sink plugins
+Group:      Automotive/Libraries
+Requires:   %{name} = %{version}-%{release}
+Requires:   libwebsockets
+Requires:   qt5-qtcore
+
+%description plugins-websocket
+websocket source and sink plugins
+
+%if %{?enable_plugin_opencvlux} == ON
+%package plugins-opencvlux
+Summary:    Plugin for simulating ExteriorBrightness using a common webcam
+Group:      Automotive/Libraries
+Requires:   %{name} = %{version}-%{release}
+Requires:   opencv
+
+%description plugins-opencvlux
+Plugin for simulating ExteriorBrightness using a common webcam
+%endif
+
+%package plugins-bluetooth
+Summary:   Interface to AMB over bluetooth
+Group:     Automotive/Libraries
+Requires:  %{name} = %{version}-%{release}
+
+%description plugins-bluetooth
+Bluetooth SPP server interface
+%endif
+
+%package plugins
+Summary:    Various plugins for automotive-message-broker
+Group:      Automotive/Libraries
+Requires:   %{name} = %{version}-%{release}
+
+%description plugins
+Collection of plugins for automotive-message-broker.  Contains example, demo and dbus plugins.
+
+%package plugins-common
+Summary:  Common plugin library
+Group:    Automotive/Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description plugins-common
+library containing a kitchen-sink of common utility functions
+
+%package plugins-obd2
+Summary:    OBD-II plugin
+Group:      Automotive/Libraries
+Requires:   %{name} = %{version}-%{release}
+Requires:   %{name}-plugins-common = %{version}-%{release}
+
+%description plugins-obd2
+OBD-II plugin that uses ELM 327-compatible scantools to access vehicle data
+
+%package plugins-wheel
+Summary:    Source plugin for using the Logitech G27 racing wheel
+Group:      Automotive/Libraries
+Requires:   %{name} = %{version}-%{release}
+
+%description plugins-wheel
+source plugin for using the Logitech G27 racing wheel package
+
+%package plugins-database
+Summary:    Database logging plugin for automotive-message-broker
+Group:      Automotive/Libraries
+Requires:   %{name} = %{version}-%{release}
+Requires:  sqlite
+
+%description plugins-database
+Database logging plugin for automotive-message-broker package
+
+%package plugins-murphy
+Summary:   Plugin for integration with the murphy policy system
+Group:     Automotive/Libraries
+Requires:  %{name} = %{version}-%{release}
+Requires:  murphy
+
+%description plugins-murphy
+Plugin for integration with the murphy policy system package
+
+%package plugins-gpsnmea
+Summary:   Plugin that provides gps data from nmea devices
+Group:     Automotive/Libraries
+Requires:  %{name} = %{version}-%{release}
+
+%description plugins-gpsnmea
+Plugin that provides location data from nmea devices including bluetooth
+
+%package plugins-test
+Summary:   Plugin that tests AMB code
+Group:     Automotive/Libraries
+Requires:  %{name} = %{version}-%{release}
+
+%description plugins-test
+Plugin that tests some internal AMB code and plugin functionality.  This plugin will assert if something is wrong.
+
+%package plugins-cangen
+Summary:   Plugin that generates CAN data
+Group:     Automotive/Libraries
+Requires:  %{name} = %{version}-%{release}
+
+%description plugins-cangen
+CAN frames generator plug-in for the AMB CAN Simulator
+
+%package plugins-cansim
+Summary:   CAN frames listener plug-in for the AMB CAN Simulator
+Group:     Automotive/Libraries
+Requires:  %{name} = %{version}-%{release}
+
+%description plugins-cansim
+CAN frames listener plug-in for the AMB CAN Simulator package
+
+%if %{with qt5}
+%package plugins-bluemonkey
+Summary:   javascript plugin engine
+Group:     Automotive/Libraries
+Requires:  %{name} = %{version}-%{release}
+Requires: qt5-qtdeclarative
+Requires: %{name}-plugins-qtmainloop
+
+%description plugins-bluemonkey
+Engine for creating scriptable plugins for AMB
+
+%package -n bluemonkey-modules-db
+Summary:   javascript plugin engine db module
+Group:     Automotive/Libraries
+Requires:  %{name} = %{version}-%{release}
+Requires: qt5-plugin-sqldriver-sqlite
+
+%description -n bluemonkey-modules-db
+Engine for creating scriptable plugins for AMB - db module
+
+%package -n bluemonkey-modules-dbus
+Summary:   javascript plugin engine dbus module
+Group:     Automotive/Libraries
+Requires:  %{name} = %{version}-%{release}
+Requires:  qt5-qtdbus
+
+%description -n bluemonkey-modules-dbus
+Engine for creating scriptable plugins for AMB - dbus module
+
+%endif
+
+%package xwalk-vehicle-extension
+Summary:  crosswalk vehicle API extension
+Group:    Automotive/Libraries
+Requires:  %{name} = %{version}-%{release}
+Requires: crosswalk
+
+%description xwalk-vehicle-extension
+Crosswalk vehicle API extension based on the W3C Automotive Business Group Vehicle and Data API Specification
+
+%prep
+%setup -q -n %{name}-%{version}
+
+%build
+%cmake \
+          -Dxwalk_vehicle_extension=ON \
+          -DXWALK_EXTENSION_PATH=/tizen-extensions-crosswalk \
+%if %{with qt5}
+          -Dqtmainloop=ON \
+          -Dopencvlux_plugin=%{enable_plugin_opencvlux} \
+          -Dwebsocket_plugin=ON \
+          -Dbluetooth_plugin=ON \
+          -Dbluemonkey_plugin=ON \
+%endif
+          -Ddatabase_plugin=ON \
+          -Dmurphy_plugin=ON \
+          -Dobd2_plugin=ON \
+          -Dtest_plugin=ON \
+          -Dgpsnmea_plugin=ON \
+          -Dcangen_plugin=ON \
+          -Dcansim_plugin=ON \
+          -Dusebluez5=ON \
+          -Denable_docs=ON
+
+
+%__make %{?jobs:-j%jobs}
+
+%install
+rm -rf %{buildroot}
+%make_install
+
+mkdir -p %{buildroot}%{_unitdir}/network.target.wants
+cp packaging.in/ambd.service.systemd.tizen %{buildroot}%{_unitdir}/ambd.service
+ln -s ../ambd.service %{buildroot}%{_unitdir}/network.target.wants/ambd.service
+%install_service multi-user.target.wants ambd.service
+
+cp packaging/config.tizen %{buildroot}%{_sysconfdir}/ambd/
+
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%post plugins -p /sbin/ldconfig
+%postun plugins -p /sbin/ldconfig
+
+%files
+%defattr(-,root,root,-)
+%manifest packaging/amb.manifest
+%config %{_sysconfdir}/ambd/config
+%config %{_sysconfdir}/ambd/config.tizen
+%config %{_sysconfdir}/ambd/examples/*
+%{_bindir}/ambd
+%{_libdir}/libamb.so*
+%{_unitdir}/ambd.service
+%{_unitdir}/network.target.wants/ambd.service
+%{_unitdir}/multi-user.target.wants/ambd.service
+%{_bindir}/amb-get
+%{_bindir}/amb-get-history
+%{_bindir}/amb-set
+%{_bindir}/amb-listen
+%{_bindir}/ambctl
+
+%files devel
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_includedir}/amb/*.h
+%{_includedir}/amb/*.hpp
+%{_libdir}/pkgconfig/*.pc
+
+%if %{with qt5}
+%files plugins-qtmainloop
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/qtmainloopplugin.so
+
+%files plugins-websocket
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/websocketsource.so
+%{_libdir}/%{name}/websocketsink.so
+
+%if %{?enable_plugin_opencvlux} == ON
+%files plugins-opencvlux
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/opencvluxplugin.so
+%{_sysconfdir}/ambd/plugins.d/opencvlux
+%endif
+
+%files plugins-bluetooth
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/bluetoothplugin.so
+%config %{_sysconfdir}/dbus-1/system.d/ambbt.conf
+%{_sysconfdir}/ambd/plugins.d/bluetooth
+%{_bindir}/testAmbBt
+%endif
+
+%files plugins
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/examplesourceplugin.so
+%{_libdir}/%{name}/examplesinkplugin.so
+%{_libdir}/%{name}/dbussinkplugin.so
+%{_libdir}/%{name}/demosinkplugin.so
+%config %{_sysconfdir}/dbus-1/system.d/amb.conf
+%{_sysconfdir}/ambd/plugins.d/dbus
+%{_sysconfdir}/ambd/plugins.d/examplesink
+%{_sysconfdir}/ambd/plugins.d/examplesource
+
+%files plugins-common
+%manifest packaging.in/amb.manifest.plugins
+%defattr(-,root,root,-)
+%{_libdir}/libamb-plugins-common.so
+
+%files plugins-wheel
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/wheelsourceplugin.so
+
+%files plugins-obd2
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/obd2sourceplugin.so
+%{_sysconfdir}/ambd/plugins.d/obd2
+
+%files plugins-database
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/databasesinkplugin.so
+%{_sysconfdir}/ambd/plugins.d/database
+
+%files plugins-murphy
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/murphysourceplugin.so
+
+%files plugins-gpsnmea
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/gpsnmea.so
+
+%files doc
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%doc %{_docdir}/%{name}/*
+
+%files plugins-test
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/testplugin.so
+
+%files plugins-cangen
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/cangenplugin.so
+%{_bindir}/gen-set
+
+%files plugins-cansim
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/cansimplugin.so
+
+
+%if %{with qt5}
+
+%files plugins-bluemonkey
+%defattr(-,root,root,-)
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/bluemonkeyplugin.so
+%config %{_sysconfdir}/ambd/bluemonkey
+%{_sysconfdir}/ambd/plugins.d/bluemonkey
+
+%files -n bluemonkey-modules-db
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/bluemonkeyDbModule.so
+
+%files -n bluemonkey-modules-dbus
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/%{name}/bluemonkeyDBusModule.so
+
+%endif
+
+%files xwalk-vehicle-extension
+%manifest packaging.in/amb.manifest.plugins
+%{_libdir}/tizen-extensions-crosswalk/*
+%{_datadir}/%{name}/xwalk/examples/*
index 61f6cd0..a0086e5 100644 (file)
@@ -58,7 +58,7 @@ if(Qt5Sql_FOUND)
        message(STATUS "enabling database bluemonkey module")
        add_library(bluemonkeyDbModule MODULE db.cpp)
        set_target_properties(bluemonkeyDbModule PROPERTIES PREFIX "")
-       target_link_libraries(bluemonkeyDbModule ${link_libraries} ${QT_LIBRARIES} ${Qt5Sql_LIBRARIES})
+       target_link_libraries(bluemonkeyDbModule ${link_libraries} amb -L${CMAKE_CURRENT_BINARY_DIR}/lib ${QT_LIBRARIES} ${Qt5Sql_LIBRARIES})
        install(TARGETS bluemonkeyDbModule LIBRARY DESTINATION ${PLUGIN_INSTALL_PATH})
 endif()
 
@@ -69,7 +69,7 @@ if(Qt5DBus_FOUND)
        add_executable(bluemonkeyDBusModule bmdbus.cpp)
        set_target_properties(bluemonkeyDBusModule PROPERTIES PREFIX "")
        set_target_properties(bluemonkeyDBusModule PROPERTIES SUFFIX ".so")
-       target_link_libraries(bluemonkeyDBusModule ${link_libraries} ${QT_LIBRARIES} ${Qt5DBus_LIBRARIES})
+       target_link_libraries(bluemonkeyDBusModule ${link_libraries} amb -L${CMAKE_CURRENT_BINARY_DIR}/lib ${QT_LIBRARIES} ${Qt5DBus_LIBRARIES})
        set(QT_INCLUDE_DIRS ${QT_INCLUDE_DIRS} ${Qt5DBus_INCLUDE_DIRS})
        install(TARGETS bluemonkeyDBusModule RUNTIME DESTINATION ${PLUGIN_INSTALL_PATH})
 endif()
@@ -89,7 +89,7 @@ endif()
 include_directories(${CMAKE_SOURCE_DIR}/lib ${include_dirs} ${communi_INCLUDE_DIRS} ${QT_INCLUDE_DIRS} ${QT_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/plugins/common)
 
 add_executable(bluemonkey bluemonkeynode.cpp)
-target_link_libraries(bluemonkey ${link_libraries} ${QT_LIBRARIES} bm)
+target_link_libraries(bluemonkey ${link_libraries} amb -L${CMAKE_CURRENT_BINARY_DIR}/lib ${QT_LIBRARIES} bm)
 install(TARGETS bluemonkey RUNTIME DESTINATION bin)
 
 add_library(bm SHARED bluemonkey.cpp)
index a954a00..761ecbf 100644 (file)
@@ -2,7 +2,7 @@ if(cangen_plugin)
 ############################################################################################################################################
 
 pkg_check_modules(websockets REQUIRED libwebsockets)
-pkg_check_modules(json REQUIRED json)
+pkg_check_modules(json REQUIRED json-c)
 
 include_directories(${CMAKE_SOURCE_DIR}/lib ${include_dirs} ${gio_INCLUDE_DIRS} ${gio-unix_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/plugins/common ${Boost_INCLUDE_DIRS} ${json_INCLUDE_DIRS})
 
index 76348e7..23a0684 100644 (file)
@@ -5,7 +5,7 @@ find_library(libtool_LIBRARY ltdl DOC "Libtool libraries")
 find_path(libtool_INCLUDE_DIR ltdl.h DOC "Libtool headers")
 
 pkg_check_modules(glib REQUIRED glib-2.0)
-pkg_check_modules(json REQUIRED json)
+pkg_check_modules(json REQUIRED json-c)
 pkg_check_modules(websockets REQUIRED libwebsockets)
 
 #find libcanbus.a library:
index bafbe16..560282a 100644 (file)
@@ -17,9 +17,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 */
 
 #include "websockets.h"
-#include <json/json.h>
-#include <json/json_object.h>
-#include <json/json_tokener.h>
+#include <json-c/json.h>
+#include <json-c/json_object.h>
+#include <json-c/json_tokener.h>
 #include <vehicleproperty.h>
 #include <listplusplus.h>
 
index e29c0de..e22e1dc 100644 (file)
@@ -1,7 +1,7 @@
 if(cansim_plugin)
 ############################################################################################################################################
 
-pkg_check_modules(json REQUIRED json)
+pkg_check_modules(json REQUIRED json-c)
 
 include_directories(${CMAKE_SOURCE_DIR}/lib ${include_dirs} ${gio_INCLUDE_DIRS} ${gio-unix_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/plugins/common ${Boost_INCLUDE_DIRS} ${json_INCLUDE_DIRS})
 
index ecd348b..c19bcb8 100644 (file)
@@ -5,7 +5,7 @@ find_library(libtool_LIBRARY ltdl DOC "Libtool libraries")
 find_path(libtool_INCLUDE_DIR ltdl.h DOC "Libtool headers")
 
 pkg_check_modules(glib REQUIRED glib-2.0)
-pkg_check_modules(json REQUIRED json)
+pkg_check_modules(json REQUIRED json-c)
 
 set(ut_cansimplugin_headers cansimplugin.h cansimpluginimpl.h mockabstractroutingengine.h)
 set(ut_cansimplugin_sources main.cpp ut_cansimplugin.cpp ../cansimplugin.cpp)
index 5c4cc1e..4a41726 100644 (file)
@@ -3,7 +3,7 @@ if(openxc_plugin)
 
 message(STATUS "openxc protocol plugin enabled")
 
-pkg_check_modules(json REQUIRED json)
+pkg_check_modules(json REQUIRED json-c)
 
 include_directories(${CMAKE_SOURCE_DIR}/lib ${include_dirs} ${json_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/plugins/common)
 
index 6003af9..2fc6f91 100644 (file)
@@ -21,9 +21,9 @@
 #include "common.h"
 
 #include <sstream>
-#include <json/json.h>
-#include <json/json_object.h>
-#include <json/json_tokener.h>
+#include <json-c/json.h>
+#include <json-c/json_object.h>
+#include <json-c/json_tokener.h>
 #include <listplusplus.h>
 #include <memory>
 
index f5bfee9..ada7141 100644 (file)
@@ -27,7 +27,7 @@ include(FindPkgConfig)
 find_package(Boost REQUIRED)
 
 pkg_check_modules(glib REQUIRED glib-2.0)
-pkg_check_modules(json REQUIRED json)
+pkg_check_modules(json REQUIRED json-c)
 
 add_definitions(-std=gnu++0x)