After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 789645 - CMake modules fixes
CMake modules fixes
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: qt-gstreamer
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2017-10-30 08:42 UTC by Daniele E. Domenichelli
Modified: 2018-05-05 11:23 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
FindGLIB2: Do not use REQUIRED to find PkgConfig and glib-2.0 (929 bytes, patch)
2017-10-30 08:42 UTC, Daniele E. Domenichelli
committed Details | Review
FindGStreamer: Do not search for plugin dir if gstreamer was not found (1.17 KB, patch)
2017-10-30 08:43 UTC, Daniele E. Domenichelli
committed Details | Review
Fix QUIET flag in FindGStreamer and FindGStreamerPluginsBase (5.77 KB, patch)
2017-10-30 08:43 UTC, Daniele E. Domenichelli
none Details | Review
FindGStreamer: Fix cases where gst.h and gstconfig.h are not in the same folder (2.37 KB, patch)
2017-10-30 08:43 UTC, Daniele E. Domenichelli
committed Details | Review
Use GSTREAMER_INCLUDE_DIRS instead of GSTREAMER_INCLUDE_DIR (2.06 KB, patch)
2017-10-30 08:44 UTC, Daniele E. Domenichelli
committed Details | Review
Fix QUIET flag in FindGStreamer and FindGStreamerPluginsBase (5.72 KB, patch)
2018-05-04 15:58 UTC, Daniele E. Domenichelli
none Details | Review
Fix QUIET flag in FindGStreamer and FindGStreamerPluginsBase (v2) (5.84 KB, patch)
2018-05-04 16:15 UTC, Daniele E. Domenichelli
none Details | Review

Description Daniele E. Domenichelli 2017-10-30 08:42:17 UTC
Created attachment 362524 [details] [review]
FindGLIB2: Do not use REQUIRED to find PkgConfig and glib-2.0

1/5 - FindGLIB2: Do not use REQUIRED to find PkgConfig and glib-2.0
2/5 - FindGStreamer: Do not search for plugin dir if gstreamer was not found
3/5 - Fix QUIET flag in FindGStreamer and FindGStreamerPluginsBase
4/5 - FindGStreamer: Fix cases where gst.h and gstconfig.h are not in the s…
5/5 - Use GSTREAMER_INCLUDE_DIRS instead of GSTREAMER_INCLUDE_DIR
Comment 1 Daniele E. Domenichelli 2017-10-30 08:43:02 UTC
Created attachment 362525 [details] [review]
FindGStreamer: Do not search for plugin dir if gstreamer was not found
Comment 2 Daniele E. Domenichelli 2017-10-30 08:43:27 UTC
Created attachment 362526 [details] [review]
Fix QUIET flag in FindGStreamer and FindGStreamerPluginsBase
Comment 3 Daniele E. Domenichelli 2017-10-30 08:43:49 UTC
Created attachment 362527 [details] [review]
FindGStreamer: Fix cases where gst.h and gstconfig.h are not in the same folder
Comment 4 Daniele E. Domenichelli 2017-10-30 08:44:12 UTC
Created attachment 362528 [details] [review]
Use GSTREAMER_INCLUDE_DIRS instead of GSTREAMER_INCLUDE_DIR
Comment 5 Daniele E. Domenichelli 2017-11-13 07:48:11 UTC
Ping?
Comment 6 Tim-Philipp Müller 2018-01-23 20:43:19 UTC
Thanks for the patches Daniele.

qt-gstreamer is unmaintained, but I'm happy to push these patches to git master anyway.

I would appreciate some kind of rationale what they are trying to achieve or fix however. The commit messages are a bit sparse.

For example: why should pkgconfig / glib-2.0 not be required (patch 1)?
Comment 7 Daniele E. Domenichelli 2018-01-24 07:43:39 UTC
Hello Tim-Philipp,

The paths detected by pkg-config are used as hint for the following find_library and find_path calls.
By making them optional the pkg-config optional, cmake tries to detect the libraries even if pkg-config is not available.

All the patches are required in order to fix the FindGStreamer module on a few systems I've been using them (I tested the CMake modules only, not the whole qt-gstreamer library). For example, on one of the systems (I cannot remember which one, sorry) the gst.h and gstconfig.h files were in different folders (patch 4 and 5)

