[trojita] [Bug 358381] mingw Qt5: build failures via static plugins

2016-01-23 Thread Jan Kundrát via KDE Bugzilla
https://bugs.kde.org/show_bug.cgi?id=358381

Jan Kundrát  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |INVALID

--- Comment #6 from Jan Kundrát  ---
So this was actually caused by the Qt4 installation. Hint:

[turbo-hipster@ci-el7-big-1 ~]$ grep -R QT_STATICPLUGIN
/usr/i686-w64-mingw32/sys-root/mingw/include
/usr/i686-w64-mingw32/sys-root/mingw/include/Qt/qplugin.h:#if
defined(QT_STATICPLUGIN)
/usr/i686-w64-mingw32/sys-root/mingw/include/QtCore/qplugin.h:#if
defined(QT_STATICPLUGIN)
/usr/i686-w64-mingw32/sys-root/mingw/include/qt5/QtCore/qplugin.h:#if
defined(QT_STATICPLUGIN)
[turbo-hipster@ci-el7-big-1 ~]$ rpm -qf
/usr/i686-w64-mingw32/sys-root/mingw/include/Qt/qplugin.h
mingw32-qt-4.8.6-8.el7.noarch

Removing that package fixed the build problem.

-- 
You are receiving this mail because:
You are watching all bug changes.

[trojita] [Bug 358381] mingw Qt5: build failures via static plugins

2016-01-23 Thread Thomas Lübking via KDE Bugzilla
https://bugs.kde.org/show_bug.cgi?id=358381

--- Comment #5 from Thomas Lübking  ---
/usr/i686-w64-mingw32/sys-root/mingw/include/qt5/QtCore/qplugin.h defines
QT_MOC_EXPORT_PLUGIN depending on QT_STATICPLUGIN definition.

I assume this happens in some other path (qt5/mkspecs/win32-g++ ,
include/qt5/QtWidgets , /include/qt5/QtGui) as well, but "corrected" (some
windows speciality or similar) which is shadowed by the qplugin.h in QtCore.

Alternatively "some" header in include/qt5/QtCore undefines QT_STATICPLUGIN (it
should only show up in qplugin.h)

-- 
You are receiving this mail because:
You are watching all bug changes.

[trojita] [Bug 358381] mingw Qt5: build failures via static plugins

2016-01-22 Thread Jan Kundrát via KDE Bugzilla
https://bugs.kde.org/show_bug.cgi?id=358381

--- Comment #4 from Jan Kundrát  ---
Comparing outputs of objdump on a native Linux system and on this mingw 
cross compilation, I'm getting some qt_static_plugin_* symbols in my Linux' 
./CMakeFiles/trojita_plugin_AbookAddressbookPlugin.dir/trojita_plugin_AbookAddressbookPlugin_automoc.cpp.o,
 
but when I take a look at mingw' 
./CMakeFiles/trojita_plugin_AbookAddressbookPlugin.dir/trojita_plugin_AbookAddressbookPlugin_automoc.cpp.obj,
 
there's nothing like that.

Going further, the moc_AbookAddressbook.cpp on the broken mingw build 
indeed doesn't contain stuff like QT_PLUGIN_METADATA_SECTION or 
QT_MOC_EXPORT_PLUGIN. This is super-weird, given that it's invoked like 
this:

Generating moc_AbookAddressbook.cpp
/usr/i686-w64-mingw32/bin/qt5/moc 
-I/home/turbo-hipster/pwn-trojita/trojita/src 
-I/home/turbo-hipster/pwn-trojita/trojita/build 
-I/usr/i686-w64-mingw32/sys-root/mingw/include 
-I/usr/i686-w64-mingw32/sys-root/mingw/include/qt5 
-I/usr/i686-w64-mingw32/sys-root/mingw/include/qt5/QtCore 
-I/usr/i686-w64-mingw32/sys-root/mingw/share/qt5/mkspecs/win32-g++ 
-I/usr/i686-w64-mingw32/sys-root/mingw/include/qt5/QtWidgets 
-I/usr/i686-w64-mingw32/sys-root/mingw/include/qt5/QtGui -DQT_STATICPLUGIN 
-DBUILD_PLUGIN -DQT_CORE_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII 
-DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_CORE_LIB -DQT_NO_DEBUG 
-DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER 
-DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION -o 
/home/turbo-hipster/pwn-trojita/trojita/build/moc_AbookAddressbook.cpp 
/home/turbo-hipster/pwn-trojita/trojita/src/Plugins/AbookAddressbook/AbookAddressbook.h

More weird things -- stuff starts working once again when I remove this 
from the moc's invocation:

  -I/usr/i686-w64-mingw32/sys-root/mingw/include/qt5/QtCore

So, in other words, the following invocation of moc actually produces a 
usable result:

