diff --git a/debian/rules b/debian/rules index a56027f0..ce06521d 100755 --- a/debian/rules +++ b/debian/rules @@ -9,6 +9,9 @@ export DEB_CFLAGS_MAINT_APPEND = -Wall export DEB_CXXFLAGS_MAINT_APPEND = -Wall export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack -Wl,-E +# reproducible编译参数 +DEB_CMAKE_EXTRA_FLAGS += -DCMAKE_SKIP_BUILD_RPATH=ON + DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) VERSION = $(DEB_VERSION_UPSTREAM) @@ -20,4 +23,4 @@ BUILD_VER = $(shell echo $(VERSION) | awk -F'[+_~-]' '{print $$2}' | sed 's/[^0- dh $@ override_dh_auto_configure: - dh_auto_configure -- -DBUILD_EXAMPLES=OFF -DBUILD_DOCS=ON -DBUILD_VERSION=$(BUILD_VER) -DDTK_VERSION=$(PACK_VER) + dh_auto_configure -- $(DEB_CMAKE_EXTRA_FLAGS) -DBUILD_EXAMPLES=OFF -DBUILD_DOCS=ON -DBUILD_VERSION=$(BUILD_VER) -DDTK_VERSION=$(PACK_VER) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index cfbef0d1..38fbb7ea 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -1,6 +1,4 @@ -set(CHAMELEON_PATH "${PROJECT_BINARY_DIR}/plugins") add_definitions( - -DCHAMELEON_PATH="${CHAMELEON_PATH}" -DQT_DEPRECATED_WARNINGS ) add_subdirectory(exhibition) diff --git a/examples/exhibition/main.cpp b/examples/exhibition/main.cpp index 37288b32..52a0cd5d 100644 --- a/examples/exhibition/main.cpp +++ b/examples/exhibition/main.cpp @@ -71,16 +71,17 @@ int main(int argc, char **argv) QQmlApplicationEngine engine; - engine.addImportPath(CHAMELEON_PATH); + const QString chameleonPath = QStringLiteral("%1/../../../plugins").arg(QGuiApplication::applicationDirPath()); + engine.addImportPath(chameleonPath); #if QT_VERSION >= QT_VERSION_CHECK(5, 12, 0) && QT_VERSION < QT_VERSION_CHECK(6, 0, 0) - QQuickStyle::addStylePath(CHAMELEON_PATH); + QQuickStyle::addStylePath(chameleonPath); // QQuickWindow::setSceneGraphBackend(QSGRendererInterface::Software); #else // QQuickWindow::setGraphicsApi(QSGRendererInterface::Software); #endif #if QT_VERSION < QT_VERSION_CHECK(5, 12, 0) && defined(QT_NO_DEBUG) - QQuickStyle::setStyle(CHAMELEON_PATH"/Chameleon"); + QQuickStyle::setStyle(chameleonPath"/Chameleon"); #else QQuickStyle::setStyle("Chameleon"); #endif diff --git a/examples/qml-inspect/main.cpp b/examples/qml-inspect/main.cpp index b4eff902..2c6fb5c1 100644 --- a/examples/qml-inspect/main.cpp +++ b/examples/qml-inspect/main.cpp @@ -20,16 +20,17 @@ int main(int argc, char *argv[]) QQmlApplicationEngine engine; - engine.addImportPath(CHAMELEON_PATH); + const QString chameleonPath = QStringLiteral("%1/../../../plugins").arg(QGuiApplication::applicationDirPath()); + engine.addImportPath(chameleonPath); #if QT_VERSION >= QT_VERSION_CHECK(5, 12, 0) && QT_VERSION < QT_VERSION_CHECK(6, 0, 0) - QQuickStyle::addStylePath(CHAMELEON_PATH); + QQuickStyle::addStylePath(chameleonPath); // QQuickWindow::setSceneGraphBackend(QSGRendererInterface::Software); #else // QQuickWindow::setGraphicsApi(QSGRendererInterface::Software); #endif #if QT_VERSION < QT_VERSION_CHECK(5, 12, 0) && defined(QT_NO_DEBUG) - QQuickStyle::setStyle(CHAMELEON_PATH"/Chameleon"); + QQuickStyle::setStyle(chameleonPath"/Chameleon"); #else QQuickStyle::setStyle("Chameleon"); #endif diff --git a/qt6/src/CMakeLists.txt b/qt6/src/CMakeLists.txt index 4f593e1f..63b82ca3 100644 --- a/qt6/src/CMakeLists.txt +++ b/qt6/src/CMakeLists.txt @@ -87,4 +87,4 @@ install(EXPORT Dtk${DTK_VERSION_MAJOR}DeclarativeTargets NAMESPACE Dtk${DTK_VERS install(FILES ${QM_FILES} DESTINATION "${TRANSLATIONS_INSTALL_PATH}") # Install plugin install(TARGETS ${PLUGIN_NAME} DESTINATION "${QML_INSTALL_DIR}/${URI_PATH}") -install(DIRECTORY "${PLUGIN_OUTPUT_DIR}/${URI_PATH}/" DESTINATION "${QML_INSTALL_DIR}/${URI_PATH}") +install(FILES "${PLUGIN_OUTPUT_DIR}/${URI_PATH}/qmldir" DESTINATION "${QML_INSTALL_DIR}/${URI_PATH}")