Cumulative patchwork from my repo#89
Conversation
* Parallel build * `make check` support * Fix `debug`/`release` builds
* Force C++11 * Disable annoying warnings for deprecated declarations * Add -Wpedantic and even -Werror for src, but relaxe some warnings * Code cleanup for less warnings
* Introduce UBSan into CI * Fix UB with incorrect alignment. This is a dirty hotfix in the rxx_allocator.
Remove unused code and redundant ctors
Missed this fix in #bc4aa1e
But really QT_NO_CAST_FROM_ASCII can help prevent incorrect behavior on non-Latin1 input
1. Fix failed tests count report 2. Support exact Python version match, add `--embed` flag for 3.8+ only 3. Code cleanup +4. Use canonical way to add RPATH, on GNU/Linux the Makefile is the same for projects with the TEMPLATE=app, and no redundant link flags for TEMPLATE=lib
mrbean-bremen
left a comment
There was a problem hiding this comment.
Thanks - this looks good to me now, though I would like somebody else to have another look.
* Add support for `pkg-config`. If PKGCONFIG is set, skip old-style lookup. Useful on GNU/Linux and on macOS GHA, when `python-config` returns incorrect linkage options with missing `-Ldirs` * Add macOS GHA CI
| uses: actions/upload-artifact@v3 | ||
| with: | ||
| name: wrappers_macos${{ steps.versions.outputs.MACOS_VERSION_SHORT }}_qt${{ steps.versions.outputs.QT_VERSION_SHORT }} | ||
| path: generated_cpp |
There was a problem hiding this comment.
Ah, that's cool, thanks! I tried to get a Mac build working, but I lack experience with Mac builds and couldn't get Python to correctly link. Now only a Windows build is missing...
|
@iakov - are you done here? If yes, I will wait a bit for somebody else to chime in, and merge, if nobody objects. |
|
Added last cleanup as was requested. I'm done. |
|
Thanks a lot! |
There was a problem hiding this comment.
@iakov - we have a problem with this code, as it undefines _POSIX_THREADS, which leads to errors due to missing defines in pythread.h. As far as I can see, _POSIX_THREADS is not defined in Python.h, it just is checked (in pythread.h) to see if POSIX threads are defined. It think it is defined in pthread.h or a related include. The same seems to be true for the other symbols.
I'm inclined to revert this specific change, though I may be misunderstanding something. Can you please elaborate on this?
There was a problem hiding this comment.
I'll make a PR to revert this to discuss this.
- this has been introduced in MeVisLab#89 and breaks builds including "pythread.h"
- this has been introduced in MeVisLab#89 and breaks builds including "pythread.h"

make checkfor testsmake checksupport is enabled