Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#7088 closed defect (fixed)

mythmusic's adding of the cdda includepath the qt project is broken

Reported by: pebender@… Owned by: Janne Grunau
Priority: minor Milestone: 0.22
Component: Plugin - MythMusic Version: unknown
Severity: low Keywords:
Cc: Ticket locked: no

Description

MythMusic adds the $${SYSROOT}/usr/include/cdda to its include path in mythplugins/mythmusic/mythmusic/mythmusic.pro. However, because SYSROOT is never set by either the mythtv or mythplugins configure script, it does not set the correct include path when cross compiling.

Since setting SYSROOT would actually break many other things, that is not a good fix at the moment.

I have attached a patch that move the adding of the cdda include path to the mythplugins configure script. This allows it to take advantage of the configure script's --sysroot option.

Attachments (1)

mythmusic_cdda_includepath.patch (1004 bytes) - added by anonymous 10 years ago.

Download all attachments as: .zip

Change History (6)

Changed 10 years ago by anonymous

comment:1 Changed 10 years ago by stuartm

Milestone: unknown0.22
Owner: changed from stuartm to janneg
Status: newassigned

comment:2 Changed 10 years ago by Janne Grunau

Owner: changed from janneg to Janne Grunau

comment:3 Changed 10 years ago by Janne Grunau

Resolution: fixed
Status: assignedclosed

(In [22319]) export sysroot to mythconfig.mak so it's available in the plugins. Fixes #7088

comment:4 Changed 10 years ago by pebender@…

As I mentioned in the bug report, exporting SYSROOT breaks many other things, which I I was suggested the fix.

The problem is how SYSROOT and PREFIX are used.

mythtv never prepends SYSROOT to PREFIX in of its *.pro files or Makefiles. However, it does prepend $sysroot to non $prefix path in the configure script. Therefore, for mythtv to cross-compile correctly, --sysroot must be set and --prefix must be set and prefixed by the value of --sysroot.

However, mythplugins pepends SYSROOT to PREFIX in some of its *.pro and Makefiles but not in others. With SYSROOT exported, any *.pro or Makefile that prepends SYSROOT breaks. In addition, mythplugins and the themes configure scripts prepend $sysroot to $prefix.

Because of these discrepancies, it is not clear to me the intended relationship between sysroot and prefix. When cross compiling, if prefix is intended to be a subdirectory of sysroot, then SYSROOT needs to be prepended to everywhere PREFIX is used in the mythtv and mythplugins *.pro and Makefiles and $sysroot needs to be prepended to $prefix in the configure scripts. When cross compiling, if prefix is intended to be independent of sysroot, then SYSROOT should not prepend PREFIX in any of mythplugins *.pro or Makefiles and $sysroot should not be prepended to $prefix in any of the configure scripts.

comment:5 Changed 10 years ago by pebender@…

I have opened a new ticket #7317 and attached a patch to resolve the sysroot issues (at least for me).

Note: See TracTickets for help on using tickets.