Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update mac build scripts #56435

Merged
merged 8 commits into from
Mar 24, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -114,3 +114,4 @@ kitchen.local.yml
.bundle/
Gemfile.lock
/artifacts/
requirements/static/py*/*.log
12 changes: 8 additions & 4 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -19,12 +19,13 @@ repos:
- id: pip-tools-compile
alias: compile-darwin-py2.7-zmq-requirements
name: Darwin Py2.7 ZeroMQ Requirements
files: ^(pkg/osx/(req|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
files: ^(pkg/osx/(req|req_ext|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
args:
- -v
- --py-version=2.7
- --platform=darwin
- --include=pkg/osx/req.txt
- --include=pkg/osx/req_ext.txt
- --include=pkg/osx/req_pyobjc.txt
- --include=requirements/base.txt
- --include=requirements/zeromq.txt
@@ -132,12 +133,13 @@ repos:
- id: pip-tools-compile
alias: compile-darwin-py3.5-zmq-requirements
name: Darwin Py3.5 ZeroMQ Requirements
files: ^(pkg/osx/(req|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
files: ^(pkg/osx/(req|req_ext|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
args:
- -v
- --py-version=3.5
- --platform=darwin
- --include=pkg/osx/req.txt
- --include=pkg/osx/req_ext.txt
- --include=pkg/osx/req_pyobjc.txt
- --include=requirements/base.txt
- --include=requirements/zeromq.txt
@@ -231,12 +233,13 @@ repos:
- id: pip-tools-compile
alias: compile-darwin-py3.6-zmq-requirements
name: Darwin Py3.6 ZeroMQ Requirements
files: ^(pkg/osx/(req|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
files: ^(pkg/osx/(req|req_ext|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
args:
- -v
- --py-version=3.6
- --platform=darwin
- --include=pkg/osx/req.txt
- --include=pkg/osx/req_ext.txt
- --include=pkg/osx/req_pyobjc.txt
- --include=requirements/base.txt
- --include=requirements/zeromq.txt
@@ -330,12 +333,13 @@ repos:
- id: pip-tools-compile
alias: compile-darwin-py3.7-zmq-requirements
name: Darwin Py3.7 ZeroMQ Requirements
files: ^(pkg/osx/(req|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
files: ^(pkg/osx/(req|req_ext|req_pyobjc)\.txt|requirements/((base|zeromq|pytest)\.txt|static/darwin\.in))$
args:
- -v
- --py-version=3.7
- --platform=darwin
- --include=pkg/osx/req.txt
- --include=pkg/osx/req_ext.txt
- --include=pkg/osx/req_pyobjc.txt
- --include=requirements/base.txt
- --include=requirements/zeromq.txt
1 change: 1 addition & 0 deletions noxfile.py
Original file line number Diff line number Diff line change
@@ -301,6 +301,7 @@ def _install_requirements(session, transport, *extra_requirements):
elif sys.platform.startswith('darwin'):
requirements_files = [
os.path.join('pkg', 'osx', 'req.txt'),
os.path.join('pkg', 'osx', 'req_ext.txt'),
os.path.join('pkg', 'osx', 'req_pyobjc.txt'),
os.path.join('requirements', 'static', 'darwin.in')
]
27 changes: 8 additions & 19 deletions pkg/osx/build_env.sh
Original file line number Diff line number Diff line change
@@ -271,7 +271,7 @@ $MAKE install
############################################################################
# upgrade pip
############################################################################
$PIP install --upgrade pip
$PIP install --upgrade pip wheel

############################################################################
# Download and install salt python dependencies
@@ -283,29 +283,18 @@ cd $BUILDDIR
echo "################################################################################"
echo "Installing Salt Dependencies with pip (normal)"
echo "################################################################################"
$PIP install -r $SRCDIR/pkg/osx/req.txt \
$PIP install -r $SRCDIR/pkg/osx/req.txt -r $SRCDIR/pkg/osx/req_pyobjc.txt \
--target=$PYDIR/site-packages \
--ignore-installed \
--no-cache-dir \
--upgrade
--no-cache-dir

echo "################################################################################"
echo "Installing PyOBJ C Dependencies with pip (normal)"
echo "Installing Salt Dependencies with pip (build_ext)"
echo "################################################################################"
$PIP install -r $SRCDIR/pkg/osx/req_pyobjc.txt \
--target=$PYDIR/site-packages \
--ignore-installed \
--no-cache-dir \
--upgrade

#echo "################################################################################"
#echo "Installing Salt Dependencies with pip (build_ext)"
#echo "################################################################################"
#$PIP install -r $SRCDIR/pkg/osx/req_ext.txt \
# --global-option=build_ext \
# --global-option="-I$INSTALL_DIR/include" \
# --ignore-installed \
# --no-cache-dir
$PIP install -r $SRCDIR/pkg/osx/req_ext.txt \
--global-option=build_ext \
--global-option="-I$INSTALL_DIR/include" \
--no-cache-dir

echo "--------------------------------------------------------------------------------"
echo "Create Symlink to certifi for openssl"
3 changes: 1 addition & 2 deletions pkg/osx/req.txt
Original file line number Diff line number Diff line change
@@ -5,7 +5,7 @@ certifi
cffi==1.12.2
CherryPy==17.4.1
click==7.0
cryptography==2.8
cryptography==2.6.1
enum34==1.1.6
futures==3.2.0 ; python_version < "3.0"
gitpython==2.1.15
@@ -20,7 +20,6 @@ psutil==5.6.1
pyasn1==0.4.5
pycparser==2.19
pycryptodome==3.8.1
pyopenssl==19.1.0
python-dateutil==2.8.0
python-gnupg==0.4.4
pyyaml==5.1.2
1 change: 1 addition & 0 deletions pkg/osx/req_ext.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
pyopenssl==19.0.0
6 changes: 6 additions & 0 deletions pkg/osx/req_pyobjc.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# To properly generate the pyobjc dependency tree, run, on a mac, the following
# pip install pip-tools
# pip-compile --output-file=pkg/osx/req_pyobjc.txt pkg/osx/req_pyobjc.in
#
# Should only be necessary when changing the pyobjc version bellow
pyobjc==5.1.2
111 changes: 104 additions & 7 deletions pkg/osx/req_pyobjc.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,104 @@
pyobjc==5.3
pyobjc-framework-AdSupport==5.3
pyobjc-framework-BusinessChat==5.3
pyobjc-framework-NaturalLanguage==5.3
pyobjc-framework-Network==5.3
pyobjc-framework-UserNotifications==5.3
pyobjc-framework-VideoSubscriberAccount==5.3
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile --output-file=pkg/osx/req_pyobjc.txt pkg/osx/req_pyobjc.in
#
pyobjc-core==5.1.2 # via pyobjc, pyobjc-framework-accounts, pyobjc-framework-addressbook, pyobjc-framework-adsupport, pyobjc-framework-applescriptkit, pyobjc-framework-applescriptobjc, pyobjc-framework-applicationservices, pyobjc-framework-automator, pyobjc-framework-avfoundation, pyobjc-framework-avkit, pyobjc-framework-businesschat, pyobjc-framework-calendarstore, pyobjc-framework-cfnetwork, pyobjc-framework-cloudkit, pyobjc-framework-cocoa, pyobjc-framework-collaboration, pyobjc-framework-colorsync, pyobjc-framework-contacts, pyobjc-framework-contactsui, pyobjc-framework-coreaudio, pyobjc-framework-coreaudiokit, pyobjc-framework-corebluetooth, pyobjc-framework-coredata, pyobjc-framework-corelocation, pyobjc-framework-coremedia, pyobjc-framework-coremediaio, pyobjc-framework-coreml, pyobjc-framework-coreservices, pyobjc-framework-corespotlight, pyobjc-framework-coretext, pyobjc-framework-corewlan, pyobjc-framework-cryptotokenkit, pyobjc-framework-dictionaryservices, pyobjc-framework-discrecording, pyobjc-framework-discrecordingui, pyobjc-framework-diskarbitration, pyobjc-framework-dvdplayback, pyobjc-framework-eventkit, pyobjc-framework-exceptionhandling, pyobjc-framework-externalaccessory, pyobjc-framework-findersync, pyobjc-framework-fsevents, pyobjc-framework-gamecenter, pyobjc-framework-gamecontroller, pyobjc-framework-gamekit, pyobjc-framework-gameplaykit, pyobjc-framework-imagecapturecore, pyobjc-framework-imserviceplugin, pyobjc-framework-inputmethodkit, pyobjc-framework-installerplugins, pyobjc-framework-instantmessage, pyobjc-framework-intents, pyobjc-framework-iosurface, pyobjc-framework-ituneslibrary, pyobjc-framework-latentsemanticmapping, pyobjc-framework-launchservices, pyobjc-framework-libdispatch, pyobjc-framework-localauthentication, pyobjc-framework-mapkit, pyobjc-framework-mediaaccessibility, pyobjc-framework-medialibrary, pyobjc-framework-mediaplayer, pyobjc-framework-mediatoolbox, pyobjc-framework-modelio, pyobjc-framework-multipeerconnectivity, pyobjc-framework-naturallanguage, pyobjc-framework-netfs, pyobjc-framework-network, pyobjc-framework-networkextension, pyobjc-framework-notificationcenter, pyobjc-framework-opendirectory, pyobjc-framework-osakit, pyobjc-framework-photos, pyobjc-framework-photosui, pyobjc-framework-preferencepanes, pyobjc-framework-pubsub, pyobjc-framework-qtkit, pyobjc-framework-quartz, pyobjc-framework-safariservices, pyobjc-framework-scenekit, pyobjc-framework-screensaver, pyobjc-framework-scriptingbridge, pyobjc-framework-searchkit, pyobjc-framework-security, pyobjc-framework-securityfoundation, pyobjc-framework-securityinterface, pyobjc-framework-servicemanagement, pyobjc-framework-social, pyobjc-framework-spritekit, pyobjc-framework-storekit, pyobjc-framework-syncservices, pyobjc-framework-systemconfiguration, pyobjc-framework-usernotifications, pyobjc-framework-videosubscriberaccount, pyobjc-framework-videotoolbox, pyobjc-framework-vision, pyobjc-framework-webkit
pyobjc-framework-accounts==5.1.2 # via pyobjc, pyobjc-framework-cloudkit
pyobjc-framework-addressbook==5.1.2 # via pyobjc
pyobjc-framework-adsupport==5.1.2 # via pyobjc
pyobjc-framework-applescriptkit==5.1.2 # via pyobjc
pyobjc-framework-applescriptobjc==5.1.2 # via pyobjc
pyobjc-framework-applicationservices==5.1.2 # via pyobjc
pyobjc-framework-automator==5.1.2 # via pyobjc
pyobjc-framework-avfoundation==5.1.2 # via pyobjc, pyobjc-framework-mediaplayer
pyobjc-framework-avkit==5.1.2 # via pyobjc
pyobjc-framework-businesschat==5.1.2 # via pyobjc
pyobjc-framework-calendarstore==5.1.2 # via pyobjc
pyobjc-framework-cfnetwork==5.1.2 # via pyobjc
pyobjc-framework-cloudkit==5.1.2 # via pyobjc
pyobjc-framework-cocoa==5.1.2 # via pyobjc, pyobjc-framework-accounts, pyobjc-framework-addressbook, pyobjc-framework-adsupport, pyobjc-framework-applescriptkit, pyobjc-framework-applescriptobjc, pyobjc-framework-applicationservices, pyobjc-framework-automator, pyobjc-framework-avfoundation, pyobjc-framework-avkit, pyobjc-framework-businesschat, pyobjc-framework-calendarstore, pyobjc-framework-cfnetwork, pyobjc-framework-cloudkit, pyobjc-framework-collaboration, pyobjc-framework-colorsync, pyobjc-framework-contacts, pyobjc-framework-contactsui, pyobjc-framework-coreaudio, pyobjc-framework-coreaudiokit, pyobjc-framework-corebluetooth, pyobjc-framework-coredata, pyobjc-framework-corelocation, pyobjc-framework-coremedia, pyobjc-framework-coremediaio, pyobjc-framework-coreml, pyobjc-framework-corespotlight, pyobjc-framework-coretext, pyobjc-framework-corewlan, pyobjc-framework-cryptotokenkit, pyobjc-framework-discrecording, pyobjc-framework-discrecordingui, pyobjc-framework-diskarbitration, pyobjc-framework-dvdplayback, pyobjc-framework-eventkit, pyobjc-framework-exceptionhandling, pyobjc-framework-externalaccessory, pyobjc-framework-findersync, pyobjc-framework-fsevents, pyobjc-framework-gamecenter, pyobjc-framework-gamecontroller, pyobjc-framework-gamekit, pyobjc-framework-gameplaykit, pyobjc-framework-imagecapturecore, pyobjc-framework-imserviceplugin, pyobjc-framework-inputmethodkit, pyobjc-framework-installerplugins, pyobjc-framework-instantmessage, pyobjc-framework-intents, pyobjc-framework-iosurface, pyobjc-framework-ituneslibrary, pyobjc-framework-latentsemanticmapping, pyobjc-framework-localauthentication, pyobjc-framework-mapkit, pyobjc-framework-mediaaccessibility, pyobjc-framework-medialibrary, pyobjc-framework-mediatoolbox, pyobjc-framework-modelio, pyobjc-framework-multipeerconnectivity, pyobjc-framework-naturallanguage, pyobjc-framework-netfs, pyobjc-framework-network, pyobjc-framework-networkextension, pyobjc-framework-notificationcenter, pyobjc-framework-opendirectory, pyobjc-framework-osakit, pyobjc-framework-photos, pyobjc-framework-photosui, pyobjc-framework-preferencepanes, pyobjc-framework-pubsub, pyobjc-framework-qtkit, pyobjc-framework-quartz, pyobjc-framework-safariservices, pyobjc-framework-scenekit, pyobjc-framework-screensaver, pyobjc-framework-scriptingbridge, pyobjc-framework-security, pyobjc-framework-securityfoundation, pyobjc-framework-securityinterface, pyobjc-framework-servicemanagement, pyobjc-framework-social, pyobjc-framework-spritekit, pyobjc-framework-storekit, pyobjc-framework-syncservices, pyobjc-framework-systemconfiguration, pyobjc-framework-usernotifications, pyobjc-framework-videosubscriberaccount, pyobjc-framework-videotoolbox, pyobjc-framework-vision, pyobjc-framework-webkit
pyobjc-framework-collaboration==5.1.2 # via pyobjc
pyobjc-framework-colorsync==5.1.2 # via pyobjc
pyobjc-framework-contacts==5.1.2 # via pyobjc, pyobjc-framework-contactsui
pyobjc-framework-contactsui==5.1.2 # via pyobjc
pyobjc-framework-coreaudio==5.1.2 # via pyobjc, pyobjc-framework-coreaudiokit
pyobjc-framework-coreaudiokit==5.1.2 # via pyobjc
pyobjc-framework-corebluetooth==5.1.2 # via pyobjc
pyobjc-framework-coredata==5.1.2 # via pyobjc, pyobjc-framework-cloudkit, pyobjc-framework-syncservices
pyobjc-framework-corelocation==5.1.2 # via pyobjc, pyobjc-framework-cloudkit, pyobjc-framework-mapkit
pyobjc-framework-coremedia==5.1.2 # via pyobjc, pyobjc-framework-videotoolbox
pyobjc-framework-coremediaio==5.1.2 # via pyobjc
pyobjc-framework-coreml==5.1.2 # via pyobjc, pyobjc-framework-vision
pyobjc-framework-coreservices==5.1.2 # via pyobjc, pyobjc-framework-dictionaryservices, pyobjc-framework-launchservices, pyobjc-framework-searchkit
pyobjc-framework-corespotlight==5.1.2 # via pyobjc
pyobjc-framework-coretext==5.1.2 # via pyobjc
pyobjc-framework-corewlan==5.1.2 # via pyobjc
pyobjc-framework-cryptotokenkit==5.1.2 # via pyobjc
pyobjc-framework-dictionaryservices==5.1.2 # via pyobjc
pyobjc-framework-discrecording==5.1.2 # via pyobjc, pyobjc-framework-discrecordingui
pyobjc-framework-discrecordingui==5.1.2 # via pyobjc
pyobjc-framework-diskarbitration==5.1.2 # via pyobjc
pyobjc-framework-dvdplayback==5.1.2 # via pyobjc
pyobjc-framework-eventkit==5.1.2 # via pyobjc
pyobjc-framework-exceptionhandling==5.1.2 # via pyobjc
pyobjc-framework-externalaccessory==5.1.2 # via pyobjc
pyobjc-framework-findersync==5.1.2 # via pyobjc
pyobjc-framework-fsevents==5.1.2 # via pyobjc, pyobjc-framework-coreservices
pyobjc-framework-gamecenter==5.1.2 # via pyobjc
pyobjc-framework-gamecontroller==5.1.2 # via pyobjc
pyobjc-framework-gamekit==5.1.2 # via pyobjc
pyobjc-framework-gameplaykit==5.1.2 # via pyobjc
pyobjc-framework-imagecapturecore==5.1.2 # via pyobjc
pyobjc-framework-imserviceplugin==5.1.2 # via pyobjc
pyobjc-framework-inputmethodkit==5.1.2 # via pyobjc
pyobjc-framework-installerplugins==5.1.2 # via pyobjc
pyobjc-framework-instantmessage==5.1.2 # via pyobjc
pyobjc-framework-intents==5.1.2 # via pyobjc
pyobjc-framework-iosurface==5.1.2 # via pyobjc
pyobjc-framework-ituneslibrary==5.1.2 # via pyobjc
pyobjc-framework-latentsemanticmapping==5.1.2 # via pyobjc
pyobjc-framework-launchservices==5.1.2 # via pyobjc
pyobjc-framework-libdispatch==5.1.2 # via pyobjc
pyobjc-framework-localauthentication==5.1.2 # via pyobjc
pyobjc-framework-mapkit==5.1.2 # via pyobjc
pyobjc-framework-mediaaccessibility==5.1.2 # via pyobjc
pyobjc-framework-medialibrary==5.1.2 # via pyobjc
pyobjc-framework-mediaplayer==5.1.2 # via pyobjc
pyobjc-framework-mediatoolbox==5.1.2 # via pyobjc
pyobjc-framework-modelio==5.1.2 # via pyobjc
pyobjc-framework-multipeerconnectivity==5.1.2 # via pyobjc
pyobjc-framework-naturallanguage==5.1.2 # via pyobjc
pyobjc-framework-netfs==5.1.2 # via pyobjc
pyobjc-framework-network==5.1.2 # via pyobjc
pyobjc-framework-networkextension==5.1.2 # via pyobjc
pyobjc-framework-notificationcenter==5.1.2 # via pyobjc
pyobjc-framework-opendirectory==5.1.2 # via pyobjc
pyobjc-framework-osakit==5.1.2 # via pyobjc
pyobjc-framework-photos==5.1.2 # via pyobjc
pyobjc-framework-photosui==5.1.2 # via pyobjc
pyobjc-framework-preferencepanes==5.1.2 # via pyobjc
pyobjc-framework-pubsub==5.1.2 # via pyobjc
pyobjc-framework-qtkit==5.1.2 # via pyobjc
pyobjc-framework-quartz==5.1.2 # via pyobjc, pyobjc-framework-applicationservices, pyobjc-framework-avfoundation, pyobjc-framework-avkit, pyobjc-framework-coretext, pyobjc-framework-gamekit, pyobjc-framework-instantmessage, pyobjc-framework-mapkit, pyobjc-framework-medialibrary, pyobjc-framework-modelio, pyobjc-framework-qtkit, pyobjc-framework-scenekit, pyobjc-framework-spritekit, pyobjc-framework-videotoolbox, pyobjc-framework-vision
pyobjc-framework-safariservices==5.1.2 # via pyobjc
pyobjc-framework-scenekit==5.1.2 # via pyobjc
pyobjc-framework-screensaver==5.1.2 # via pyobjc
pyobjc-framework-scriptingbridge==5.1.2 # via pyobjc
pyobjc-framework-searchkit==5.1.2 # via pyobjc
pyobjc-framework-security==5.1.2 # via pyobjc, pyobjc-framework-securityfoundation, pyobjc-framework-securityinterface
pyobjc-framework-securityfoundation==5.1.2 # via pyobjc
pyobjc-framework-securityinterface==5.1.2 # via pyobjc
pyobjc-framework-servicemanagement==5.1.2 # via pyobjc
pyobjc-framework-social==5.1.2 # via pyobjc
pyobjc-framework-spritekit==5.1.2 # via pyobjc, pyobjc-framework-gameplaykit
pyobjc-framework-storekit==5.1.2 # via pyobjc
pyobjc-framework-syncservices==5.1.2 # via pyobjc
pyobjc-framework-systemconfiguration==5.1.2 # via pyobjc
pyobjc-framework-usernotifications==5.1.2 # via pyobjc
pyobjc-framework-videosubscriberaccount==5.1.2 # via pyobjc
pyobjc-framework-videotoolbox==5.1.2 # via pyobjc
pyobjc-framework-vision==5.1.2 # via pyobjc
pyobjc-framework-webkit==5.1.2 # via pyobjc
pyobjc==5.1.2
Loading