mirror of
https://github.com/fergalmoran/picard.git
synced 2026-01-07 00:54:14 +00:00
Build OS X packages in GitLab
This commit is contained in:
@@ -10,11 +10,21 @@ variables:
|
||||
package win:
|
||||
stage: package
|
||||
script:
|
||||
- set PATCH_VERSION=1
|
||||
- scripts/package-win.bat
|
||||
- call "scripts\package-win.bat"
|
||||
artifacts:
|
||||
paths:
|
||||
- picard-setup-*.exe
|
||||
expire_in: 90d
|
||||
tags:
|
||||
- winxp
|
||||
|
||||
package osx:
|
||||
stage: package
|
||||
script:
|
||||
- bash -xe ./scripts/package-osx.sh
|
||||
artifacts:
|
||||
paths:
|
||||
- MusicBrainz-Picard-*.dmg
|
||||
expire_in: 90d
|
||||
tags:
|
||||
- osx
|
||||
|
||||
@@ -1,36 +1,43 @@
|
||||
export PATH=/Library/Frameworks/Python.framework/Versions/2.7/bin:$PATH
|
||||
curl -L -O https://github.com/acoustid/chromaprint/releases/download/v$CHROMAPRINT_FPCALC_VERSION/chromaprint-fpcalc-$CHROMAPRINT_FPCALC_VERSION-macos-x86_64.tar.gz
|
||||
tar --strip-components 1 -xf chromaprint-fpcalc-$CHROMAPRINT_FPCALC_VERSION-macos-x86_64.tar.gz chromaprint-fpcalc-$CHROMAPRINT_FPCALC_VERSION-macos-x86_64/fpcalc
|
||||
|
||||
curl -L -O http://ftp.musicbrainz.org/pub/musicbrainz/libdiscid/libdiscid-$DISCID_VERSION-mac.zip
|
||||
unzip -jx libdiscid-$DISCID_VERSION-mac.zip libdiscid-$DISCID_VERSION-mac/intel64/libdiscid.0.dylib
|
||||
export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH
|
||||
|
||||
cd deps
|
||||
tar xf chromaprint-fpcalc-*.tar.gz
|
||||
rm chromaprint-fpcalc-*.tar.gz
|
||||
export PATH=`pwd`/`ls | grep chromaprint-fpcalc`:$PATH
|
||||
cd ..
|
||||
|
||||
if [ "$PATCH_VERSION" = "1" ]
|
||||
then
|
||||
python2.7 setup.py patch_version --platform=osx
|
||||
fi
|
||||
version=`python -c 'import picard; print picard.__version__'`
|
||||
curl -L -o plugins.zip https://github.com/metabrainz/picard-plugins/archive/master.zip
|
||||
unzip -x plugins.zip
|
||||
mkdir contrib
|
||||
mv picard-plugins-master/plugins contrib/plugins
|
||||
|
||||
rm -rf e
|
||||
virtualenv -p python2.7 --system-site-packages e
|
||||
. e/bin/activate
|
||||
|
||||
pip install mutagen==1.27
|
||||
pip install https://github.com/JonnyJD/python-discid/archive/dmg.zip
|
||||
pip install py2app==0.9
|
||||
pip install mutagen==$MUTAGEN_VERSION
|
||||
pip install https://github.com/JonnyJD/python-discid/archive/dmg.zip # XXX can't use $PYTHON_DISCID_VERSION
|
||||
pip install py2app
|
||||
|
||||
perl -pi -e 's{plugin_dir = (.*)$}{plugin_dir = "/Developer/Applications/Qt/plugins"}' e/lib/python2.7/site-packages/py2app/recipes/sip.py
|
||||
|
||||
echo 'from __future__ import absolute_import' > e/lib/python2.7/site-packages/py2app/recipes/sip.py.new
|
||||
cat e/lib/python2.7/site-packages/py2app/recipes/sip.py >> e/lib/python2.7/site-packages/py2app/recipes/sip.py.new
|
||||
mv e/lib/python2.7/site-packages/py2app/recipes/sip.py.new e/lib/python2.7/site-packages/py2app/recipes/sip.py
|
||||
|
||||
if [ -z "$CI_BUILD_TAG" ]
|
||||
then
|
||||
python setup.py patch_version --platform=osx
|
||||
fi
|
||||
VERSION=`python -c 'import picard; print picard.__version__'`
|
||||
|
||||
rm -rf dist build locale
|
||||
python2.7 setup.py clean
|
||||
python2.7 setup.py build_ext -i
|
||||
python2.7 setup.py build_locales -i
|
||||
python2.7 setup.py py2app
|
||||
python setup.py clean
|
||||
python setup.py build_ext -i
|
||||
python setup.py build_locales -i
|
||||
python setup.py py2app
|
||||
|
||||
cd dist
|
||||
ditto -rsrc --arch x86_64 'MusicBrainz Picard.app' 'MusicBrainz Picard.tmp'
|
||||
rm -r 'MusicBrainz Picard.app'
|
||||
mv 'MusicBrainz Picard.tmp' 'MusicBrainz Picard.app'
|
||||
hdiutil create -volname "MusicBrainz Picard $version" -srcfolder 'MusicBrainz Picard.app' -ov -format UDBZ MusicBrainz-Picard-$version.dmg
|
||||
hdiutil create -volname "MusicBrainz Picard $VERSION" -srcfolder 'MusicBrainz Picard.app' -ov -format UDBZ ../MusicBrainz-Picard-$VERSION.dmg
|
||||
|
||||
@@ -26,7 +26,7 @@ set PATH=%CI_PROJECT_DIR%\e\scripts;%PATH%
|
||||
pip install mutagen==%MUTAGEN_VERSION%
|
||||
pip install discid==%PYTHON_DISCID_VERSION%
|
||||
|
||||
if "%PATCH_VERSION%" == "1" python setup.py patch_version --platform=win
|
||||
if NOT "%CI_BUILD_TAG%" == "" python setup.py patch_version --platform=win
|
||||
|
||||
rmdir /S /Q dist build locale
|
||||
python setup.py clean
|
||||
|
||||
Reference in New Issue
Block a user