Commit e958c85b authored by Nirbheek Chauhan's avatar Nirbheek Chauhan 🐜
Browse files

Nuke It doesn't do anything special

It's just confusing for people to see that in the build root, and we
do not even mention this file in the README.
parent 32bf9a29
Pipeline #107437 passed with stages
in 43 minutes and 14 seconds
#!/usr/bin/env python3
"""Script for generating the Makefiles."""
import argparse
import os
import sys
import shutil
import subprocess
from scripts.common import get_meson
from scripts.common import accept_command
PROJECTNAME = "GStreamer build"
ROOTDIR = os.path.abspath(os.path.dirname(__file__))
class GstBuildConfigurer:
def __init__(self, options, args):
self.options = options
self.args = args
def get_configs(self):
if self.options.werror:
return ['--werror']
return []
def configure_meson(self):
if not self.options.reconfigure:
if os.path.exists(ROOTDIR + "/build/"):
print("Not reconfiguring")
return True
meson = get_meson()
except RuntimeError:
print("Install mesonbuild to build %s:\n"
"You can simply install it with:\n"
" $ sudo pip3 install meson" % PROJECTNAME)
return False
ninja = accept_command(["ninja", "ninja-build"])
if not ninja:
print("Install ninja-build to build %s:"
return False
build_dir = os.path.join(ROOTDIR, "build")
shutil.rmtree(build_dir, True)
subprocess.check_call(meson + ["../"] + self.args + self.get_configs(),
print("\nYou can now build GStreamer and its various subprojects running:\n"
" $ {} -C {!r}".format(os.path.basename(ninja), build_dir))
except subprocess.CalledProcessError:
return False
return True
def setup(self):
return self.configure_meson()
if __name__ == "__main__":
parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument("--reconfigure", action='store_true',
default=False, help='Force a full reconfiguration'
' meaning the build/ folder is removed.'
' You can also use `ninja reconfigure` to just'
' make sure meson is rerun but the build folder'
' is kept.')
parser.add_argument("--werror", action='store_true',
default=False, help="Do not error out on warnings")
options, args = parser.parse_known_args()
configurer = GstBuildConfigurer(options, args)
exit(not configurer.setup())
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment