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
Show file tree
Hide file tree
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
Expand Up @@ -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
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions noxfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -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')
]
Expand Down
27 changes: 8 additions & 19 deletions pkg/osx/build_env.sh
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ $MAKE install
############################################################################
# upgrade pip
############################################################################
$PIP install --upgrade pip
$PIP install --upgrade pip wheel

############################################################################
# Download and install salt python dependencies
Expand All @@ -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"
Expand Down
3 changes: 1 addition & 2 deletions pkg/osx/req.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand Down
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