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`.
pull/870/head
Franz Zapata 8 years ago committed by Jussi Pakkanen
parent 60119753d6
commit 4b5a0e5de7
  1. 20
      __main__.py
  2. 7
      meson.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())

@ -15,11 +15,14 @@
# limitations under the License. # limitations under the License.
from mesonbuild import mesonmain from mesonbuild import mesonmain
import sys, os, os.path import sys, os
def main():
launcher = sys.argv[0] launcher = sys.argv[0]
# resolve the command path if not launched from $PATH # resolve the command path if not launched from $PATH
if os.path.split(launcher)[0]: if os.path.split(launcher)[0]:
launcher = os.path.realpath(launcher) 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())

Loading…
Cancel
Save