aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/minstall.py
AgeCommit message (Collapse)AuthorFilesLines
2020-03-03Cherry-picking - (rm python2 % add python3 .format) (#6725)Michael Brockus1-9/+9
2020-02-17minstall: Add a new option --quietNirbheek Chauhan1-10/+18
This is a significant speed-up on Windows because terminals are slow to print things out. Speed-up in gst-build on Windows: ``` meson install: before: 5.1 seconds after: 4.0 seconds ```
2020-02-17minstall: Optimize when to call makedirs()Nirbheek Chauhan1-9/+11
In `--only-changed` mode, we were spending half our time inside `makedirs()`, which is a waste in the case when only a few files have changed. Speed-up on Windows with gst-build: ``` meson install --only-changed before: 1.6 seconds after: 0.9 seconds ```
2020-02-17minstall: Error out when trying to copy file to dirNirbheek Chauhan1-0/+1
Not sure why this wasn't already an error. It's a bad situation to be in, and we should not ignore it.
2020-02-17minstall: Fix check for when something was installedNirbheek Chauhan1-10/+11
If we preserve the existing file, we did not install anything. In that case, the output now looks like: ``` ninja: Entering directory `.' ninja: no work to do. Nothing to install. Preserved 1732 unchanged files, see meson-logs\install-log.txt for the full list ``` This also avoids an `isfile` lookup, which shaves off a few seconds in gst-build install.
2020-02-17minstall: Add new hidden argument --profile-selfNirbheek Chauhan1-1/+9
Same purpose as `meson setup`.
2020-02-11minstall: Make --only-changed less verboseNirbheek Chauhan1-1/+5
When `--only-changed` is passed, we only want to know about files that were newly-installed. Everything else is noise. The full list can always be found in `install-log.txt` anyway. Sample output: ``` ninja: Entering directory `.' ninja: no work to do. Preserved 667 unchanged files, see meson-logs\install-log.txt for the full list ```
2019-12-05lgtm: Fix redundant codeDaniel Mensinger1-1/+0
2019-10-23Fix for issue #4499, multiple entries per file in install-log.txtOrlando Wingbrant1-1/+0
2019-10-09Fix *.pdb files missing in meson introspect --installed outputJakub Adam1-5/+0
On Windows, make sure the introspect command lists all Program database (PDB) files containing debugging information that Meson will install.
2019-09-27Catch NotADirectoryError to fix selinux errorAndrew Conrad1-1/+1
Fixes #4798
2019-09-03Log the used strip command. [skip ci]Jussi Pakkanen1-1/+1
2019-08-05Add basic Webassembly support via Emscripten.Jussi Pakkanen1-0/+7
2019-04-29Fix builtin variable namesDaniel Mensinger1-1/+1
2019-04-29Fix blind exceptionsDaniel Mensinger1-1/+1
2019-01-29pep8 py37Michael Hirsch, Ph.D1-2/+2
2019-01-06fix meson configure exception when install_umask is not an intNicolas Schneider1-2/+2
2019-01-01print 'Nothing to install.' if nothing was installedNicolas Schneider1-0/+10
Fixes #882.
2018-11-20minstall: Do not delete dst files when installing a directoryXavier Claessens1-3/+1
do_copyfile() already takes the decision to delete or preserve them. Also do not append a confusing '.' in log messages that finish by a file path.
2018-10-24Fix flake8 'imported but unused' reportsJon Turney1-1/+1
$ flake8 | grep F401 ./mesonbuild/minstall.py:15:1: F401 'gzip' imported but unused ./mesonbuild/backend/backends.py:26:1: F401 '..compilers.get_macos_dylib_install_name' imported but unused ./mesonbuild/backend/backends.py:29:1: F401 'functools.lru_cache' imported but unused ./mesonbuild/scripts/dist.py:27:1: F401 'mesonbuild.dependencies.ExternalProgram' imported but unused
2018-10-20Remove implicit compression of man pagesMichał Górny1-11/+1
Remove the code responsible for implicitly compressing manpages as .gz files. It has been established that manpage compression is a distro packager's task, with existing distros already having their own implementations of compression. Fixes #4330
2018-10-04Use a single ArgumentParser for all subcommandsXavier Claessens1-10/+2
This has the adventage that "meson --help" shows a list of all commands, making them discoverable. This also reduce the manual parsing of arguments to the strict minimum needed for backward compatibility.
2018-08-23Revert symlink copy behaviour. Closes #4069.Jussi Pakkanen1-1/+13
2018-08-17minstall: use follow_symlinks to check executableMarco Trevisan (Treviño)1-3/+3
This could happen when setting an default install mode but with broken symlinks. Fixes #3914
2018-08-17minstall: never follow symlinks when setting ownershipMarco Trevisan (Treviño)1-1/+19
Since we're supposed to call this for each installed path, we only should go through what we've installed and not what this point to, as it might be outside our scope or not existent. To do this, since shutil.chown doesn't expose the follow_symlink that os.chown has, we can temporarily replace os.chown with a lambda that acutually passes all the values as we want them, and then restore it to the built-in functions. Not the nicest way, but fixes the issue without having to reimplement what shutil does. Fixes #3914
2018-08-17minstall: never try to set chmod on symlinksMarco Trevisan (Treviño)1-2/+9
It's only supported by few platforms when the linked file exists, while it would cause an error otherwise. In any case just implement this via an helper set_chmod function that will handle the case where follow_symlinks is not supported by the platform and will just not set any mod for the link itself (as it would otherwise apply to the linked file). Fixes #3914
2018-08-15install_subdir: Also copy dangling symlinksNirbheek Chauhan1-7/+13
Fixes https://github.com/mesonbuild/meson/issues/3914
2018-08-09Fix install when run with meson.exe. Closes #3988.Jussi Pakkanen1-1/+6
2018-08-09Don't require an import library for shared modulesNirbheek Chauhan1-0/+7
Shared modules may be resource-only DLLs, or might automatically self-initialize using C constructors or WinMain at DLL load time. When an import library is not found for a shared module, just print a message about it instead of erroring out. Fixes #3965
2018-07-04Fix pkexec command for installation via polkitXi Ruoyao1-1/+1
2018-06-20Make it work with current master.Jussi Pakkanen1-8/+9
2018-06-18Add option to only install changed files.Jussi Pakkanen1-8/+22
2018-06-18Refactored installer to use a class to eradicate global variables.Jussi Pakkanen1-269/+264
2018-06-18Made install a top level Meson command.Jussi Pakkanen1-0/+460