Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 42923e45

Von ipwizard vor etwa 2 Monaten hinzugefügt

  • ID 42923e4591fd619ffb46eb7b953c82b74ac84fe5
  • Vorgänger fd4fe3e2
  • Nachfolger 3023da7d

Support building for Qt6

Unterschiede anzeigen:

gui/qt5/.gitignore
gwengui-qt5-config-version.cmake
gwengui-qt5-config.cmake
gwengui-qt6-config-version.cmake
gwengui-qt6-config.cmake
gui/qt5/Makefile.am
qt5_uic = @QT_UIC@
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = gwengui-qt5.pc
pkgconfig_DATA = gwengui-qt@QT_MAJOR_VERSION@.pc
cmakeconfigdir = $(libdir)/cmake/gwengui-qt5-@GWENHYWFAR_VERSION_MAJOR@.@GWENHYWFAR_VERSION_MINOR@
cmakeconfig_DATA = gwengui-qt5-config.cmake gwengui-qt5-config-version.cmake
cmakeconfigdir = $(libdir)/cmake/gwengui-qt@QT_MAJOR_VERSION@-@GWENHYWFAR_VERSION_MAJOR@.@GWENHYWFAR_VERSION_MINOR@
cmakeconfig_DATA = gwengui-qt@QT_MAJOR_VERSION@-config.cmake gwengui-qt@QT_MAJOR_VERSION@-config-version.cmake
lib_LTLIBRARIES=libgwengui-qt5.la
lib_LTLIBRARIES=libgwengui-qt@QT_MAJOR_VERSION@.la
noinst_PROGRAMS=libtest
noinst_HEADERS=
libgwengui_qt5_la_LIBADD=$(QT_LIBS) $(top_builddir)/src/$(gwenhywfar_internal_libname) $(builddir)/../cpp/libgwengui-cpp.la
libgwengui_qt5_la_LDFLAGS=-no-undefined -version-info \
libgwengui_qt@QT_MAJOR_VERSION@_la_LIBADD=$(QT_LIBS) $(top_builddir)/src/$(gwenhywfar_internal_libname) $(builddir)/../cpp/libgwengui-cpp.la
libgwengui_qt@QT_MAJOR_VERSION@_la_LDFLAGS=-no-undefined -version-info \
$(GWENHYWFAR_SO_CURRENT):$(GWENHYWFAR_SO_REVISION):$(GWENHYWFAR_SO_AGE)
libgwengui_qt5_la_SOURCES=\
libgwengui_qt@QT_MAJOR_VERSION@_la_SOURCES=\
qt5dialogbox.cpp \
qt5_gui.cpp \
qt5_gui_dialog.cpp
nodist_libgwengui_qt5_la_SOURCES=
nodist_libgwengui_qt@QT_MAJOR_VERSION@_la_SOURCES=
nodist_noinst_HEADERS=
......
w_spinbox.cpp
libtest_SOURCES=libtest.cpp
libtest_LDADD=libgwengui-qt5.la $(top_builddir)/src/$(gwenhywfar_internal_libname) $(QT_LIBS) \
libtest_LDADD=libgwengui-qt@QT_MAJOR_VERSION@.la $(top_builddir)/src/$(gwenhywfar_internal_libname) $(QT_LIBS) \
$(top_builddir)/gui/cpp/libgwengui-cpp.la \
$(builddir)/../testdialogs/libgwengui-test.la
......
sources:
for f in $(libgwengui_qt5_la_SOURCES) $(foreach uifile,$(UI_FILES),$(uifile).cpp); do \
for f in $(libgwengui_qt@QT_MAJOR_VERSION@_la_SOURCES) $(foreach uifile,$(UI_FILES),$(uifile).cpp); do \
echo $(subdir)/$$f >>$(top_srcdir)/qtsources; \
done
for d in $(SUBDIRS); do \
......
done ;
BUILT_SOURCES = $(MOC_FILES) $(nodist_libgwengui_qt5_la_SOURCES)
BUILT_SOURCES = $(MOC_FILES) $(nodist_libgwengui_qt@QT_MAJOR_VERSION@_la_SOURCES)
CLEANFILES = $(BUILT_SOURCES)
gui/qt5/gwengui-qt5-config.cmake.in
include(CMakeFindDependencyMacro)
find_dependency(gwengui-cpp "@GWENHYWFAR_VERSION_STRING@")
find_dependency(Qt5Core)
find_dependency(Qt5Widgets)
find_dependency(Qt@QT_MAJOR_VERSION@Core)
find_dependency(Qt@QT_MAJOR_VERSION@Widgets)
set_and_check(prefix "@prefix@")
......
set_and_check(includedir "@includedir@")
set_and_check(${CMAKE_FIND_PACKAGE_NAME}_INCLUDE_DIRS "@gwenhywfar_headerdir@")
if(WIN32)
set_and_check(${CMAKE_FIND_PACKAGE_NAME}_LIBRARIES "@libdir@/libgwengui-qt5.dll.a")
set_and_check(${CMAKE_FIND_PACKAGE_NAME}_LIBRARIES "@libdir@/libgwengui-qt@QT_MAJOR_VERSION@.dll.a")
elseif(APPLE)
set_and_check(${CMAKE_FIND_PACKAGE_NAME}_LIBRARIES "@libdir@/libgwengui-qt5.dylib")
set_and_check(${CMAKE_FIND_PACKAGE_NAME}_LIBRARIES "@libdir@/libgwengui-qt@QT_MAJOR_VERSION@.dylib")
else()
set_and_check(${CMAKE_FIND_PACKAGE_NAME}_LIBRARIES "@libdir@/libgwengui-qt5.so")
set_and_check(${CMAKE_FIND_PACKAGE_NAME}_LIBRARIES "@libdir@/libgwengui-qt@QT_MAJOR_VERSION@.so")
endif()
set(${CMAKE_FIND_PACKAGE_NAME}_FOUND true)
if(NOT TARGET gwenhywfar::gui-qt5)
add_library(gwenhywfar::gui-qt5 UNKNOWN IMPORTED)
set_target_properties(gwenhywfar::gui-qt5 PROPERTIES
if(NOT TARGET gwenhywfar::gui-qt@QT_MAJOR_VERSION@)
add_library(gwenhywfar::gui-qt@QT_MAJOR_VERSION@ UNKNOWN IMPORTED)
set_target_properties(gwenhywfar::gui-qt@QT_MAJOR_VERSION@ PROPERTIES
IMPORTED_LOCATION "${${CMAKE_FIND_PACKAGE_NAME}_LIBRARIES}"
INTERFACE_INCLUDE_DIRECTORIES "${${CMAKE_FIND_PACKAGE_NAME}_INCLUDE_DIRS}"
INTERFACE_LINK_LIBRARIES "gwenhywfar::core;gwenhywfar::gui-cpp;Qt5::Core;Qt5::Widgets"
INTERFACE_LINK_LIBRARIES "gwenhywfar::core;gwenhywfar::gui-cpp;Qt@QT_MAJOR_VERSION@::Core;Qt@QT_MAJOR_VERSION@::Widgets"
)
endif()
gui/qt5/gwengui-qt5.pc.in
# pkg-config configuration for gwengui_qt5
# pkg-config configuration for gwengui_qt@QT_MAJOR_VERSION@
# For information about the syntax, see pkg-config(1)
# General installation directories
......
sysconfdir=@sysconfdir@
# Human-readable name
Name: gwengui-qt5
Name: gwengui-qt@QT_MAJOR_VERSION@
# Human-readable description
Description: QT5 Implementation of the GWEN_DIALOG framework.
Description: Qt@QT_MAJOR_VERSION@ Implementation of the GWEN_DIALOG framework.
Version: @VERSION@
Libs: -L@libdir@ -lgwengui-qt5 -lgwengui-cpp
Libs: -L@libdir@ -lgwengui-qt@QT_MAJOR_VERSION@ -lgwengui-cpp
Cflags: -I@includedir@
gui/qt5/gwengui-qt6-config-version.cmake.in
gwengui-qt5-config-version.cmake.in
gui/qt5/gwengui-qt6-config.cmake.in
gwengui-qt5-config.cmake.in
gui/qt5/gwengui-qt6.pc.in
gwengui-qt5.pc.in
gwenhywfar-config.cmake.in
endif()
endif()
list(FIND GWENHYWFAR_FIND_COMPONENTS "qt6" FIND_GWEN_COMPONENT_QT6)
if ( NOT ${FIND_GWEN_COMPONENT_QT6} EQUAL -1 )
find_package(gwengui-qt6 "@GWENHYWFAR_VERSION_STRING@" EXACT)
if ( gwengui-qt6_FOUND )
set( GWENHYWFAR_INCLUDE_DIRS ${GWENHYWFAR_INCLUDE_DIRS} ${gwengui-qt6_INCLUDE_DIRS} )
set( GWENHYWFAR_LIBRARIES ${GWENHYWFAR_LIBRARIES} ${gwengui-qt6_LIBRARIES} )
set( GWENHYWFAR_qt6_FOUND true )
endif()
endif()
check_required_components(GWENHYWFAR)
# The target is available since gwenhywfar 4.15.3
m4/ax_have_qt.m4
# QT_LRELEASE
# QT_LUPDATE
# QT_DIR
# QMAKE
#
# which respectively contain an "-I" flag pointing to the Qt include
# directory, link flags necessary to link with Qt and X, the full path to
# the meta object compiler and the user interface compiler both, and
# finally the variable QTDIR as Qt likes to see it defined.
#
# Also the usually unneeded var
#
# QT_QMAKE
#
# to qmake is defined.
#
# Example lines for Makefile.in:
#
# CXXFLAGS = @QT_CXXFLAGS@
......
# and this notice are preserved. This file is offered as-is, without any
# warranty.
#serial 17
#serial 27
AU_ALIAS([BNV_HAVE_QT], [AX_HAVE_QT])
AC_DEFUN([AX_HAVE_QT],
......
AC_REQUIRE([AC_PATH_X])
AC_REQUIRE([AC_PATH_XTRA])
AC_ARG_WITH(qt5-qmake,
[ --with-qt5-qmake=FILE uses given qmake],
[QT_QMAKE="$withval"],
[QT_QMAKE="qmake"]
# openSUSE leap 15.3 installs qmake-qt5, not qmake, for example.
# Store the full name (like qmake-qt5) into QMAKE
# and the specifier (like -qt5 or empty) into am_have_qt_qmexe_suff.
AC_ARG_VAR([QMAKE],[Qt make tool])
AC_CHECK_TOOLS([QMAKE],[qmake qmake-qt6 qmake6 qmake-qt5],[false])
AC_ARG_WITH(qmake,
[ --with-qmake=FILE uses given qmake],
[QMAKE="$withval"],
[]
)
AC_CHECK_TOOLS([QTPATHS],[qtpaths qtpaths-qt6 qtpaths6 qtpaths-qt5 qtpaths5],[false])
AC_MSG_CHECKING(for Qt)
am_have_qt_qmexe_suff=`echo $QMAKE | sed 's,^.*qmake,,'`
# If we have Qt5 or later in the path, we're golden
ver=`$QT_QMAKE --version | grep -o "Qt version ."`
ver=`$QMAKE --version | grep -o "Qt version ."`
if test "$ver" ">" "Qt version 4"; then
QT_MAJOR_VERSION="5"
have_qt=yes
# This pro file dumps qmake's variables, but it only works on Qt 5 or later
am_have_qt_dir=`mktemp -d`
am_have_qt_pro="$am_have_qt_dir/test.pro"
am_have_qt_stash="$am_have_qt_dir/.qmake.stash"
am_have_qt_makefile="$am_have_qt_dir/Makefile"
# http://qt-project.org/doc/qt-5/qmake-variable-reference.html#qt
cat > $am_have_qt_pro << EOF
......
CONFIG -= debug_and_release
CONFIG += release
}
qtHaveModule(axcontainer): QT += axcontainer
qtHaveModule(axserver): QT += axserver
qtHaveModule(concurrent): QT += concurrent
qtHaveModule(core): QT += core
qtHaveModule(dbus): QT += dbus
qtHaveModule(declarative): QT += declarative
qtHaveModule(designer): QT += designer
qtHaveModule(gui): QT += gui
qtHaveModule(widgets): QT += widgets
qtHaveModule(help): QT += help
qtHaveModule(multimedia): QT += multimedia
qtHaveModule(multimediawidgets): QT += multimediawidgets
qtHaveModule(network): QT += network
qtHaveModule(opengl): QT += opengl
qtHaveModule(printsupport): QT += printsupport
qtHaveModule(qml): QT += qml
qtHaveModule(qmltest): QT += qmltest
qtHaveModule(x11extras): QT += x11extras
qtHaveModule(script): QT += script
qtHaveModule(scripttools): QT += scripttools
qtHaveModule(sensors): QT += sensors
qtHaveModule(serialport): QT += serialport
qtHaveModule(sql): QT += sql
qtHaveModule(svg): QT += svg
qtHaveModule(testlib): QT += testlib
qtHaveModule(uitools): QT += uitools
qtHaveModule(webkit): QT += webkit
qtHaveModule(webkitwidgets): QT += webkitwidgets
qtHaveModule(xml): QT += xml
qtHaveModule(xmlpatterns): QT += xmlpatterns
percent.target = %
percent.commands = @echo -n "\$(\$(@))\ "
QMAKE_EXTRA_TARGETS += percent
EOF
$QT_QMAKE $am_have_qt_pro -o $am_have_qt_makefile
$QMAKE $am_have_qt_pro -o $am_have_qt_makefile
QT_CXXFLAGS=`cd $am_have_qt_dir; make -s -f $am_have_qt_makefile CXXFLAGS INCPATH`
QT_LIBS=`cd $am_have_qt_dir; make -s -f $am_have_qt_makefile LIBS`
rm $am_have_qt_pro $am_have_qt_makefile
rm $am_have_qt_pro $am_have_qt_stash $am_have_qt_makefile
rmdir $am_have_qt_dir
ver=`$QTPATHS --version | cut -d' ' -f 2`
if test "$ver" '>' "1"; then
QT_MAJOR_VERSION="6"
# Add QT_HOST_BINS and QT_HOST_LIBEXECS paths to PATH
for var in QT_HOST_BINS QT_HOST_LIBEXECS; do
PATH=$PATH:`$QTPATHS --query $var`
done
fi
# Look for specific tools in $PATH
AC_ARG_WITH(qt5-moc,
[ --with-qt5-moc=FILE uses given qt moc],
[QT_MOC="$withval"],
[QT_MOC=`which moc`]
)
AC_ARG_WITH(qt5-uic,
[ --with-qt5-uic=FILE uses given qt uic],
[QT_UIC="$withval"],
[QT_UIC=`which uic`]
)
QT_RCC=`which rcc`
QT_LRELEASE=`which lrelease`
QT_LUPDATE=`which lupdate`
AC_ARG_VAR([QT_MOC],[Qt moc tool])
AC_PATH_PROG([QT_MOC],[moc$am_have_qt_qmexe_suff])
if test "$QT_MOC" = ""; then
AC_PATH_PROG([QT_MOC],[moc])
fi
AC_ARG_VAR([QT_UIC],[Qt uic tool])
AC_PATH_PROG([QT_UIC],[uic$am_have_qt_qmexe_suff])
if test "$QT_UIC" = ""; then
AC_PATH_PROG([QT_UIC],[uic])
fi
AC_ARG_VAR([QT_RCC],[Qt rcc tool])
AC_PATH_PROG([QT_RCC],[rcc$am_have_qt_qmexe_suff])
if test "$QT_RCC" = ""; then
AC_PATH_PROG([QT_RCC],[rcc])
fi
AC_ARG_VAR([QT_LRELEASE],[Qt lrelease tool])
AC_PATH_PROG([QT_LRELEASE],[lrelease$am_have_qt_qmexe_suff])
if test "$QT_LRELEASE" = ""; then
AC_PATH_PROG([QT_LRELEASE],[lrelease])
fi
AC_ARG_VAR([QT_LUPDATE],[Qt lupdate tool])
AC_PATH_PROG([QT_LUPDATE],[lupdate$am_have_qt_qmexe_suff])
if test "$QT_LUPDATE" = ""; then
AC_PATH_PROG([QT_LUPDATE],[lupdate])
fi
# Get Qt version from qmake
QT_DIR=`$QT_QMAKE --version | grep -o -E /.+`
QT_DIR=`$QMAKE --version | grep -o -E /.+`
# All variables are defined, report the result
AC_MSG_RESULT([$have_qt:
......
QT_MOC=$QT_MOC
QT_RCC=$QT_RCC
QT_LRELEASE=$QT_LRELEASE
QT_LUPDATE=$QT_LUPDATE])
QT_LUPDATE=$QT_LUPDATE
QT_MAJOR_VERSION=$QT_MAJOR_VERSION])
else
# Qt was not found
have_qt=no
......
QT_RCC=
QT_LRELEASE=
QT_LUPDATE=
QT_MAJOR_VERSION=
AC_MSG_RESULT($have_qt)
fi
AC_SUBST(QT_CXXFLAGS)
AC_SUBST(QT_DIR)
AC_SUBST(QT_LIBS)
AC_SUBST(QT_UIC)
AC_SUBST(QT_MOC)
AC_SUBST(QT_RCC)
AC_SUBST(QT_LRELEASE)
AC_SUBST(QT_LUPDATE)
AC_SUBST(QT_MAJOR_VERSION)
#### Being paranoid:
if test x"$have_qt" = xyes; then

Auch abrufbar als: Unified diff