diff options
author | Benoit Foucher <benoit@zeroc.com> | 2017-06-19 09:47:56 +0200 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2017-06-19 09:47:56 +0200 |
commit | f2349f53f00c74a7fe648f5037a8cc76cdb162b9 (patch) | |
tree | d236d89dceb0a549fa52e7941079783e2e062960 | |
parent | Add back iceboxadmin Debug, disable IceBridge/Debug tests on Windows (diff) | |
download | ice-f2349f53f00c74a7fe648f5037a8cc76cdb162b9.tar.bz2 ice-f2349f53f00c74a7fe648f5037a8cc76cdb162b9.tar.xz ice-f2349f53f00c74a7fe648f5037a8cc76cdb162b9.zip |
Fixed ICE-8094 & ICE-8099 - IceBT build system fixes
-rw-r--r-- | config/Make.rules.Linux | 3 | ||||
-rw-r--r-- | cpp/BuildInstructionsLinux.md | 15 | ||||
-rw-r--r-- | cpp/config/Make.rules | 2 | ||||
-rw-r--r-- | cpp/src/IceBT/Makefile.mk | 7 |
4 files changed, 23 insertions, 4 deletions
diff --git a/config/Make.rules.Linux b/config/Make.rules.Linux index f866d139283..a9ff8714707 100644 --- a/config/Make.rules.Linux +++ b/config/Make.rules.Linux @@ -185,6 +185,3 @@ IceUtil_system_libs = -lrt $(if $(filter yes,$(libba Ice_system_libs = -ldl -lcrypto $(IceUtil_system_libs) IceSSL_system_libs = -lssl -lcrypto Glacier2CryptPermissionsVerifier_system_libs = -lcrypt -ifneq ($(filter debian ubuntu yocto,$(linux_id)),) -IceBT_system_libs = $(IceSSL_system_libs) $(shell pkg-config --libs dbus-1) -endif diff --git a/cpp/BuildInstructionsLinux.md b/cpp/BuildInstructionsLinux.md index bdc92a081f7..d2dea153953 100644 --- a/cpp/BuildInstructionsLinux.md +++ b/cpp/BuildInstructionsLinux.md @@ -51,6 +51,18 @@ that do not include them. You can install these packages as shown below: sudo wget https://dev.zeroc.com/rpm/thirdparty/zeroc-thirdparty-sles12.repo sudo yum install mcpp-devel +In addition, on Ubuntu and Debian distributions where the Ice for Bluetooth +plug-in is supported, you will need to install these packages if you want to +build the IceBT transport plug-in: + + - [pkg-config][8] 0.29 or later + - [D-Bus][9] 1.10 or later + - [BlueZ][10] 5.37 or later + +These packages are provided with the system and can be installed with: + + sudo apt-get install pkg-config libdbus-1-dev libbluetooth-dev + ## Building Ice From the top-level source directory, edit `config/Make.rules` to establish your @@ -150,3 +162,6 @@ failure, the tests abort with `failed`. [5]: https://symas.com/lightning-memory-mapped-database/ [6]: https://github.com/zeroc-ice/mcpp [7]: https://www.openssl.org/ +[8]: https://www.freedesktop.org/wiki/Software/pkg-config +[9]: https://www.freedesktop.org/wiki/Software/dbus +[10]: http://www.bluez.org diff --git a/cpp/config/Make.rules b/cpp/config/Make.rules index 94d5383b509..271bbcd2515 100644 --- a/cpp/config/Make.rules +++ b/cpp/config/Make.rules @@ -37,7 +37,7 @@ coreandstub_components = IceUtil \ # Add the Bluetooth transport for Debian/Ubuntu/Yocto ifneq ($(filter debian ubuntu yocto,$(linux_id)),) -coreandstub_components += IceXML IceBT +coreandstub_components += IceBT endif # diff --git a/cpp/src/IceBT/Makefile.mk b/cpp/src/IceBT/Makefile.mk index 33bd7c56ed2..9c7a18240ef 100644 --- a/cpp/src/IceBT/Makefile.mk +++ b/cpp/src/IceBT/Makefile.mk @@ -9,13 +9,20 @@ ifneq ($(filter debian ubuntu yocto,$(linux_id)),) +# +# Only build the IceBT plugin if pkg-config, BlueZ and D-Bus requirements are +# installed. +# +ifeq ($(shell pkg-config --exists bluez dbus-1 2> /dev/null && echo yes),yes) $(project)_libraries := IceBT IceBT_targetdir := $(libdir) IceBT_dependencies := Ice IceBT_cppflags := -DICEBT_API_EXPORTS $(shell pkg-config --cflags dbus-1) IceBT_sliceflags := --include-dir IceBT +IceBT_system_libs = $(IceSSL_system_libs) $(shell pkg-config --libs dbus-1) projects += $(project) +endif endif |