From 4b5a0e5de7c49043f43db0345e4f4c8b32975331 Mon Sep 17 00:00:00 2001 From: Franz Zapata Date: Sun, 9 Oct 2016 18:19:15 -0600 Subject: [PATCH] Reintroduce Python Zipapp support * Added `main` function as an entry point. * Created `__main__.py` to allow the creation of Zipapps without explicitly calling `meson:main`. --- __main__.py | 20 ++++++++++++++++++++ meson.py | 15 +++++++++------ 2 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 __main__.py diff --git a/__main__.py b/__main__.py new file mode 100644 index 000000000..c412e3718 --- /dev/null +++ b/__main__.py @@ -0,0 +1,20 @@ +#!/usr/bin/env python3 + +# Copyright 2016 The Meson development team + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import meson +import sys + +sys.exit(meson.main()) diff --git a/meson.py b/meson.py index 492f70dca..4d8a26979 100755 --- a/meson.py +++ b/meson.py @@ -15,11 +15,14 @@ # limitations under the License. from mesonbuild import mesonmain -import sys, os, os.path +import sys, os -launcher = sys.argv[0] -# resolve the command path if not launched from $PATH -if os.path.split(launcher)[0]: - launcher = os.path.realpath(launcher) +def main(): + launcher = sys.argv[0] + # resolve the command path if not launched from $PATH + if os.path.split(launcher)[0]: + launcher = os.path.realpath(launcher) + return mesonmain.run(launcher, sys.argv[1:]) -sys.exit(mesonmain.run(launcher, sys.argv[1:])) +if __name__ == '__main__': + sys.exit(main())