Fedora x86_64 patches
#1
Patches from http://centosjunkies.com/index.php/XBMC (by Scott H.):
  1. http://centosjunkies.com/index.php/Fribi...rter.patch
  2. http://centosjunkies.com/index.php/Fribi...ping.patch
  3. http://centosjunkies.com/index.php/Dsputil_mmx.patch
    Note: page says it's only for F8, but F10 wouldn't build without that last one, either

Patch from Topfs2 - fixes music playback for some cases (I'm sure he will push it into SVN very soon):
http://trac.xbmc.org/attachment/ticket/5753/t.2


Additional patches from me:

1. configure: lib64 should be used in x86_64... or maybe it's just me? Okay, technically both paths exist and seem to contain the same header file.. whatever Tongue
Code:
--- configure    (revision 17750)
+++ configure    (working copy)
@@ -7544,7 +7544,11 @@
{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_hal_main" >&5
$as_echo "$ac_cv_lib_hal_main" >&6; }
if test $ac_cv_lib_hal_main = yes; then
-  LZO_INCLUDES="$LZO_INCLUDES -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/hal"
+  if test $ARCH = "x86_64-linux"; then
+    LZO_INCLUDES="$LZO_INCLUDES -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/hal"
+  else
+    LZO_INCLUDES="$LZO_INCLUDES -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/hal"
+  fi
else
   { { $as_echo "$as_me:$LINENO: error: $missing_library" >&5
$as_echo "$as_me: error: $missing_library" >&2;}


2. dsputil_mmx.h needs another variable defined as extern (this is in addition to Scott's patch, which seems to be outdated):
+extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_9;

3. libswscale also needs some variables defined for compilation to succeed (same type of bug again):
Code:
--- xbmc/cores/dvdplayer/Codecs/ffmpeg/libswscale/rgb2rgb.h    (revision 17750)
+++ xbmc/cores/dvdplayer/Codecs/ffmpeg/libswscale/rgb2rgb.h    (working copy)
@@ -28,6 +28,19 @@

#include <inttypes.h>

+extern const uint64_t __attribute__((visibility("hidden"))) ff_bgr2YCoeff;
+extern const uint64_t __attribute__((visibility("hidden"))) ff_bgr2UCoeff;
+extern const uint64_t __attribute__((visibility("hidden"))) ff_bgr2VCoeff;
+extern const uint64_t __attribute__((visibility("hidden"))) ff_bgr2YOffset;
+extern const uint64_t __attribute__((visibility("hidden"))) ff_bgr2UVOffset;
+extern const uint64_t __attribute__((visibility("hidden"))) ff_w1111;
+extern const uint64_t __attribute__((visibility("hidden"))) ff_M24A;
+extern const uint64_t __attribute__((visibility("hidden"))) ff_M24B;
+extern const uint64_t __attribute__((visibility("hidden"))) ff_M24C;
+
+
/* A full collection of RGB to RGB(BGR) converters */
extern void (*rgb24tobgr32)(const uint8_t *src, uint8_t *dst, long src_size);
extern void (*rgb24tobgr16)(const uint8_t *src, uint8_t *dst, long src_size);
Reply
#2
i would avoid the lib64 cruft ... distros that utilize it provide /usr/lib as a symlink to it

if you really want to fix it, i would look at converting the hardcoded paths to using pkg-config and dbus-1.pc via PKG_CHECK_MODULES() (see pkg.m4)
Reply
#3
You shouldn't need the first two patches as of today. I made some changes to how we include those directories.

Could you try building without applying your patches and let me know if that specific problem is fixed for you?
Reply
#4
As of r18548 (didn't check earlier) everything compiles out of svn
The only problem I still have is ejecting DVDs...
Reply

Logout Mark Read Team Forum Stats Members Help
Fedora x86_64 patches0