[vlc-devel] [PATCH] qt: use local-path for ui header wrapper

Alexandre Janniaux ajanni at videolabs.io
Sat Mar 7 18:44:43 CET 2020


Hi,

Automake doesn't seem to raise any issue. I would have
understood if I put this in _SOURCES without care but
I don't remember any limitation regarding _CFLAGS in tests
I've made in the past and in the documentation.

Here is my configure:

https://gist.githubusercontent.com/alexandre-janniaux/82826dfc850e9e8aee5cab761d87570d/raw/5f26a3d78aabfafd11da84c445d83ac06a830ee5/configure

And it translates into:

```
uidirs = \
	dialogs/extended \
	dialogs/fingerprint \
	dialogs/help \
	dialogs/messages \
	dialogs/open \
	dialogs/podcast \
	dialogs/preferences \
	dialogs/sout \
	dialogs/vlm

libqt_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(srcdir)/gui/qt \
	-I$(builddir)/gui/qt/ $(addprefix \
	-I$(builddir)/gui/qt/,$(uidirs)) $(am__append_132) \
	$(am__append_136) $(am__append_137)
```

I can change it if needed though, if you feel it's needed.

Regards,
--
Alexandre Janniaux
Videolabs


On Sat, Mar 07, 2020 at 04:08:53PM +0200, Remi Denis-Courmont wrote:
> That does not look like valid automake to me, and I'd be surprised if it
> didn't warn.
>
> Le 2020-03-07 13:35, Alexandre Janniaux a écrit :
> > Those files could generated in implementation-specified location by
> > build systems and we don't need a full path. With meson, it will be
> > handled automatically and having a full path makes the file not found.
> >
> > Use local-path and specify all include directories to simulate this.
> > ---
> >  modules/gui/qt/Makefile.am                         | 14 +++++++++++++-
> >  .../gui/qt/dialogs/extended/extended_panels.hpp    |  6 ++++--
> >  .../qt/dialogs/fingerprint/fingerprintdialog.cpp   |  4 +++-
> >  modules/gui/qt/dialogs/help/help.hpp               |  6 ++++--
> >  modules/gui/qt/dialogs/messages/messages.hpp       |  5 ++++-
> >  modules/gui/qt/dialogs/open/open.hpp               |  4 +++-
> >  modules/gui/qt/dialogs/open/open_panels.hpp        |  9 +++++----
> >  .../qt/dialogs/podcast/podcast_configuration.hpp   |  4 +++-
> >  .../qt/dialogs/preferences/simple_preferences.hpp  | 11 ++++++-----
> >  modules/gui/qt/dialogs/sout/profile_selector.hpp   |  4 +++-
> >  modules/gui/qt/dialogs/sout/sout.hpp               |  4 +++-
> >  modules/gui/qt/dialogs/vlm/vlm.hpp                 |  4 +++-
> >  12 files changed, 54 insertions(+), 21 deletions(-)
> >
> > diff --git a/modules/gui/qt/Makefile.am b/modules/gui/qt/Makefile.am
> > index 627cc5c5ab..ac424fd5fa 100644
> > --- a/modules/gui/qt/Makefile.am
> > +++ b/modules/gui/qt/Makefile.am
> > @@ -13,8 +13,20 @@
> >
> >  SUFFIXES += .ui .h .hpp .moc.cpp .qml
> >
> > +uidirs = \
> > +	dialogs/extended \
> > +	dialogs/fingerprint \
> > +	dialogs/help \
> > +	dialogs/messages \
> > +	dialogs/open \
> > +	dialogs/podcast \
> > +	dialogs/preferences \
> > +	dialogs/sout \
> > +	dialogs/vlm
> > +
> >  libqt_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) \
> > -	-I$(srcdir)/gui/qt -I$(builddir)/gui/qt/ -I$(builddir)/gui/qt/ui
> > +	-I$(srcdir)/gui/qt -I$(builddir)/gui/qt/ \
> > +	$(addprefix -I$(builddir)/gui/qt/,$(uidirs))
> >  libqt_plugin_la_CXXFLAGS = $(AM_CXXFLAGS) $(QT_CFLAGS) $(CXXFLAGS_qt)
> >  libqt_plugin_la_LIBADD = $(QT_LIBS) $(LIBS_qt) $(LIBM)
> >  libqt_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(guidir)'
> > diff --git a/modules/gui/qt/dialogs/extended/extended_panels.hpp
> > b/modules/gui/qt/dialogs/extended/extended_panels.hpp
> > index 98f0d84376..f0c775d6fb 100644
> > --- a/modules/gui/qt/dialogs/extended/extended_panels.hpp
> > +++ b/modules/gui/qt/dialogs/extended/extended_panels.hpp
> > @@ -31,10 +31,12 @@
> >  #include <vlc_common.h>
> >
> >  #include "qt.hpp"
> > -#include "dialogs/extended/ui_equalizer.h"
> > -#include "dialogs/extended/ui_video_effects.h"
> >  #include "util/variables.hpp"
> >
> > +/* Auto-generated from .ui files */
> > +#include "ui_equalizer.h"
> > +#include "ui_video_effects.h"
> > +
> >  #include <QTabWidget>
> >
> >  #define BANDS 10
> > diff --git a/modules/gui/qt/dialogs/fingerprint/fingerprintdialog.cpp
> > b/modules/gui/qt/dialogs/fingerprint/fingerprintdialog.cpp
> > index a2efeda3ab..468b69bd3d 100644
> > --- a/modules/gui/qt/dialogs/fingerprint/fingerprintdialog.cpp
> > +++ b/modules/gui/qt/dialogs/fingerprint/fingerprintdialog.cpp
> > @@ -19,7 +19,9 @@
> > *****************************************************************************/
> >
> >  #include "dialogs/fingerprint/fingerprintdialog.hpp"
> > -#include "dialogs/fingerprint/ui_fingerprintdialog.h"
> > +
> > +/* Auto-generated from .ui files */
> > +#include "ui_fingerprintdialog.h"
> >
> >  #include "dialogs/fingerprint/chromaprint.hpp"
> >  #include <vlc_url.h>
> > diff --git a/modules/gui/qt/dialogs/help/help.hpp
> > b/modules/gui/qt/dialogs/help/help.hpp
> > index 5754e06b9a..96c10981dd 100644
> > --- a/modules/gui/qt/dialogs/help/help.hpp
> > +++ b/modules/gui/qt/dialogs/help/help.hpp
> > @@ -31,8 +31,10 @@
> >
> >  #include "widgets/native/qvlcframe.hpp"
> >  #include "util/singleton.hpp"
> > -#include "dialogs/help/ui_about.h"
> > -#include "dialogs/help/ui_update.h"
> > +
> > +/* Auto-generated from .ui files */
> > +#include "ui_about.h"
> > +#include "ui_update.h"
> >
> >  class QEvent;
> >
> > diff --git a/modules/gui/qt/dialogs/messages/messages.hpp
> > b/modules/gui/qt/dialogs/messages/messages.hpp
> > index c2fd2850d1..00a81fbeb3 100644
> > --- a/modules/gui/qt/dialogs/messages/messages.hpp
> > +++ b/modules/gui/qt/dialogs/messages/messages.hpp
> > @@ -25,7 +25,10 @@
> >
> >  #include "widgets/native/qvlcframe.hpp"
> >  #include "util/singleton.hpp"
> > -#include "dialogs/messages/ui_messages_panel.h"
> > +
> > +/* Auto-generated from .ui files */
> > +#include "ui_messages_panel.h"
> > +
> >  #include <stdarg.h>
> >  #include <QMutex>
> >  #include <QAtomicInt>
> > diff --git a/modules/gui/qt/dialogs/open/open.hpp
> > b/modules/gui/qt/dialogs/open/open.hpp
> > index 0ae45ecc95..e14442cb03 100644
> > --- a/modules/gui/qt/dialogs/open/open.hpp
> > +++ b/modules/gui/qt/dialogs/open/open.hpp
> > @@ -31,9 +31,11 @@
> >  #include <vlc_url.h>
> >
> >  #include "widgets/native/qvlcframe.hpp"
> > -#include "dialogs/open/ui_open.h"
> >  #include "dialogs/open/open_panels.hpp"
> >
> > +/* Auto-generated from .ui files */
> > +#include "ui_open.h"
> > +
> >  enum {
> >      OPEN_FILE_TAB,
> >      OPEN_DISC_TAB,
> > diff --git a/modules/gui/qt/dialogs/open/open_panels.hpp
> > b/modules/gui/qt/dialogs/open/open_panels.hpp
> > index 57fffd53d5..b91e9343f5 100644
> > --- a/modules/gui/qt/dialogs/open/open_panels.hpp
> > +++ b/modules/gui/qt/dialogs/open/open_panels.hpp
> > @@ -33,10 +33,11 @@
> >
> >  #include "dialogs/preferences/preferences_widgets.hpp"
> >
> > -#include "dialogs/open/ui_open_file.h"
> > -#include "dialogs/open/ui_open_disk.h"
> > -#include "dialogs/open/ui_open_net.h"
> > -#include "dialogs/open/ui_open_capture.h"
> > +/* Auto-generated from .ui files */
> > +#include "ui_open_file.h"
> > +#include "ui_open_disk.h"
> > +#include "ui_open_net.h"
> > +#include "ui_open_capture.h"
> >
> >  #include <QFileDialog>
> >
> > diff --git a/modules/gui/qt/dialogs/podcast/podcast_configuration.hpp
> > b/modules/gui/qt/dialogs/podcast/podcast_configuration.hpp
> > index 65308b9440..1e99d67bf6 100644
> > --- a/modules/gui/qt/dialogs/podcast/podcast_configuration.hpp
> > +++ b/modules/gui/qt/dialogs/podcast/podcast_configuration.hpp
> > @@ -24,9 +24,11 @@
> >  #define QVLC_PODCAST_CONFIGURATION_DIALOG_H_ 1
> >
> >  #include "widgets/native/qvlcframe.hpp"
> > -#include "dialogs/podcast/ui_podcast_configuration.h"
> >  #include "util/singleton.hpp"
> >
> > +/* Auto-generated from .ui files */
> > +#include "ui_podcast_configuration.h"
> > +
> >  class PodcastConfigDialog : public QVLCDialog, public
> > Singleton<PodcastConfigDialog>
> >  {
> >      Q_OBJECT
> > diff --git a/modules/gui/qt/dialogs/preferences/simple_preferences.hpp
> > b/modules/gui/qt/dialogs/preferences/simple_preferences.hpp
> > index be31f6ecde..32d7df9fc2 100644
> > --- a/modules/gui/qt/dialogs/preferences/simple_preferences.hpp
> > +++ b/modules/gui/qt/dialogs/preferences/simple_preferences.hpp
> > @@ -30,11 +30,12 @@
> >  #include <vlc_common.h>
> >  #include <vlc_interface.h>
> >
> > -#include "dialogs/preferences/ui_sprefs_input.h"
> > -#include "dialogs/preferences/ui_sprefs_audio.h"
> > -#include "dialogs/preferences/ui_sprefs_video.h"
> > -#include "dialogs/preferences/ui_sprefs_subtitles.h"
> > -#include "dialogs/preferences/ui_sprefs_interface.h"
> > +/* Auto-generated from .ui files */
> > +#include "ui_sprefs_input.h"
> > +#include "ui_sprefs_audio.h"
> > +#include "ui_sprefs_video.h"
> > +#include "ui_sprefs_subtitles.h"
> > +#include "ui_sprefs_interface.h"
> >
> >  #include <vlc_media_library.h>
> >  #include <QDialogButtonBox>
> > diff --git a/modules/gui/qt/dialogs/sout/profile_selector.hpp
> > b/modules/gui/qt/dialogs/sout/profile_selector.hpp
> > index c1c37a50f8..ad08a785e5 100644
> > --- a/modules/gui/qt/dialogs/sout/profile_selector.hpp
> > +++ b/modules/gui/qt/dialogs/sout/profile_selector.hpp
> > @@ -31,7 +31,9 @@
> >
> >  #include "widgets/native/qvlcframe.hpp"
> >  #include "util/soutchain.hpp"
> > -#include "dialogs/sout/ui_profiles.h"
> > +
> > +/* Auto-generated from .ui files */
> > +#include "ui_profiles.h"
> >
> >  class QComboBox;
> >
> > diff --git a/modules/gui/qt/dialogs/sout/sout.hpp
> > b/modules/gui/qt/dialogs/sout/sout.hpp
> > index ca8c5aa5b3..d42fe6bf43 100644
> > --- a/modules/gui/qt/dialogs/sout/sout.hpp
> > +++ b/modules/gui/qt/dialogs/sout/sout.hpp
> > @@ -29,7 +29,9 @@
> >
> >  #include <vlc_common.h> /* Gettext functions */
> >
> > -#include "dialogs/sout/ui_sout.h"
> > +/* Auto-generated from .ui files */
> > +#include "ui_sout.h"
> > +
> >  #include "widgets/native/qvlcframe.hpp"
> >  #include "util/soutchain.hpp"
> >
> > diff --git a/modules/gui/qt/dialogs/vlm/vlm.hpp
> > b/modules/gui/qt/dialogs/vlm/vlm.hpp
> > index 234c676898..7f60ae5c19 100644
> > --- a/modules/gui/qt/dialogs/vlm/vlm.hpp
> > +++ b/modules/gui/qt/dialogs/vlm/vlm.hpp
> > @@ -30,7 +30,9 @@
> >
> >  #include <vlc_vlm.h>
> >
> > -#include "dialogs/vlm/ui_vlm.h"
> > +/* Auto-generated from .ui files */
> > +#include "ui_vlm.h"
> > +
> >  #include "widgets/native/qvlcframe.hpp"
> >  #include "util/singleton.hpp"
> >  #include <QDateTime>
>
> --
> Rémi Denis-Courmont


More information about the vlc-devel mailing list