aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDominik Holland <dominik.holland@qt.io>2021-02-17 17:34:35 +0100
committerDominik Holland <dominik.holland@qt.io>2021-05-10 17:28:11 +0200
commit8e3d637e7776638149119bd62f459178cbca2955 (patch)
tree077f7a597039a05555da2c2fe33c1535227dd35e
parenteac2590d4266e234f0f2ec4d261d940b14dd79bf (diff)
cmake integration of the ivigenerator
Rerun pro2cmake.py for all examples and tests. Ivigenerator based tests and examples are compiling fine, but the cmake files need to be reworked to be also able to run them. Task-number: AUTOSUITE-1633 Change-Id: Icb95ecfa62ecb319d042dc30ea9f643b69a4aacf Reviewed-by: Robert Griebl <robert.griebl@qt.io>
-rw-r--r--CMakeLists.txt2
-rw-r--r--examples/CMakeLists.txt2
-rw-r--r--examples/ivicore/qface-ivi-addressbook/backend_simulator/CMakeLists.txt7
-rw-r--r--examples/ivicore/qface-ivi-addressbook/demo/CMakeLists.txt1
-rw-r--r--examples/ivicore/qface-ivi-addressbook/frontend/CMakeLists.txt13
-rw-r--r--examples/ivicore/qface-ivi-climate/backend_simulator/CMakeLists.txt7
-rw-r--r--examples/ivicore/qface-ivi-climate/demo/CMakeLists.txt1
-rw-r--r--examples/ivicore/qface-ivi-climate/frontend/CMakeLists.txt13
-rw-r--r--examples/ivicore/qface-ivi-remote/backend_qtro/CMakeLists.txt6
-rw-r--r--examples/ivicore/qface-ivi-remote/frontend/CMakeLists.txt6
-rw-r--r--examples/ivicore/qface-ivi-remote/server_qtro/CMakeLists.txt6
-rw-r--r--examples/ivicore/qface-tutorial/chapter1-basics/frontend/CMakeLists.txt6
-rw-r--r--examples/ivicore/qface-tutorial/chapter2-enums-structs/frontend/CMakeLists.txt6
-rw-r--r--examples/ivicore/qface-tutorial/chapter3-simulation-backend/backend_simulator/CMakeLists.txt6
-rw-r--r--examples/ivicore/qface-tutorial/chapter3-simulation-backend/frontend/CMakeLists.txt6
-rw-r--r--examples/ivicore/qface-tutorial/chapter3-simulation-backend/imports/CMakeLists.txt15
-rw-r--r--examples/ivicore/qface-tutorial/chapter4-simulation-behavior/backend_simulator/CMakeLists.txt61
-rw-r--r--examples/ivicore/qface-tutorial/chapter4-simulation-behavior/frontend/CMakeLists.txt6
-rw-r--r--examples/ivicore/qface-tutorial/chapter4-simulation-behavior/imports/CMakeLists.txt15
-rw-r--r--examples/ivicore/qface-tutorial/chapter5-ipc/backend_qtro/CMakeLists.txt6
-rw-r--r--examples/ivicore/qface-tutorial/chapter5-ipc/backend_simulator/CMakeLists.txt61
-rw-r--r--examples/ivicore/qface-tutorial/chapter5-ipc/frontend/CMakeLists.txt6
-rw-r--r--examples/ivicore/qface-tutorial/chapter5-ipc/imports/CMakeLists.txt5
-rw-r--r--examples/ivicore/qface-tutorial/chapter5-ipc/simulation_server/CMakeLists.txt65
-rw-r--r--examples/ivicore/qface-tutorial/chapter6-own-backend/backend_simulator/CMakeLists.txt61
-rw-r--r--examples/ivicore/qface-tutorial/chapter6-own-backend/frontend/CMakeLists.txt6
-rw-r--r--examples/ivicore/qface-tutorial/chapter6-own-backend/imports/CMakeLists.txt5
-rw-r--r--examples/ivivehiclefunctions/climate_widget/CMakeLists.txt3
-rw-r--r--src/CMakeLists.txt1
-rw-r--r--src/imports/CMakeLists.gen.txt11
-rw-r--r--src/imports/CMakeLists.txt2
-rw-r--r--src/imports/vehiclefunctions/CMakeLists.txt36
-rw-r--r--src/ivicore/CMakeLists.txt3
-rw-r--r--src/ivicore/Qt6IviCoreConfigExtras.cmake.in3
-rw-r--r--src/ivicore/Qt6IviCoreMacros.cmake199
-rw-r--r--src/ivivehiclefunctions/CMakeLists.txt29
-rw-r--r--src/plugins/CMakeLists.txt2
-rw-r--r--src/plugins/ivivehiclefunctions/vehiclefunctions_qtro/CMakeLists.txt12
-rw-r--r--src/plugins/ivivehiclefunctions/vehiclefunctions_simulator/CMakeLists.txt12
-rw-r--r--src/tools/ivigenerator/templates/backend_qtro.yaml1
-rw-r--r--src/tools/ivigenerator/templates/backend_qtro/CMakeLists.txt.tpl19
-rw-r--r--src/tools/ivigenerator/templates/backend_simulator.yaml1
-rw-r--r--src/tools/ivigenerator/templates/backend_simulator/CMakeLists.txt.tpl13
-rw-r--r--src/tools/ivigenerator/templates/backend_simulator/plugin.pri.tpl4
-rw-r--r--src/tools/ivigenerator/templates/frontend.yaml1
-rw-r--r--src/tools/ivigenerator/templates/frontend/CMakeLists.txt.tpl14
-rw-r--r--src/tools/ivigenerator/templates/qmlplugin.yaml1
-rw-r--r--src/tools/ivigenerator/templates/qmlplugin/CMakeLists.txt.tpl33
-rw-r--r--src/tools/ivigenerator/templates/server_qtro.yaml1
-rw-r--r--src/tools/ivigenerator/templates/server_qtro/CMakeLists.txt.tpl13
-rw-r--r--src/tools/ivigenerator/templates/server_qtro_simulator.yaml1
-rw-r--r--src/tools/ivigenerator/templates/server_qtro_simulator/CMakeLists.txt.tpl23
-rw-r--r--src/tools/ivigenerator/templates/test.yaml1
-rw-r--r--src/tools/ivigenerator/templates/test/CMakeLists.txt.tpl7
-rw-r--r--src/tools/vehiclefunctions-simulation-server/CMakeLists.txt10
-rw-r--r--tests/auto/CMakeLists.txt2
-rw-r--r--tests/auto/core/ivigenerator/custom-template/CMakeLists.txt47
-rw-r--r--tests/auto/core/ivigenerator/custom-template/custom-test.yaml2
-rw-r--r--tests/auto/core/ivigenerator/custom-template/custom-test/CMakeLists.txt.tpl4
-rw-r--r--tests/auto/core/ivigenerator/projects/include-test/backend_qtro/CMakeLists.txt64
-rw-r--r--tests/auto/core/ivigenerator/projects/include-test/backend_simulator/CMakeLists.txt39
-rw-r--r--tests/auto/core/ivigenerator/projects/include-test/common/CMakeLists.txt43
-rw-r--r--tests/auto/core/ivigenerator/projects/include-test/frontend/CMakeLists.txt50
-rw-r--r--tests/auto/core/ivigenerator/projects/include-test/qmlplugin/CMakeLists.txt31
-rw-r--r--tests/auto/core/ivigenerator/projects/include-test/simulation_server_qtro/CMakeLists.txt64
-rw-r--r--tests/auto/core/ivigenerator/projects/include-test/test/CMakeLists.txt41
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/backend_qtro/CMakeLists.txt60
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/backend_simulator/CMakeLists.txt36
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/frontend/CMakeLists.txt44
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/qmlplugin/.prev_CMakeLists.txt45
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/qmlplugin/CMakeLists.txt30
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/simulation_server_qtro/CMakeLists.txt61
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/test/CMakeLists.txt37
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/backend_simulator/CMakeLists.txt38
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/frontend/CMakeLists.txt46
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/qmlplugin/.prev_CMakeLists.txt46
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/qmlplugin/CMakeLists.txt32
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/test/CMakeLists.txt39
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-qtro/backend_qtro/CMakeLists.txt68
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-qtro/frontend/CMakeLists.txt63
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-qtro/server_qtro_test/CMakeLists.txt79
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo-qtro/simulation_server_qtro/CMakeLists.txt68
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo/backend_simulator/CMakeLists.txt39
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo/frontend/CMakeLists.txt44
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo/qmlplugin/.prev_CMakeLists.txt45
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo/qmlplugin/CMakeLists.txt30
-rw-r--r--tests/auto/core/ivigenerator/projects/org-example-echo/test/CMakeLists.txt37
-rw-r--r--tests/auto/core/servicemanagertest/.prev_CMakeLists.txt33
-rw-r--r--tests/auto/vehiclefunctions/basic/CMakeLists.txt22
89 files changed, 1705 insertions, 580 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1f1d1d9..fa98ae7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -13,6 +13,8 @@ project(QtIvi
find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core) # special case
find_package(Qt6 ${PROJECT_VERSION} CONFIG OPTIONAL_COMPONENTS Gui Qml Quick RemoteObjects Multimedia Sql) # special case
+include(src/ivicore/Qt6IviCoreMacros.cmake)
+
if(INTEGRITY)
message(NOTICE "Skipping the build as the condition \"NOT INTEGRITY\" is not met.")
return()
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index 7e9779d..f703cb6 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -5,7 +5,7 @@ qt_examples_build_begin()
if(TARGET Qt::Gui AND TARGET Qt::IviCore)
add_subdirectory(ivicore)
endif()
-if(TARGET Qt::Gui AND TARGET ivivehiclefunctions)
+if(TARGET Qt::Gui AND TARGET Qt::IviVehicleFunctions)
add_subdirectory(ivivehiclefunctions)
endif()
if(TARGET Qt::Gui AND TARGET Qt::IviMedia)
diff --git a/examples/ivicore/qface-ivi-addressbook/backend_simulator/CMakeLists.txt b/examples/ivicore/qface-ivi-addressbook/backend_simulator/CMakeLists.txt
index 11dc7d3..a4b21ce 100644
--- a/examples/ivicore/qface-ivi-addressbook/backend_simulator/CMakeLists.txt
+++ b/examples/ivicore/qface-ivi-addressbook/backend_simulator/CMakeLists.txt
@@ -19,6 +19,12 @@ find_package(Qt6 COMPONENTS Core)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS IviCore)
+qt_add_plugin(example_ivi_addressbook)
+
+# IVI Generator:
+qt6_ivigenerator(example_ivi_addressbook
+ QFACE_SOURCES ../example-ivi-addressbook.qface
+ QFACE_FORMAT backend_simulator
)
set_target_properties(example_ivi_addressbook PROPERTIES
WIN32_EXECUTABLE TRUE
@@ -30,6 +36,7 @@ target_include_directories(example_ivi_addressbook PUBLIC
target_link_libraries(example_ivi_addressbook PUBLIC
# Remove: L${CMAKE_CURRENT_BINARY_DIR}/../
+ QtIviAdressBookExample
Qt::Core
Qt::Gui
Qt::IviCore
diff --git a/examples/ivicore/qface-ivi-addressbook/demo/CMakeLists.txt b/examples/ivicore/qface-ivi-addressbook/demo/CMakeLists.txt
index f7d36ff..4d4dbad 100644
--- a/examples/ivicore/qface-ivi-addressbook/demo/CMakeLists.txt
+++ b/examples/ivicore/qface-ivi-addressbook/demo/CMakeLists.txt
@@ -37,6 +37,7 @@ target_compile_definitions(qface-ivi-addressbook PUBLIC
target_link_libraries(qface-ivi-addressbook PUBLIC
# Remove: L${CMAKE_CURRENT_BINARY_DIR}/../
+ QtIviAdressBookExample
Qt::Core
Qt::Gui
Qt::Qml
diff --git a/examples/ivicore/qface-ivi-addressbook/frontend/CMakeLists.txt b/examples/ivicore/qface-ivi-addressbook/frontend/CMakeLists.txt
index c25aec6..b27c013 100644
--- a/examples/ivicore/qface-ivi-addressbook/frontend/CMakeLists.txt
+++ b/examples/ivicore/qface-ivi-addressbook/frontend/CMakeLists.txt
@@ -21,13 +21,12 @@ find_package(Qt6 COMPONENTS IviCore)
find_package(Qt6 COMPONENTS Qml)
find_package(Qt6 COMPONENTS Quick)
-)
-set_target_properties(QtIviAdressBookExample PROPERTIES
- WIN32_EXECUTABLE TRUE
- MACOSX_BUNDLE TRUE
-)
-target_compile_definitions(QtIviAdressBookExample PUBLIC
- QT_BUILD_EXAMPLE_IVI_ADDRESSBOOK_LIB
+add_library(QtIviAdressBookExample)
+
+# IVI Generator:
+qt6_ivigenerator(QtIviAdressBookExample
+ QFACE_SOURCES ../example-ivi-addressbook.qface
+ QFACE_FORMAT frontend
)
target_link_libraries(QtIviAdressBookExample PUBLIC
diff --git a/examples/ivicore/qface-ivi-climate/backend_simulator/CMakeLists.txt b/examples/ivicore/qface-ivi-climate/backend_simulator/CMakeLists.txt
index f5a96df..577ba27 100644
--- a/examples/ivicore/qface-ivi-climate/backend_simulator/CMakeLists.txt
+++ b/examples/ivicore/qface-ivi-climate/backend_simulator/CMakeLists.txt
@@ -19,6 +19,12 @@ find_package(Qt6 COMPONENTS Core)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS IviCore)
+qt_add_plugin(example_ivi_climate)
+
+# IVI Generator:
+qt6_ivigenerator(example_ivi_climate
+ QFACE_SOURCES ../example-ivi-climate.qface
+ QFACE_FORMAT backend_simulator
)
set_target_properties(example_ivi_climate PROPERTIES
WIN32_EXECUTABLE TRUE
@@ -30,6 +36,7 @@ target_include_directories(example_ivi_climate PUBLIC
target_link_libraries(example_ivi_climate PUBLIC
# Remove: L${CMAKE_CURRENT_BINARY_DIR}/../
+ QtIviClimateExample
Qt::Core
Qt::Gui
Qt::IviCore
diff --git a/examples/ivicore/qface-ivi-climate/demo/CMakeLists.txt b/examples/ivicore/qface-ivi-climate/demo/CMakeLists.txt
index 810725f..8dd6fff 100644
--- a/examples/ivicore/qface-ivi-climate/demo/CMakeLists.txt
+++ b/examples/ivicore/qface-ivi-climate/demo/CMakeLists.txt
@@ -37,6 +37,7 @@ target_compile_definitions(qface-ivi-climate PUBLIC
target_link_libraries(qface-ivi-climate PUBLIC
# Remove: L${CMAKE_CURRENT_BINARY_DIR}/../
+ QtIviClimateExample
Qt::Core
Qt::Gui
Qt::Qml
diff --git a/examples/ivicore/qface-ivi-climate/frontend/CMakeLists.txt b/examples/ivicore/qface-ivi-climate/frontend/CMakeLists.txt
index 771443e..9a36218 100644
--- a/examples/ivicore/qface-ivi-climate/frontend/CMakeLists.txt
+++ b/examples/ivicore/qface-ivi-climate/frontend/CMakeLists.txt
@@ -21,13 +21,12 @@ find_package(Qt6 COMPONENTS IviCore)
find_package(Qt6 COMPONENTS Qml)
find_package(Qt6 COMPONENTS Quick)
-)
-set_target_properties(QtIviClimateExample PROPERTIES
- WIN32_EXECUTABLE TRUE
- MACOSX_BUNDLE TRUE
-)
-target_compile_definitions(QtIviClimateExample PUBLIC
- QT_BUILD_EXAMPLE_IVI_CLIMATE_LIB
+add_library(QtIviClimateExample)
+
+# IVI Generator:
+qt6_ivigenerator(QtIviClimateExample
+ QFACE_SOURCES ../example-ivi-climate.qface
+ QFACE_FORMAT frontend
)
target_link_libraries(QtIviClimateExample PUBLIC
diff --git a/examples/ivicore/qface-ivi-remote/backend_qtro/CMakeLists.txt b/examples/ivicore/qface-ivi-remote/backend_qtro/CMakeLists.txt
index 26c3d05..f5bda9e 100644
--- a/examples/ivicore/qface-ivi-remote/backend_qtro/CMakeLists.txt
+++ b/examples/ivicore/qface-ivi-remote/backend_qtro/CMakeLists.txt
@@ -19,6 +19,12 @@ find_package(Qt6 COMPONENTS Core)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS IviCore)
+qt_add_plugin(example_ivi_remote)
+
+# IVI Generator:
+qt6_ivigenerator(example_ivi_remote
+ QFACE_SOURCES ../example-ivi-remote.qface
+ QFACE_FORMAT backend_qtro
)
set_target_properties(example_ivi_remote PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivicore/qface-ivi-remote/frontend/CMakeLists.txt b/examples/ivicore/qface-ivi-remote/frontend/CMakeLists.txt
index 10f4cac..c219e21 100644
--- a/examples/ivicore/qface-ivi-remote/frontend/CMakeLists.txt
+++ b/examples/ivicore/qface-ivi-remote/frontend/CMakeLists.txt
@@ -21,6 +21,12 @@ find_package(Qt6 COMPONENTS IviCore)
find_package(Qt6 COMPONENTS Qml)
find_package(Qt6 COMPONENTS Quick)
+qt_add_executable(QtIviRemoteExample)
+
+# IVI Generator:
+qt6_ivigenerator(QtIviRemoteExample
+ QFACE_SOURCES ../example-ivi-remote.qface
+ QFACE_FORMAT frontend
)
set_target_properties(QtIviRemoteExample PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivicore/qface-ivi-remote/server_qtro/CMakeLists.txt b/examples/ivicore/qface-ivi-remote/server_qtro/CMakeLists.txt
index a800ca8..6b2110d 100644
--- a/examples/ivicore/qface-ivi-remote/server_qtro/CMakeLists.txt
+++ b/examples/ivicore/qface-ivi-remote/server_qtro/CMakeLists.txt
@@ -21,6 +21,12 @@ qt_add_executable(qface-ivi-remote-server
main.cpp
processingservice.cpp processingservice.h
)
+
+# IVI Generator:
+qt6_ivigenerator(qface-ivi-remote-server
+ QFACE_SOURCES ../example-ivi-remote.qface
+ QFACE_FORMAT server_qtro
+)
set_target_properties(qface-ivi-remote-server PROPERTIES
WIN32_EXECUTABLE TRUE
MACOSX_BUNDLE FALSE
diff --git a/examples/ivicore/qface-tutorial/chapter1-basics/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter1-basics/frontend/CMakeLists.txt
index fde5846..8457644 100644
--- a/examples/ivicore/qface-tutorial/chapter1-basics/frontend/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter1-basics/frontend/CMakeLists.txt
@@ -21,6 +21,12 @@ find_package(Qt6 COMPONENTS IviCore)
find_package(Qt6 COMPONENTS Qml)
find_package(Qt6 COMPONENTS Quick)
+qt_add_executable(QtIviInstrumentCluster)
+
+# IVI Generator:
+qt6_ivigenerator(QtIviInstrumentCluster
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT frontend
)
set_target_properties(QtIviInstrumentCluster PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivicore/qface-tutorial/chapter2-enums-structs/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter2-enums-structs/frontend/CMakeLists.txt
index 8ca17d5..e9d0815 100644
--- a/examples/ivicore/qface-tutorial/chapter2-enums-structs/frontend/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter2-enums-structs/frontend/CMakeLists.txt
@@ -21,6 +21,12 @@ find_package(Qt6 COMPONENTS IviCore)
find_package(Qt6 COMPONENTS Qml)
find_package(Qt6 COMPONENTS Quick)
+qt_add_executable(QtIviInstrumentCluster)
+
+# IVI Generator:
+qt6_ivigenerator(QtIviInstrumentCluster
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT frontend
)
set_target_properties(QtIviInstrumentCluster PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivicore/qface-tutorial/chapter3-simulation-backend/backend_simulator/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/backend_simulator/CMakeLists.txt
index 9927170..ce270e6 100644
--- a/examples/ivicore/qface-tutorial/chapter3-simulation-backend/backend_simulator/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/backend_simulator/CMakeLists.txt
@@ -19,6 +19,12 @@ find_package(Qt6 COMPONENTS Core)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS IviCore)
+qt_add_plugin(instrumentcluster_simulation)
+
+# IVI Generator:
+qt6_ivigenerator(instrumentcluster_simulation
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT backend_simulator
)
set_target_properties(instrumentcluster_simulation PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivicore/qface-tutorial/chapter3-simulation-backend/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/frontend/CMakeLists.txt
index dc2a4c6..773b357 100644
--- a/examples/ivicore/qface-tutorial/chapter3-simulation-backend/frontend/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/frontend/CMakeLists.txt
@@ -21,6 +21,12 @@ find_package(Qt6 COMPONENTS IviCore)
find_package(Qt6 COMPONENTS Qml)
find_package(Qt6 COMPONENTS Quick)
+qt_add_executable(QtIviInstrumentCluster)
+
+# IVI Generator:
+qt6_ivigenerator(QtIviInstrumentCluster
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT frontend
)
set_target_properties(QtIviInstrumentCluster PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivicore/qface-tutorial/chapter3-simulation-backend/imports/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/imports/CMakeLists.txt
index 931e18d..3c35fa0 100644
--- a/examples/ivicore/qface-tutorial/chapter3-simulation-backend/imports/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter3-simulation-backend/imports/CMakeLists.txt
@@ -1,7 +1,7 @@
# Generated from imports.pro.
cmake_minimum_required(VERSION 3.14)
-project(imports LANGUAGES CXX)
+project(instrument_cluster_imports LANGUAGES CXX) # special case
set(CMAKE_INCLUDE_CURRENT_DIR ON)
@@ -19,23 +19,28 @@ find_package(Qt6 COMPONENTS Core)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS IviCore)
+
+# IVI Generator:
+qt6_ivigenerator(instrument_cluster_imports # special case
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT qmlplugin
)
-set_target_properties(imports PROPERTIES
+set_target_properties(instrument_cluster_imports PROPERTIES # special case
WIN32_EXECUTABLE TRUE
MACOSX_BUNDLE TRUE
)
-target_include_directories(imports PUBLIC
+target_include_directories(instrument_cluster_imports PUBLIC # special case
${CMAKE_CURRENT_BINARY_DIR}/../frontend
)
-target_link_libraries(imports PUBLIC
+target_link_libraries(instrument_cluster_imports PUBLIC # special case
# Remove: L${CMAKE_CURRENT_BINARY_DIR}/../
Qt::Core
Qt::Gui
Qt::IviCore
)
-install(TARGETS imports
+install(TARGETS instrument_cluster_imports # special case
RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
diff --git a/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/backend_simulator/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/backend_simulator/CMakeLists.txt
new file mode 100644
index 0000000..d05a645
--- /dev/null
+++ b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/backend_simulator/CMakeLists.txt
@@ -0,0 +1,61 @@
+# Generated from backend_simulator.pro.
+
+cmake_minimum_required(VERSION 3.14)
+project(instrumentcluster_simulation LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/ivicore/qface-tutorial/chapter4-simulation-behavior")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS IviCore)
+
+qt_add_plugin(instrumentcluster_simulation)
+
+# IVI Generator:
+qt6_ivigenerator(instrumentcluster_simulation
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT backend_simulator
+)
+set_target_properties(instrumentcluster_simulation PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_include_directories(instrumentcluster_simulation PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
+)
+
+target_link_libraries(instrumentcluster_simulation PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+)
+
+
+# Resources:
+set(simulation_resource_files
+ "simulation.qml"
+)
+
+qt6_add_resources(instrumentcluster_simulation "simulation"
+ PREFIX
+ "/"
+ FILES
+ ${simulation_resource_files}
+)
+
+install(TARGETS instrumentcluster_simulation
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/frontend/CMakeLists.txt
index 6ee4d49..92b465b 100644
--- a/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/frontend/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/frontend/CMakeLists.txt
@@ -21,6 +21,12 @@ find_package(Qt6 COMPONENTS IviCore)
find_package(Qt6 COMPONENTS Qml)
find_package(Qt6 COMPONENTS Quick)
+qt_add_executable(QtIviInstrumentCluster)
+
+# IVI Generator:
+qt6_ivigenerator(QtIviInstrumentCluster
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT frontend
)
set_target_properties(QtIviInstrumentCluster PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/imports/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/imports/CMakeLists.txt
index 780e019..b55a4e8 100644
--- a/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/imports/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter4-simulation-behavior/imports/CMakeLists.txt
@@ -1,7 +1,7 @@
# Generated from imports.pro.
cmake_minimum_required(VERSION 3.14)
-project(imports LANGUAGES CXX)
+project(instrument_cluster_imports LANGUAGES CXX) # special case
set(CMAKE_INCLUDE_CURRENT_DIR ON)
@@ -19,23 +19,28 @@ find_package(Qt6 COMPONENTS Core)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS IviCore)
+
+# IVI Generator:
+qt6_ivigenerator(instrument_cluster_imports # special case
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT qmlplugin
)
-set_target_properties(imports PROPERTIES
+set_target_properties(instrument_cluster_imports PROPERTIES # special case
WIN32_EXECUTABLE TRUE
MACOSX_BUNDLE TRUE
)
-target_include_directories(imports PUBLIC
+target_include_directories(instrument_cluster_imports PUBLIC # special case
${CMAKE_CURRENT_BINARY_DIR}/../frontend
)
-target_link_libraries(imports PUBLIC
+target_link_libraries(instrument_cluster_imports PUBLIC # special case
# Remove: L${CMAKE_CURRENT_BINARY_DIR}/../
Qt::Core
Qt::Gui
Qt::IviCore
)
-install(TARGETS imports
+install(TARGETS instrument_cluster_imports # special case
RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/backend_qtro/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/backend_qtro/CMakeLists.txt
index 80de93e..6171192 100644
--- a/examples/ivicore/qface-tutorial/chapter5-ipc/backend_qtro/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter5-ipc/backend_qtro/CMakeLists.txt
@@ -19,6 +19,12 @@ find_package(Qt6 COMPONENTS Core)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS IviCore)
+qt_add_plugin(instrumentcluster_qtro)
+
+# IVI Generator:
+qt6_ivigenerator(instrumentcluster_qtro
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT backend_qtro
)
set_target_properties(instrumentcluster_qtro PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/backend_simulator/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/backend_simulator/CMakeLists.txt
new file mode 100644
index 0000000..6db7b24
--- /dev/null
+++ b/examples/ivicore/qface-tutorial/chapter5-ipc/backend_simulator/CMakeLists.txt
@@ -0,0 +1,61 @@
+# Generated from backend_simulator.pro.
+
+cmake_minimum_required(VERSION 3.14)
+project(instrumentcluster_simulation LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/ivicore/qface-tutorial/chapter5-ipc")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS IviCore)
+
+qt_add_plugin(instrumentcluster_simulation)
+
+# IVI Generator:
+qt6_ivigenerator(instrumentcluster_simulation
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT backend_simulator
+)
+set_target_properties(instrumentcluster_simulation PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_include_directories(instrumentcluster_simulation PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
+)
+
+target_link_libraries(instrumentcluster_simulation PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+)
+
+
+# Resources:
+set(simulation_resource_files
+ "simulation.qml"
+)
+
+qt6_add_resources(instrumentcluster_simulation "simulation"
+ PREFIX
+ "/"
+ FILES
+ ${simulation_resource_files}
+)
+
+install(TARGETS instrumentcluster_simulation
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/frontend/CMakeLists.txt
index 422563e..0927186 100644
--- a/examples/ivicore/qface-tutorial/chapter5-ipc/frontend/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter5-ipc/frontend/CMakeLists.txt
@@ -21,6 +21,12 @@ find_package(Qt6 COMPONENTS IviCore)
find_package(Qt6 COMPONENTS Qml)
find_package(Qt6 COMPONENTS Quick)
+qt_add_executable(QtIviInstrumentCluster)
+
+# IVI Generator:
+qt6_ivigenerator(QtIviInstrumentCluster
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT frontend
)
set_target_properties(QtIviInstrumentCluster PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/imports/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/imports/CMakeLists.txt
index 03b4cc9..768b549 100644
--- a/examples/ivicore/qface-tutorial/chapter5-ipc/imports/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter5-ipc/imports/CMakeLists.txt
@@ -19,6 +19,11 @@ find_package(Qt6 COMPONENTS Core)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS IviCore)
+
+# IVI Generator:
+qt6_ivigenerator(imports
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT qmlplugin
)
set_target_properties(imports PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivicore/qface-tutorial/chapter5-ipc/simulation_server/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter5-ipc/simulation_server/CMakeLists.txt
new file mode 100644
index 0000000..15105dc
--- /dev/null
+++ b/examples/ivicore/qface-tutorial/chapter5-ipc/simulation_server/CMakeLists.txt
@@ -0,0 +1,65 @@
+# Generated from simulation_server.pro.
+
+cmake_minimum_required(VERSION 3.14)
+project(chapter5-ipc-server LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/ivicore/qface-tutorial/chapter5-ipc/simulation_server")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS IviCore)
+
+qt_add_executable(chapter5-ipc-server)
+
+# IVI Generator:
+qt6_ivigenerator(chapter5-ipc-server
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT server_qtro_simulator
+)
+set_target_properties(chapter5-ipc-server PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE FALSE
+)
+target_include_directories(chapter5-ipc-server PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
+)
+
+target_link_libraries(chapter5-ipc-server PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../
+ # Remove: gui
+ Qt::Core
+ Qt::IviCore
+)
+
+
+# Resources:
+set_source_files_properties("../backend_simulator/simulation.qml"
+ PROPERTIES QT_RESOURCE_ALIAS "simulation.qml"
+)
+set(simulation_resource_files
+ "simulation.qml"
+)
+
+qt6_add_resources(chapter5-ipc-server "simulation"
+ PREFIX
+ "/"
+ BASE
+ "../backend_simulator"
+ FILES
+ ${simulation_resource_files}
+)
+
+install(TARGETS chapter5-ipc-server
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/ivicore/qface-tutorial/chapter6-own-backend/backend_simulator/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter6-own-backend/backend_simulator/CMakeLists.txt
new file mode 100644
index 0000000..e3227a0
--- /dev/null
+++ b/examples/ivicore/qface-tutorial/chapter6-own-backend/backend_simulator/CMakeLists.txt
@@ -0,0 +1,61 @@
+# Generated from backend_simulator.pro.
+
+cmake_minimum_required(VERSION 3.14)
+project(instrumentcluster_simulation LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/ivicore/qface-tutorial/chapter6-own-backend")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS IviCore)
+
+qt_add_plugin(instrumentcluster_simulation)
+
+# IVI Generator:
+qt6_ivigenerator(instrumentcluster_simulation
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT backend_simulator
+)
+set_target_properties(instrumentcluster_simulation PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_include_directories(instrumentcluster_simulation PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
+)
+
+target_link_libraries(instrumentcluster_simulation PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/../
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+)
+
+
+# Resources:
+set(simulation_resource_files
+ "simulation.qml"
+)
+
+qt6_add_resources(instrumentcluster_simulation "simulation"
+ PREFIX
+ "/"
+ FILES
+ ${simulation_resource_files}
+)
+
+install(TARGETS instrumentcluster_simulation
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/ivicore/qface-tutorial/chapter6-own-backend/frontend/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter6-own-backend/frontend/CMakeLists.txt
index 6ca6d2a..2b0fc93 100644
--- a/examples/ivicore/qface-tutorial/chapter6-own-backend/frontend/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter6-own-backend/frontend/CMakeLists.txt
@@ -21,6 +21,12 @@ find_package(Qt6 COMPONENTS IviCore)
find_package(Qt6 COMPONENTS Qml)
find_package(Qt6 COMPONENTS Quick)
+qt_add_executable(QtIviInstrumentCluster)
+
+# IVI Generator:
+qt6_ivigenerator(QtIviInstrumentCluster
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT frontend
)
set_target_properties(QtIviInstrumentCluster PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivicore/qface-tutorial/chapter6-own-backend/imports/CMakeLists.txt b/examples/ivicore/qface-tutorial/chapter6-own-backend/imports/CMakeLists.txt
index b19a870..9723bd9 100644
--- a/examples/ivicore/qface-tutorial/chapter6-own-backend/imports/CMakeLists.txt
+++ b/examples/ivicore/qface-tutorial/chapter6-own-backend/imports/CMakeLists.txt
@@ -19,6 +19,11 @@ find_package(Qt6 COMPONENTS Core)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS IviCore)
+
+# IVI Generator:
+qt6_ivigenerator(imports
+ QFACE_SOURCES ../instrument-cluster.qface
+ QFACE_FORMAT qmlplugin
)
set_target_properties(imports PROPERTIES
WIN32_EXECUTABLE TRUE
diff --git a/examples/ivivehiclefunctions/climate_widget/CMakeLists.txt b/examples/ivivehiclefunctions/climate_widget/CMakeLists.txt
index e7eb371..0e1e124 100644
--- a/examples/ivivehiclefunctions/climate_widget/CMakeLists.txt
+++ b/examples/ivivehiclefunctions/climate_widget/CMakeLists.txt
@@ -18,6 +18,7 @@ set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/ivivehiclefunctions/climate_widge
find_package(Qt6 COMPONENTS Core)
find_package(Qt6 COMPONENTS Gui)
find_package(Qt6 COMPONENTS IviCore)
+find_package(Qt6 COMPONENTS IviVehicleFunctions)
qt_add_executable(climate_widget
main.cpp
@@ -31,7 +32,7 @@ target_link_libraries(climate_widget PUBLIC
Qt::Core
Qt::Gui
Qt::IviCore
- ivivehiclefunctions
+ Qt::IviVehicleFunctions
)
if((QT_MAJOR_VERSION GREATER 4))
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 23fbafd..636fb71 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1,6 +1,7 @@
# Generated from src.pro.
qt_feature_evaluate_features("${CMAKE_CURRENT_SOURCE_DIR}/ivicore/configure.cmake") # special case
+qt_feature_evaluate_features("${CMAKE_CURRENT_SOURCE_DIR}/ivivehiclefunctions/configure.cmake") # special case
qt_feature_evaluate_features("${CMAKE_CURRENT_SOURCE_DIR}/ivimedia/configure.cmake") # special case
qt_feature_evaluate_features("${CMAKE_CURRENT_SOURCE_DIR}/geniviextras/configure.cmake") # special case
diff --git a/src/imports/CMakeLists.gen.txt b/src/imports/CMakeLists.gen.txt
new file mode 100644
index 0000000..343d24d
--- /dev/null
+++ b/src/imports/CMakeLists.gen.txt
@@ -0,0 +1,11 @@
+# Generated from imports.pro.
+
+if(TARGET Qt::IviCore)
+ add_subdirectory(core)
+endif()
+if(TARGET Qt::IviMedia)
+ add_subdirectory(media)
+endif()
+if(TARGET Qt::IviVehicleFunctions)
+ add_subdirectory(vehiclefunctions)
+endif()
diff --git a/src/imports/CMakeLists.txt b/src/imports/CMakeLists.txt
index a3e937e..046b6ad 100644
--- a/src/imports/CMakeLists.txt
+++ b/src/imports/CMakeLists.txt
@@ -6,6 +6,6 @@ endif()
if(TARGET Qt::IviMedia)
add_subdirectory(media)
endif()
-if(TARGET ivivehiclefunctions)
+if(TARGET Qt::IviVehicleFunctions) # special case
add_subdirectory(vehiclefunctions)
endif()
diff --git a/src/imports/vehiclefunctions/CMakeLists.txt b/src/imports/vehiclefunctions/CMakeLists.txt
new file mode 100644
index 0000000..d5a7c70
--- /dev/null
+++ b/src/imports/vehiclefunctions/CMakeLists.txt
@@ -0,0 +1,36 @@
+# Generated from vehiclefunctions.pro.
+
+#####################################################################
+## vehiclefunctions Plugin:
+#####################################################################
+
+# IVI Generator:
+qt_ivigenerator(qtivivehiclefunctionsplugin
+ QFACE_SOURCES ../../ivivehiclefunctions/ivivehiclefunctions.qface
+ QFACE_FORMAT qmlplugin
+ QFACE_MODULE_NAME QtIviVehicleFunctions
+)
+
+# special case begin
+target_link_libraries(qtivivehiclefunctionsplugin PUBLIC
+ Qt::IviCore
+ Qt::IviVehicleFunctions
+)
+# special case end
+
+#### Keys ignored in scope 1:.:.:vehiclefunctions.pro:<TRUE>:
+# CXX_MODULE = "qml"
+# QML_IMPORT_VERSION = "1.0"
+# QT_FOR_CONFIG = "ivicore"
+# TARGETPATH = "$$replace(URI, \\., /)"
+# qml2build.files = "-$$_PRO_FILE_PWD_/qmldir" "-$$_PRO_FILE_PWD_/plugins.qmltypes"
+# qmldir2build.files = "-$$_PRO_FILE_PWD_/qmldir" "-$$_PRO_FILE_PWD_/plugins.qmltypes"
+
+## Scopes:
+#####################################################################
+
+#### Keys ignored in scope 3:.:.:vehiclefunctions.pro:NOT PWD___equals____ss_OUT_PWD:
+# qmldir.base = <EMPTY>
+# qmldir.files = "-$$_PRO_FILE_PWD_/qmldir"
+# qmlfiles.base = <EMPTY>
+# qmlfiles.files = "-$$_PRO_FILE_PWD_/qmldir"
diff --git a/src/ivicore/CMakeLists.txt b/src/ivicore/CMakeLists.txt
index 01e55f7..d6d7aed 100644
--- a/src/ivicore/CMakeLists.txt
+++ b/src/ivicore/CMakeLists.txt
@@ -39,6 +39,9 @@ qt_add_module(IviCore
PRIVATE_MODULE_INTERFACE
Qt::CorePrivate
Qt::QmlPrivate
+ EXTRA_CMAKE_FILES
+ Qt6IviCoreConfigExtras.cmake.in
+ Qt6IviCoreMacros.cmake
)
#### Keys ignored in scope 1:.:.:ivicore.pro:<TRUE>:
diff --git a/src/ivicore/Qt6IviCoreConfigExtras.cmake.in b/src/ivicore/Qt6IviCoreConfigExtras.cmake.in
new file mode 100644
index 0000000..057a591
--- /dev/null
+++ b/src/ivicore/Qt6IviCoreConfigExtras.cmake.in
@@ -0,0 +1,3 @@
+
+# install layout information, following what qmake -query provides
+get_filename_component(QTIVI_INSTALL_PREFIX ${CMAKE_CURRENT_LIST_DIR}/../../../ ABSOLUTE)
diff --git a/src/ivicore/Qt6IviCoreMacros.cmake b/src/ivicore/Qt6IviCoreMacros.cmake
new file mode 100644
index 0000000..5101501
--- /dev/null
+++ b/src/ivicore/Qt6IviCoreMacros.cmake
@@ -0,0 +1,199 @@
+function(qt6_ivigenerator target)
+ qt6_ivigenerator_generate(${ARGN})
+ qt6_ivigenerator_include(${target} ${ARGN})
+endfunction()
+
+if(NOT QT_NO_CREATE_VERSIONLESS_FUNCTIONS)
+ function(qt_ivigenerator)
+ qt6_ivigenerator(${ARGV})
+ endfunction()
+endif()
+
+macro(internal_resolve_ivigenerator_path)
+ if (DEFINED QtIvi_BINARY_DIR AND (NOT DEFINED QT_BUILD_STANDALONE_TESTS))
+ set (VIRTUALENV ${QtIvi_BINARY_DIR}/src/tools/ivigenerator/qtivi_qface_virtualenv)
+ set (GENERATOR_PATH ${QtIvi_SOURCE_DIR}/src/tools/ivigenerator)
+ set (IVIGENERATOR_CONFIG ${QtIvi_BINARY_DIR}/src/tools/ivigenerator/.config)
+ else()
+ set (GENERATOR_PATH ${QTIVI_INSTALL_PREFIX}/${QT6_INSTALL_BINS}/ivigenerator)
+ set (VIRTUALENV ${GENERATOR_PATH}/qtivi_qface_virtualenv)
+ endif()
+endmacro()
+
+function(qt6_ivigenerator_generate)
+ internal_resolve_ivigenerator_path()
+
+ if (NOT EXISTS ${VIRTUALENV}/bin/activate AND NOT EXISTS ${VIRTUALENV}/Scripts/activate.bat)
+ return()
+ endif()
+
+ cmake_parse_arguments(
+ PARSE_ARGV 0
+ ARG
+ "" "QFACE_FORMAT;QFACE_OUTPUT_DIR;QFACE_SOURCES;QFACE_HEADERS_OUTPUT_DIR" "QFACE_ANNOTATIONS;QFACE_IMPORT_PATH"
+ )
+
+ if (DEFINED ARG_KEYWORDS_MISSING_VALUES)
+ message(FATAL_ERROR "Keywords can't be empty: ${ARG_KEYWORDS_MISSING_VALUES}")
+ endif()
+
+ if (NOT DEFINED ARG_QFACE_FORMAT)
+ set(ARG_QFACE_FORMAT frontend)
+ endif()
+ set(QFACE_OUTPUT_DIR ${ARG_QFACE_OUTPUT_DIR})
+ if (NOT DEFINED ARG_QFACE_OUTPUT_DIR)
+ set(QFACE_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR})
+ endif()
+ if (NOT DEFINED ARG_QFACE_SOURCES)
+ message(FATAL_ERROR "QFACE_SOURCES can't be empty")
+ endif()
+ get_filename_component(QFACE_SOURCES "${ARG_QFACE_SOURCES}" REALPATH BASE_DIR)
+ get_filename_component(QFACE_SOURCE_DIR "${ARG_QFACE_SOURCES}" DIRECTORY)
+ get_filename_component(QFACE_BASE_NAME "${ARG_QFACE_SOURCES}" NAME_WLE)
+ get_filename_component(QFACE_SOURCE_ANNOTATION ${QFACE_SOURCE_DIR}/${QFACE_BASE_NAME}.yaml REALPATH BASE_DIR)
+
+ set(QFACE_TEMPLATE_PWD "${GENERATOR_PATH}/templates/${ARG_QFACE_FORMAT}")
+ if(EXISTS ${QFACE_TEMPLATE_PWD})
+ set(FORMAT_PATH ${QFACE_TEMPLATE_PWD})
+ set(QFACE_FORMAT ${ARG_QFACE_FORMAT})
+ else()
+ get_filename_component(FORMAT_PATH "${ARG_QFACE_FORMAT}" REALPATH)
+ if(EXISTS ${FORMAT_PATH})
+ set(QFACE_FORMAT ${FORMAT_PATH})
+ endif()
+ endif()
+ if (NOT DEFINED QFACE_FORMAT)
+ message(FATAL_ERROR "Invalid QFACE_FORMAT: Couldn't find the template folder: ${FORMAT_PATH}")
+ endif()
+
+ # Register all source files to cause a cmake rerun
+ set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${QFACE_SOURCES})
+ if (EXISTS ${QFACE_SOURCE_ANNOTATION})
+ set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${QFACE_SOURCE_ANNOTATION})
+ endif()
+ # Also register all files which are part of the current template
+ file(GLOB FORMAT_FILES ${FORMAT_PATH}/*)
+ set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${FORMAT_FILES})
+ set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${FORMAT_PATH}.yaml)
+ # Most templates also have a dependency to a common folder
+ file(GLOB COMMON_FORMAT_FILES ${GENERATOR_PATH}/templates/*common*/*)
+ set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${COMMON_FORMAT_FILES})
+
+ set(GENERATOR_ARGUMENTS --format=${QFACE_FORMAT} --force)
+ foreach(ANNOTATION ${ARG_QFACE_ANNOTATIONS})
+ get_filename_component(ANNOTATION_PATH "${ANNOTATION}" REALPATH BASE_DIR)
+ list(APPEND GENERATOR_ARGUMENTS -A ${ANNOTATION_PATH})
+ # Dependency for regeneration
+ set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${ANNOTATION_PATH})
+ endforeach()
+
+ foreach(IMPORT ${ARG_QFACE_IMPORT_PATH})
+ get_filename_component(IMPORT_PATH "${IMPORT}" REALPATH BASE_DIR)
+ list(APPEND GENERATOR_ARGUMENTS -I ${IMPORT_PATH})
+ # Dependency for regeneration
+ file(GLOB QFACE_FILES ${IMPORT_PATH}/*.qface)
+ set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${QFACE_FILES})
+ endforeach()
+
+ # If the generator was run successfully before
+ # Check for the timestamps to determine when to run it again.
+ # TODO, this needs to be extended to also include template and yaml changes
+ if (${QFACE_SOURCES} IS_NEWER_THAN ${QFACE_OUTPUT_DIR}/.stamp-ivigenerator)
+ # TODO How to best unset those again afterwards ?
+ # Use cmake -E slee + cmake -E env COMMAND instead ?
+ #equals(QMAKE_HOST.os, Windows): ENV = chcp 65001 &&
+ if ("${CMAKE_HOST_SYSTEM_NAME}" STREQUAL "Windows")
+ set(PYTHON_EXECUTABLE ${VIRTUALENV}/Scripts/python.exe)
+ file(TO_NATIVE_PATH "${VIRTUALENV}" VIRTUALENV)
+ else()
+ set(PYTHON_EXECUTABLE ${VIRTUALENV}/bin/python)
+ set(ENV{LC_ALL} en_US.UTF-8)
+ set(ENV{LD_LIBRARY_PATH} ${VIRTUALENV}/bin)
+ endif()
+ if (DEFINED IVIGENERATOR_CONFIG)
+ set(ENV{IVIGENERATOR_CONFIG} ${IVIGENERATOR_CONFIG})
+ endif()
+ set(ENV{PYTHONHOME} ${VIRTUALENV})
+ set(ENV{VIRTUAL_ENV} ${VIRTUALENV})
+
+ message(STATUS "Running ivigenerator for ${QFACE_SOURCES}")
+ execute_process(
+ COMMAND ${PYTHON_EXECUTABLE}
+ ${GENERATOR_PATH}/generate.py
+ ${GENERATOR_ARGUMENTS}
+ ${QFACE_SOURCES}
+ ${QFACE_OUTPUT_DIR}
+ RESULT_VARIABLE RET_CODE
+ OUTPUT_VARIABLE GENERATOR_LOG
+ ERROR_VARIABLE GENERATOR_LOG
+ COMMAND_ECHO STDOUT
+ )
+ message("${GENERATOR_LOG}")
+
+ # Touch the stamp file if the generator run was successful
+ if("${RET_CODE}" EQUAL "0")
+ execute_process(COMMAND ${CMAKE_COMMAND} -E touch ${QFACE_OUTPUT_DIR}/.stamp-ivigenerator)
+ else()
+ message(FATAL_ERROR "Error while running the ivigenerator")
+ endif()
+ endif()
+
+ # hack for the developer-build to have all headers where the Qt build expects them
+ if (DEFINED ARG_QFACE_HEADERS_OUTPUT_DIR)
+ file(GLOB HEADER_FILES ${QFACE_OUTPUT_DIR}/*.h)
+ file(COPY ${HEADER_FILES} DESTINATION ${ARG_QFACE_HEADERS_OUTPUT_DIR})
+ endif()
+
+endfunction()
+
+if(NOT QT_NO_CREATE_VERSIONLESS_FUNCTIONS)
+ function(qt_ivigenerator_generate)
+ qt6_ivigenerator_generate(${ARGV})
+ endfunction()
+endif()
+
+function(qt6_ivigenerator_include target)
+ internal_resolve_ivigenerator_path()
+
+ if (NOT EXISTS ${VIRTUALENV}/bin/activate AND NOT EXISTS ${VIRTUALENV}/Scripts/activate.bat)
+ # Create a dummy target instead
+ if (NOT TARGET ${target} AND NOT TEST ${target})
+ if (DEFINED QtIvi_BINARY_DIR)
+ file(TOUCH ${CMAKE_CURRENT_BINARY_DIR}/cmake_dummy.cpp)
+ add_library(${target} ${CMAKE_CURRENT_BINARY_DIR}/cmake_dummy.cpp)
+ else()
+ message(FATAL_ERROR "No virtualenv environment to run the ivigenerator")
+ endif()
+ endif()
+ return()
+ endif()
+
+ cmake_parse_arguments(
+ PARSE_ARGV 1
+ ARG
+ "" "QFACE_SOURCES;QFACE_OUTPUT_DIR" ""
+ )
+
+ if (DEFINED ARG_KEYWORDS_MISSING_VALUES)
+ message(FATAL_ERROR "Keywords can't be empty: ${ARG_KEYWORDS_MISSING_VALUES}")
+ endif()
+
+ set(QFACE_OUTPUT_DIR ${ARG_QFACE_OUTPUT_DIR})
+ if (NOT DEFINED ARG_QFACE_OUTPUT_DIR)
+ set(QFACE_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR})
+ endif()
+ if (NOT DEFINED ARG_QFACE_SOURCES)
+ message(FATAL_ERROR "QFACE_SOURCES can't be empty")
+ endif()
+ get_filename_component(QFACE_SOURCES "${ARG_QFACE_SOURCES}" REALPATH BASE_DIR)
+ get_filename_component(QFACE_BASE_NAME "${ARG_QFACE_SOURCES}" NAME_WLE)
+
+ set(CURRENT_TARGET "${target}")
+ include(${QFACE_OUTPUT_DIR}/${QFACE_BASE_NAME}.cmake)
+endfunction()
+
+if(NOT QT_NO_CREATE_VERSIONLESS_FUNCTIONS)
+ function(qt_ivigenerator_include)
+ qt6_ivigenerator_include(${ARGV})
+ endfunction()
+endif()
diff --git a/src/ivivehiclefunctions/CMakeLists.txt b/src/ivivehiclefunctions/CMakeLists.txt
index 6ab20cc..4541cb1 100644
--- a/src/ivivehiclefunctions/CMakeLists.txt
+++ b/src/ivivehiclefunctions/CMakeLists.txt
@@ -1,22 +1,39 @@
# Generated from ivivehiclefunctions.pro.
+# special case begin
#####################################################################
-## QtIviVehicleFunctions Binary:
+## IviVehicleFunctions Module:
#####################################################################
-qt_add_executable(QtIviVehicleFunctions
- GUI
- PUBLIC_LIBRARIES
+qt_ivigenerator_generate(
+ QFACE_SOURCES ivivehiclefunctions.qface
+ QFACE_FORMAT frontend
+ QFACE_MODULE_NAME QtIviVehicleFunctions
+ QFACE_HEADERS_OUTPUT_DIR ${QT_BUILD_DIR}/src/ivivehiclefunctions
+)
+make_directory(${QT_BUILD_DIR}/src/ivivehiclefunctions)
+
+qt_add_module(IviVehicleFunctions
+ LIBRARIES
Qt::CorePrivate
+ Qt::IviCorePrivate
+ PUBLIC_LIBRARIES
+ Qt::Core
Qt::IviCore
+ PRIVATE_MODULE_INTERFACE
+ Qt::CorePrivate
Qt::IviCorePrivate
)
+qt_ivigenerator_include(IviVehicleFunctions
+ QFACE_SOURCES ivivehiclefunctions.qface
+)
+
+# special case end
+
#### Keys ignored in scope 1:.:.:ivivehiclefunctions.pro:<TRUE>:
# CMAKE_MODULE_TESTS = "'-'"
# OTHER_FILES = "$$PWD/doc/*.qdocconf" "$$PWD/doc/src/*.qdoc" "$$PWD/doc/snippets/*" "$$PWD/doc/images/*"
-# QFACE_MODULE_NAME = "QtIviVehicleFunctions"
-# QFACE_SOURCES = "ivivehiclefunctions.qface"
# QT_FOR_CONFIG = "ivicore"
## Scopes:
diff --git a/src/plugins/CMakeLists.txt b/src/plugins/CMakeLists.txt
index f2dbb2d..810c302 100644
--- a/src/plugins/CMakeLists.txt
+++ b/src/plugins/CMakeLists.txt
@@ -3,6 +3,6 @@
if(TARGET Qt::IviMedia)
add_subdirectory(ivimedia)
endif()
-if(TARGET ivivehiclefunctions)
+if(TARGET Qt::IviVehicleFunctions)
add_subdirectory(ivivehiclefunctions)
endif()
diff --git a/src/plugins/ivivehiclefunctions/vehiclefunctions_qtro/CMakeLists.txt b/src/plugins/ivivehiclefunctions/vehiclefunctions_qtro/CMakeLists.txt
index c97f629..71a3091 100644
--- a/src/plugins/ivivehiclefunctions/vehiclefunctions_qtro/CMakeLists.txt
+++ b/src/plugins/ivivehiclefunctions/vehiclefunctions_qtro/CMakeLists.txt
@@ -10,12 +10,16 @@ qt_internal_add_plugin(QtIviVehicleFunctionsQtROPlugin
PUBLIC_LIBRARIES
Qt::Core
Qt::IviCore
- ivivehiclefunctions
+ Qt::IviVehicleFunctions
+)
+
+# IVI Generator:
+qt_ivigenerator(QtIviVehicleFunctionsQtROPlugin
+ QFACE_SOURCES ../../../ivivehiclefunctions/ivivehiclefunctions.qface
+ QFACE_FORMAT backend_qtro
+ QFACE_MODULE_NAME QtIviVehicleFunctions
)
#### Keys ignored in scope 1:.:.:vehiclefunctions_qtro.pro:<TRUE>:
# CMAKE_MODULE_TESTS = "'-'"
# PLUGIN_EXTENDS = "ivivehiclefunctions"
-# QFACE_FORMAT = "backend_qtro"
-# QFACE_MODULE_NAME = "QtIviVehicleFunctions"
-# QFACE_SOURCES = "../../../ivivehiclefunctions/ivivehiclefunctions.qface"
diff --git a/src/plugins/ivivehiclefunctions/vehiclefunctions_simulator/CMakeLists.txt b/src/plugins/ivivehiclefunctions/vehiclefunctions_simulator/CMakeLists.txt
index 71ab87d..58c98a0 100644
--- a/src/plugins/ivivehiclefunctions/vehiclefunctions_simulator/CMakeLists.txt
+++ b/src/plugins/ivivehiclefunctions/vehiclefunctions_simulator/CMakeLists.txt
@@ -10,7 +10,7 @@ qt_internal_add_plugin(QtIviVehicleFunctionsSimulatorPlugin
PUBLIC_LIBRARIES
Qt::Core
Qt::IviCore
- ivivehiclefunctions
+ Qt::IviVehicleFunctions
)
# Resources:
@@ -27,10 +27,14 @@ qt_internal_add_resource(QtIviVehicleFunctionsSimulatorPlugin "qml"
)
+# IVI Generator:
+qt_ivigenerator(QtIviVehicleFunctionsSimulatorPlugin
+ QFACE_SOURCES ../../../ivivehiclefunctions/ivivehiclefunctions.qface
+ QFACE_FORMAT backend_simulator
+ QFACE_MODULE_NAME QtIviVehicleFunctions
+)
+
#### Keys ignored in scope 1:.:.:vehiclefunctions_simulator.pro:<TRUE>:
# CMAKE_MODULE_TESTS = "'-'"
# PLUGIN_EXTENDS = "ivivehiclefunctions"
-# QFACE_FORMAT = "backend_simulator"
-# QFACE_MODULE_NAME = "QtIviVehicleFunctions"
-# QFACE_SOURCES = "../../../ivivehiclefunctions/ivivehiclefunctions.qface"
# QML_IMPORT_PATH = "$$OUT_PWD/qml"
diff --git a/src/tools/ivigenerator/templates/backend_qtro.yaml b/src/tools/ivigenerator/templates/backend_qtro.yaml
index 795d781..0d0fbff 100644
--- a/src/tools/ivigenerator/templates/backend_qtro.yaml
+++ b/src/tools/ivigenerator/templates/backend_qtro.yaml
@@ -5,6 +5,7 @@ backend_qtro:
- "{{module.module_name|lower}}qtroplugin.cpp": "plugin.cpp.tpl"
- "{{module.module_name|lower}}.json": "plugin.json"
- "{{srcBase|lower}}.pri": "plugin.pri.tpl"
+ - '{{srcBase|lower}}.cmake': 'CMakeLists.txt.tpl'
interface:
documents:
- '{{interface|lower}}backend.h': 'backend.h.tpl'
diff --git a/src/tools/ivigenerator/templates/backend_qtro/CMakeLists.txt.tpl b/src/tools/ivigenerator/templates/backend_qtro/CMakeLists.txt.tpl
new file mode 100644
index 0000000..f72276c
--- /dev/null
+++ b/src/tools/ivigenerator/templates/backend_qtro/CMakeLists.txt.tpl
@@ -0,0 +1,19 @@
+find_package(Qt6 COMPONENTS RemoteObjects IviRemoteObjectsHelper)
+
+target_sources(${CURRENT_TARGET}
+ PRIVATE
+{% for interface in module.interfaces %}
+ {{interface|lower}}backend.cpp
+{% endfor %}
+ {{module.module_name|lower}}qtroplugin.cpp
+)
+
+qt_add_repc_replica(${CURRENT_TARGET}
+{% for interface in module.interfaces %}
+ {{interface|lower}}.rep
+{% endfor %}
+)
+
+### MISSING
+# OTHER_FILES += \
+# $$PWD/{{module.module_name|lower}}.json
diff --git a/src/tools/ivigenerator/templates/backend_simulator.yaml b/src/tools/ivigenerator/templates/backend_simulator.yaml
index bf8dad7..e1a75d2 100644
--- a/src/tools/ivigenerator/templates/backend_simulator.yaml
+++ b/src/tools/ivigenerator/templates/backend_simulator.yaml
@@ -8,6 +8,7 @@ backend_simulator:
- "{{module.module_name|lower}}_simulation_data.json": "common/simulation_data.json.tpl"
- "{{module.module_name|lower}}_simulation.qrc": "common/simulation.qrc.tpl"
- "{{srcBase|lower}}.pri": "plugin.pri.tpl"
+ - '{{srcBase|lower}}.cmake': 'CMakeLists.txt.tpl'
- "qml/{{module|qml_type|replace('.', '/')}}/simulation/plugins.qmltypes": "common/simulation.qmltypes.tpl"
- "qml/{{module|qml_type|replace('.', '/')}}/simulation/qmldir": "common/qmldir.tpl"
- "qml/{{module|qml_type|replace('.', '/')}}/plugins.qmltypes": "common/plugins.qmltypes.tpl"
diff --git a/src/tools/ivigenerator/templates/backend_simulator/CMakeLists.txt.tpl b/src/tools/ivigenerator/templates/backend_simulator/CMakeLists.txt.tpl
new file mode 100644
index 0000000..843a3f4
--- /dev/null
+++ b/src/tools/ivigenerator/templates/backend_simulator/CMakeLists.txt.tpl
@@ -0,0 +1,13 @@
+target_sources(${CURRENT_TARGET}
+ PRIVATE
+{% for interface in module.interfaces %}
+ {{interface|lower}}backend.cpp
+{% endfor %}
+ {{module.module_name|lower}}simulatorplugin.cpp
+ {{module.module_name|lower}}_simulation.qrc
+)
+
+### MISSING
+# OTHER_FILES += \
+# $$PWD/{{module.module_name|lower}}.json \
+# $$PWD/{{module.module_name|lower}}_simulation_data.json
diff --git a/src/tools/ivigenerator/templates/backend_simulator/plugin.pri.tpl b/src/tools/ivigenerator/templates/backend_simulator/plugin.pri.tpl
index 84dbe37..62a76b2 100644
--- a/src/tools/ivigenerator/templates/backend_simulator/plugin.pri.tpl
+++ b/src/tools/ivigenerator/templates/backend_simulator/plugin.pri.tpl
@@ -42,10 +42,6 @@
## Do not edit! All changes made to it will be lost.
#############################################################################
-{% if 'simulator' in features %}
-QT += simulator
-{% endif %}
-
HEADERS += \
{% for interface in module.interfaces %}
$$PWD/{{interface|lower}}backend.h \
diff --git a/src/tools/ivigenerator/templates/frontend.yaml b/src/tools/ivigenerator/templates/frontend.yaml
index 7aec967..7323d32 100644
--- a/src/tools/ivigenerator/templates/frontend.yaml
+++ b/src/tools/ivigenerator/templates/frontend.yaml
@@ -8,6 +8,7 @@ frontend:
- '{{module.module_name|lower}}modulefactory.h': 'modulefactory.h.tpl'
- '{{module.module_name|lower}}modulefactory.cpp': 'modulefactory.cpp.tpl'
- '{{srcBase|lower}}.pri': 'module.pri.tpl'
+ - '{{srcBase|lower}}.cmake': 'CMakeLists.txt.tpl'
- 'qml/{{module|qml_type|replace(".", "/")}}/plugins.qmltypes': 'common/plugins.qmltypes.tpl'
- "qml/{{module|qml_type|replace('.', '/')}}/designer/{{module.module_name|lower}}.metainfo": "common/designer.metainfo.tpl"
- 'qml/{{module|qml_type|replace(".", "/")}}/qmldir': 'common/qmldir.tpl'
diff --git a/src/tools/ivigenerator/templates/frontend/CMakeLists.txt.tpl b/src/tools/ivigenerator/templates/frontend/CMakeLists.txt.tpl
new file mode 100644
index 0000000..4f39367
--- /dev/null
+++ b/src/tools/ivigenerator/templates/frontend/CMakeLists.txt.tpl
@@ -0,0 +1,14 @@
+target_compile_definitions(${CURRENT_TARGET} PRIVATE QT_BUILD_{{module|upper|replace('.', '_')|strip_QT}}_LIB)
+
+target_sources(${CURRENT_TARGET}
+ PRIVATE
+{% for interface in module.interfaces %}
+ {{interface|lower}}.cpp
+ {{interface|lower}}backendinterface.cpp
+{% endfor %}
+{% for struct in module.structs %}
+ {{struct|lower}}.cpp
+{% endfor %}
+ {{module.module_name|lower}}module.cpp
+ {{module.module_name|lower}}modulefactory.cpp
+)
diff --git a/src/tools/ivigenerator/templates/qmlplugin.yaml b/src/tools/ivigenerator/templates/qmlplugin.yaml
index 368b4c1..e64398c 100644
--- a/src/tools/ivigenerator/templates/qmlplugin.yaml
+++ b/src/tools/ivigenerator/templates/qmlplugin.yaml
@@ -3,6 +3,7 @@ qmlplugin:
documents:
- "plugin.cpp": "plugin.cpp.tpl"
- "{{srcBase|lower}}.pri": "module.pri.tpl"
+ - '{{srcBase|lower}}.cmake': 'CMakeLists.txt.tpl'
- "plugins.qmltypes": "common/plugins.qmltypes.tpl"
- "designer/{{module.module_name|lower}}.metainfo": "common/designer.metainfo.tpl"
- "qmldir": "qmldir_plugin.tpl"
diff --git a/src/tools/ivigenerator/templates/qmlplugin/CMakeLists.txt.tpl b/src/tools/ivigenerator/templates/qmlplugin/CMakeLists.txt.tpl
new file mode 100644
index 0000000..435b92a
--- /dev/null
+++ b/src/tools/ivigenerator/templates/qmlplugin/CMakeLists.txt.tpl
@@ -0,0 +1,33 @@
+# TODO We probably dont' need this template at all in the cmake case
+# Keep it until the templates have been adapted and everything can be done without autogenerating
+
+if (NOT TARGET ${CURRENT_TARGET})
+ qt_add_qml_module(${CURRENT_TARGET}
+ URI "{{module|qml_type}}"
+ VERSION "{{module.majorVersion}}.{{module.minorVersion}}"
+ SKIP_TYPE_REGISTRATION
+ # TODO remove this again
+ # This is needed to make the test build work as it would create duplicate qmldir entries
+ # in the global qml folder
+ OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ PUBLIC_LIBRARIES
+ Qt::IviCore
+ SOURCES
+ plugin.cpp
+ )
+else()
+ target_sources(${CURRENT_TARGET}
+ PRIVATE
+ plugin.cpp
+ )
+endif()
+
+#set_target_properties(${CURRENT_TARGET} PROPERTIES
+# QT_QML_MODULE_VERSION {{module.majorVersion}}.{{module.minorVersion}}
+# QT_QML_MODULE_URI {{module|qml_type}}
+# QT_QMLTYPES_FILENAME plugins.qmltypes
+#)
+
+### MISSING
+# AUX_QML_FILES += $$PWD/qmldir \
+# $$PWD/designer/{{module.module_name|lower}}.metainfo
diff --git a/src/tools/ivigenerator/templates/server_qtro.yaml b/src/tools/ivigenerator/templates/server_qtro.yaml
index 0c8024e..f397468 100644
--- a/src/tools/ivigenerator/templates/server_qtro.yaml
+++ b/src/tools/ivigenerator/templates/server_qtro.yaml
@@ -4,6 +4,7 @@ server_qtro:
- "core.cpp": "core.cpp.tpl"
- "core.h": "core.h.tpl"
- "{{srcBase|lower}}.pri": "server.pri.tpl"
+ - '{{srcBase|lower}}.cmake': 'CMakeLists.txt.tpl'
interface:
documents:
- "{{interface|lower}}.rep": "common/interface.rep.tpl"
diff --git a/src/tools/ivigenerator/templates/server_qtro/CMakeLists.txt.tpl b/src/tools/ivigenerator/templates/server_qtro/CMakeLists.txt.tpl
new file mode 100644
index 0000000..963d7aa
--- /dev/null
+++ b/src/tools/ivigenerator/templates/server_qtro/CMakeLists.txt.tpl
@@ -0,0 +1,13 @@
+find_package(Qt6 COMPONENTS RemoteObjects)
+
+target_sources(${CURRENT_TARGET}
+ PRIVATE
+ core.cpp
+)
+
+qt_add_repc_source(${CURRENT_TARGET}
+{% for interface in module.interfaces %}
+ {{interface|lower}}.rep
+{% endfor %}
+)
+
diff --git a/src/tools/ivigenerator/templates/server_qtro_simulator.yaml b/src/tools/ivigenerator/templates/server_qtro_simulator.yaml
index 5563460..5a8dabe 100644
--- a/src/tools/ivigenerator/templates/server_qtro_simulator.yaml
+++ b/src/tools/ivigenerator/templates/server_qtro_simulator.yaml
@@ -4,6 +4,7 @@ server_qtro_simulator:
- "core.cpp": "core.cpp.tpl"
- "core.h": "core.h.tpl"
- "{{srcBase|lower}}.pri": "server.pri.tpl"
+ - '{{srcBase|lower}}.cmake': 'CMakeLists.txt.tpl'
- "main.cpp": "main.cpp.tpl"
- "{{module.module_name|lower}}_simulation.qml": "common/module_simulation.qml.tpl"
- "{{module.module_name|lower}}_simulation_data.json": "common/simulation_data.json.tpl"
diff --git a/src/tools/ivigenerator/templates/server_qtro_simulator/CMakeLists.txt.tpl b/src/tools/ivigenerator/templates/server_qtro_simulator/CMakeLists.txt.tpl
new file mode 100644
index 0000000..7398ad1
--- /dev/null
+++ b/src/tools/ivigenerator/templates/server_qtro_simulator/CMakeLists.txt.tpl
@@ -0,0 +1,23 @@
+find_package(Qt6 COMPONENTS RemoteObjects IviRemoteObjectsHelper)
+
+target_sources(${CURRENT_TARGET}
+ PRIVATE
+{% for interface in module.interfaces %}
+ {{interface|lower}}backend.cpp
+ {{interface|lower}}adapter.cpp
+{% endfor %}
+ core.cpp
+ main.cpp
+ {{module.module_name|lower}}_simulation.qrc
+)
+
+qt_add_repc_source(${CURRENT_TARGET}
+{% for interface in module.interfaces %}
+ {{interface|lower}}.rep
+{% endfor %}
+)
+
+### MISSING
+# OTHER_FILES += \
+# $$PWD/{{module.module_name|lower}}.json \
+# $$PWD/{{module.module_name|lower}}_simulation_data.json
diff --git a/src/tools/ivigenerator/templates/test.yaml b/src/tools/ivigenerator/templates/test.yaml
index fbd2801..70bec2d 100644
--- a/src/tools/ivigenerator/templates/test.yaml
+++ b/src/tools/ivigenerator/templates/test.yaml
@@ -2,6 +2,7 @@ test:
module:
documents:
- "{{srcBase|lower}}.pri": "module.pri.tpl"
+ - '{{srcBase|lower}}.cmake': 'CMakeLists.txt.tpl'
- 'main.cpp': 'main.cpp.tpl'
interface:
documents:
diff --git a/src/tools/ivigenerator/templates/test/CMakeLists.txt.tpl b/src/tools/ivigenerator/templates/test/CMakeLists.txt.tpl
new file mode 100644
index 0000000..4348529
--- /dev/null
+++ b/src/tools/ivigenerator/templates/test/CMakeLists.txt.tpl
@@ -0,0 +1,7 @@
+target_sources(${CURRENT_TARGET}
+ PRIVATE
+{% for interface in module.interfaces %}
+ tst_{{interface|lower}}.cpp
+{% endfor %}
+ main.cpp
+)
diff --git a/src/tools/vehiclefunctions-simulation-server/CMakeLists.txt b/src/tools/vehiclefunctions-simulation-server/CMakeLists.txt
index 54cd9f5..549def5 100644
--- a/src/tools/vehiclefunctions-simulation-server/CMakeLists.txt
+++ b/src/tools/vehiclefunctions-simulation-server/CMakeLists.txt
@@ -34,10 +34,14 @@ qt_add_resource(${target_name} "qml"
)
+# IVI Generator:
+qt_ivigenerator(ivivehiclefunctions-simulation-server
+ QFACE_SOURCES ../../ivivehiclefunctions/ivivehiclefunctions.qface
+ QFACE_FORMAT server_qtro_simulator
+ QFACE_MODULE_NAME QtIviVehicleFunctions
+)
+
#### Keys ignored in scope 1:.:.:vehiclefunctions-simulation-server.pro:<TRUE>:
-# QFACE_FORMAT = "server_qtro_simulator"
-# QFACE_MODULE_NAME = "QtIviVehicleFunctions"
-# QFACE_SOURCES = "../../ivivehiclefunctions/ivivehiclefunctions.qface"
# QML_IMPORT_PATH = "$$OUT_PWD/qml"
# QT_FOR_CONFIG = "ivicore"
# TEMPLATE = "app"
diff --git a/tests/auto/CMakeLists.txt b/tests/auto/CMakeLists.txt
index dec330a..103fde5 100644
--- a/tests/auto/CMakeLists.txt
+++ b/tests/auto/CMakeLists.txt
@@ -3,7 +3,7 @@
if(TARGET Qt::IviCore)
add_subdirectory(core)
endif()
-if(TARGET ivivehiclefunctions)
+if(TARGET Qt::IviVehicleFunctions)
add_subdirectory(vehiclefunctions)
endif()
if(TARGET Qt::GeniviExtras)
diff --git a/tests/auto/core/ivigenerator/custom-template/CMakeLists.txt b/tests/auto/core/ivigenerator/custom-template/CMakeLists.txt
index cc20e04..46bf61a 100644
--- a/tests/auto/core/ivigenerator/custom-template/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/custom-template/CMakeLists.txt
@@ -1,14 +1,43 @@
# Generated from custom-template.pro.
-#####################################################################
-## tst_custom-template Test:
-#####################################################################
+cmake_minimum_required(VERSION 3.14)
+project(tst_custom-template LANGUAGES CXX)
-qt_add_test(tst_custom-template
- PUBLIC_LIBRARIES
- Qt::Gui
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS Test)
+
+qt_add_executable(tst_custom-template)
+
+# IVI Generator:
+qt6_ivigenerator(tst_custom-template
+ QFACE_SOURCES ../org.example.echo.qface
+ QFACE_FORMAT custom-test
+)
+set_target_properties(tst_custom-template PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(tst_custom-template PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::Test
)
-#### Keys ignored in scope 1:.:.:custom-template.pro:<TRUE>:
-# QFACE_FORMAT = "$$PWD/custom-test"
-# QFACE_SOURCES = "../org.example.echo.qface"
+install(TARGETS tst_custom-template
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/custom-template/custom-test.yaml b/tests/auto/core/ivigenerator/custom-template/custom-test.yaml
index 4c5cd17..bc69075 100644
--- a/tests/auto/core/ivigenerator/custom-template/custom-test.yaml
+++ b/tests/auto/core/ivigenerator/custom-template/custom-test.yaml
@@ -2,6 +2,8 @@ generate_rules:
module_rules:
- dest_file: "{{srcBase|lower}}.pri"
template_file: "module.pri.tpl"
+ - dest_file: '{{srcBase|lower}}.cmake'
+ template_file: 'CMakeLists.txt.tpl'
- dest_file: 'tst_custom.cpp'
template_file: 'tst_custom.cpp.tpl'
- dest_file: 'tst_custom.h'
diff --git a/tests/auto/core/ivigenerator/custom-template/custom-test/CMakeLists.txt.tpl b/tests/auto/core/ivigenerator/custom-template/custom-test/CMakeLists.txt.tpl
new file mode 100644
index 0000000..10fe633
--- /dev/null
+++ b/tests/auto/core/ivigenerator/custom-template/custom-test/CMakeLists.txt.tpl
@@ -0,0 +1,4 @@
+target_sources(${CURRENT_TARGET}
+ PUBLIC
+ tst_custom.cpp
+)
diff --git a/tests/auto/core/ivigenerator/projects/include-test/backend_qtro/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/include-test/backend_qtro/CMakeLists.txt
index 40e733d..e770318 100644
--- a/tests/auto/core/ivigenerator/projects/include-test/backend_qtro/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/include-test/backend_qtro/CMakeLists.txt
@@ -1,27 +1,47 @@
# Generated from backend_qtro.pro.
-#####################################################################
-## include_test_qtro Generic Library:
-#####################################################################
-
-qt_add_cmake_library(include_test_qtro
- MODULE
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../qtivi"
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../common
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Core
- Qt::Gui
- Qt::IviCore
+cmake_minimum_required(VERSION 3.14)
+project(include_test_qtro LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
+
+qt_add_plugin(include_test_qtro)
+
+# IVI Generator:
+qt6_ivigenerator(include_test_qtro
+ QFACE_SOURCES ../../../include-test.qface
+ QFACE_FORMAT backend_qtro
+ QFACE_IMPORT_PATH ../../../qface\ imports
+)
+set_target_properties(include_test_qtro PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_include_directories(include_test_qtro PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../common
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
)
-qt_disable_warnings(include_test_qtro)
-#### Keys ignored in scope 1:.:.:backend_qtro.pro:<TRUE>:
-# QFACE_FORMAT = "backend_qtro"
-# QFACE_IMPORT_PATH = "../../../qface imports"
-# QFACE_SOURCES = "../../../include-test.qface"
-# TEMPLATE = "lib"
+target_link_libraries(include_test_qtro PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
+ include_test_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+)
-qt_autogen_tools_initial_setup(include_test_qtro)
+install(TARGETS include_test_qtro
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/projects/include-test/backend_simulator/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/include-test/backend_simulator/CMakeLists.txt
index 000ab62..ec5434d 100644
--- a/tests/auto/core/ivigenerator/projects/include-test/backend_simulator/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/include-test/backend_simulator/CMakeLists.txt
@@ -1,27 +1,22 @@
# Generated from backend_simulator.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## include_test_simulator Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(include_test_simulator
- MODULE
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../qtivi"
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../common
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Core
- Qt::Gui
- Qt::IviCore
-)
-qt_disable_warnings(include_test_simulator)
+qt_add_plugin(include_test_simulator)
-#### Keys ignored in scope 1:.:.:backend_simulator.pro:<TRUE>:
-# QFACE_FORMAT = "backend_simulator"
-# QFACE_IMPORT_PATH = "../../../qface imports"
-# QFACE_SOURCES = "../../../include-test.qface"
-# TEMPLATE = "lib"
+# IVI Generator:
+qt6_ivigenerator(include_test_simulator
+ QFACE_SOURCES ../../../include-test.qface
+ QFACE_FORMAT backend_simulator
+ QFACE_IMPORT_PATH ../../../qface\ imports
+)
-qt_autogen_tools_initial_setup(include_test_simulator)
+target_link_libraries(include_test_simulator PUBLIC
+ include_test_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+)
diff --git a/tests/auto/core/ivigenerator/projects/include-test/common/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/include-test/common/CMakeLists.txt
index b7f1b53..6582d44 100644
--- a/tests/auto/core/ivigenerator/projects/include-test/common/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/include-test/common/CMakeLists.txt
@@ -1,28 +1,27 @@
# Generated from common.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## include_test_common Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(include_test_common
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../"
- DEFINES
- QT_BUILD_COMMON_LIB
- PUBLIC_LIBRARIES
- Qt::Core
- Qt::Gui
- Qt::IviCore
- Qt::IviCorePrivate
- Qt::Qml
- Qt::Quick
-)
+add_library(include_test_common)
-#### Keys ignored in scope 1:.:.:common.pro:<TRUE>:
-# QFACE_SOURCES = "../../../qface imports/common.qface"
-# TEMPLATE = "lib"
+# IVI Generator:
+qt6_ivigenerator(include_test_common
+ QFACE_SOURCES ../../../qface\ imports/common.qface
+ QFACE_FORMAT frontend
+)
+target_include_directories(include_test_common PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}
+)
-## Scopes:
-#####################################################################
+target_link_libraries(include_test_common PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::IviCorePrivate
+ Qt::Qml
+ Qt::Quick
+)
-#### Keys ignored in scope 2:.:.:common.pro:MACOS:
-# QMAKE_SONAME_PREFIX = "@rpath"
diff --git a/tests/auto/core/ivigenerator/projects/include-test/frontend/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/include-test/frontend/CMakeLists.txt
index 81f7469..1485e00 100644
--- a/tests/auto/core/ivigenerator/projects/include-test/frontend/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/include-test/frontend/CMakeLists.txt
@@ -1,32 +1,28 @@
# Generated from frontend.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## include_test_frontend Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(include_test_frontend
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../"
- DEFINES
- QT_BUILD_INCLUDE_TEST_LIB
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../common
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Core
- Qt::Gui
- Qt::IviCore
- Qt::IviCorePrivate
- Qt::Qml
- Qt::Quick
-)
-
-#### Keys ignored in scope 1:.:.:frontend.pro:<TRUE>:
-# QFACE_IMPORT_PATH = "../../../qface imports"
-# QFACE_SOURCES = "../../../include-test.qface"
-# TEMPLATE = "lib"
+add_library(include_test_frontend)
-## Scopes:
-#####################################################################
+# IVI Generator:
+qt6_ivigenerator(include_test_frontend
+ QFACE_SOURCES ../../../include-test.qface
+ QFACE_FORMAT frontend
+ QFACE_IMPORT_PATH ../../../qface\ imports
+)
+target_include_directories(include_test_frontend PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}
+)
-#### Keys ignored in scope 2:.:.:frontend.pro:MACOS:
-# QMAKE_SONAME_PREFIX = "@rpath"
+target_link_libraries(include_test_frontend PUBLIC
+ include_test_common
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::IviCorePrivate
+ Qt::Qml
+ Qt::Quick
+)
diff --git a/tests/auto/core/ivigenerator/projects/include-test/qmlplugin/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/include-test/qmlplugin/CMakeLists.txt
index 489f8fd..3511ea3 100644
--- a/tests/auto/core/ivigenerator/projects/include-test/qmlplugin/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/include-test/qmlplugin/CMakeLists.txt
@@ -1,23 +1,18 @@
# Generated from qmlplugin.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## qmlplugin Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(qmlplugin
- MODULE
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../common
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::IviCore
+# IVI Generator:
+qt6_ivigenerator(qmlplugin
+ QFACE_SOURCES ../../../include-test.qface
+ QFACE_FORMAT qmlplugin
+ QFACE_IMPORT_PATH ../../../qface\ imports
)
-#### Keys ignored in scope 1:.:.:qmlplugin.pro:<TRUE>:
-# QFACE_FORMAT = "qmlplugin"
-# QFACE_IMPORT_PATH = "../../../qface imports"
-# QFACE_SOURCES = "../../../include-test.qface"
-# TEMPLATE = "lib"
-
-qt_autogen_tools_initial_setup(qmlplugin)
+target_link_libraries(qmlplugin PRIVATE
+ include_test_frontend
+ Qt::IviCore
+)
diff --git a/tests/auto/core/ivigenerator/projects/include-test/simulation_server_qtro/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/include-test/simulation_server_qtro/CMakeLists.txt
index 5af54a0..404f963 100644
--- a/tests/auto/core/ivigenerator/projects/include-test/simulation_server_qtro/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/include-test/simulation_server_qtro/CMakeLists.txt
@@ -1,24 +1,48 @@
# Generated from simulation_server_qtro.pro.
-#####################################################################
-## org-example-echo-qtro-simulation-server Binary:
-#####################################################################
-
-qt_add_executable(org-example-echo-qtro-simulation-server
- OUTPUT_DIRECTORY ".."
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../common
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Gui
- Qt::IviCore
- Qt::Qml
- Qt::Quick
+cmake_minimum_required(VERSION 3.14)
+project(org-example-echo-qtro-simulation-server LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
+
+qt_add_executable(org-example-echo-qtro-simulation-server)
+
+# IVI Generator:
+qt6_ivigenerator(org-example-echo-qtro-simulation-server
+ QFACE_SOURCES ../../../include-test.qface
+ QFACE_FORMAT server_qtro_simulator
+ QFACE_IMPORT_PATH ../../../qface\ imports
+)
+set_target_properties(org-example-echo-qtro-simulation-server PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE FALSE
+)
+target_include_directories(org-example-echo-qtro-simulation-server PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../common
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
)
-#### Keys ignored in scope 1:.:.:simulation_server_qtro.pro:<TRUE>:
-# QFACE_FORMAT = "server_qtro_simulator"
-# QFACE_IMPORT_PATH = "../../../qface imports"
-# QFACE_SOURCES = "../../../include-test.qface"
-# TEMPLATE = "app"
+target_link_libraries(org-example-echo-qtro-simulation-server PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::Qml
+ Qt::Quick
+)
+
+install(TARGETS org-example-echo-qtro-simulation-server
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/projects/include-test/test/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/include-test/test/CMakeLists.txt
index f70b4c9..5bd474a 100644
--- a/tests/auto/core/ivigenerator/projects/include-test/test/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/include-test/test/CMakeLists.txt
@@ -1,23 +1,28 @@
# Generated from test.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## tst_include Test:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_test(tst_include
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../"
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../common
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Gui
- Qt::IviCore
+qt_add_executable(tst_include)
+
+# IVI Generator:
+qt6_ivigenerator(tst_include
+ QFACE_SOURCES ../../../include-test.qface
+ QFACE_FORMAT test
+ QFACE_IMPORT_PATH ../../../qface\ imports
+)
+set_target_properties(tst_include PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
)
-#### Keys ignored in scope 1:.:.:test.pro:<TRUE>:
-# QFACE_FORMAT = "test"
-# QFACE_IMPORT_PATH = "../../../qface imports"
-# QFACE_SOURCES = "../../../include-test.qface"
-# QMAKE_PROJECT_NAME = "$$TARGET"
-# QMAKE_RPATHDIR = "$$OUT_PWD/.."
+target_link_libraries(tst_include PUBLIC
+ include_test_common
+ include_test_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::Test
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/backend_qtro/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/backend_qtro/CMakeLists.txt
index 66a2c37..b7481c9 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/backend_qtro/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/backend_qtro/CMakeLists.txt
@@ -1,25 +1,45 @@
# Generated from backend_qtro.pro.
-#####################################################################
-## echo_noannotation_qtro Generic Library:
-#####################################################################
-
-qt_add_cmake_library(echo_noannotation_qtro
- MODULE
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../qtivi"
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Core
- Qt::Gui
- Qt::IviCore
+cmake_minimum_required(VERSION 3.14)
+project(echo_noannotation_qtro LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
+
+qt_add_plugin(echo_noannotation_qtro)
+
+# IVI Generator:
+qt6_ivigenerator(echo_noannotation_qtro
+ QFACE_SOURCES ../../../org.example.echo.noannotation.qface
+ QFACE_FORMAT backend_qtro
+)
+set_target_properties(echo_noannotation_qtro PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_include_directories(echo_noannotation_qtro PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
)
-qt_disable_warnings(echo_noannotation_qtro)
-#### Keys ignored in scope 1:.:.:backend_qtro.pro:<TRUE>:
-# QFACE_FORMAT = "backend_qtro"
-# QFACE_SOURCES = "../../../org.example.echo.noannotation.qface"
-# TEMPLATE = "lib"
+target_link_libraries(echo_noannotation_qtro PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
+ echo_noannotation_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+)
-qt_autogen_tools_initial_setup(echo_noannotation_qtro)
+install(TARGETS echo_noannotation_qtro
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/backend_simulator/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/backend_simulator/CMakeLists.txt
index 81c7410..8390845 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/backend_simulator/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/backend_simulator/CMakeLists.txt
@@ -1,25 +1,21 @@
# Generated from backend_simulator.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## echo_noannotation_simulator Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(echo_noannotation_simulator
- MODULE
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../qtivi"
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Core
- Qt::Gui
- Qt::IviCore
-)
-qt_disable_warnings(echo_noannotation_simulator)
+qt_add_plugin(echo_noanno_simulator)
-#### Keys ignored in scope 1:.:.:backend_simulator.pro:<TRUE>:
-# QFACE_FORMAT = "backend_simulator"
-# QFACE_SOURCES = "../../../org.example.echo.noannotation.qface"
-# TEMPLATE = "lib"
+# IVI Generator:
+qt6_ivigenerator(echo_noanno_simulator
+ QFACE_SOURCES ../../../org.example.echo.noannotation.qface
+ QFACE_FORMAT backend_simulator
+)
-qt_autogen_tools_initial_setup(echo_noannotation_simulator)
+target_link_libraries(echo_noanno_simulator PUBLIC
+ echo_noanno_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/frontend/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/frontend/CMakeLists.txt
index 0175304..c0162a1 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/frontend/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/frontend/CMakeLists.txt
@@ -1,28 +1,26 @@
# Generated from frontend.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## echo_noannotation_frontend Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(echo_noannotation_frontend
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../"
- DEFINES
- QT_BUILD_ORG_EXAMPLE_ECHO_LIB
- PUBLIC_LIBRARIES
- Qt::Core
- Qt::Gui
- Qt::IviCore
- Qt::IviCorePrivate
- Qt::Qml
- Qt::Quick
-)
-
-#### Keys ignored in scope 1:.:.:frontend.pro:<TRUE>:
-# QFACE_SOURCES = "../../../org.example.echo.noannotation.qface"
-# TEMPLATE = "lib"
+add_library(echo_noanno_frontend)
-## Scopes:
-#####################################################################
+# IVI Generator:
+qt6_ivigenerator(echo_noanno_frontend
+ QFACE_SOURCES ../../../org.example.echo.noannotation.qface
+ QFACE_FORMAT frontend
+)
+target_include_directories(echo_noanno_frontend PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}
+)
-#### Keys ignored in scope 2:.:.:frontend.pro:MACOS:
-# QMAKE_SONAME_PREFIX = "@rpath"
+target_link_libraries(echo_noanno_frontend PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::IviCorePrivate
+ Qt::Qml
+ Qt::Quick
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/qmlplugin/.prev_CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/qmlplugin/.prev_CMakeLists.txt
new file mode 100644
index 0000000..1c6b8ca
--- /dev/null
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/qmlplugin/.prev_CMakeLists.txt
@@ -0,0 +1,45 @@
+# Generated from qmlplugin.pro.
+
+cmake_minimum_required(VERSION 3.14)
+project(qmlplugin LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
+
+find_package(Qt6 COMPONENTS IviCore)
+find_package(Qt6 COMPONENTS IviVehicleFunctions)
+
+
+# IVI Generator:
+qt6_ivigenerator(qmlplugin
+ QFACE_SOURCES ../../../org.example.echo.noannotation.qface
+ QFACE_FORMAT qmlplugin
+)
+set_target_properties(qmlplugin PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_include_directories(qmlplugin PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
+)
+
+target_link_libraries(qmlplugin PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
+ Qt::IviCore
+ Qt::IviVehicleFunctions
+)
+
+install(TARGETS qmlplugin
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/qmlplugin/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/qmlplugin/CMakeLists.txt
index fd709bb..0ec3488 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/qmlplugin/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/qmlplugin/CMakeLists.txt
@@ -1,22 +1,18 @@
# Generated from qmlplugin.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## qmlplugin Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(qmlplugin
- MODULE
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::IviCore
- ivivehiclefunctions
+# IVI Generator:
+qt6_ivigenerator(echo_frontend_noanno_qmlplugin # special case
+ QFACE_SOURCES ../../../org.example.echo.noannotation.qface
+ QFACE_FORMAT qmlplugin
)
-#### Keys ignored in scope 1:.:.:qmlplugin.pro:<TRUE>:
-# QFACE_FORMAT = "qmlplugin"
-# QFACE_SOURCES = "../../../org.example.echo.noannotation.qface"
-# TEMPLATE = "lib"
-
-qt_autogen_tools_initial_setup(qmlplugin)
+target_link_libraries(echo_frontend_noanno_qmlplugin PRIVATE # special case
+ echo_noanno_frontend
+ Qt::IviCore
+ Qt::IviVehicleFunctions
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/simulation_server_qtro/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/simulation_server_qtro/CMakeLists.txt
index 774234c..1f41012 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/simulation_server_qtro/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/simulation_server_qtro/CMakeLists.txt
@@ -1,23 +1,46 @@
# Generated from simulation_server_qtro.pro.
-#####################################################################
-## org-example-echo-noannotation-simulation-server Binary:
-#####################################################################
-
-qt_add_executable(org-example-echo-noannotation-simulation-server
- OUTPUT_DIRECTORY ".."
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Gui
- Qt::IviCore
- Qt::Qml
- Qt::Quick
+cmake_minimum_required(VERSION 3.14)
+project(org-example-echo-noannotation-simulation-server LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
+
+qt_add_executable(org-example-echo-noannotation-simulation-server)
+
+# IVI Generator:
+qt6_ivigenerator(org-example-echo-noannotation-simulation-server
+ QFACE_SOURCES ../../../org.example.echo.noannotation.qface
+ QFACE_FORMAT server_qtro_simulator
+)
+set_target_properties(org-example-echo-noannotation-simulation-server PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE FALSE
+)
+target_include_directories(org-example-echo-noannotation-simulation-server PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
)
-#### Keys ignored in scope 1:.:.:simulation_server_qtro.pro:<TRUE>:
-# QFACE_FORMAT = "server_qtro_simulator"
-# QFACE_SOURCES = "../../../org.example.echo.noannotation.qface"
-# QMAKE_PROJECT_NAME = "$$TARGET"
-# TEMPLATE = "app"
+target_link_libraries(org-example-echo-noannotation-simulation-server PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::Qml
+ Qt::Quick
+)
+
+install(TARGETS org-example-echo-noannotation-simulation-server
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/test/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/test/CMakeLists.txt
index 558abf5..2cd08aa 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/test/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noannotation/test/CMakeLists.txt
@@ -1,21 +1,26 @@
# Generated from test.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## tst_org-example-echo-noannotation Test:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_test(tst_org-example-echo-noannotation
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../"
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Gui
- Qt::IviCore
+qt_add_executable(tst_org-example-echo-noanno)
+
+# IVI Generator:
+qt6_ivigenerator(tst_org-example-echo-noanno
+ QFACE_SOURCES ../../../org.example.echo.noannotation.qface
+ QFACE_FORMAT test
+)
+set_target_properties(tst_org-example-echo-noanno PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
)
-#### Keys ignored in scope 1:.:.:test.pro:<TRUE>:
-# QFACE_FORMAT = "test"
-# QFACE_SOURCES = "../../../org.example.echo.noannotation.qface"
-# QMAKE_PROJECT_NAME = "$$TARGET"
-# QMAKE_RPATHDIR = "$$OUT_PWD/.."
+target_link_libraries(tst_org-example-echo-noanno PUBLIC
+ echo_noanno_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::Test
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/backend_simulator/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/backend_simulator/CMakeLists.txt
index bd39d36..d0827bd 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/backend_simulator/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/backend_simulator/CMakeLists.txt
@@ -1,26 +1,22 @@
# Generated from backend_simulator.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## echo_noprivate_simulator Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(echo_noprivate_simulator
- MODULE
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../qtivi"
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Core
- Qt::Gui
- Qt::IviCore
-)
-qt_disable_warnings(echo_noprivate_simulator)
+qt_add_plugin(echo_noprivate_simulator)
-#### Keys ignored in scope 1:.:.:backend_simulator.pro:<TRUE>:
-# QFACE_ANNOTATIONS = "../../../no-private.yaml"
-# QFACE_FORMAT = "backend_simulator"
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# TEMPLATE = "lib"
+# IVI Generator:
+qt6_ivigenerator(echo_noprivate_simulator
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT backend_simulator
+ QFACE_ANNOTATIONS ../../../no-private.yaml
+)
-qt_autogen_tools_initial_setup(echo_noprivate_simulator)
+target_link_libraries(echo_noprivate_simulator PUBLIC
+ echo_noprivate_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/frontend/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/frontend/CMakeLists.txt
index d02ae04..e0bb60e 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/frontend/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/frontend/CMakeLists.txt
@@ -1,29 +1,27 @@
# Generated from frontend.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## echo_noprivate_frontend Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(echo_noprivate_frontend
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../"
- DEFINES
- QT_BUILD_ORG_EXAMPLE_ECHO_LIB
- PUBLIC_LIBRARIES
- Qt::Core
- Qt::Gui
- Qt::IviCore
- Qt::IviCorePrivate
- Qt::Qml
- Qt::Quick
-)
-
-#### Keys ignored in scope 1:.:.:frontend.pro:<TRUE>:
-# QFACE_ANNOTATIONS = "../../../no-private.yaml"
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# TEMPLATE = "lib"
+add_library(echo_noprivate_frontend)
-## Scopes:
-#####################################################################
+# IVI Generator:
+qt6_ivigenerator(echo_noprivate_frontend
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT frontend
+ QFACE_ANNOTATIONS ../../../no-private.yaml
+)
+target_include_directories(echo_noprivate_frontend PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}
+)
-#### Keys ignored in scope 2:.:.:frontend.pro:MACOS:
-# QMAKE_SONAME_PREFIX = "@rpath"
+target_link_libraries(echo_noprivate_frontend PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::IviCorePrivate
+ Qt::Qml
+ Qt::Quick
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/qmlplugin/.prev_CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/qmlplugin/.prev_CMakeLists.txt
new file mode 100644
index 0000000..446db66
--- /dev/null
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/qmlplugin/.prev_CMakeLists.txt
@@ -0,0 +1,46 @@
+# Generated from qmlplugin.pro.
+
+cmake_minimum_required(VERSION 3.14)
+project(qmlplugin LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
+
+find_package(Qt6 COMPONENTS IviCore)
+find_package(Qt6 COMPONENTS IviVehicleFunctions)
+
+
+# IVI Generator:
+qt6_ivigenerator(qmlplugin
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT qmlplugin
+ QFACE_ANNOTATIONS ../../../no-private.yaml
+)
+set_target_properties(qmlplugin PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_include_directories(qmlplugin PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
+)
+
+target_link_libraries(qmlplugin PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
+ Qt::IviCore
+ Qt::IviVehicleFunctions
+)
+
+install(TARGETS qmlplugin
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/qmlplugin/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/qmlplugin/CMakeLists.txt
index 4e6a6a7..ada5903 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/qmlplugin/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/qmlplugin/CMakeLists.txt
@@ -1,23 +1,19 @@
# Generated from qmlplugin.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## qmlplugin Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(qmlplugin
- MODULE
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::IviCore
- ivivehiclefunctions
+# IVI Generator:
+qt6_ivigenerator(echo_frontend_noprivate_qmlplugin # special case
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT qmlplugin
+ QFACE_ANNOTATIONS ../../../no-private.yaml
)
-#### Keys ignored in scope 1:.:.:qmlplugin.pro:<TRUE>:
-# QFACE_ANNOTATIONS = "../../../no-private.yaml"
-# QFACE_FORMAT = "qmlplugin"
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# TEMPLATE = "lib"
-
-qt_autogen_tools_initial_setup(qmlplugin)
+target_link_libraries(echo_frontend_noprivate_qmlplugin PRIVATE # special case
+ echo_noprivate_frontend
+ Qt::IviCore
+ Qt::IviVehicleFunctions
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/test/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/test/CMakeLists.txt
index 8626ddd..16622b2 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/test/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-noprivate/test/CMakeLists.txt
@@ -1,22 +1,27 @@
# Generated from test.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## tst_org-example-echo-noprivate Test:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_test(tst_org-example-echo-noprivate
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../"
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Gui
- Qt::IviCore
+qt_add_executable(tst_org-example-echo-noprivate)
+
+# IVI Generator:
+qt6_ivigenerator(tst_org-example-echo-noprivate
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT test
+ QFACE_ANNOTATIONS ../../../no-private.yaml
+)
+set_target_properties(tst_org-example-echo-noprivate PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
)
-#### Keys ignored in scope 1:.:.:test.pro:<TRUE>:
-# QFACE_ANNOTATIONS = "../../../no-private.yaml"
-# QFACE_FORMAT = "test"
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# QMAKE_PROJECT_NAME = "$$TARGET"
-# QMAKE_RPATHDIR = "$$OUT_PWD/.."
+target_link_libraries(tst_org-example-echo-noprivate PUBLIC
+ echo_noprivate_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::Test
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/backend_qtro/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/backend_qtro/CMakeLists.txt
index 592ef19..e674c29 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/backend_qtro/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/backend_qtro/CMakeLists.txt
@@ -1,31 +1,49 @@
# Generated from backend_qtro.pro.
-#####################################################################
-## echo_backend_qtro Generic Library:
-#####################################################################
-
-qt_add_cmake_library(echo_backend_qtro
- MODULE
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../qtivi"
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Core
- Qt::Gui
- Qt::IviCore
-)
-qt_disable_warnings(echo_backend_qtro)
+cmake_minimum_required(VERSION 3.14)
+project(echo_backend_qtro LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-#### Keys ignored in scope 1:.:.:backend_qtro.pro:<TRUE>:
-# QFACE_FORMAT = "backend_qtro"
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# TEMPLATE = "lib"
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
-## Scopes:
-#####################################################################
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
-#### Keys ignored in scope 2:.:.:backend_qtro.pro:MACOS:
-# QMAKE_SONAME_PREFIX = "@rpath"
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS IviCore)
-qt_autogen_tools_initial_setup(echo_backend_qtro)
+qt_add_plugin(echo_backend_qtro)
+
+# IVI Generator:
+qt6_ivigenerator(echo_backend_qtro
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT backend_qtro
+)
+set_target_properties(echo_backend_qtro PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_include_directories(echo_backend_qtro PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
+)
+
+target_link_libraries(echo_backend_qtro PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
+ echo_qtro_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+)
+
+install(TARGETS echo_backend_qtro
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/frontend/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/frontend/CMakeLists.txt
index c1ec8bb..73294cc 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/frontend/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/frontend/CMakeLists.txt
@@ -1,28 +1,45 @@
# Generated from frontend.pro.
-#####################################################################
-## echo_frontend Generic Library:
-#####################################################################
-
-qt_add_cmake_library(echo_frontend
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../"
- DEFINES
- QT_BUILD_ORG_EXAMPLE_ECHO_LIB
- PUBLIC_LIBRARIES
- Qt::Core
- Qt::Gui
- Qt::IviCore
- Qt::IviCorePrivate
- Qt::Qml
- Qt::Quick
-)
+cmake_minimum_required(VERSION 3.14)
+project(echo_qtro_frontend LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
-#### Keys ignored in scope 1:.:.:frontend.pro:<TRUE>:
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# TEMPLATE = "lib"
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS IviCore)
+find_package(Qt6 COMPONENTS Qml)
+find_package(Qt6 COMPONENTS Quick)
-## Scopes:
-#####################################################################
+qt_add_executable(echo_qtro_frontend)
-#### Keys ignored in scope 2:.:.:frontend.pro:MACOS:
-# QMAKE_SONAME_PREFIX = "@rpath"
+# IVI Generator:
+qt6_ivigenerator(echo_qtro_frontend
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT frontend
+)
+
+target_link_libraries(echo_frontend PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::IviCorePrivate
+ Qt::Qml
+ Qt::Quick
+)
+
+install(TARGETS echo_frontend
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/server_qtro_test/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/server_qtro_test/CMakeLists.txt
index 985b371..4983874 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/server_qtro_test/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/server_qtro_test/CMakeLists.txt
@@ -1,29 +1,58 @@
# Generated from server_qtro_test.pro.
-#####################################################################
-## tst_org-example-echo-qtro Test:
-#####################################################################
-
-qt_add_test(tst_org-example-echo-qtro
- OUTPUT_DIRECTORY ".."
- SOURCES
- contactsmodelservice.cpp contactsmodelservice.h
- echoservice.cpp echoservice.h
- echozonedservice.cpp echozonedservice.h
- main.cpp
- server.cpp server.h
- tst_echoqtro.cpp tst_echoqtro.h
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../backend_qtro
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::IviCore
- iviremoteobjects_helper_private
+cmake_minimum_required(VERSION 3.14)
+project(tst_org-example-echo-qtro LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Test)
+find_package(Qt6 COMPONENTS IviCore)
+
+qt_add_executable(tst_org-example-echo-qtro
+ contactsmodelservice.cpp contactsmodelservice.h
+ echoservice.cpp echoservice.h
+ echozonedservice.cpp echozonedservice.h
+ main.cpp
+ server.cpp server.h
+ tst_echoqtro.cpp tst_echoqtro.h
)
-#### Keys ignored in scope 1:.:.:server_qtro_test.pro:<TRUE>:
-# QFACE_FORMAT = "server_qtro"
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# QMAKE_PROJECT_NAME = "$$TARGET"
-# QMAKE_RPATHDIR = "$$OUT_PWD/.." "$$OUT_PWD/../qtivi"
+# IVI Generator:
+qt6_ivigenerator(tst_org-example-echo-qtro
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT server_qtro
+)
+set_target_properties(tst_org-example-echo-qtro PROPERTIES
+ WIN32_EXECUTABLE FALSE
+ MACOSX_BUNDLE FALSE
+)
+target_include_directories(tst_org-example-echo-qtro PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../backend_qtro
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
+)
+
+target_link_libraries(tst_org-example-echo-qtro PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
+ echo_qtro_frontend
+ Qt::Core
+ Qt::IviCore
+ Qt::Test
+ iviremoteobjects_helper_private
+)
+
+install(TARGETS tst_org-example-echo-qtro
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/simulation_server_qtro/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/simulation_server_qtro/CMakeLists.txt
index 0bb45bb..4c02b19 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/simulation_server_qtro/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo-qtro/simulation_server_qtro/CMakeLists.txt
@@ -1,23 +1,53 @@
# Generated from simulation_server_qtro.pro.
-#####################################################################
-## org-example-echo-qtro-simulation-server Binary:
-#####################################################################
-
-qt_add_executable(org-example-echo-qtro-simulation-server
- OUTPUT_DIRECTORY ".."
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Gui
- Qt::IviCore
- Qt::Qml
- Qt::Quick
+cmake_minimum_required(VERSION 3.14)
+project(org-example-echo-qtro-simulation-server LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS Qml)
+find_package(Qt6 COMPONENTS Quick)
+find_package(Qt6 COMPONENTS IviCore)
+
+qt_add_executable(org-example-echo-qtro-simulation-server)
+
+# IVI Generator:
+qt6_ivigenerator(org-example-echo-qtro-simulation-server
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT server_qtro_simulator
+)
+set_target_properties(org-example-echo-qtro-simulation-server PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE FALSE
+)
+target_include_directories(org-example-echo-qtro-simulation-server PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
)
-#### Keys ignored in scope 1:.:.:simulation_server_qtro.pro:<TRUE>:
-# QFACE_FORMAT = "server_qtro_simulator"
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# QMAKE_PROJECT_NAME = "$$TARGET"
-# TEMPLATE = "app"
+target_link_libraries(org-example-echo-qtro-simulation-server PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
+ echo_qtro_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::Qml
+ Qt::Quick
+)
+
+install(TARGETS org-example-echo-qtro-simulation-server
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo/backend_simulator/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo/backend_simulator/CMakeLists.txt
index fbbc287..a6e95bd 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo/backend_simulator/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo/backend_simulator/CMakeLists.txt
@@ -1,27 +1,24 @@
# Generated from backend_simulator.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## echo_simulator Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(echo_simulator
- MODULE
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../qtivi"
- SOURCES
- backend_simulator.cpp
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Core
- Qt::Gui
- Qt::IviCore
+qt_add_plugin(echo_simulator)
+target_sources(echo_simulator PRIVATE
+ backend_simulator.cpp
)
-qt_disable_warnings(echo_simulator)
-#### Keys ignored in scope 1:.:.:backend_simulator.pro:<TRUE>:
-# QFACE_FORMAT = "backend_simulator"
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# TEMPLATE = "lib"
+# IVI Generator:
+qt6_ivigenerator(echo_simulator
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT backend_simulator
+)
-qt_autogen_tools_initial_setup(echo_simulator)
+target_link_libraries(echo_simulator PUBLIC
+ echo_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo/frontend/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo/frontend/CMakeLists.txt
index c1ec8bb..6b2f7a8 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo/frontend/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo/frontend/CMakeLists.txt
@@ -1,28 +1,26 @@
# Generated from frontend.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## echo_frontend Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(echo_frontend
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../"
- DEFINES
- QT_BUILD_ORG_EXAMPLE_ECHO_LIB
- PUBLIC_LIBRARIES
- Qt::Core
- Qt::Gui
- Qt::IviCore
- Qt::IviCorePrivate
- Qt::Qml
- Qt::Quick
-)
-
-#### Keys ignored in scope 1:.:.:frontend.pro:<TRUE>:
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# TEMPLATE = "lib"
+add_library(echo_frontend)
-## Scopes:
-#####################################################################
+# IVI Generator:
+qt6_ivigenerator(echo_frontend
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT frontend
+)
+target_include_directories(echo_frontend PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}
+)
-#### Keys ignored in scope 2:.:.:frontend.pro:MACOS:
-# QMAKE_SONAME_PREFIX = "@rpath"
+target_link_libraries(echo_frontend PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::IviCorePrivate
+ Qt::Qml
+ Qt::Quick
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo/qmlplugin/.prev_CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo/qmlplugin/.prev_CMakeLists.txt
new file mode 100644
index 0000000..4ca67e8
--- /dev/null
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo/qmlplugin/.prev_CMakeLists.txt
@@ -0,0 +1,45 @@
+# Generated from qmlplugin.pro.
+
+cmake_minimum_required(VERSION 3.14)
+project(qmlplugin LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}")
+
+find_package(Qt6 COMPONENTS IviCore)
+find_package(Qt6 COMPONENTS IviVehicleFunctions)
+
+
+# IVI Generator:
+qt6_ivigenerator(qmlplugin
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT qmlplugin
+)
+set_target_properties(qmlplugin PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_include_directories(qmlplugin PUBLIC
+ ${CMAKE_CURRENT_BINARY_DIR}/../frontend
+)
+
+target_link_libraries(qmlplugin PUBLIC
+ # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
+ Qt::IviCore
+ Qt::IviVehicleFunctions
+)
+
+install(TARGETS qmlplugin
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo/qmlplugin/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo/qmlplugin/CMakeLists.txt
index 89be1a8..8cedb00 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo/qmlplugin/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo/qmlplugin/CMakeLists.txt
@@ -1,22 +1,18 @@
# Generated from qmlplugin.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## qmlplugin Generic Library:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_cmake_library(qmlplugin
- MODULE
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::IviCore
- ivivehiclefunctions
+# IVI Generator:
+qt6_ivigenerator(echo_frontend_qmlplugin # special case
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT qmlplugin
)
-#### Keys ignored in scope 1:.:.:qmlplugin.pro:<TRUE>:
-# QFACE_FORMAT = "qmlplugin"
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# TEMPLATE = "lib"
-
-qt_autogen_tools_initial_setup(qmlplugin)
+target_link_libraries(echo_frontend_qmlplugin PRIVATE # special case
+ echo_frontend
+ Qt::IviCore
+ Qt::IviVehicleFunctions
+)
diff --git a/tests/auto/core/ivigenerator/projects/org-example-echo/test/CMakeLists.txt b/tests/auto/core/ivigenerator/projects/org-example-echo/test/CMakeLists.txt
index d27a2c8..ea42d2d 100644
--- a/tests/auto/core/ivigenerator/projects/org-example-echo/test/CMakeLists.txt
+++ b/tests/auto/core/ivigenerator/projects/org-example-echo/test/CMakeLists.txt
@@ -1,21 +1,26 @@
# Generated from test.pro.
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
-#####################################################################
-## tst_org-example-echo Test:
-#####################################################################
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
-qt_add_test(tst_org-example-echo
- OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/../"
- INCLUDE_DIRECTORIES
- ${CMAKE_CURRENT_BINARY_DIR}/../frontend
- PUBLIC_LIBRARIES
- # Remove: L${CMAKE_CURRENT_BINARY_DIR}/..
- Qt::Gui
- Qt::IviCore
+qt_add_executable(tst_org-example-echo)
+
+# IVI Generator:
+qt6_ivigenerator(tst_org-example-echo
+ QFACE_SOURCES ../../../org.example.echo.qface
+ QFACE_FORMAT test
+)
+set_target_properties(tst_org-example-echo PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
)
-#### Keys ignored in scope 1:.:.:test.pro:<TRUE>:
-# QFACE_FORMAT = "test"
-# QFACE_SOURCES = "../../../org.example.echo.qface"
-# QMAKE_PROJECT_NAME = "$$TARGET"
-# QMAKE_RPATHDIR = "$$OUT_PWD/.."
+target_link_libraries(tst_org-example-echo PUBLIC
+ echo_frontend
+ Qt::Core
+ Qt::Gui
+ Qt::IviCore
+ Qt::Test
+)
diff --git a/tests/auto/core/servicemanagertest/.prev_CMakeLists.txt b/tests/auto/core/servicemanagertest/.prev_CMakeLists.txt
new file mode 100644
index 0000000..b4dc93f
--- /dev/null
+++ b/tests/auto/core/servicemanagertest/.prev_CMakeLists.txt
@@ -0,0 +1,33 @@
+# Generated from servicemanagertest.pro.
+
+#####################################################################
+## tst_servicemanagertest Test:
+#####################################################################
+
+qt_add_test(tst_servicemanagertest
+ OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
+ SOURCES
+ tst_servicemanagertest.cpp
+ DEFINES
+ SRCDIR=\\\"${CMAKE_CURRENT_SOURCE_DIR}/\\\"
+ PUBLIC_LIBRARIES
+ # Remove: Lqtivi
+ Qt::IviCore
+ Qt::IviCorePrivate
+)
+
+#### Keys ignored in scope 2:.:.:tst_servicemanager.pro:<TRUE>:
+# TEMPLATE = "app"
+
+## Scopes:
+#####################################################################
+
+qt_extend_target(tst_servicemanagertest CONDITION QT_FEATURE_debug_and_release
+ DEFINES
+ DEBUG_AND_RELEASE
+)
+add_subdirectory(simple_plugin)
+add_subdirectory(simple_plugin_static)
+add_subdirectory(wrong_plugin)
+add_subdirectory(wrongmetadata_plugin)
+add_subdirectory(wrongmetadata_plugin_static)
diff --git a/tests/auto/vehiclefunctions/basic/CMakeLists.txt b/tests/auto/vehiclefunctions/basic/CMakeLists.txt
index 191590f..06c8cf0 100644
--- a/tests/auto/vehiclefunctions/basic/CMakeLists.txt
+++ b/tests/auto/vehiclefunctions/basic/CMakeLists.txt
@@ -4,14 +4,20 @@
## tst_basic Test:
#####################################################################
-qt_add_test(tst_basic
- PUBLIC_LIBRARIES
- Qt::Gui
- Qt::IviCore
- ivivehiclefunctions
-)
+# FIXME: The templates needs to be adapted to enable this
+#qt_add_test(tst_basic
+# PUBLIC_LIBRARIES
+# Qt::Gui
+# Qt::IviCore
+# Qt::IviVehicleFunctions
+# SOURCES ""
+#)
+
+# IVI Generator:
+#qt_ivigenerator(tst_basic
+# QFACE_SOURCES ../../../../src/ivivehiclefunctions/ivivehiclefunctions.qface
+# QFACE_FORMAT test
+#)
#### Keys ignored in scope 1:.:.:basic.pro:<TRUE>:
-# QFACE_FORMAT = "test"
-# QFACE_SOURCES = "../../../../src/ivivehiclefunctions/ivivehiclefunctions.qface"
# QMAKE_PROJECT_NAME = "$$TARGET"