fix osx wheels

This commit is contained in:
akshayaurora 2018-07-08 03:31:16 +05:30
parent 337f371b49
commit d8eba41624
1 changed files with 27 additions and 0 deletions

View File

@ -221,6 +221,7 @@ script:
sudo installer -package python-$pyver-macosx10.6.pkg -target /;
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py;
python$pyver_short get-pip.py --user;
python$pyver_short -m pip install git+http://github.com/tito/osxrelocator --user;
python$pyver_short -m pip install --upgrade --user pip;
python$pyver_short -m pip install --upgrade --user cython nose wheel pillow mock docutils;
@ -230,6 +231,32 @@ script:
USE_SDL2=1 USE_GSTREAMER=1 python$pyver_short setup.py bdist_wheel;
/Library/Frameworks/Python.framework/Versions/$pyver_short/bin/delocate-wheel dist/*.whl;
# manually copy over libs with @rpath that delocate-wheel ignores for now.
zip_dir="$(basename dist/*.whl .whl)";
unzip dist/*.whl -d dist/$zip_dir;
cp /Library/Frameworks/SDL2_mixer.framework/Versions/A/Frameworks/FLAC.framework/Versions/A/FLAC dist/$zip_dir/kivy/.dylibs/;
cp /Library/Frameworks/SDL2_ttf.framework/Versions/A/Frameworks/FreeType.framework/Versions/A/freetype dist/$zip_dir/kivy/.dylibs/;
cp /Library/Frameworks/SDL2_mixer.framework/Versions/A/Frameworks/Ogg.framework/Versions/A/Ogg dist/$zip_dir/kivy/.dylibs/;
cp /Library/Frameworks/SDL2_mixer.framework/Versions/A/Frameworks/Vorbis.framework/Versions/A/Vorbis dist/$zip_dir/kivy/.dylibs/;
cp /Library/Frameworks/SDL2_mixer.framework/Versions/A/Frameworks/modplug.framework/Versions/A/modplug dist/$zip_dir/kivy/.dylibs/;
cp /Library/Frameworks/SDL2_mixer.framework/Versions/A/Frameworks/smpeg2.framework/Versions/A/smpeg2 dist/$zip_dir/kivy/.dylibs/;
cp /Library/Frameworks/SDL2_mixer.framework/Versions/A/Frameworks/smpeg2.framework/Versions/A/smpeg2 dist/$zip_dir/kivy/.dylibs/;
# change `@rpath` for the frameworks above to `@loader_path/`
python$pyver_short -m osxrelocator.__init__ dist/$zip_dir/kivy/.dylibs @rpath/SDL2.framework/Versions/A/SDL2 @loader_path/SDL2;
python$pyver_short -m osxrelocator.__init__ dist/$zip_dir/kivy/.dylibs @rpath/FLAC.framework/Versions/A/FLAC @loader_path/FLAC;
python$pyver_short -m osxrelocator.__init__ dist/$zip_dir/kivy/.dylibs @rpath/modplug.framework/Versions/A/modplug @loader_path/modplug;
python$pyver_short -m osxrelocator.__init__ dist/$zip_dir/kivy/.dylibs @rpath/smpeg2.framework/Versions/A/smpeg2 @loader_path/smpeg2;
python$pyver_short -m osxrelocator.__init__ dist/$zip_dir/kivy/.dylibs @rpath/FreeType.framework/Versions/A/FreeType @loader_path/FreeType;
python$pyver_short -m osxrelocator.__init__ dist/$zip_dir/kivy/.dylibs @rpath/webp.framework/Versions/A/webp @loader_path/webp;
python$pyver_short -m osxrelocator.__init__ dist/$zip_dir/kivy/.dylibs @rpath/Vorbis.framework/Versions/A/Vorbis @loader_path/Vorbis;
python$pyver_short -m osxrelocator.__init__ dist/$zip_dir/kivy/.dylibs @rpath/../../../../SDL2.framework/Versions/A/SDL2 @loader_path/SDL2;
python$pyver_short -m osxrelocator.__init__ dist/$zip_dir/kivy/.dylibs @rpath/Ogg.framework/Versions/A/Ogg @loader_path/Ogg;
python$pyver_short -m osxrelocator.__init__ dist/$zip_dir/kivy/.dylibs @rpath/Ogg.framework/Versions/A/Ogg @loader_path/Ogg;
rm dit/$zip_dir.whl;
pushd dist
python$pyver_short -c "from delocate import delocating; delocating.dir2zip('$zip_dir', '$zip_dir.whl')";
rm -rf $zip_dir;
popd
/Library/Frameworks/Python.framework/Versions/$pyver_short/bin/delocate-addplat --rm-orig -x 10_9 -x 10_10 dist/*.whl;
cp dist/*.whl ../wheelhouse/;
done;