/usr/i686-w64-mingw32/bin/qt5/moc 
-I/home/turbo-hipster/pwn-trojita/trojita/src 
-I/home/turbo-hipster/pwn-trojita/trojita/build 
-I/usr/i686-w64-mingw32/sys-root/mingw/include 
-I/usr/i686-w64-mingw32/sys-root/mingw/include/qt5 
-I/usr/i686-w64-mingw32/sys-root/mingw/share/qt5/mkspecs/win32-g++ 
-I/usr/i686-w64-mingw32/sys-root/mingw/include/qt5/QtWidgets 
-I/usr/i686-w64-mingw32/sys-root/mingw/include/qt5/QtGui -DQT_STATICPLUGIN 
-DBUILD_PLUGIN -DQT_CORE_LIB -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII 
-DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_CORE_LIB -DQT_NO_DEBUG 
-DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER 
-DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION -o 
mgw-without-mgwqt5core 
/home/turbo-hipster/pwn-trojita/trojita/src/Plugins/AbookAddressbook/AbookAddressbook.h

I double-checked this; if I leave that path in the moc's invocation, the 
resulting .cpp doesn't contain the static plugin data. When I kill it, the 
static plugin data are there.

Time to sleep, I guess, because this doesn't make any sense.

-- 
You are receiving this mail because:
You are watching all bug changes.

[trojita] [Bug 358381] mingw Qt5: build failures via static plugins

2016-01-22 Thread Thomas Lübking via KDE Bugzilla
https://bugs.kde.org/show_bug.cgi?id=358381

--- Comment #3 from Thomas Lübking  ---
It's supposed to be defined in trojita_plugin_AbookAddressbookPlugin.a,
assuming there's no dynamic variant flying around and falsely being picked by
the compiler:

   readelf -sW trojita_plugin_AbookAddressbookPlugin.a | grep trojita_plugin

(just that this is probably no ELF file? ;-)

-- 
You are receiving this mail because:
You are watching all bug changes.

[trojita] [Bug 358381] mingw Qt5: build failures via static plugins

2016-01-22 Thread Jan Kundrát via KDE Bugzilla
https://bugs.kde.org/show_bug.cgi?id=358381

--- Comment #2 from Jan Kundrát  ---
> Do you have "-DQT_STATICPLUGIN" on building
> src/Plugins/AbookAddressbook/main.cpp?

I think that yeah:

[turbo-hipster@ci-el7-big-1 build]$ rm 
trojita_plugin_AbookAddressbookPlugin.a 
CMakeFiles/be.contacts.dir/src/Plugins/AbookAddressbook/main.cpp.obj

Now some garbage, just for completeness, feel free to not read this:

