xpra icon
Bug tracker and wiki

Opened 4 months ago

Last modified 3 weeks ago

#1678 new defect

2.3 moduleset updates

Reported by: Antoine Martin Owned by: Smo
Priority: major Milestone: 2.3
Component: platforms Version: trunk
Keywords: macos Cc:

Description (last modified by Antoine Martin)

Follow up from #1587.

One important update worth re-trying is gstreamer 1.12 (or 1.14 if available), see ticket:1501#comment:6 for issues.

Link to osx changelog: log/xpra/trunk/osx.

Change History (11)

comment:1 Changed 3 months ago by Antoine Martin

Status: newassigned
Summary: moduleset updates2.3 moduleset updates

comment:2 Changed 2 months ago by Antoine Martin

Last edited 8 weeks ago by Antoine Martin (previous) (diff)

comment:3 Changed 2 months ago by Antoine Martin

Description: modified (diff)

comment:4 Changed 2 months ago by Antoine Martin

Owner: changed from Antoine Martin to Smo
Status: assignednew

Full rebuild:

  • png error:
    In file included from png.c:14:
    ./pngpriv.h:898:4: error: ZLIB_VERNUM != PNG_ZLIB_VERNUM "-I (include path) error: see the notes in pngpriv.h"
    #  error ZLIB_VERNUM != PNG_ZLIB_VERNUM \
       ^
    
  • x264 builds fine but fails to package because the library references the temporary path it gets installed into:
    $ grep -r jhbuild/root-x264 /Users/osx/gtk/inst/lib
    Binary file /Users/osx/gtk/inst/lib/gstreamer-1.0/libgstx264.so matches
    Binary file /Users/osx/gtk/inst/lib/libx264.148.dylib matches
    Binary file /Users/osx/gtk/inst/lib/libx264.dylib matches
    Binary file /Users/osx/gtk/inst/lib/python2.7/site-packages/xpra/codecs/enc_x264/encoder.so matches
    

Rebuilding and copying it by hand fixes things:

jhbuild shell
cd ${JHBUILD_SOURCE}/x264-snapshot-20171222-2245-stable
make clean && make
cp libx264.*.dylib ${JHBUILD_PREFIX}/

(then wipe clean and rebuild gst-plugins-ugly-1.0)

@smo: ideas?

comment:5 Changed 7 weeks ago by Antoine Martin

Some important updates, most already recorded in ticket:1575#comment:9 and ticket:1575#comment:10:

comment:6 Changed 7 weeks ago by Antoine Martin

Lots more moduleset refactoring done to support python3 (see ticket:1575#comment:12), and also:

  • r17943: gstreamer 1.12 does seem to work ok

comment:7 Changed 7 weeks ago by Smo

As this is for gtk2 portion of the moduleset I will post my findings here.

There were only a few issues with the gtk2 moduleset.

** Applying patch https://xpra.org/svn/Xpra/trunk/osx/jhbuild/patches/glib-bug-772454-disable-kqueue.patch *** [19/130]
patch -p1 < "/Users/xpra/.cache/jhbuild/glib-bug-772454-disable-kqueue.patch"
patch: **** Only garbage was found in the patch input.
*** Error during phase checkout of glib: ########## Error running patch -p1 < "/Users/xpra/.cache/jhbuild/glib-bug-772454-disable-kqueue.patch" *** [19/130]

The patch here has the wrong contents.

building 'lzo' extension
/usr/bin/gcc -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch x86_64 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -mmacosx-version-min=10.13 -I/Users/xpra/gtk/inst/include -arch x86_64 -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk -I/Users/xpra/gtk/inst/include/lzo -I/Users/xpra/gtk/inst/include/python2.7 -c lzomodule.c -o build/temp.macosx-10.13-x86_64-2.7/lzomodule.o
lzomodule.c:35:10: fatal error: 'lzo1x.h' file not found
#include <lzo1x.h>
         ^~~~~~~~~
1 error generated.
error: command '/usr/bin/gcc' failed with exit status 1
*** Error during phase build of python-lzo: ########## Error running python setup.py build *** [72/130]

lzo isn't being built before python-lzo can be fixed quickly by jhbuild buildone lzo

*** Applying patch http://xpra.org/svn/Xpra/trunk/osx/jhbuild/patches/lame-channels.patch *** [100/130]
patch -p1 < "/Users/xpra/.cache/jhbuild/lame-channels.patch"
patching file libmp3lame/set_get.c
patch: **** unexpected end of file in patch
*** Error during phase checkout of lame: ########## Error running patch -p1 < "/Users/xpra/.cache/jhbuild/lame-channels.patch" *** [100/130]

Seems to be an issue with this patch too.

comment:8 Changed 6 weeks ago by Antoine Martin

browser/xpra/trunk/osx/jhbuild/patches/glib-bug-772454-disable-kqueue.patch
The patch here has the wrong contents.

Yep. And I can't find an old copy anywhere. I believe I found the bug this refers to: Bug 772454 - Gnucash crashes when opening new file
Going forward we may need to mirror the patches if we want to have a way to rebuild things reliably.

We tried moving to the new glib in r17849, then downgraded the python2 / gtk2 moduleset back to the version requiring this patch in r17910 (+ r17913 for gi).
The patches were mirrored in our repo since r17912, but a few didn't make it (including this one - maybe the urls went 404 and those ended up being the contents?).

Anyway, maybe it is worth trying glib 2.50 or 2.52 again?

lzo isn't being built before python-lzo can be fixed quickly by jhbuild buildone lzo

Saw this too, we already have <after>lzo</after> in the python-lzo module, maybe I misunderstand what "after" means then?
Anyway, I did the same thing (jhbuild buildone lzo) and moved on.

lame-channels.patch
Seems to be an issue with this patch too.

Was fixed a few days ago in r17923 (and also r17885 for the patch prefix), maybe you need to wipe your copy in the jhbuild cache (.cache/jhbuild/*patch)

comment:10 Changed 4 weeks ago by Antoine Martin

Updates:

  • r17994 + r17995 + r18091: lz4 / python-lz4 (are we correctly using the pseudo system lz4 rather than the one bundled with python-lz4?)
  • r18015 + r18020: remove quartz theme, use gtk3 themes with gtk3 moduleset
  • r18152: gtk3 packaging fixes
  • r18174 + r18175: libvpx 1.7 - build errors

@smo: can you try libvpx 1.7?

comment:11 Changed 3 weeks ago by Antoine Martin

Note: See TracTickets for help on using tickets.