# Communications Library TEMPLATE = lib TARGET = Comms CONFIG += shared c++17 moc QT += core mqtt network serialbus QMAKE_CXXFLAGS += -Wall -Werror -Wextra DESTDIR = $$PWD/lib HEADERS = \ include/CanInterface.h \ include/CanMessage.h \ include/CloudConnectClient.h \ include/CloudConnectFrame.h \ include/CloudConnectServer.h \ include/crc.h \ include/format.h \ include/FrameInterface.h \ include/main.h \ include/MessageBuilder.h \ include/MessageDispatcher.h \ include/MqttClient.h \ include/types.h SOURCES = \ src/CanInterface.cpp \ src/CloudConnectClient.cpp \ src/CloudConnectFrame.cpp \ src/CloudConnectServer.cpp \ src/crc.cpp \ src/format.cpp \ src/FrameInterface.cpp \ src/MessageBuilder.cpp \ src/MessageDispatcher.cpp \ src/MqttClient.cpp \ src/types.cpp INCLUDEPATH += $$PWD/include # qmake only removes the shared objects on distclean. # The following ensures that they are removed on clean, too. # It also ensures that all versioned symlinks (*.so.1, *.so.1.0, etc) are removed. QMAKE_CLEAN += $$DESTDIR/libComms.so* isEmpty(PREFIX): PREFIX = $$PWD/../../install target.path = $$PREFIX/lib INSTALLS += target export_headers.path = $$PREFIX/include export_headers.files = $$HEADERS INSTALLS += export_headers export_pri.path = $$PREFIX/lib/Comms export_pri.files = $$PWD/Comms.pri INSTALLS += export_pri