[turbo-hipster@ci-el7-big-1 build]$ make VERBOSE=1 be.contacts
/usr/bin/cmake -H/home/turbo-hipster/pwn-trojita/trojita 
-B/home/turbo-hipster/pwn-trojita/trojita/build --check-build-system 
CMakeFiles/Makefile.cmake 0
make -f CMakeFiles/Makefile2 be.contacts
make[1]: Entering directory `/home/turbo-hipster/pwn-trojita/trojita/build'
/usr/bin/cmake -H/home/turbo-hipster/pwn-trojita/trojita 
-B/home/turbo-hipster/pwn-trojita/trojita/build --check-build-system 
CMakeFiles/Makefile.cmake 0
/usr/bin/cmake -E cmake_progress_start 
/home/turbo-hipster/pwn-trojita/trojita/build/CMakeFiles 7
make -f CMakeFiles/Makefile2 CMakeFiles/be.contacts.dir/all
make[2]: Entering directory `/home/turbo-hipster/pwn-trojita/trojita/build'
make -f CMakeFiles/be.contacts_automoc.dir/build.make 
CMakeFiles/be.contacts_automoc.dir/depend
make[3]: Entering directory `/home/turbo-hipster/pwn-trojita/trojita/build'
cd /home/turbo-hipster/pwn-trojita/trojita/build && /usr/bin/cmake -E 
cmake_depends "Unix Makefiles" /home/turbo-hipster/pwn-trojita/trojita 
/home/turbo-hipster/pwn-trojita/trojita 
/home/turbo-hipster/pwn-trojita/trojita/build 
/home/turbo-hipster/pwn-trojita/trojita/build 
/home/turbo-hipster/pwn-trojita/trojita/build/CMakeFiles/be.contacts_automoc.dir/DependInfo.cmake
 
--color=
make[3]: Leaving directory `/home/turbo-hipster/pwn-trojita/trojita/build'
make -f CMakeFiles/be.contacts_automoc.dir/build.make 
CMakeFiles/be.contacts_automoc.dir/build
make[3]: Entering directory `/home/turbo-hipster/pwn-trojita/trojita/build'
/usr/bin/cmake -E cmake_progress_report 
/home/turbo-hipster/pwn-trojita/trojita/build/CMakeFiles 
[  0%] Automoc for target be.contacts
/usr/bin/cmake -E cmake_automoc 
/home/turbo-hipster/pwn-trojita/trojita/build/CMakeFiles/be.contacts_automoc.dir/
AUTOMOC: Checking 
/home/turbo-hipster/pwn-trojita/trojita/src/Plugins/AbookAddressbook/main.cpp
make[3]: Leaving directory `/home/turbo-hipster/pwn-trojita/trojita/build'
/usr/bin/cmake -E cmake_progress_report 
/home/turbo-hipster/pwn-trojita/trojita/build/CMakeFiles 
[  0%] Built target be.contacts_automoc
make -f CMakeFiles/Plugins_automoc.dir/build.make 
CMakeFiles/Plugins_automoc.dir/depend
make[3]: Entering directory `/home/turbo-hipster/pwn-trojita/trojita/build'
cd /home/turbo-hipster/pwn-trojita/trojita/build && /usr/bin/cmake -E 
cmake_depends "Unix Makefiles" /home/turbo-hipster/pwn-trojita/trojita 
/home/turbo-hipster/pwn-trojita/trojita 
/home/turbo-hipster/pwn-trojita/trojita/build 
/home/turbo-hipster/pwn-trojita/trojita/build 
/home/turbo-hipster/pwn-trojita/trojita/build/CMakeFiles/Plugins_automoc.dir/DependInfo.cmake
 
--color=
make[3]: Leaving directory `/home/turbo-hipster/pwn-trojita/trojita/build'
make -f CMakeFiles/Plugins_automoc.dir/build.make 
CMakeFiles/Plugins_automoc.dir/build
make[3]: Entering directory `/home/turbo-hipster/pwn-trojita/trojita/build'
/usr/bin/cmake -E cmake_progress_report 
/home/turbo-hipster/pwn-trojita/trojita/build/CMakeFiles 
[  0%] Automoc for target Plugins
/usr/bin/cmake -E cmake_automoc 
/home/turbo-hipster/pwn-trojita/trojita/build/CMakeFiles/Plugins_automoc.dir/
AUTOMOC: Checking 
/home/turbo-hipster/pwn-trojita/trojita/src/Plugins/AddressbookPlugin.cpp
AUTOMOC: Checking 
/home/turbo-hipster/pwn-trojita/trojita/src/Plugins/PasswordPlugin.cpp
AUTOMOC: Checking 
/home/turbo-hipster/pwn-trojita/trojita/src/Plugins/PluginJob.cpp
AUTOMOC: Checking 
/home/turbo-hipster/pwn-trojita/trojita/src/Plugins/PluginManager.cpp
AUTOMOC: Checking 
/home/turbo-hipster/pwn-trojita/trojita/src/Plugins/AddressbookPlugin.h
AUTOMOC: Checking 
/home/turbo-hipster/pwn-trojita/trojita/src/Plugins/PasswordPlugin.h
AUTOMOC: Checking 
/home/turbo-hipster/pwn-trojita/trojita/src/Plugins/PluginJob.h
AUTOMOC: Checking 
/home/turbo-hipster/pwn-trojita/trojita/src/Plugins/PluginManager.h
make[3]: Leaving directory `/home/turbo-hipster/pwn-trojita/trojita/build'
/usr/bin/cmake -E cmake_progress_report 
/home/turbo-hipster/pwn-trojita/trojita/build/CMakeFiles 
[  0%] Built target Plugins_automoc
make -f CMakeFiles/Plugins.dir/build.make CMakeFiles/Plugins.dir/depend
make[3]: Entering directory `/home/turbo-hipster/pwn-trojita/trojita/build'
cd /home/turbo-hipster/pwn-trojita/trojita/build && /usr/bin/cmake -E 
cmake_depends "Unix Makefiles" /home/turbo-hipster/pwn-trojita/trojita 
/home/turbo-hipster/pwn-trojita/trojita 
/home/turbo-hipster/pwn-trojita/trojita/build 
/home/turbo-hipster/pwn-trojita/trojita/build 
/home/turbo-hipster/pwn-trojita/trojita/build/CMakeFiles/Plugins.dir/DependInfo.cmake
 
--color=
make[3]: Leaving dire

[trojita] [Bug 358381] mingw Qt5: build failures via static plugins

2016-01-22 Thread Thomas Lübking via KDE Bugzilla
https://bugs.kde.org/show_bug.cgi?id=358381

--- Comment #1 from Thomas Lübking  ---
Do you have "-DQT_STATICPLUGIN" on building
src/Plugins/AbookAddressbook/main.cpp?
(The next question would be whether it makes its path down)

-- 
You are receiving this mail because:
You are watching all bug changes.