Also the patch 3 fixes the QUIET argument for the find_package command that is supposed to not print any message.

Let me know if you need any specific information about the patches.
Comment 8 George Kiagiadakis 2018-05-04 13:34:03 UTC
Hi Daniele,

Long time no speak :) Hope you are doing well.

I have pushed all the patches except number 3 "Fix QUIET flag...". It apparently makes cmake fail on master. Maybe you have applied some other local changes as well?

If you want to rework that, let me know and I will push it.

-----

commit 49bef1a1f1b383b2ada61c1fa84a836195d79ea2
Author: Daniele E. Domenichelli <daniele.domenichelli@iit.it>
Date:   Fri Oct 13 00:52:36 2017 +0200

    Use GSTREAMER_INCLUDE_DIRS instead of GSTREAMER_INCLUDE_DIR

commit 08659a08a39ce6c91df475d366fb7be6500e7ed3
Author: Daniele E. Domenichelli <daniele.domenichelli@iit.it>
Date:   Thu Oct 12 12:23:14 2017 +0200

    FindGStreamer: Fix cases where gst.h and gstconfig.h are not in the same folder

commit 6d3282c28340c688e7749c99c29b8f8f7065a418
Author: Daniele E. Domenichelli <daniele.domenichelli@iit.it>
Date:   Tue Oct 10 09:24:16 2017 +0200

    FindGStreamer: Do not search for plugin dir if gstreamer was not found

commit 13a6c5337b5f4407159c3d6aaea194c188c162a5
Author: Daniele E. Domenichelli <daniele.domenichelli@iit.it>
Date:   Mon Oct 9 13:19:39 2017 +0200

    FindGLIB2: Do not use REQUIRED to find PkgConfig and glib-2.0
Comment 9 Daniele E. Domenichelli 2018-05-04 15:58:20 UTC
Created attachment 371676 [details] [review]
Fix QUIET flag in FindGStreamer and FindGStreamerPluginsBase
Comment 10 George Kiagiadakis 2018-05-04 16:15:03 UTC
Sorry, Daniele, I'm still getting errors:

CMake Error at cmake/modules/FindGStreamerPluginsBase.cmake:34 (find_gstreamer_library):
  find_gstreamer_library Macro invoked with incorrect arguments for macro
  named: find_gstreamer_library
Call Stack (most recent call first):
  cmake/modules/FindGStreamerPluginsBase.cmake:41 (_find_gst_plugins_base_component)
  CMakeLists.txt:88 (find_package)


CMake Error at cmake/modules/FindGStreamerPluginsBase.cmake:34 (find_gstreamer_library):
  find_gstreamer_library Macro invoked with incorrect arguments for macro
  named: find_gstreamer_library
Call Stack (most recent call first):
  cmake/modules/FindGStreamerPluginsBase.cmake:43 (_find_gst_plugins_base_component)
  CMakeLists.txt:88 (find_package)


CMake Error at cmake/modules/FindGStreamerPluginsBase.cmake:34 (find_gstreamer_library):
  find_gstreamer_library Macro invoked with incorrect arguments for macro
  named: find_gstreamer_library
Call Stack (most recent call first):
  cmake/modules/FindGStreamerPluginsBase.cmake:59 (_find_gst_plugins_base_component)
  CMakeLists.txt:88 (find_package)


CMake Error at cmake/modules/FindGStreamerPluginsBase.cmake:34 (find_gstreamer_library):
  find_gstreamer_library Macro invoked with incorrect arguments for macro
  named: find_gstreamer_library
Call Stack (most recent call first):
  cmake/modules/FindGStreamerPluginsBase.cmake:57 (_find_gst_plugins_base_component)
  CMakeLists.txt:88 (find_package)
Comment 11 Daniele E. Domenichelli 2018-05-04 16:15:40 UTC
Created attachment 371678 [details] [review]
Fix QUIET flag in FindGStreamer and FindGStreamerPluginsBase (v2)
Comment 12 Daniele E. Domenichelli 2018-05-04 16:17:26 UTC
Hello George,

long time, indeed! Thanks! Hope you're doing well, too.

Sorry, I re-uploaded the wrong version! The latest patch should be fixed.


Thanks!
 Daniele
Comment 13 George Kiagiadakis 2018-05-05 11:23:31 UTC
Pushed, thanks.